X3 TUTORIAL: GESTION DES RACCOURCIS CLAVIER
======================================
[Anarkis Federation - X2, X3 Script and Modding Station]
======================================
Ce tutorial qui devrait être facile d'accés aux débutants a pour but de vous apprendre à créer de nouveaux raccourcis claviers claviers pour le joueur. Nous allons créer ici un nouveau raccourcis qui aura pour but de faire apparaitre par magie 20 e.cells (photopiles) dans la soute de votre navire.
Préambule
Ce tutorial va utiliser une variable globale, pour ceux qui savent déjà ce que sont les variables globales et locales vous pouvez passer ce paragraphe. Le moteur de script permet d'enregistrer dans le jeu de façon permanente des variables qui peuvent être récupérées par n'importe quel script du jeu et qui sont sauvegardées quand on sauve sa partie.
Les variables locales: Ce sont des variables que l'on peut associer à un objet particulier du jeu (vaisseau ou station). La syntaxe est la suivante:
Code: Select all
$objet -> set local variable: name='ma.variable' value=$valeur
Code: Select all
$valeur = $objet -> get local variable: name='ma.variable'
Les variables globales: Ce sont celles ci dont nous allons avoir besoin ici. Fonctionne comme les variables locales dans le principe, sauf qu'elles ne sont pas spécifiques à un objet particulier. La syntaxe est la suivante.
Code: Select all
set global variable: name='ma.globale' value=$valeur
Code: Select all
$valeur = get global variable: name='ma.globale'
1. Le script pour récupérer les photopiles
C'est un script excessivement simple qui tient en une seule ligne (comme beaucoup de cheats d'ailleurs). Donc, créez un nouveau script appelé 'tutorial.get.ecells'.
Code: Select all
= [PLAYERSHIP] -> add '20' units of 'Energy Cells'
2. Le script de setup
Le script de setup est lancé à chaque chargement de partie. C'est donc ici l'endroit ou nous allons créer notre raccourcis clavier. Ce script va devoir déterminé si c'est la première fois qu'on lance une partie avec ce script, et si c'est le cas, il devra créer le raccourcis clavier pour le joueur.
Créez un nouveau script appelé 'setup.tutorial.shortcuts'. Son contenu devra ressembler à ceci :
Code: Select all
$hotkey.id = get global variable: name='tutorial.hotkey'
if $hotkey.id == null
$description = 'Faire le plein d'énergie'
$hotkey.id = register hotkey $description to call script 'tutorial.get.ecells'
set global variable: name='tutorial.hotkey' value=$hotkey.id
end
Code: Select all
$hotkey.id = get global variable: name='tutorial.hotkey'
Code: Select all
if $hotkey.id == null
Code: Select all
$hotkey.id = register hotkey $description to call script 'tutorial.get.ecells'
Code: Select all
set global variable: name='tutorial.hotkey' value=$hotkey.id
3. Le script de désinstallation
Maintenant faut quand même prévoir que l'utilisateur risque d'en avoir marre de voir 40 hotkeys de scripts qu'il a supprimé depuis longtemps dans son menu de reglage des controles. Pour celà on va lui fournir un joli script qu'il devra lancer manuellement après avoir supprimé les autres fichiers utilisés par notre cheat. Appelons le 'tutorial.uninstall.hotkey'. Son contenu sera le suivant
Code: Select all
$hotkey.id = get global variable: name='tutorial.hotkey'
if $hotkey.id != null
unregister hotkey $hotkey.id
set global variable: name='tutorial.hotkey' value=null
end
Quelques conseils
Rien de bien spécial à rajouter ici, sinon de nommer vos variables globales et locales d'une façon clairement identifiable et qui ne risque pas d'être utilisées par un autre script. Un trés mauvais nom de variable serait 'hotkey' ou 'check'. Un bon nom de variable serait quelque chose qui donne des indications basiques et qui sera unique comme :
'pirate.guild.active' ou 'acc.carrier.tactics'.
Les raccourcis créés apparaitront dans la partie "Extension" de l'onglet "Interface" du menu de reglage des touches de clavier. Il ne semble pas possible à l'heure actuelle de définir une touche par défaut pour ceux ci.
________
Voilou, rien de bien compliqué ici, mais si vous avez une question relative à ce tutorial, be vous génez pas pour la poser dans ce topic
________
Edit : Correction de quelques oublis d'étourderie.