À cette étape, vous allez créer un système de minutage dans Verse qui utilise le chronomètre et les appareils de fin de partie. Le chronomètre démarre dès que le joueur touche une cible, et la partie se termine, provoquant l'apparition du tableau des scores à la fin du compte à rebours.
Bien que vous puissiez terminer la partie à l'aide d'un chronomètre dans les paramètres de l'île ou à l'aide des appareils proprement dits, Verse vous permet de mieux contrôler vos mécaniques de jeu.
Modifier votre île
Sélectionnez l'appareil Paramètres de l'île dans le hublot ou dans le panneau Organiseur.
Dans le panneau Détails, définissez les paramètres suivants :
Désactivez l'option Statistique pour terminer. La condition de score à atteindre pour terminer d'origine, que vous allez remplacer par le chronomètre, est ainsi supprimée.
Réglez l'option Durée d'affichage du score du jeu sur 10 secondes.
Activez l'option Première colonne du tableau des scores, puis définissez-la sur Score.
Dans le navigateur de contenu, cherchez le chronomètre, puis faites-le glisser dans le hublot.
Dans le panneau Détails, définissez l'option Visible pendant le jeu sur Masqué. Le chronomètre est ainsi masqué pendant le jeu, mais le temps continue d'apparaître sur l'ATH du joueur tant qu'il est actif.
Utilisez le navigateur de contenu pour trouver l'appareil de fin de partie, puis faites-le glisser dans le hublot.
Rédiger du code Verse
Cette page vous guide pas à pas dans les modifications de code, mais si vous souhaitez contrôler votre travail, consultez la rubrique Code complet pour voir le résultat final.
Ouvrez le fichier
shooting_range_manager_device.verse.Ajoutez les variables suivantes pour stocker les nouvelles références d'appareil et un indicateur de logique permettant de suivre l'état du chronomètre.
Une variable d'indicateur désigne une variable dans votre code qui sert à vérifier si une certaine condition a été remplie. Dans cet exemple,
IsTimerStartedcorrespond à l'indicateur, false équivalant à "non" et true à "oui".Verse@editable Timer:timer_device = timer_device{} @editable EndGame:end_game_device = end_game_device{} var IsTimerStarted:logic = falseAjoutez la méthode de rappel
OnTimerSuccess, qui sera appelée une fois le chronomètre achevé pour mettre fin à la partie.La méthode OnTimerSuccess reçoit un paramètre d'agent facultatif, qui est l'agent ayant activé le chronomètre, le cas échéant. Dans la mesure où un paramètre d'agent non facultatif est nécessaire pour activer l'appareil de fin de partie, l'agent facultatif est converti en agent non facultatif dans l'instruction
if. Consultez la rubrique Option pour en savoir plus sur les types d'options.Verse# When time runs out, end the game. OnTimerSuccess(Agent:?agent):void= if (TriggerAgent := Agent?): EndGame.Activate(TriggerAgent)Ajoutez la méthode StartTimer qui configure l'abonnement du chronomètre au rappel OnTimerSuccess et démarre le chronomètre.
Verse# Setup and start the timer. StartTimer():void= # Set the event subscription to call OnTimerSuccess when the timer finishes. Timer.SuccessEvent.Subscribe(OnTimerSuccess) # Start the timer. Timer.Start() # Track that the timer has started. set IsTimerStarted = trueModifiez la méthode AdjustScore pour lancer le chronomètre. Le joueur a ainsi le temps de préparer son premier coup avant de commencer la partie.
Verse# Adjusts the player's score by the provided value. AdjustScore(Value:int):void= <# --- New Code Start --- #> # Start the timer if it hasn't started yet. if (not IsTimerStarted?): StartTimer() <# --- New Code End --- #>Enregistrez et générez votre code Verse.
Code complet
using { /Fortnite.com/Devices }
using { /Verse.org/Simulation }
# A device that manages shooting range gameplay.
shooting_range_manager_device := class(creative_device):
@editable
ScoreManager:score_manager_device = score_manager_device{}
@editable
Assembler tous les éléments
Sélectionnez le shooting_range_manager_device dans le hublot ou dans le panneau Organiseur.
Dans le panneau Détails, définissez les paramètres suivants :
Définissez Chronomètre sur l'appareil Chronomètre.
Définissez Fin de partie sur l'appareil de fin de partie.
Validez vos modifications et testez votre île.
Vérifiez que le chronomètre démarre bien lorsque vous tirez sur une cible.
Assurez-vous que, lorsque le chronomètre s'achève, la partie se termine et le tableau des scores s'affiche.