Bienvenue sur JeuxOnLine - MMO, MMORPG et MOBA !
Les sites de JeuxOnLine...
 

Panneau de contrôle

Recherche | Retour aux forums

JOL Archives

OnClient enter?

Par Dzib le 15/7/2002 à 19:19:11 (#1809335)

Jaimerais stocker, dès qu'un joueur entre ds mon module, la valeur de la consti ds une variable que je pourrais rappeller plus tard ds un script. Y a moyen? comment?
ce qui me parait difficile, cé qu'il faudra une variable par joueur!

Par Kray le 15/7/2002 à 19:29:07 (#1809386)

Tu as le choix. Soit tu utilises ma technique de flags qui fonctionne avec des variables _FLAG... Et qui fait donc un script comme ça sur OnClientEnter :

void main()
{
object oPC = GetEnteringObject();
object oStock = GetModule();
string sFlagName = "_ENTERING_CONSTITUTION";
int nAbility = GetAbilityScore(oPC,ABILITY_CONSTITUTION);
SetLocalInt(oStock,GetName(oPC)+sFlagName,nAbility);
}
Soit tu utilises le système d'émulation de tableaux de variables de Lumina que j'ai la flemme d'aller chercher.

Attention néanmoins, stocker la constitution à l'entrée du client, c'est s'exposer au risque que le client passe un niveau et modifie son score de constitution.

Par Dzib le 15/7/2002 à 19:31:27 (#1809404)

nickel :merci:
le client ne risque pas de changer de lvl ds mon module, y a pas de pex! cé juste une auberge pour se rencontrer et discuter

heu....et pour rappeler la valeur ds un script, cé comment?

Par Altrendor le 15/7/2002 à 19:39:37 (#1809459)

Un truc que j'ai vu dans les scripts du Hardcore Ruleset, c'est en plus de mettre le nom du joueur dans la variable, mettre aussi la partie publique de se clef CD, comme ca, on peut avoir plusieurs fois le meme nom dans une partie.

Par Dzib le 16/7/2002 à 7:19:48 (#1811621)

Quelle est la syntaxe exacte pour rappeller la valeur plus tard, ds un script? je suppose que c'est avec GetLocalInt mais avec quels paramètres?
Ds l'exemple de Kray, a quoi sert GetModule()?

Par souana le 16/7/2002 à 7:23:12 (#1811633)

si je me trompe pas, c'est pour stocké la variable sur ton module.

Par Kray le 16/7/2002 à 12:13:06 (#1812540)

Tout à fait!

Plutôt que de ratacher ta variable à un objet, on l'attache au module entier. J'utilise ce système pour éviter d'oublier où j'ai bien pu stocker une variable. Bien sûr, tu peux remplasser le GetModule() par un GetObjectByTag("Tag_de_ton_stock_de_variables"); !

Pour la clé publique, c'est volontaire que je ne l'ai pas mise, pour que les GMs puissent modifier la valeur d'un flag ingame sans avoir besoin de connaitre la clé publique de la personne. :)

Ptite update du script :
Inscription de la variable dans OnClientEnter:

void main()
{
oPC = GetEnteringObject();
if(GetIsPC(oPC))
{
object oStock = GetModule();
string sFlagName = "_ENTERING_CONSTITUTION";
string sVarName = GetName(oPC)+sFlagName;
int nAbilityScore = GetAbilityScore(oPC,ABILITY_CONSTITUTION);
SetLocalInt(oStock,sVarName,nAbilityScore);
}
}
Récupération de la variable dans... Dans n'importe quoi:
void main()
{
object oPC = GetPCSpeaker(); //A modifier en fonction de l'évènement
string sFlagName = "_ENTERING_CONSTITUTION";
string sVarName = GetName(oPC)+sFlagName;
nAbilityScore = GetLocalInt(GetModule,sVarName);
}

Par Dzib le 16/7/2002 à 15:23:05 (#1813531)

merci :merci: merci bÔcoup :merci:
Le misérable vermiseau indigne que je suis ne mérite même pas ton aide :merci:
je te serais reconnaissant jusqu'à la fin des temps et au-delà :merci:

.......c'est pitetre un peu bcp ça, non? :maboule:

Par Kray le 16/7/2002 à 16:54:55 (#1814065)

Provient du message de Dzib
merci :merci: merci bÔcoup :merci:
Le misérable vermiseau indigne que je suis ne mérite même pas ton aide :merci:
je te serais reconnaissant jusqu'à la fin des temps et au-delà :merci:
Tu as oublié "Merci d'éclairer ma lanterne impie de ton angélique savoir, Ô mon Maître! Par ce présent écrit, je te lègue toute ma fortune, tous mes biens et m'offre à toi comme exclave pour le restant de ma pitoyable vie!" :D
.......c'est pitetre un peu bcp ça, non? :maboule:
Mais non, voyons! :p

Par Grunk le 16/7/2002 à 17:17:50 (#1814153)

Kray tu es toujours aussi modeste a ce que je vois :p
*sort*

JOL Archives 1.0.1
@ JOL / JeuxOnLine