Aller au contenu
PX_007

Quake: Différents délais en fonction d'un critère

Messages recommandés

Bonjour à tous. Je suis actuellement dans le développement d'un QuakeCraft mais bloquant sur quelque chose je fais appel à vous dans l'espoir que quelqu'un puisse me venir en aide :)

 

Pour vous expliquer le principe: je cherche à créer un délai entre 2 tirs avec le railgun (par exemple 1 seconde par tir) Jusque là rien de bien sorcier. Mais ça se complique un peu car en fonction du railgun de la personne le délai serait plus ou moins long. Là aussi j'ai réussi à faire un délai.

Le problème que je rencontre est que je n'arrive pas à faire une progression du niveau d'xp en fonction du délai qui se base sur le raigun.

 

Par exemple: Si le joueur a un railgun en diamant, le délai serait d'une seconde et la barre d'xp se remplierait significativement en 1 seconde de 0 à 0.99999 (et non 1 car cela compte 1 lvl)

Par contre si le joueur à un raigun en bois et que le délai est de 1.5 secondes, la barre d'xp se remplierait significativement en 1.5 seconde.

 

Mais je n'ai pas réussi à trouver un moyen que la barre se remplisse de 0 à 0.99999 en fonction du cooldown défini pour chaque railgun. C'est pourquoi je fais appel à la communauté dans l'espoir de trouver quelqu'un pour m'aider :)

Je vous donne le code que j'utilise

Contenu masqué

    Réagissez ou répondez à ce message afin de consulter le contenu masqué.

Merci d'avance :)

 

PS: Ne m'y connaissant pas beaucoup sur les functions je n'ai pas essayé d'en faire une pour les délais

Partager ce message


Lien à poster
Partager sur d’autres sites

C'est pas forcément la solution la plus optimisée, mais tu peux définir une manière de remplir la barre d'xp différente pour chaque rail gun, comme ça tu peux bien remplir en 1s, 1,5s etc. Peux tu me donner les temps de rechargement de chacuns de tes rail gun ? Je vais essayer de te faire quelque chose :)

Partager ce message


Lien à poster
Partager sur d’autres sites

Contenu masqué

    Réagissez ou répondez à ce message afin de consulter le contenu masqué.

2 changements dans ton code:

- j'ai mis les cooldown en option, comme ça tu pourras les modifier facilement (d'ailleur j'ai modifié ceux que tu avais mis pour bien voir la différence de rechargement)

-A l'aide d'un petit calcul je recharge la barre d'xp en 10 fois, en calculant combien de temps on attend entre chaque fois. Toutes les variables que j'ai utilisées sont temporaires, de plus j'ai ajouté une condition qui empêche le joueur de gagner un niveau. Ce calcule marche selon ta variable {_wait}. Note tout de même que la barre sera parfois rechargée un tout petit peu avant que le joueur puisse tirer une nouvelle fois, la faute à Skript et ses arrondis x)

 

Voilà voilà j'ai pris mon temps mais au moins ça marche :)

Partager ce message


Lien à poster
Partager sur d’autres sites

Contenu masqué

    Réagissez ou répondez à ce message afin de consulter le contenu masqué.

2 changements dans ton code:

- j'ai mis les cooldown en option, comme ça tu pourras les modifier facilement (d'ailleur j'ai modifié ceux que tu avais mis pour bien voir la différence de rechargement)

-A l'aide d'un petit calcul je recharge la barre d'xp en 10 fois, en calculant combien de temps on attend entre chaque fois. Toutes les variables que j'ai utilisées sont temporaires, de plus j'ai ajouté une condition qui empêche le joueur de gagner un niveau. Ce calcule marche selon ta variable {_wait}. Note tout de même que la barre sera parfois rechargée un tout petit peu avant que le joueur puisse tirer une nouvelle fois, la faute à Skript et ses arrondis x)

 

Voilà voilà j'ai pris mon temps mais au moins ça marche :)

J'ai testé et tout marche bien !

Merci beaucoup d'avoir pris le temps de m'aider :)

  • J'aime 1

Partager ce message


Lien à poster
Partager sur d’autres sites

×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.