Publié par silverkrog
Bonjour, j'aimerais avoir quelques éclaircissement si possible, je viens d'installer l'alpha nwnx4 1.06, puis ma base de données mysql comprenant la table pwdata de base. Avez vous un exemple de script permettant de stocker la position du joueur dans la table et de la recuperer afin de le repositionner à l'endroit ou il a quitter le module. En bref si vous avez juste un ou deux petits morceaux de script afin de m'expliquer comment stocker des infos sur les pj ou autres afin de mettre en place un petit systeme de persistance. Merci par avance
Cela rejoint un peu mon probleme.
Personnellement je n utilise pas NWN4, mais je cree un waypoint avec pour tag le nom du joueur au moment ou il se repose.
L idée est de teleporter le joueur a ce waypoint au moment ou le joueur entre dans le module.
Pour l instant ca ne marche pas encore, car visiblement le script de teleportation se declenche trop tot :
Le script sur le oncliententer se declenche, mais le joueur est envoyé au point de depart du modue APRES l execution de ce script.
Je vais donc essayer avec un delay command.
Sinon, tu peux regarder mes bout de script ici :
sur le clientonenter
object oPC = GetEnteringObject();
if (!GetIsPC(oPC)) return;
object oTarget;
location lTarget;
String name = GetName(oPC) ;
oTarget = GetWaypointByTag(name); // le waypoint cree au moment du rest
lTarget = GetLocation(oTarget);
if (GetAreaFromLocation(lTarget)==OBJECT_INVALID) return;
AssignCommand(oPC, ClearAllActions());
AssignCommand(oPC, ActionJumpToLocation(lTarget)); <-- a essayer avec un delaycomand de xx secondes 10 ? 15 ?
ET la creation du waypoint sur le onrest :
object oPC = lejoueur qui viens de se reposer
object oTarget;
object oSpawn;
location loc_PC;
oTarget = oPC;
Loc_PC = GetLocation(oPC);
// recherché de la loc du dernier rest
String name = GetName(oPC) ;
Object tagway = GetWaypointByTag(name) ;
// destruction de l ancien point de rest
DestroyObject(tagway) ;
//*-------------------------------------------
//*creation du nouveau point de rest
//*-------------------------------------------
oSpawn=CreateObject(OBJECT_TYPE_WAYPOINT,"resref du waypoint",Loc_PC,FALSE,name);
|