Astarode Admin
Nombre de messages : 374 Age : 53 Localisation : Elleslande Date d'inscription : 16/11/2005
| Sujet: [VILLE] Script pour un garde municipal Dim 26 Fév - 2:24 | |
| Ce script est à mettre dans le UserDefined du PNJ - Citation :
- //::///////////////////////////////////////////////
//:: Name Cityguard_UserDefined //:: Copyright (c) 2001 Bioware Corp. //::////////////////////////////////////////////// /*
*/ //::////////////////////////////////////////////// //:: Created By: Astarode //:: Created On: 12 janv 2006 //:://////////////////////////////////////////////
#include "functions" // Inclus la bibliothèque permettant d'avoir la fonction "GetHonor"
object oPercep = GetLastPerceived(); object oLeft = GetItemInSlot(INVENTORY_SLOT_LEFTHAND,oPercep); object oRight = GetItemInSlot(INVENTORY_SLOT_RIGHTHAND,oPercep);
void main() { int nUser = GetUserDefinedEventNumber();
if(nUser == 1001) //HEARTBEAT { if (GetIsPC(oPercep) && GetLastPerceptionSeen()) //Test si le dernier object perçu l'a été par la vue { ClearAllActions(); // Se tourne vers le PC ActionDoCommand(SetFacingPoint(GetPosition(oPercep)));
// Verifie que le PC n'a pas d'arme en main if ((oLeft != OBJECT_INVALID) || (oRight != OBJECT_INVALID)) { // Si le PC est arme ActionSpeakString("Hep vous !!! Les armes sont interdites en ville"); ActionWait(5.0); } } } else if(nUser == 1002) // PERCEIVE { if (GetIsPC(oPercep) && GetLastPerceptionSeen()) { ClearAllActions(); int ihonor = GetHonor(oPercep); // Se tourne vers le PC ActionDoCommand(SetFacingPoint(GetPosition(oPercep)));
// Verifie que le PC n'a pas d'arme en main if ((oLeft == OBJECT_INVALID) || (oRight == OBJECT_INVALID)) // Si le PC n'est pas arme { if (ihonor>1500) // Si le PJ a une certaine réputation (honneur>1500 pts), le PNJ le salut par son prénom { ActionSpeakString("Heureux de vous revoir " + GetName(oPercep)); // Salut "PC" } else // Dans les autres cas, donne la phrase standard { ActionSpeakString("Bienvenue dans notre ville étranger");// Salut étranger } // Fixe un temps avant la prochaine replique (2s) ActionWait(2.0); } } } else if(nUser == 1003) // END OF COMBAT {
} else if(nUser == 1004) // ON DIALOGUE {
} else if(nUser == 1005) // ATTACKED {
} else if(nUser == 1006) // DAMAGED {
} else if(nUser == 1007) // DEATH {
} else if(nUser == 1008) // DISTURBED {
}
} | |
|