Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- Respetar los créditos del autor si le ha servido esta GM.
- Post Forum SA-MP: http://forum.sa-mp.com/showthread.php?p=2750460#post2750460
- asdasd
- Descargas:
- MEGA: https://mega.co.nz/#!6MwQFKoY!GJGp41HA-8eCgT-cgQPwyFb-cudgnUVa0rCNJImDDRQ
- MediaFire: http://www.mediafire.com/download/h9vvj1emfikscvw/A_RNPC.zip
- */
- #include <a_samp>
- #include <zcmd>
- #include <sscanf2>
- #include <a_rnpc>
- #define ROJO 0xF10000FF
- new Float:SavePos_SetRNPCPos[3];
- new Float:SavePos_MoveRNPC[4];
- new Save_SetRNPCSkillLevel[2];
- new Float:SavePos_RNPCWalkTo[3];
- new Float:SavePos_RNPCRunTo[3];
- new Float:SavePos_RNPCSprinTo[3];
- new Float:SavePos_RNPCAimAt[2];
- new Float:SavePos_RNPCShotAt[2];
- new Npc[1];
- new VehicleID;
- new PlayerText:TextDrawPos;
- new Grabando[MAX_PLAYERS];
- new YaGrabo[MAX_PLAYERS];
- #define PRESSED(%0) \
- (((newkeys & (%0)) == (%0)) && ((oldkeys & (%0)) != (%0)))
- //========================================================
- #define NPC_GENERAL 0
- #define NPC_GENERAL_GetRNPCID 1
- #define NPC_GENERAL_GetRNPCState 2
- #define NPC_GENERAL_GetRNPCName 3
- #define NPC_GENERAL_GetRNPCVirtualWorld 4
- //=============
- #define NPC_GENERAL_SetRNPCVirtualWorld 5
- #define NPC_GENERAL_SetRNPCVirtualWorld_WORLDID 6
- //========================================================
- #define NPC_VEHICULO 7
- #define NPC_VEHICULO_PutRNPCInVehicle 8
- #define NPC_VEHICULO_RemoveRNPCFromVehicle 9
- #define NPC_VEHICULO_SetRNPCVehicleSiren 10
- #define NPC_VEHICULO_GetRNPCVehicleSiren 11
- //========================================================
- #define NPC_PIE 12
- #define NPC_PIE_SetRNPCSkin 13
- //=============
- #define NPC_PIE_SetRNPCPos 14
- #define SetRNPCPos_PosX 15
- #define SetRNPCPos_PosY 16
- #define SetRNPCPos_PosZ 17
- #define NPC_PIE_GetRNPCPos 18
- //=============
- #define NPC_PIE_MoveRNPC 19
- #define MoveRNPC_PosX 20
- #define MoveRNPC_PosY 21
- #define MoveRNPC_PosZ 22
- #define MoveRNPC_Speed 23
- #define MoveRNPC_Speed2 24
- //=============
- #define NPC_PIE_SetRNPCFacingAngle 25
- #define NPC_PIE_SetRNPCHealth 26
- #define NPC_PIE_GetRNPCHealth 27
- #define NPC_PIE_SetRNPCArmour 28
- #define NPC_PIE_SetRNPCWeapon 29
- #define NPC_PIE_GetRNPCWeapon 30
- //=============
- #define NPC_PIE_SetRNPCSkillLevel 31
- #define NPC_PIE_SetRNPCSkillLevel2 32
- //========================================================
- #define NPC_ACCIONES 33
- #define NPC_ACCIONES_RNPCWalkTo 34
- #define WalkTo_PosX 35
- #define WalkTo_PosY 36
- #define WalkTo_PosZ 37
- //=============
- #define NPC_ACCIONES_RNPCRunTo 38
- #define RNPCRunTo_PosX 39
- #define RNPCRunTo_PosY 40
- #define RNPCRunTo_PosZ 41
- //=============
- #define NPC_ACCIONES_RNPCSprintTo 42
- #define RNPCSprintTo_PosX 43
- #define RNPCSprintTo_PosY 44
- #define RNPCSprintTo_PosZ 45
- //=============
- #define NPC_ACCIONES_RNPCAimAt 46
- #define RNPCAimAt_PosX 47
- #define RNPCAimAt_PosY 48
- //=============
- #define NPC_ACCIONES_RNPCShotAt 49
- #define RNPCShotAt_PosX 50
- #define RNPCShotAt_PosY 51
- //=============
- #define NPC_ACCIONES_RNPCStopUseWeapon 52
- //=============
- #define NPC_ACCIONES_RNPCDriveTo 53
- #define RNPCDriveTo_PosX 54
- #define RNPCDriveTo_PosY 55
- #define RNPCDriveTo_PosZ 56
- #define RNPCDriveTo_Speed 57
- //=============
- #define NPC_ACCIONES_RNPCFollowPlayer 58
- //========================================================
- /*#define NPC_REC 29
- #define NPC_REC_RNPC_StartPlayback 60
- #define NPC_REC_RNPC_StopPlayback 61
- #define NPC_REC_RNPC_StartBuildPlayback 62
- */
- main()
- {
- Npc[0] = CreateRNPC("[NPC]EnzoMetlc");
- }
- public OnGameModeInit()
- {
- SetGameModeText("Testeando Npc's");
- SendRconCommand("hostname RNPC Funciones - EnzoMetlc");
- for(new i = 0; i < 299; i++)
- {
- AddPlayerClass(i, 0.00, 0.00, 0.00, 0.00, 1, 2, 3, 4, 5, 2);
- }
- return 1;
- }
- //========================================================== CALLBACK'S PARA JUGADORES ==========================================================//
- public OnPlayerRequestClass(playerid, classid)
- {
- SetupPlayerForClassSelection(playerid);
- return 1;
- }
- forward SetupPlayerForClassSelection(playerid);
- public SetupPlayerForClassSelection(playerid)
- {
- SetPlayerWeather(playerid, 4);
- SetPlayerCameraPos(playerid, -1714.123657, 751.862609, 24.742170);
- SetPlayerCameraLookAt(playerid, -1714.245727, 756.106506, 24.734375);
- SetPlayerFacingAngle(playerid, 180.135635);
- SetPlayerPos(playerid, -1714.245727, 756.106506, 24.734375);
- return 1;
- }
- public OnPlayerConnect(playerid)
- {
- Grabando[playerid] = 0;
- YaGrabo[playerid] = 0;
- TextDrawPos = CreatePlayerTextDraw(playerid,220.000000, 426.000000, "Pos: -1585.121459, 729.420776, 8.132681");
- PlayerTextDrawBackgroundColor(playerid, TextDrawPos, 255);
- PlayerTextDrawFont(playerid, TextDrawPos, 2);
- PlayerTextDrawLetterSize(playerid, TextDrawPos, 0.230000, 1.700000);
- PlayerTextDrawColor(playerid, TextDrawPos, -16776961);
- PlayerTextDrawSetOutline(playerid, TextDrawPos, 0);
- PlayerTextDrawSetProportional(playerid, TextDrawPos, 1);
- PlayerTextDrawSetShadow(playerid, TextDrawPos, 1);
- PlayerTextDrawSetSelectable(playerid, TextDrawPos, 0);
- return 1;
- }
- public OnPlayerSpawn(playerid)
- {
- PlayerTextDrawShow(playerid, TextDrawPos);
- SendClientMessage(playerid, -1, "{00FF00}[INFO] Utilize (/Npc) para ver los comandos para controlar al Npc.");
- SendClientMessage(playerid, -1, "{00FF00}[INFO] Cree un Vehículo con el Comando (/Car [ID de Vehículo]).");
- SetTimerEx("ActualizarPos", 150, true, "d", playerid);
- SetRNPCPos(Npc[0], -1680.5272, 705.6332, 30.6016);
- GivePlayerWeapon(playerid, 5, 1000);
- GivePlayerWeapon(playerid, 24, 1000);
- GivePlayerWeapon(playerid, 27, 1000);
- GivePlayerWeapon(playerid, 29, 1000);
- GivePlayerWeapon(playerid, 31, 1000);
- GivePlayerWeapon(playerid, 36, 1000);
- SetPlayerTime(playerid, 12, 5);
- SetPlayerPos(playerid, -1682.5272, 705.6332, 30.6016);
- return 1;
- }
- forward ActualizarPos(playerid);
- public ActualizarPos(playerid)
- {
- new Float:Pos[3];
- new string[100];
- GetPlayerPos(playerid, Pos[0], Pos[1], Pos[2]);
- format(string, 100, "~w~Pos: ~r~%f~w~, ~r~%f~w~, ~r~%f~w~.", Pos[0], Pos[1], Pos[2]);
- PlayerTextDrawSetString(playerid, TextDrawPos, string);
- return 1;
- }
- //========================================================== CALLBACK'S PARA EL NPC ==========================================================//
- public OnRNPCCreated(npcid)
- {
- print("Un Npc se ha creado en el Servidor. :D");
- return 1;
- }
- public OnRNPCDestroyed(npcid)
- {
- print("Un NPC ha sido destruido. :(");
- return 1;
- }
- public OnRNPCSpawn(npcid)
- {
- print("Un NPC ha spawneado en el Servidor");
- return 1;
- }
- public OnRNPCPlaybackFinished(npcid)
- {
- print("Un NPC terminó su grabación.");
- return 1;
- }
- public OnRNPCDeath(npcid)
- {
- print("Es raro que esta callback sea llamado...");
- print("... Pero un NPC ha muerto ._.");
- return 1;
- }
- //=======================================================================================================================================================================//
- public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
- {
- switch(dialogid)
- {
- case NPC_GENERAL:
- {
- if(response)
- {
- switch(listitem)
- {
- case 0:
- {
- new string[40];
- format(string, sizeof(string), "*** La ID del NPC es: {F11515}%d{FFFFFF}.", GetRNPCID(Npc[0]));
- SendClientMessage(playerid, -1, string);
- }
- case 1:
- {
- new string[60];
- format(string, sizeof(string), "El estado del NPC es: {F11515}%i{FFFFFF}.", GetRNPCState(Npc[0]));
- SendClientMessage(playerid, -1, string);
- }
- case 2:
- {
- new string[60];
- format(string, sizeof(string), "El Nick del NPC es: {F11515}%s{FFFFFF}.", GetRNPCName(Npc[0]));
- SendClientMessage(playerid, -1, string);
- }
- case 3:
- {
- new string[100];
- format(string, sizeof(string), "*** El Mundo Virtual del NPC es: {F11515}%i{FFFFFF}.", GetRNPCVirtualWorld(Npc[0]));
- SendClientMessage(playerid, -1, string);
- }
- case 4:
- {
- ShowPlayerDialog(playerid, NPC_GENERAL_SetRNPCVirtualWorld_WORLDID, DIALOG_STYLE_INPUT, "{00FFFF}Introducir NPC a Mundo Virtual.", \
- "Escriba la ID del Mundo Virtua que desea meter al NPC.", "Continuar", "Cancelar");
- }
- }
- }
- }
- case NPC_GENERAL_SetRNPCVirtualWorld_WORLDID:
- {
- if(!response) return Dialog_NPC_GENERAL(playerid);
- SetRNPCVirtualWorld(Npc[0], strval(inputtext));
- new string[100];
- format(string, sizeof(string), "*** Metiste al NPC al Mundo Virtual número: %i", strval(inputtext));
- return SendClientMessage(playerid, -1, string);
- }
- //=======================================================================================================================================================================//
- case NPC_VEHICULO:
- {
- if(response)
- {
- switch(listitem)
- {
- case 0:
- {
- if(IsPlayerInAnyVehicle(playerid))
- {
- VehicleID = GetPlayerVehicleID(playerid);
- PutRNPCInVehicle(Npc[0], VehicleID, 0);
- }
- else {
- SendClientMessage(playerid, ROJO, "[<!>] Usted debe estar en un Vehículo.");
- }
- }
- case 1:
- {
- if(IsPlayerInAnyVehicle(Npc[0]))
- {
- RemoveRNPCFromVehicle(Npc[0]);
- SendClientMessage(playerid, -1, "[INFO] Usted quitó a NPC de su Vehículo.");
- }
- else {
- SendClientMessage(playerid, ROJO, "[<!>] El NPC no está en un Vehículo.");
- }
- }
- case 2:
- {
- if(IsPlayerInAnyVehicle(Npc[0]))
- {
- ShowPlayerDialog(playerid, NPC_VEHICULO_SetRNPCVehicleSiren, DIALOG_STYLE_INPUT, \
- "{00FFFF}Seleccione al RNPC para hacer la acción.", "Coloque el estado de la Sirena para poner al NPC.", "Seleccionar", "Cancelar");
- }
- else {
- SendClientMessage(playerid, ROJO, "[<!>] El NPC no está en un Vehículo.");
- }
- }
- case 3:
- {
- new string[120];
- format(string, sizeof(string), "*** Sirena deL npc: %i.", GetRNPCVehicleSiren(Npc[0]));
- SendClientMessage(playerid, -1, string);
- }
- }
- }
- }
- case NPC_VEHICULO_SetRNPCVehicleSiren:
- {
- if(!response) return Dialog_NPC_VEHICULO(playerid);
- new string[120];
- SetRNPCVehicleSiren(Npc[0], strval(inputtext));
- format(string, sizeof(string), "*** Usted puso el estado de la sirena del NPC en: %i.", strval(inputtext));
- return SendClientMessage(playerid, -1, string);
- }
- //=======================================================================================================================================================================//
- case NPC_PIE:
- {
- if(response)
- {
- switch(listitem)
- {
- case 0:
- {
- ShowPlayerDialog(playerid, NPC_PIE_SetRNPCSkin, DIALOG_STYLE_INPUT, \
- "{00FFFF}SetRNPCSkin", "Introduzca la ID del Skin para poner al NPC.", "Continuar", "Cancelar");
- }
- case 1:
- {
- ShowPlayerDialog(playerid, NPC_PIE_SetRNPCPos, DIALOG_STYLE_LIST, "{00FFFF}SetRNPCPos", "Traer a mi posición.\nEscribir posición X, Y, Z.", "Aceptar", "Cancelar");
- }
- case 2:
- {
- new Float:Pos[3], string[125];
- GetRNPCPos(Npc[0], Pos[0], Pos[1], Pos[2]);
- format(string, sizeof(string), "*** La posición del NPC es: {F11515}X: %f{FFFFFF}, {F11515}Y: %f{FFFFFF}, {F11515}Z: %f{FFFFFF}.", Pos[0], Pos[1], Pos[2]);
- SendClientMessage(playerid, -1, string);
- }
- case 3:
- {
- ShowPlayerDialog(playerid, NPC_PIE_MoveRNPC, DIALOG_STYLE_LIST, \
- "{00FFFF}MoveRNPC.", "Traer a mi posición.\nEscribir los parámetros: X, Y, Z, Speed.", "Seleccionar", "Cancelar");
- }
- case 4:
- {
- ShowPlayerDialog(playerid, NPC_PIE_SetRNPCFacingAngle, DIALOG_STYLE_INPUT, \
- "{00FFFF}SetRNPCFacingAngle.", "{FFFFFF}Escriba el ángulo que dese a poner al NPC.\nNorte: 0.| Sur: 180.| Este: 270.| Oeste: 90.", "Continuar", "Cancelar");
- }
- case 5:
- {
- ShowPlayerDialog(playerid, NPC_PIE_SetRNPCHealth, DIALOG_STYLE_INPUT, \
- "{00FFFF}SetRNPCHealth.", "{FFFFFF}Introduzca la cantidad de vida que desea poner al NPC.", "Continuar", "Cancelar");
- }
- case 6:
- {
- new string[30];
- format(string, sizeof(string), "*** La vida del NPC es: %i", GetRNPCHealth(Npc[0]));
- SendClientMessage(playerid, -1, string);
- }
- case 7:
- {
- ShowPlayerDialog(playerid, NPC_PIE_SetRNPCArmour, DIALOG_STYLE_INPUT, \
- "{00FFFF}SetRNPCWeapon.", "{FFFFFF}Introduzca la cantidad de Armadura que le desea dar al NPC.", "Continuar", "Cancelar");
- }
- case 8:
- {
- new string[35];
- format(string, sizeof(string), "*** La armadura del NPC es: %i", GetRNPCArmour(Npc[0]));
- SendClientMessage(playerid, -1, string);
- }
- case 9:
- {
- ShowPlayerDialog(playerid, NPC_PIE_SetRNPCWeapon, DIALOG_STYLE_INPUT, \
- "{00FFFF}SetRNPCWeapon.", "{FFFFFF}Introduzca la ID del arma que le desea dar al NPC.", "Continuar", "Cancelar");
- }
- case 10:
- {
- new string[30];
- format(string, sizeof(string), "*** El arma del NPC es: %i", GetRNPCWeapon(Npc[0]));
- SendClientMessage(playerid, -1, string);
- }
- case 11:
- {
- ShowPlayerDialog(playerid, NPC_PIE_SetRNPCSkillLevel, DIALOG_STYLE_INPUT, \
- "{00FFFF}SetRNPCSkillLevel.", "Introduzca la ID del arma que desea dar la habilidad al NPC.", "Seleccionar", "Cancelar");
- }
- }
- }
- }
- //====================================== SetRNPCSkin ======================================//
- case NPC_PIE_SetRNPCSkin:
- {
- if(!response) return Dialog_NPC_PIE(playerid);
- new string[60];
- SetRNPCSkin(Npc[0], strval(inputtext));
- format(string, sizeof(string), "*** Le pusiste al NPC el Skin: %i.", strval(inputtext));
- return SendClientMessage(playerid, -1, string);
- }
- case NPC_PIE_SetRNPCPos:
- {
- if(!response) return Dialog_NPC_PIE(playerid);
- switch(listitem)
- {
- case 0:
- {
- new Float:Pos[3];
- GetPlayerPos(playerid, Pos[0], Pos[1], Pos[2]);
- SetRNPCPos(Npc[0], Pos[0]-2.0, Pos[1], Pos[2]);
- SendClientMessage(playerid, -1, "*** NPC llevado a su Posición.");
- }
- case 1:
- {
- ShowPlayerDialog(playerid, SetRNPCPos_PosX, DIALOG_STYLE_INPUT, "{FFFFFF}SetRNPCPos: {F11515}PosX{FFFFFF}.", \
- "Escribe la posicion X a la que desea llevar al NPC.", "Aceptar", "Cancelar");
- }
- }
- }
- //====================================== SetRNPCPos ======================================//
- case SetRNPCPos_PosX:
- {
- if(!response) return ShowPlayerDialog(playerid, NPC_PIE_SetRNPCPos, DIALOG_STYLE_LIST, "{00FFFF}SetRNPCPos", "Traer a mi posición.\nEscribir posición X, Y, Z.", "Aceptar", "Cancelar");
- SavePos_SetRNPCPos[0] = floatstr(inputtext);
- ShowPlayerDialog(playerid, SetRNPCPos_PosY, DIALOG_STYLE_INPUT, "{FFFFFF}SetRNPCPos: {F11515}PosY{FFFFFF}.", "Escribe la posicion Y a la que desea llevar al NPC.", "Aceptar", "Cancelar");
- }
- case SetRNPCPos_PosY:
- {
- if(!response) return ShowPlayerDialog(playerid, SetRNPCPos_PosX, DIALOG_STYLE_INPUT, "{FFFFFF}SetRNPCPos: {F11515}PosX{FFFFFF}.", "Escribe la posicion X a la que desea llevar al NPC.", "Aceptar", "Cancelar");
- SavePos_SetRNPCPos[1] = floatstr(inputtext);
- ShowPlayerDialog(playerid, SetRNPCPos_PosZ, DIALOG_STYLE_INPUT, "{FFFFFF}SetRNPCPos: {F11515}PosZ{FFFFFF}.", "Escribe la posicion Z a la que desea llevar al NPC.", "Aceptar", "Cancelar");
- }
- case SetRNPCPos_PosZ:
- {
- if(!response) return ShowPlayerDialog(playerid, SetRNPCPos_PosY, DIALOG_STYLE_INPUT, "{FFFFFF}SetRNPCPos: {F11515}PosY{FFFFFF}.", "Escribe la posicion Y a la que desea llevar al NPC.", "Aceptar", "Cancelar");
- SavePos_SetRNPCPos[2] = floatstr(inputtext);
- SetRNPCPos(Npc[0], SavePos_SetRNPCPos[0], SavePos_SetRNPCPos[1], SavePos_SetRNPCPos[2]);
- }
- //====================================== MoveRNPC ======================================//
- case NPC_PIE_MoveRNPC:
- {
- if(!response) return Dialog_NPC_PIE(playerid);
- switch(listitem)
- {
- case 0:
- {
- ShowPlayerDialog(playerid, MoveRNPC_Speed2, DIALOG_STYLE_INPUT, "{FFFFFF}MoveRNPC: {F11515}Speed{FFFFFF}.", \
- "{FFFFFF}Escribe la velocidad a la que desea mover al NPC {F11515}({FFFFFF}'0.006' es el valor normal{F11515}){FFFFFF}.", "Aceptar", "Cancelar");
- }
- case 1:
- {
- ShowPlayerDialog(playerid, MoveRNPC_PosX, DIALOG_STYLE_INPUT, "{FFFFFF}MoveRNPC: {F11515}PosX{FFFFFF}.", \
- "Escribe la posicion X a la que desea mover al NPC.", "Aceptar", "Cancelar");
- }
- }
- }
- case MoveRNPC_Speed2:
- {
- if(!response) return ShowPlayerDialog(playerid, NPC_PIE_MoveRNPC, DIALOG_STYLE_LIST, "{00FFFF}MoveRNPC.", "Traer a mi posición.\nEscribir los parámetros: X, Y, Z, Speed.", "Seleccionar", "Cancelar");
- new string[80];
- new Float:Pos[3];
- GetPlayerPos(playerid, Pos[0], Pos[1], Pos[2]);
- MoveRNPC(Npc[0], Pos[0], Pos[1], Pos[2], floatstr(inputtext));
- format(string, sizeof(string), "*** NPC movido a su Posición con la velocidad: %0.3f.", floatstr(inputtext));
- SendClientMessage(playerid, -1, string);
- }
- case MoveRNPC_PosX:
- {
- if(!response) return ShowPlayerDialog(playerid, NPC_PIE_MoveRNPC, DIALOG_STYLE_LIST, "{00FFFF}MoveRNPC", "Traer a mi posición.\nEscribir parámetros: X, Y, Z, Speed.", "Aceptar", "Cancelar");
- SavePos_MoveRNPC[0] = floatstr(inputtext);
- ShowPlayerDialog(playerid, MoveRNPC_PosY, DIALOG_STYLE_INPUT, "{FFFFFF}MoveRNPC: {F11515}PosY{FFFFFF}.", "Escribe la posicion Y a la que desea mover al NPC.", "Aceptar", "Cancelar");
- }
- case MoveRNPC_PosY:
- {
- if(!response) return ShowPlayerDialog(playerid, MoveRNPC_PosX, DIALOG_STYLE_INPUT, "{00FF00}MoveRNPC: {F11515}PosX{FFFFFF}.", "Escribe la posicion X a la que desea mover al NPC.", "Aceptar", "Cancelar");
- SavePos_MoveRNPC[1] = floatstr(inputtext);
- ShowPlayerDialog(playerid, MoveRNPC_PosZ, DIALOG_STYLE_INPUT, "{FFFFFF}MoveRNPC: {F11515}PosZ{FFFFFF}.", "Escribe la posicion Z a la que desea mover al NPC.", "Aceptar", "Cancelar");
- }
- case MoveRNPC_PosZ:
- {
- if(!response) return ShowPlayerDialog(playerid, SetRNPCPos_PosY, DIALOG_STYLE_INPUT, "{00FF00}MoveRNPC: {F11515}PosY{FFFFFF}.", "Escribe la posicion Y a la que desea mover al NPC.", "Aceptar", "Cancelar");
- SavePos_MoveRNPC[2] = floatstr(inputtext);
- ShowPlayerDialog(playerid, MoveRNPC_Speed, DIALOG_STYLE_INPUT, "{FFFFFF}MoveRNPC: {F11515}Speed{FFFFFF}.", "{FFFFFF}Escribe la velocidad a la que desea mover al NPC {F11515}({FFFFFF}'0.006' es el valor normal{F11515}){FFFFFF}.", "Aceptar", "Cancelar");
- }
- case MoveRNPC_Speed:
- {
- if(!response) return ShowPlayerDialog(playerid, SetRNPCPos_PosZ, DIALOG_STYLE_INPUT, "{FFFFFF}MoveRNPC: {F11515}PosZ{FFFFFF}.", "Escribe la posicion Z a la que desea mover al NPC.", "Aceptar", "Cancelar");
- SavePos_MoveRNPC[3] = floatstr(inputtext);
- new string[150];
- MoveRNPC(Npc[0], SavePos_MoveRNPC[0], SavePos_MoveRNPC[1], SavePos_MoveRNPC[2], SavePos_MoveRNPC[3]);
- format(string, sizeof(string), "PosX: {F11515}%f{FFFFFF}, PosY: {F11515}%f{FFFFFF}, PosZ: {F11515}%f{FFFFFF}, Speed: {F11515}%f{FFFFFF}.", SavePos_MoveRNPC[0], SavePos_MoveRNPC[1], SavePos_MoveRNPC[2], SavePos_MoveRNPC[3]);
- SendClientMessage(playerid, -1, string);
- }
- //====================================== SetRNPCFacingAngle ======================================//
- case NPC_PIE_SetRNPCFacingAngle:
- {
- if(!response) return Dialog_NPC_PIE(playerid);
- new string[70];
- SetRNPCFacingAngle(Npc[0], floatstr(inputtext));
- format(string, sizeof(string), "*** Ángulo puesto: º%0.0f.", floatstr(inputtext));
- SendClientMessage(playerid, -1, string);
- }
- case NPC_PIE_SetRNPCHealth:
- {
- if(!response) return Dialog_NPC_PIE(playerid);
- new string[50];
- SetRNPCHealth(Npc[0], strval(inputtext));
- format(string, sizeof(string), "*** Le pusiste 'º%i' de vida al NPC.", strval(inputtext));
- SendClientMessage(playerid, -1, string);
- }
- case NPC_PIE_SetRNPCArmour:
- {
- if(!response) return Dialog_NPC_PIE(playerid);
- new string[100];
- SetRNPCArmour(Npc[0], strval(inputtext));
- format(string, 100, "*** Le pusiste 'º%i' de armadura al NPC.", strval(inputtext));
- SendClientMessage(playerid, -1, string);
- }
- case NPC_PIE_SetRNPCWeapon:
- {
- if(!response) return Dialog_NPC_PIE(playerid);
- new string[100];
- SetRNPCWeapon(Npc[0], strval(inputtext));
- format(string, 100, "*** Le pusiste el arma número '%i' al NPC.", strval(inputtext));
- SendClientMessage(playerid, -1, string);
- }
- //====================================== SetRNPCSkillLevel ======================================//
- case NPC_PIE_SetRNPCSkillLevel:
- {
- if(!response) return Dialog_NPC_PIE(playerid);
- Save_SetRNPCSkillLevel[0] = strval(inputtext);
- ShowPlayerDialog(playerid, NPC_PIE_SetRNPCSkillLevel2, DIALOG_STYLE_INPUT, "{FFFFFF}SetRNPCSkillLevel: {F11515}SkillLevel{FFFFFF}.", \
- "Introduzca la cantidad de habilidad que le desea dar al NPC.", "Continuar", "Cancelar");
- }
- case NPC_PIE_SetRNPCSkillLevel2:
- {
- if(!response) return ShowPlayerDialog(playerid, NPC_PIE_SetRNPCSkillLevel, DIALOG_STYLE_INPUT, "{00FFFF}SetRNPCSkillLevel.", "Introduzca la ID del arma que desea dar la habilidad al NPC.", "Seleccionar", "Cancelar");
- new string[90];
- Save_SetRNPCSkillLevel[1] = strval(inputtext);
- SetRNPCSkillLevel(Npc[0], Save_SetRNPCSkillLevel[0], Save_SetRNPCSkillLevel[1]);
- format(string, sizeof(string), "ID de Arma: {F11515}%i{FFFFFF}. | Cantidad de habilidad: {F11515}%i{FFFFFF}.", Save_SetRNPCSkillLevel[0], Save_SetRNPCSkillLevel[1]);
- SendClientMessage(playerid, -1, string);
- }
- //=======================================================================================================================================================================//
- case NPC_ACCIONES:
- {
- if(response)
- {
- switch(listitem)
- {
- case 0:
- {
- ShowPlayerDialog(playerid, NPC_ACCIONES_RNPCWalkTo, DIALOG_STYLE_LIST, \
- "{00FFFF}RNPCWalkTo.", "Traer NPC a mi posición.\nEscribir posición X, Y, Z.", "Seleccionar", "Cancelar");
- }
- case 1:
- {
- ShowPlayerDialog(playerid, NPC_ACCIONES_RNPCRunTo, DIALOG_STYLE_LIST, \
- "{00FFFF}RNPCRunTo.", "Traer NPC a mi posición.\nEscribir posición X, Y, Z.", "Seleccionar", "Cancelar");
- }
- case 2:
- {
- ShowPlayerDialog(playerid, NPC_ACCIONES_RNPCSprintTo, DIALOG_STYLE_LIST, \
- "{00FFFF}RNPCSprintTo.", "Traer NPC a mi posición.\nEscribir posición X, Y, Z.", "Seleccionar", "Cancelar");
- }
- case 3:
- {
- new Armas = GetPlayerWeapon(Npc[0]);
- if(Armas < 17)
- {
- SendClientMessage(playerid, ROJO, "[<!>] El NPC debe tener un arma de fuego.");
- }
- else {
- ShowPlayerDialog(playerid, NPC_ACCIONES_RNPCAimAt, DIALOG_STYLE_LIST, \
- "{00FFFF}RNPCAimAt.", "Hacer que el NPC apunte a mí.\nHacer apuntar al NPC a la posición X, Y.", "Seleccionar", "Cancelar");
- }
- }
- case 4:
- {
- ShowPlayerDialog(playerid, NPC_ACCIONES_RNPCShotAt, DIALOG_STYLE_LIST, \
- "{00FFFF}RNPCShotAt.", "Hacer que el NPC dispare hacia mi posición.\nEscribir las posición X, Y.", "Seleccionar", "Cancelar");
- }
- case 5:
- {
- RNPCStopUseWeapon(Npc[0]);
- SendClientMessage(playerid, -1, "*** El NPC dejó de disparar.");
- }
- case 6:
- {
- ShowPlayerDialog(playerid, NPC_ACCIONES_RNPCDriveTo, DIALOG_STYLE_LIST, \
- "{00FFFF}RNPCDriveTo.", "[NPC]SA.MP1 \n[NPC]SA.MP2 \n[NPC]SA.MP3 \n[NPC]SA.MP4 \n[NPC]SA.MP5", "Seleccionar", "Cancelar");
- }
- case 7:
- {
- //RNPCFollowPlayer(Npc[0], playerid, RNPC_SPEED_SPRINT);
- //SendClientMessage(playerid, -1, "*** El NPC lo perseguirá hasta la muerte.");
- ShowPlayerDialog(playerid, NPC_ACCIONES_RNPCFollowPlayer, DIALOG_STYLE_LIST, \
- "{00FFFF}RNPCFollowPlayer.", "RNPC_SPEED_SPRINT. \nRNPC_SPEED_RUN. \nRNPC_SPEED_WALK. \nRNPC_SPEED_FASTWALK.", "Seleccionar", "Cancelar");
- }
- }
- }
- }
- case NPC_ACCIONES_RNPCWalkTo:
- {
- if(!response) return Dialog_NPC_ACCIONES(playerid);
- switch(listitem)
- {
- case 0:
- {
- new Float:Pos[3];
- GetPlayerPos(playerid, Pos[0], Pos[1], Pos[2]);
- RNPCWalkTo(Npc[0], Pos[0], Pos[1], Pos[2]);
- SendClientMessage(playerid, -1, "*** NPC caminado hasta su posición.");
- }
- case 1:
- {
- ShowPlayerDialog(playerid, WalkTo_PosX, DIALOG_STYLE_INPUT, \
- "{FFFFFF}RNPCWalkTo: {F11515}PosX{FFFFFF}.", "{FFFFFF}Escriba la posición X.", "Seleccionar", "Cancelar");
- }
- }
- }
- case WalkTo_PosX:
- {
- if(!response) return ShowPlayerDialog(playerid, NPC_ACCIONES_RNPCWalkTo, DIALOG_STYLE_LIST, "{00FFFF}RNPCWalkTo.", "Traer NPC a mi posición.\nEscribir posición X, Y, Z.", "Seleccionar", "Cancelar");
- SavePos_RNPCWalkTo[0] = floatstr(inputtext);
- ShowPlayerDialog(playerid, WalkTo_PosY, DIALOG_STYLE_INPUT, "{FFFFFF}RNPCWalkTo: {F11515}PosY{FFFFFF}.", "{FFFFFF}Escribe la posicion Y a la que desea mover al NPC.", "Aceptar", "Cancelar");
- }
- case WalkTo_PosY:
- {
- if(!response) return ShowPlayerDialog(playerid, WalkTo_PosX, DIALOG_STYLE_INPUT, "{FFFFFF}RNPCWalkTo: {F11515}PosX{FFFFFF}.", "{FFFFFF}Escriba la posición X.", "Seleccionar", "Cancelar");
- SavePos_RNPCWalkTo[1] = floatstr(inputtext);
- ShowPlayerDialog(playerid, WalkTo_PosZ, DIALOG_STYLE_INPUT, "{FFFFFF}RNPCWalkTo: {F11515}PosZ{FFFFFF}.", "{FFFFFF}Escribe la posicion Z a la que desea mover al NPC.", "Aceptar", "Cancelar");
- }
- case WalkTo_PosZ:
- {
- if(!response) return ShowPlayerDialog(playerid, MoveRNPC_PosY, DIALOG_STYLE_INPUT, "{FFFFFF}RNPCWalkTo: {F11515}PosY{FFFFFF}.", "{FFFFFF}Escribe la posicion Y a la que desea mover al NPC.", "Aceptar", "Cancelar");
- new string[125];
- SavePos_RNPCWalkTo[2] = floatstr(inputtext);
- RNPCWalkTo(Npc[0], SavePos_RNPCWalkTo[0], SavePos_RNPCWalkTo[1], SavePos_RNPCWalkTo[2]);
- format(string, 125, "PosX: {F11515}%f{FFFFFF}, PosY: {F11515}%f{FFFFFF}, PosZ: {F11515}%f{FFFFFF}.", SavePos_RNPCWalkTo[0], SavePos_RNPCWalkTo[1], SavePos_RNPCWalkTo[2]);
- SendClientMessage(playerid, -1, string);
- }
- case NPC_ACCIONES_RNPCRunTo:
- {
- if(!response) return Dialog_NPC_ACCIONES(playerid);
- switch(listitem)
- {
- case 0:
- {
- new Float:Pos[3];
- GetPlayerPos(playerid, Pos[0], Pos[1], Pos[2]);
- RNPCRunTo(Npc[0], Pos[0], Pos[1], Pos[2]);
- SendClientMessage(playerid, -1, "*** NPC trotando hasta su posición.");
- }
- case 1:
- {
- ShowPlayerDialog(playerid, RNPCRunTo_PosX, DIALOG_STYLE_INPUT, \
- "{FFFFFF}RNPCRunTo: {F11515}PosX{FFFFFF}.", "{FFFFFF}Escriba la posición X para hacer caminar al NPC.", "Seleccionar", "Cancelar");
- }
- }
- }
- case RNPCRunTo_PosX:
- {
- if(!response) return ShowPlayerDialog(playerid, NPC_ACCIONES_RNPCRunTo, DIALOG_STYLE_LIST, "{00FFFF}RNPCRunTo.", "Traer NPC a mi posición.\nEscribir posición X, Y, Z.", "Seleccionar", "Cancelar");
- SavePos_RNPCRunTo[0] = floatstr(inputtext);
- ShowPlayerDialog(playerid, RNPCRunTo_PosY, DIALOG_STYLE_INPUT, "{FFFFFF}RNPCRunTo: {F11515}PosY{FFFFFF}.", "{FFFFFF}Escribe la posicion Y para hacer trotar al NPC.", "Aceptar", "Cancelar");
- }
- case RNPCRunTo_PosY:
- {
- if(!response) return ShowPlayerDialog(playerid, RNPCRunTo_PosX, DIALOG_STYLE_INPUT, "{FFFFFF}RNPCRunTo: {F11515}PosX{FFFFFF}.", "{FFFFFF}Escriba la posición X para hacer trotar al NPC.", "Seleccionar", "Cancelar");
- SavePos_RNPCRunTo[1] = floatstr(inputtext);
- ShowPlayerDialog(playerid, RNPCRunTo_PosZ, DIALOG_STYLE_INPUT, "{FFFFFF}RNPCRunTo: {F11515}PosZ{FFFFFF}.", "{FFFFFF}Escribe la posicion Z para hacer trotar al NPC.", "Aceptar", "Cancelar");
- }
- case RNPCRunTo_PosZ:
- {
- if(!response) return ShowPlayerDialog(playerid, RNPCRunTo_PosY, DIALOG_STYLE_INPUT, "{FFFFFF}RNPCRunTo: {F11515}PosY{FFFFFF}.", "{FFFFFF}Escribe la posicion Y para hacer trotar al NPC.", "Aceptar", "Cancelar");
- new string[125];
- SavePos_RNPCRunTo[2] = floatstr(inputtext);
- RNPCRunTo(Npc[0], SavePos_RNPCRunTo[0], SavePos_RNPCRunTo[1], SavePos_RNPCRunTo[2]);
- format(string, 125, "PosX: {F11515}%f{FFFFFF}, PosY: {F11515}%f{FFFFFF}, PosZ: {F11515}%f{FFFFFF}.", SavePos_RNPCRunTo[0], SavePos_RNPCRunTo[1], SavePos_RNPCRunTo[2]);
- SendClientMessage(playerid, -1, string);
- }
- case NPC_ACCIONES_RNPCSprintTo:
- {
- if(!response) return Dialog_NPC_ACCIONES(playerid);
- switch(listitem)
- {
- case 0:
- {
- new Float:Pos[3];
- GetPlayerPos(playerid, Pos[0], Pos[1], Pos[2]);
- RNPCSprintTo(Npc[0], Pos[0], Pos[1], Pos[2]);
- SendClientMessage(playerid, -1, "*** NPC corriendo hasta su posición.");
- }
- case 1:
- {
- ShowPlayerDialog(playerid, RNPCSprintTo_PosX, DIALOG_STYLE_INPUT, \
- "{FFFFFF}RNPCRunTo: {F11515}PosX{FFFFFF}.", "{FFFFFF}Escriba la posición X para hacer correr al NPC.", "Seleccionar", "Cancelar");
- }
- }
- }
- case RNPCSprintTo_PosX:
- {
- if(!response) return ShowPlayerDialog(playerid, NPC_ACCIONES_RNPCSprintTo, DIALOG_STYLE_LIST, "{00FFFF}RNPCSprintTo.", "Traer NPC a mi posición.\nEscribir posición X, Y, Z.", "Seleccionar", "Cancelar");
- SavePos_RNPCSprinTo[0] = floatstr(inputtext);
- ShowPlayerDialog(playerid, RNPCSprintTo_PosY, DIALOG_STYLE_INPUT, "{FFFFFF}RNPCRunTo: {F11515}PosY{FFFFFF}.", "{FFFFFF}Escribe la posicion Y para hacer correr al NPC.", "Aceptar", "Cancelar");
- }
- case RNPCSprintTo_PosY:
- {
- if(!response) return ShowPlayerDialog(playerid, RNPCRunTo_PosX, DIALOG_STYLE_INPUT, "{FFFFFF}RNPCRunTo: {F11515}PosX{FFFFFF}.", "{FFFFFF}Escriba la posición X para hacer correr al NPC.", "Seleccionar", "Cancelar");
- SavePos_RNPCSprinTo[1] = floatstr(inputtext);
- ShowPlayerDialog(playerid, RNPCSprintTo_PosZ, DIALOG_STYLE_INPUT, "{FFFFFF}RNPCRunTo: {F11515}PosZ{FFFFFF}.", "{FFFFFF}Escribe la posicion Z para hacer correr al NPC.", "Aceptar", "Cancelar");
- }
- case RNPCSprintTo_PosZ:
- {
- if(!response) return ShowPlayerDialog(playerid, RNPCRunTo_PosY, DIALOG_STYLE_INPUT, "{FFFFFF}RNPCRunTo: {F11515}PosY{FFFFFF}.", "{FFFFFF}Escribe la posicion Y para hacer correr al NPC.", "Aceptar", "Cancelar");
- new string[125];
- SavePos_RNPCSprinTo[2] = floatstr(inputtext);
- RNPCSprintTo(Npc[0], SavePos_RNPCSprinTo[0], SavePos_RNPCSprinTo[1], SavePos_RNPCSprinTo[2]);
- format(string, 125, "PosX: {F11515}%f{FFFFFF}, PosY: {F11515}%f{FFFFFF}, PosZ: {F11515}%f{FFFFFF}.", SavePos_RNPCSprinTo[0], SavePos_RNPCSprinTo[1], SavePos_RNPCSprinTo[2]);
- SendClientMessage(playerid, -1, string);
- }
- case NPC_ACCIONES_RNPCAimAt:
- {
- if(!response) return Dialog_NPC_ACCIONES(playerid);
- switch(listitem)
- {
- case 0:
- {
- new Float:Pos[3];
- GetPlayerPos(playerid, Pos[0], Pos[1], Pos[2]);
- RNPCAimAt(Npc[0], Pos[0], Pos[1]);
- SendClientMessage(playerid, -1, "*** El NPC lo está apuntando.");
- }
- case 1:
- {
- ShowPlayerDialog(playerid, RNPCAimAt_PosX, DIALOG_STYLE_INPUT, \
- "{FFFFFF}RNPCAimAt: {F11515}PosX{FFFFFF}.", "{FFFFFF}Escriba la posición X para hacer apuntar al NPC.", "Seleccionar", "Cancelar");
- }
- }
- }
- case RNPCAimAt_PosX:
- {
- if(!response) return ShowPlayerDialog(playerid, NPC_ACCIONES_RNPCShotAt, DIALOG_STYLE_LIST, "{00FFFF}RNPCShotAt.", "Hacer que el NPC dispare hacia mi posición.\nEscribir las posición X, Y.", "Seleccionar", "Cancelar");
- SavePos_RNPCAimAt[0] = floatstr(inputtext);
- ShowPlayerDialog(playerid, RNPCAimAt_PosY, DIALOG_STYLE_INPUT, "{FFFFFF}RNPCAimAt: {F11515}PosY{FFFFFF}.", "{FFFFFF}Escribe la posicion Y para hacer diparar al NPC.", "Aceptar", "Cancelar");
- }
- case RNPCAimAt_PosY:
- {
- if(!response) return ShowPlayerDialog(playerid, RNPCAimAt_PosX, DIALOG_STYLE_INPUT, "{FFFFFF}RNPCAimAt: {F11515}PosX{FFFFFF}.", "{FFFFFF}Escriba la posición X para hacer apuntar al NPC.", "Seleccionar", "Cancelar");
- SavePos_RNPCAimAt[1] = floatstr(inputtext);
- new string[125];
- RNPCAimAt(Npc[0], SavePos_RNPCAimAt[0], SavePos_RNPCAimAt[1]);
- format(string, 60, "X: {F11515}%f{FFFFFF}. Z: {F11515}%f{FFFFFF}.", SavePos_RNPCAimAt[0], SavePos_RNPCAimAt[1]);
- SendClientMessage(playerid, -1, string);
- }
- case NPC_ACCIONES_RNPCShotAt:
- {
- if(!response) return Dialog_NPC_ACCIONES(playerid);
- switch(listitem)
- {
- case 0:
- {
- new Float:Pos[3];
- GetPlayerPos(playerid, Pos[0], Pos[1], Pos[2]);
- RNPCShotAt(Npc[0], Pos[0], Pos[1]);
- SendClientMessage(playerid, -1, "*** El NPC le está disparando.");
- }
- case 1:
- {
- ShowPlayerDialog(playerid, RNPCAimAt_PosX, DIALOG_STYLE_INPUT, \
- "{FFFFFF}RNPCAimAt: {F11515}PosX{FFFFFF}.", "{FFFFFF}Escribir la posición X para hacer disparar al NPC.", "Seleccionar", "Cancelar");
- }
- }
- }
- case RNPCShotAt_PosX:
- {
- if(!response) return ShowPlayerDialog(playerid, NPC_ACCIONES_RNPCAimAt, DIALOG_STYLE_LIST, "{00FFFF}RNPCAimAt.", "Hacer que el NPC apunte a mí.\nHacer apuntar al NPC a la posición X, Y.", "Seleccionar", "Cancelar");
- SavePos_RNPCShotAt[0] = floatstr(inputtext);
- ShowPlayerDialog(playerid, RNPCAimAt_PosY, DIALOG_STYLE_INPUT, "{FFFFFF}RNPCAimAt: {F11515}PosY{FFFFFF}.", "{FFFFFF}Escribe la posicion Y para hacer apuntar al NPC.", "Aceptar", "Cancelar");
- }
- case RNPCShotAt_PosY:
- {
- if(!response) return ShowPlayerDialog(playerid, RNPCRunTo_PosX, DIALOG_STYLE_INPUT, "{FFFFFF}RNPCAimAt: {F11515}PosX{FFFFFF}.", "{FFFFFF}Escriba la posición X para hacer apuntar al NPC.", "Seleccionar", "Cancelar");
- SavePos_RNPCShotAt[1] = floatstr(inputtext);
- new string[125];
- RNPCShotAt(Npc[0], SavePos_RNPCShotAt[0], SavePos_RNPCShotAt[1]);
- format(string, 125, "X: {F11515}%f{FFFFFF}. Z: {F11515}%f{FFFFFF}.", SavePos_RNPCShotAt[0], SavePos_RNPCShotAt[1]);
- SendClientMessage(playerid, -1, string);
- }
- case NPC_ACCIONES_RNPCFollowPlayer:
- {
- if(!response) return Dialog_NPC_ACCIONES(playerid);
- switch(listitem)
- {
- case 0:
- {
- RNPCFollowPlayer(Npc[0], playerid, RNPC_SPEED_SPRINT);
- }
- case 1:
- {
- RNPCFollowPlayer(Npc[0], playerid, RNPC_SPEED_RUN);
- }
- case 2:
- {
- RNPCFollowPlayer(Npc[0], playerid, RNPC_SPEED_WALK);
- }
- case 3:
- {
- RNPCFollowPlayer(Npc[0], playerid, RNPC_SPEED_FASTWALK);
- }
- }
- }
- //=======================================================================================================================================================================//
- /*
- case NPC_REC:
- {
- if(response)
- {
- switch(listitem)
- {
- case 0:
- {
- if(Grabando[playerid] == 0)
- {
- YaGrabo[playerid] = 0;
- ShowPlayerDialog(playerid, NPC_REC_RNPC_StartPlayback, DIALOG_STYLE_INPUT, \
- "{00FFFF}RNPC_StartPlayback.", "Introduzca el Nombre que desea darle a la grabación.", "Seleccionar", "Cancelar");
- }
- else
- {
- SendClientMessage(playerid, ROJO, "[<!>] Termine la grabación del NPC antes de comenzar otra.");
- }
- }
- case 1:
- {
- if(Grabando[playerid] == 1)
- {
- RNPC_StopPlayback(Npc[0]);
- SendClientMessage(playerid, -1, "[NOTA] Grabación del NPC terminada.");
- YaGrabo[playerid] = 1;
- }
- else
- {
- SendClientMessage(playerid, ROJO, "[<!>] Usted no estaba grabando.");
- }
- }
- case 2:
- {
- if(YaGrabo[playerid] == 1)
- {
- RNPC_StartBuildPlayback(Npc[0], 0, 0);
- }
- else {
- SendClientMessage(playerid, ROJO, "[<!>] Usted no grabó nada.");
- }
- }
- }
- }
- }
- case NPC_REC_RNPC_StartPlayback:
- {
- if(!response) return Dialog_NPC_REC(playerid);
- new string[125];
- RNPC_StartPlayback(Npc[0], inputtext);
- Grabando[playerid] = 1;
- format(string, sizeof(string), "*** El Nombre de la grabación será: {F11515}%s{FFFFFF}.", inputtext);
- SendClientMessage(playerid, -1, string);
- }
- */
- }
- return 1;
- }
- public OnPlayerCommandPerformed(playerid, cmdtext[], success)
- {
- if(!success)
- {
- SendClientMessage(playerid, 0xF10000FF, "[<!>] Comando inexistente.");
- }
- return 1;
- }
- CMD:npcgeneral(playerid, params[])
- {
- Dialog_NPC_GENERAL(playerid);
- return 1;
- }
- CMD:npcvehiculo(playerid, params[])
- {
- Dialog_NPC_VEHICULO(playerid);
- return 1;
- }
- CMD:npcpie(playerid, params[])
- {
- Dialog_NPC_PIE(playerid);
- return 1;
- }
- CMD:npc(playerid, params[])
- {
- ShowPlayerDialog(playerid, 120, DIALOG_STYLE_MSGBOX, "{00FFFF}Comandos RNPC'S.", "{FFFFFF}(/NpcGeneral).\n(/NpcVehiculo).\n(/NpcPie).\n(/NpcAcciones).\n(/NpcRec) (Opción quitada).", "Gracias", "");
- return 1;
- }
- CMD:npcacciones(playerid, params[])
- {
- Dialog_NPC_ACCIONES(playerid);
- return 1;
- }
- /*
- CMD:npcrec(playerid, params[])
- {
- Dialog_NPC_REC(playerid);
- return 1;
- }
- */
- CMD:car(playerid, params[])
- {
- new Carro;
- if(sscanf(params, "i", Carro))
- {
- SendClientMessage(playerid, ROJO, "[INFO] (/Car [ID de Carro]).");
- } else {
- new Float:Pos[3], Float:Angle;
- GetPlayerPos(playerid, Pos[0], Pos[1], Pos[2]);
- GetPlayerFacingAngle(playerid, Angle);
- CreateVehicle(Carro, Pos[0], Pos[1]+2.0, Pos[2], Angle, random(128), random(128), 10*60*1000);
- }
- return 1;
- }
- //=============================================================================== STOCK'S ===============================================================================//
- stock Dialog_NPC_GENERAL(playerid)
- {
- ShowPlayerDialog(playerid, NPC_GENERAL, DIALOG_STYLE_LIST, "{00FFFF}Funciones del RNPC.", \
- "{00FF00}GetRNPCID. \n\
- {FFFFFF}GetRNPCState. \n\
- {00FF00}GetRNPCName. \n\
- {FFFFFF}GetRNPCVirtualWorld. \n\
- {00FF00}SetRNPCVirtualWorld.", \
- "Seleccionar", "Cancelar");
- return 1;
- }
- stock Dialog_NPC_VEHICULO(playerid)
- {
- ShowPlayerDialog(playerid, NPC_VEHICULO, DIALOG_STYLE_LIST, "{00FFFF}Funciones del RNPC.", \
- "{FFFFFF}PutRNPCInVehicle. \n\
- {00FF00}RemoveRNPCFromVehicle. \n\
- {FFFFFF}SetRNPCVehicleSiren. \n\
- {00FF00}GetRNPCVehicleSiren.", \
- "Seleccionar", "Cancelar");
- return 1;
- }
- stock Dialog_NPC_PIE(playerid)
- {
- new string[280];
- strcat(string, "{FFFFFF}SetRNPCSkin. \n");
- strcat(string, "{00FF00}SetRNPCPos.\n");
- strcat(string, "{FFFFFF}GetRNPCPos. \n");
- strcat(string, "{00FF00}MoveRNPC. \n");
- strcat(string, "{FFFFFF}SetRNPCFacingAngle. \n");
- strcat(string, "{00FF00}SetRNPCHealth. \n");
- strcat(string, "{FFFFFF}GetRNPCHealth. \n");
- strcat(string, "{00FF00}SetRNPCArmour. \n");
- strcat(string, "{FFFFFF}GetRNPCArmour. \n");
- strcat(string, "{00FF00}SetRNPCWeapon. \n");
- strcat(string, "{FFFFFF}GetRNPCWeapon. \n");
- strcat(string, "{00FF00}SetRNPCSkillLevel. \n");
- ShowPlayerDialog(playerid, NPC_PIE, DIALOG_STYLE_LIST, "{00FFFF}Funciones del RNPC.", string, "Seleccionar", "Cancelar");
- return 1;
- }
- stock Dialog_NPC_ACCIONES(playerid)
- {
- new string[250];
- strcat(string, "{FFFFFF}RNPCWalkTo. \n");
- strcat(string, "{00FF00}RNPCRunTo. \n");
- strcat(string, "{FFFFFF}RNPCSprintTo. \n");
- strcat(string, "{00FF00}RNPCAimAt. \n");
- strcat(string, "{FFFFFF}RNPCShotAt. \n");
- strcat(string, "{00FF00}RNPCStopUseWeapon. \n");
- strcat(string, "{FFFFFF}RNPCDriveTo. \n");
- strcat(string, "{00FF00}RNPCFollowPlayer. \n");
- ShowPlayerDialog(playerid, NPC_ACCIONES, DIALOG_STYLE_LIST, "{00FFFF}Funciones del RNPC.", string, "Aceptar", "Cancelar");
- return 1;
- }
- /*
- stock Dialog_NPC_REC(playerid)
- {
- new string[70];
- strcat(string, "{FFFFFF}RNPC_StartPlayback. \n");
- strcat(string, "{00FF00}RNPC_StopPlayback. \n");
- strcat(string, "{FFFFFF}RNPC_StartBuildPlayback.");
- ShowPlayerDialog(playerid, NPC_REC, DIALOG_STYLE_LIST, "{00FFFF}Funciones del RNPC.", string, "Seleccionar", "Cancelar");
- return 1;
- }
- */
- //=======================================================================================================================================================================//
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement