Imaginons que vous créiez un jeu avec des potions magiques. Les potions ont différents effets : elles peuvent guérir les joueurs ou leur infliger des blessures. Vous devez déclarer et initialiser certaines constantes et variables pour mémoriser la santé du joueur ainsi que le niveau de blessure ou de guérison d’une potion.
Mais quelles constantes et quelles variables utiliser ?
var PlayerHealth: float = 100.0
PotionDamageAmount: float = 20.0
PotionHealAmount: float = 10.0
Bien que les variables et constantes que vous modifiez ici n’aient aucun effet sur la santé de votre personnage Fortnite, vous pouvez bien sûr faire en sorte qu’elles aient un impact sur les joueurs ; vous découvrirez comment y parvenir dans une prochaine leçon.
La santé du joueur évolue au cours du jeu en fonction des potions qu'il utilise. Qui dit changement, dit variable.
D'un autre côté, étant donné qu’il ne sert à rien de changer le niveau de blessure ou de guérison des potions pendant le jeu, vous devez déclarer les potions en tant que constantes.
-
Si vous écrivez du code pour modifier la variable
PlayerHealthà ce stade, vous ne pourrez pas savoir si cela a fonctionné à moins d’en consigner le résultat dans le journal. Pour vous y aider, déclarez et initialisez la constantestringet la variablestringci-dessous. N'oubliez pas d'ajouter un espace entre la fin du texte et le dernier signe ".PlayerStatusText: string = "Player health now " var EffectOnPlayerText: string = "damaged " -
Vous êtes maintenant prêt à modifier les PV du joueur. Pour changer la valeur d'une variable, vous devez utiliser le mot-clé
setau début de l'expression. Vous devez soustrairePotionDamageAmountdePlayerHealth. Pour cela, utilisez l'opérateur-.set PlayerHealth = PlayerHealth - PotionDamageAmount -
Une fois la variable
PlayerHealthmodifiée, vous souhaitez savoir si cela fonctionne. Pour ce faire, appelezPrint()comme indiqué ci-dessous.Print("The Player was {EffectOnPlayerText + ToString(PotionDamageAmount)}") Print("{PlayerStatusText + ToString(PlayerHealth)}")Ici, vous n’effectuez aucun calcul avec vos chaînes, vous les combinez simplement avec l'opérateur
+. Cette opération est appelée concaténation. La fonctionToString()crée une versionstringde votre variable et de votre constantefloatafin qu'elles puissent être utilisées parPrint(). -
Exécutez ce code. Deux nouvelles lignes doivent apparaître :
The Player was damaged 20.0Player health now 80.00
Essayez maintenant de faire la même chose pour PotionHealAmount.
- Modifiez
PlayerHealthen utilisant le mot-clé et l'opérateur corrects. - Vous devrez également modifier la variable
EffectOnPlayerTextpour qu'elle soit pertinente une fois affichée. -
Enfin, vous devrez afficher l'incidence sur les PV du joueur et déterminer ses PV actuels. Essayez d'abord par vous-même et, si vous avez besoin d'aide, consultez le code ci-dessous.
set PlayerHealth = PlayerHealth + PotionHealAmount set EffectOnPlayerText = "healed " Print("The Player was {EffectOnPlayerText + ToString(PotionHealAmount)}") Print("{PlayerStatusText + ToString(PlayerHealth)}")
Script complet
using { /Fortnite.com/Devices }
using { /Verse.org/Simulation } }
hello_world_device := class(creative_device):
# S'exécute à l'activation de l'appareil dans une partie en cours.
OnBegin<override>()<suspends> : void =
PotionDamageAmount : float = 20.0
PotionHealAmount : float = 10.0
var PlayerHealth : float = 100.0
PlayerStatusText : string = "Player health now "
var EffectOnPlayerText: string = "damaged "
set PlayerHealth = PlayerHealth - PotionDamageAmount
Print("The Player was {EffectOnPlayerText + ToString(PotionDamageAmount)}")
Print("{PlayerStatusText + ToString(PlayerHealth)}")
set PlayerHealth = PlayerHealth + PotionHealAmount
set EffectOnPlayerText = "healed "
Print("The Player was {EffectOnPlayerText + ToString(PotionHealAmount)}")
Print("{PlayerStatusText + ToString(PlayerHealth)}")