Bonjour tout le monde
Mon soucis est le suivant :
J'ai placé un script OnClientEnter ( en m'aidant des multiples posts de ce forum, car évidemment, je débute !
) afin que chaque nouveau joueur se voit doté d'un item de persistance (indroppable).
Jusqu'ici tout se passe bien : le nouveau entre en possession du-dit objet à sa première connection. Les fois suivantes, l'item est détecté et n'est pas recréé. Parfait.
Et là, mystère : Je me connecte en MD et je me vois alors également doté de cet item de persistance...
Nouvelle tentative : Je modifie le script afin qu'à l'inverse, seul le DM se voit conféré un objet. Résultat : néant. Aucun objet créé.
Autre tentative : (!GetisPC(oPJ)) avec un floatingtext "vous êtes un DM"... Aucun message au dessus de ma tête lorsque je co en MD...
Encore un autre essai : MeltingPot des fois précédentes, cette fois ci j'insiste lourdement sur l'idendification du DM (voir code ci après), puis je vérifie s'il a l'outil DM (bidon), et le lui donne si tel n'est pas le cas.
Là je passe au PJ, et remet les lignes concernant l'item de persistance... Nada pour le DM, okay pour le PJ.
Alors voilà, je comprend pas
.
Je vous met le script tel qu'il était au démarrage :
void main()
{
object oPJ = GetEnteringObject();
if (!GetIsPC(oPJ)) return;
if(GetItemPossessedBy(oPJ, "FC_opersist")== OBJECT_INVALID)
{
CreateItemOnObject("fc_opersist", oPJ);
CreateItemOnObject("pjemotwand", oPJ);
}
}
Et puis la toute dernière version archi lourdingue après X heures d'arrachage de cheveux
:
void main()
{
object oPJ = GetEnteringObject();
if (!GetIsPC(oPJ))
{
if(GetIsDM(oPJ))
{
if(GetItemPossessedBy(oPJ, "mdwand") == OBJECT_INVALID)
{
CreateItemOnObject("mdwand", oPJ);
}
}
return;
}
if(GetItemPossessedBy(oPJ, "FC_opersist")== OBJECT_INVALID)
{
CreateItemOnObject("fc_opersist", oPJ);
CreateItemOnObject("pjemotwand", oPJ);
}
}
J'avoue qu'à la longue je ne savais plus trop ce que je faisais
.
Bref, si quelqu'un pouvait éclairer ma lanterne, j'apprécierais beaucoup.
Ai je fais d'énormes erreurs dans le code ?
Ai je oublié quelque chose ? (décommenter une option quelque part par exemple ?).
Cela peut il venir du fait que pour les tests je lance le serveur ET le client sur le même PC ?
Merci par avance pour vos conseils
Altariel *apprenti quiche*