Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- Timers por player: 1*
- Timer por Zombie: 3*
- *Rodando constantemente.
- =====================================================================================================
- Este � o Filterscript de Zombies feito por Wafffllesss ( Henrique Pauli ). Este � meu primeiro
- Filterscript e meu primeiro trabalho com NPC's. Espero que goste do filterscript e que traga
- muita divers�o para seu servidos. Por favor n�o remova os cr�ditos.
- *Voc� pode modificar este filterscript como quiser.
- *Voc� pode usar este filterscript onde quiser.
- =====================================================================================================
- */
- // O Skin do Zombie.
- // -1: Vai alterar entre os definidos na vari�vel abaixo.
- // -2: Randomiza qualquer um dos skins validos do jogo.
- // Qualquer outro numero far� o skin ser o numero definido.
- static Zombie_Skin = -2;
- //Se tiver Zombie no nome, ser� um Zombie. ( altere a seu gosto ).
- #define ZOMBIE_NAME "Zombie"
- #include <a_samp>
- #include <foreach> // By Y_less
- Itter_Create(Vehicle, MAX_VEHICLES);
- #define COLOR_GREY 0xAFAFAFAA
- #define COLOR_GREEN 0x33AA33AA
- #define COLOR_RED 0xAA3333AA
- #define COLOR_YELLOW 0xFFFF00AA
- #define COLOR_WHITE 0xFFFFFFAA
- forward CheckCloserPlayers(playerid);
- forward NovaPos(playerid);
- forward CheckHP(playerid);
- forward KilledBy(playerid,killer);
- forward KickZombie(playerid);
- forward Atirando(playerid);
- forward Float:GetDistanceToPlayer(playerid,playerid2);
- forward Float:GetXYInFrontOfPlayer(playerid, &Float:x, &Float:y, Float:distance);
- forward Float:GetPlayerSpeed(playerid);
- forward Float:GetXYInFrontOfVehicle(vehicleid, &Float:x, &Float:y, Float:distance);
- // Se o Zombie_Skin for igual a -1, defina os skins abaixo:
- new ZombieSkins[]={
- 1,
- 7,
- 9,
- 10,
- 45
- // Aten��o, o ultimo skin n�o leva v�rgula.
- };
- enum ZombieEnum{
- ZombieSpawned,
- ZombieTarget,
- ZombieRunning,
- ZombieKilling,
- NPTIMER,
- Ztimers,
- Float:LastZombieHealth,
- Morrendo,
- HPtimer
- }
- new Zombies[200][ZombieEnum];
- new AtirandoTimer[200];
- new AtirandoClick[200];
- new ZombieKill[200];
- new Caller;
- new LastAdded = 0;
- new WeaponDamage[] = {
- 1,
- 2,
- 4,
- 4,
- 5,
- 4,
- 4,
- 4,
- 6,
- 15,
- -5,
- -5,
- -5,
- -5,
- -100,
- 4,
- 13,
- 2,
- 13,
- 0,
- 0,
- 0,
- 8,
- 9,
- 11,
- 15,
- 17,
- 15,
- 8,
- 9,
- 13,
- 13,
- 6,
- 45,
- 55,
- 40,
- 40,
- 27,
- 35,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0
- };
- new Float:WeaponRanges[] = {
- 1.0,
- 1.0,
- 1.2,
- 1.2,
- 1.1,
- 1.2,
- 1.2,
- 1.3,
- 1.2,
- 1.3,
- 0.5,
- 0.5,
- 0.5,
- 0.5,
- 0.5,
- 1.4,
- 12.0,
- 12.0,
- 12.0,
- 0.0,
- 0.0,
- 0.0,
- 28.0,
- 29.0,
- 30.0,
- 26.0,
- 25.0,
- 27.0,
- 28.0,
- 31.0,
- 35.0,
- 35.0,
- 26.0,
- 38.0,
- 65.0,
- 40.0,
- 40.0,
- 23.0,
- 37.0,
- 0.0,
- 0.0,
- 0.0,
- 0.0,
- 0.0,
- 0.0,
- 0.0
- };
- public OnFilterScriptInit()
- {
- // Cria as vari�veis Itter para o Foreach quando o script inicia ( se tiverem players/npcs online )
- for(new i =0; i<= MAX_PLAYERS;i++){
- if(IsPlayerConnected(i) && !IsPlayerNPC(i)){
- Itter_Add(Player,i);
- AtirandoTimer[i] = SetTimerEx("Atirando",250,1,"i",i);
- ZombieKill[i] = -1;
- }
- else if(IsPlayerConnected(i) && IsPlayerNPC(i)){
- Itter_Add(Bot,i);
- //Se For Zombie, ativa ele.
- if(!strfind(PlayerName(i),ZOMBIE_NAME,true)){
- SetupZombie(i);
- }
- }
- }
- new Float:h;
- for(new v=0;v<MAX_VEHICLES;v++){
- GetVehicleHealth(v,h);
- if(h)Itter_Add(Vehicle,v);
- }
- print("\n=====================================");
- print(" Zombie Filterscript por Wafffllesss ");
- print("=====================================\n");
- return 1;
- }
- //=======================================[ Timers ]=========================================//
- public Atirando(playerid){
- new up_dw,lf_rg,o_keys,weapon;
- new Float:x,Float:y,Float:z;
- weapon = GetPlayerWeapon(playerid);
- GetPlayerKeys(playerid,o_keys,up_dw,lf_rg);
- if(o_keys == KEY_FIRE || o_keys == (KEY_FIRE+128) ){
- if(!AtirandoClick[playerid] || Automatic(weapon))
- {
- AtirandoClick[playerid] = true;
- GetPlayerPos(playerid,x,y,z);
- foreach(Bot,b){
- if(IsPlayerFacingPlayer(playerid,b,5.0)){
- if(IsPlayerInRangeOfPoint(b,WeaponRanges[weapon],x,y,z)){
- Zombies[b][LastZombieHealth] -= float(WeaponDamage[weapon]);
- if(Zombies[b][LastZombieHealth] <= 0.0 && !Zombies[b][Morrendo]){
- SendDeathMessage(playerid,b,weapon);
- Zombies[b][Morrendo] = true;
- }
- }
- }
- }
- }
- }else{
- AtirandoClick[playerid] = false;
- }
- }
- public KickZombie(playerid){
- Kick(playerid);
- Zombies[playerid][Morrendo]=false;
- KillTimer(Zombies[playerid][HPtimer]); Zombies[playerid][HPtimer] = false;
- KillTimer(Zombies[playerid][Ztimers]); Zombies[playerid][Ztimers] = false;
- if(Zombies[playerid][NPTIMER]){
- KillTimer(Zombies[playerid][NPTIMER]);
- Zombies[playerid][NPTIMER] = false;
- }
- }
- public CheckHP(playerid){ // Checka o HP do Zombie.
- new Float:x,Float:y,Float:z;
- new cp = GetClosestPlayer(playerid);
- if(IsPlayerInAnyVehicle(cp)){
- new cpc = GetPlayerVehicleID(cp);
- GetVehiclePos(cpc,x,y,z);
- GetXYInFrontOfVehicle(cpc,x,y,1.5);
- if(IsPlayerInRangeOfPoint(playerid,2.0,x,y,z) && GetPlayerSpeed(cp) > 10.0){
- Zombies[playerid][LastZombieHealth] -= (GetPlayerSpeed(cp)*2);
- }
- }
- if( Zombies[playerid][LastZombieHealth] <= 0.0 && Zombies[playerid][ZombieSpawned]){
- ApplyAnimation(playerid,"Knife","KILL_Knife_Ped_Die",1,0,1,0,0,0);
- SetTimerEx("KickZombie",1500,0,"i",playerid);
- Zombies[playerid][Morrendo] = true;
- }
- }
- public NovaPos(playerid){ // Faz com que o zombie Caminhe / Corra
- if( Zombies[playerid][LastZombieHealth] > 0.0 ){
- new Float:x,Float:y,Float:z;
- new Float:ax,Float:ay,Float:az,Float:dif;
- GetPlayerPos(Zombies[playerid][ZombieTarget],ax,ay,az);
- GetPlayerPos(playerid,x,y,z);
- if( az <= (z+3.0) && az >= (z-3.0)){
- if(Zombies[playerid][ZombieRunning] == 1){
- ApplyAnimation(playerid,"Muscular","MuscleRun",1,1,1,0,0,0);
- GetXYInFrontOfPlayer(playerid,x,y,2.0);
- }
- else if(Zombies[playerid][ZombieRunning] == 2){
- ApplyAnimation(playerid,"Muscular","MuscleSprint",1,1,1,0,0,0);
- GetXYInFrontOfPlayer(playerid,x,y,2.8);
- }
- dif = az;
- SetPlayerPos(playerid,x,y,dif);
- }else{
- if(Zombies[playerid][ZombieRunning]) Parar(playerid);
- GetPlayerPos(playerid,x,y,z);
- SetPlayerPosFindZ(playerid,x,y,z);
- }
- }
- }
- public CheckCloserPlayers(playerid){ // Detecta player mais perto e vai atras
- if( Zombies[playerid][LastZombieHealth] > 0.0 ){
- new cp = GetClosestPlayer(playerid);
- new Float:MinDistance = 3.0;
- if(IsPlayerInAnyVehicle(cp)){ MinDistance = 5.0; }
- Zombies[playerid][ZombieTarget] = cp;
- if(GetDistanceToPlayer(playerid,cp) <= 70.0 && GetDistanceToPlayer(playerid,cp) > 15.0){
- IrParaPlayer(1,playerid,cp);
- }else if(GetDistanceToPlayer(playerid,cp) <= 15.0 && GetDistanceToPlayer(playerid,cp) > MinDistance){
- IrParaPlayer(0,playerid,cp);
- }else if(GetDistanceToPlayer(playerid,cp) <= MinDistance){
- Parar(playerid);
- }
- if(GetDistanceToPlayer(playerid,cp) <= MinDistance){
- new Float:h;
- if(IsPlayerInAnyVehicle(cp)){
- new cpc = GetPlayerVehicleID(cp);
- GetVehicleHealth(cpc,h);
- if(GetDistanceToPlayer(playerid,cp) < MinDistance){
- SetVehicleHealth(cpc,h-80.0);
- ApplyAnimation(playerid,"Gangs","shake_carSH",1,1,1,0,0,0);
- }
- }else{
- GetPlayerHealth(cp,h);
- if(GetDistanceToPlayer(playerid,cp) > 1.5){
- SetPlayerHealth(cp,h-5.0);
- }else{
- if(Zombies[playerid][ZombieKilling]==-1){
- if(!EstaMorrendo(cp)){
- FinishHim(playerid,cp);
- }
- }
- }
- }
- }
- }
- }
- public KilledBy(playerid,killer){ // Aplica anima��o 'Morrendo' e mata player.
- if(Zombies[killer][ZombieKilling] == playerid){
- ApplyAnimation(playerid,"Knife","KILL_Knife_Ped_Die",1,0,1,0,0,0);
- TogglePlayerControllable(playerid,true);
- SetPlayerHealth(playerid,0.0);
- ClearAnimations(killer);
- ZombieKill[playerid] = killer;
- }
- }
- //=======================================[ Fun�es ]=========================================//
- stock Automatic(weaponid){
- switch(weaponid){
- case 9,22,23,24,27,28,29,30,31,32,37,38: return true;
- }
- return false;
- }
- stock EstaMorrendo(playerid){ // Verifica se algum zombie esta executando o golpe final no player
- foreach(Bot,b){
- if(Zombies[b][ZombieKilling] == playerid) return true;
- }
- return false;
- }
- stock SetupZombie(playerid){ // Ativa o zombie.
- new Float:px,Float:py,Float:pz;
- Zombies[playerid][HPtimer] = SetTimerEx("CheckHP",100,1,"i",playerid);
- Zombies[playerid][Ztimers] = SetTimerEx("CheckCloserPlayers",1000,1,"i",playerid);
- GetPlayerPos(Caller,px,py,pz);
- SetPlayerPos(playerid,px,py,pz);
- Zombies[playerid][ZombieRunning] = false;
- SendClientMessageToAll(COLOR_RED,"Um Zombie Entrou!");
- new Zskin=1;
- if(Zombie_Skin == -1){
- new rd = random(sizeof(ZombieSkins));
- if(IsValidSkin(ZombieSkins[rd])){
- Zskin = ZombieSkins[rd];
- }
- }else if(Zombie_Skin == -2){
- new rd = random(299);
- if(IsValidSkin(rd)){
- Zskin = rd;
- }
- }else if(IsValidSkin(Zombie_Skin)){
- Zskin = Zombie_Skin;
- }
- SetPlayerSkin(playerid,Zskin);
- Zombies[playerid][ZombieKilling]= -1;
- Zombies[playerid][ZombieSpawned] = true;
- Zombies[playerid][LastZombieHealth] = 100.0;
- }
- stock FinishHim(playerid,target){ // Inicia o golpe final do Zombie
- Zombies[playerid][ZombieKilling] = target;
- TogglePlayerControllable(target,false);
- SetPlayerToFacePlayer(playerid,target);
- SetPlayerToFacePlayer(target,playerid);
- ApplyAnimation(target,"Knife","KILL_Knife_Ped_Damage",1,0,1,0,0,0);
- ApplyAnimation(playerid,"Knife","KILL_Knife_Player",1,0,1,0,0,0);
- SetTimerEx("KilledBy",1500,0,"ii",target,playerid);
- }
- stock Parar(playerid){ // Faz o zombie parar de andar
- if(Zombies[playerid][ZombieRunning]){
- if(Zombies[playerid][NPTIMER]){
- KillTimer(Zombies[playerid][NPTIMER]);
- Zombies[playerid][NPTIMER] = false;
- }
- Zombies[playerid][ZombieRunning] = false;
- ClearAnimations(playerid);
- }
- }
- stock IrParaPlayer(modo,playerid,paraid){ //Faz o zombie ir para o player designado. modo: 1- Caminha | 2- Corre
- SetPlayerToFacePlayer(playerid,paraid);
- if(modo == 0 && Zombies[playerid][ZombieRunning] != 1) Caminhar(playerid);
- else if(modo == 1 && Zombies[playerid][ZombieRunning] != 2) Correr(playerid);
- }
- stock Caminhar(playerid){ //Caminhar para frente.
- Zombies[playerid][ZombieRunning] = 1;
- Zombies[playerid][NPTIMER] = SetTimerEx("NovaPos",400,1,"i",playerid);
- }
- stock Correr(playerid){ //Correr para frente.
- Zombies[playerid][ZombieRunning] = 2;
- Zombies[playerid][NPTIMER] = SetTimerEx("NovaPos",300,1,"i",playerid);
- }
- stock AlvoDeAlguem(alvoid){ // Checka se o player � alvo de algum Zombie
- foreach(Bot,b){
- if(Zombies[b][ZombieTarget] == alvoid) return b;
- }
- return false;
- }
- stock KickZombies(){ //Kicka os Zombies.
- foreach(Bot,b){
- if(!strfind(PlayerName(b),ZOMBIE_NAME,true)) Kick(b);
- }
- }
- stock SetPlayerToFacePlayer(playerid, targetid) // De a_angles.inc ( Tannz0rz )
- {
- new
- Float:pX,
- Float:pY,
- Float:pZ,
- Float:X,
- Float:Y,
- Float:Z,
- Float:ang;
- if(!IsPlayerConnected(playerid) || !IsPlayerConnected(targetid)) return 0;
- GetPlayerPos(targetid, X, Y, Z);
- GetPlayerPos(playerid, pX, pY, pZ);
- if( Y > pY ) ang = (-acos((X - pX) / floatsqroot((X - pX)*(X - pX) + (Y - pY)*(Y - pY))) - 90.0);
- else if( Y < pY && X < pX ) ang = (acos((X - pX) / floatsqroot((X - pX)*(X - pX) + (Y - pY)*(Y - pY))) - 450.0);
- else if( Y < pY ) ang = (acos((X - pX) / floatsqroot((X - pX)*(X - pX) + (Y - pY)*(Y - pY))) - 90.0);
- if(X > pX) ang = (floatabs(floatabs(ang) + 180.0));
- else ang = (floatabs(ang) - 180.0);
- SetPlayerFacingAngle(playerid, ang);
- return 0;
- }
- stock PlayerName(playerid){
- new pname[MAX_PLAYER_NAME];
- GetPlayerName(playerid,pname,MAX_PLAYER_NAME);
- return pname;
- }
- stock Float:GetDistanceToPlayer(playerid,playerid2) {
- new Float:x1,Float:y1,Float:z1,Float:x2,Float:y2,Float:z2;
- if (!IsPlayerConnected(playerid) || !IsPlayerConnected(playerid2)) {
- return -1.00;
- }
- GetPlayerPos(playerid,x1,y1,z1);
- GetPlayerPos(playerid2,x2,y2,z2);
- return floatsqroot(floatpower(floatabs(floatsub(x2,x1)),2)+floatpower(floatabs(floatsub(y2,y1)),2)+floatpower(floatabs(floatsub(z2,z1)),2));
- }
- stock GetClosestPlayer(p1){
- new Float:dis,Float:dis2,playerid;
- playerid = -1;
- dis = 99999.99;
- foreach(Player,x){
- dis2 = GetDistanceToPlayer(p1,x);
- if (dis2 < dis && dis2 != -1.00)
- {
- dis = dis2;
- playerid = x;
- }
- }
- return playerid;
- }
- stock Float:GetXYInFrontOfPlayer(playerid, &Float:x, &Float:y, Float:distance)
- {
- new Float:a;
- GetPlayerPos(playerid, x, y, a);
- if (IsPlayerInAnyVehicle(playerid)) GetVehicleZAngle(GetPlayerVehicleID(playerid), a);
- else GetPlayerFacingAngle(playerid, a);
- x += (distance * floatsin(-a, degrees));
- y += (distance * floatcos(-a, degrees));
- return a;
- }
- stock IsValidSkin(skinid) // N�o � minha. N�o lembro o criador..
- {
- #define MAX_BAD_SKINS 22
- new badSkins[MAX_BAD_SKINS] =
- { 3, 4, 5, 6, 8, 42, 65, 74, 86, 119, 149, 208, 268, 273, 289 };
- if (skinid < 0 || skinid > 299) return false;
- for (new i = 0; i < MAX_BAD_SKINS; i++) { if (skinid == badSkins[i]) return false; }
- #undef MAX_BAD_SKINS
- return 1;
- }
- stock Float:GetPlayerSpeed(playerid) // N�o � minha. N�o lembro o criador.. (N�o da a velocidade certa, mais serve para o que eu preciso.)
- {
- new Float:vX, Float:vY, Float:vZ;
- if (!IsPlayerInAnyVehicle(playerid))
- {
- GetPlayerVelocity(playerid, vX, vY, vZ);
- }
- else
- {
- GetVehicleVelocity(GetPlayerVehicleID(playerid), vX, vY, vZ);
- }
- return floatsqroot(vX*vX + vY*vY + vZ*vZ)*100;
- }
- stock Float:GetXYInFrontOfVehicle(vehicleid, &Float:x, &Float:y, Float:distance)
- {
- new Float:a;
- GetVehiclePos(vehicleid, x, y, a);
- GetVehicleZAngle(vehicleid, a);
- x += (distance * floatsin(-a, degrees));
- y += (distance * floatcos(-a, degrees));
- return a;
- }
- stock IsPlayerFacingPlayer(playerid, playerid2, Float:dOffset) // De a_angles.inc ( Tannz0rz )
- {
- new
- Float:X,
- Float:Y,
- Float:Z,
- Float:pX,
- Float:pY,
- Float:pZ,
- Float:pA,
- Float:ang;
- if(!IsPlayerConnected(playerid)) return 0;
- GetPlayerPos(playerid2, pX, pY, pZ);
- GetPlayerPos(playerid, X, Y, Z);
- GetPlayerFacingAngle(playerid, pA);
- if( Y > pY ) ang = (-acos((X - pX) / floatsqroot((X - pX)*(X - pX) + (Y - pY)*(Y - pY))) - 90.0);
- else if( Y < pY && X < pX ) ang = (acos((X - pX) / floatsqroot((X - pX)*(X - pX) + (Y - pY)*(Y - pY))) - 450.0);
- else if( Y < pY ) ang = (acos((X - pX) / floatsqroot((X - pX)*(X - pX) + (Y - pY)*(Y - pY))) - 90.0);
- if(AngleInRangeOfAngle(-ang, pA, dOffset)) return true;
- return false;
- }
- stock AngleInRangeOfAngle(Float:a1, Float:a2, Float:range) // De a_angles.inc ( Tannz0rz )
- {
- a1 -= a2;
- if((a1 < range) && (a1 > -range)) return true;
- return false;
- }
- //=======================================[ Callbacks ]=========================================//
- public OnFilterScriptExit()
- {
- KickZombies();
- return 1;
- }
- public OnPlayerConnect(playerid)
- {
- if(IsPlayerNPC(playerid)){ SpawnPlayer(playerid); }
- else{ AtirandoTimer[playerid] = SetTimerEx("Atirando",250,1,"i",playerid);}
- return 1;
- }
- public OnPlayerDisconnect(playerid, reason)
- {
- if(!IsPlayerNPC(playerid)){
- KillTimer(AtirandoTimer[playerid]);
- }
- return 1;
- }
- public OnPlayerSpawn(playerid)
- {
- if(IsPlayerNPC(playerid)){
- if(!strfind(PlayerName(playerid),ZOMBIE_NAME,true)){
- SetupZombie(playerid);
- }
- }
- if(ZombieKill[playerid] != -1){
- Zombies[ZombieKill[playerid]][ZombieKilling] = -1;
- ZombieKill[playerid] = -1;
- return 1;
- }
- return 1;
- }
- public OnPlayerDeath(playerid, killerid, reason)
- {
- if(ZombieKill[playerid] != -1){
- SendDeathMessage(ZombieKill[playerid],playerid,reason);
- return 1;
- }
- return 1;
- }
- public OnVehicleSpawn(vehicleid)
- {
- return 1;
- }
- public OnVehicleDeath(vehicleid, killerid)
- {
- return 1;
- }
- public OnPlayerText(playerid, text[])
- {
- return 1;
- }
- public OnPlayerCommandText(playerid, cmdtext[])
- {
- if(strcmp(cmdtext, "/zombie", true) == 0) {
- if(!IsPlayerAdmin(playerid)) return false;
- Caller = playerid;
- new novonome[64];
- format(novonome,sizeof(novonome),"%s_%d",ZOMBIE_NAME,LastAdded);
- ConnectNPC(novonome,"zombie");
- LastAdded++;
- return 1;
- }
- return 0;
- }
- public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
- {
- return 1;
- }
- public OnPlayerExitVehicle(playerid, vehicleid)
- {
- return 1;
- }
- public OnPlayerStateChange(playerid, newstate, oldstate)
- {
- return 1;
- }
- public OnPlayerEnterCheckpoint(playerid)
- {
- return 1;
- }
- public OnPlayerLeaveCheckpoint(playerid)
- {
- return 1;
- }
- public OnPlayerEnterRaceCheckpoint(playerid)
- {
- return 1;
- }
- public OnPlayerLeaveRaceCheckpoint(playerid)
- {
- return 1;
- }
- public OnRconCommand(cmd[])
- {
- return 1;
- }
- public OnPlayerRequestSpawn(playerid)
- {
- return 1;
- }
- public OnObjectMoved(objectid)
- {
- return 1;
- }
- public OnPlayerObjectMoved(playerid, objectid)
- {
- return 1;
- }
- public OnPlayerPickUpPickup(playerid, pickupid)
- {
- return 1;
- }
- public OnVehicleMod(playerid, vehicleid, componentid)
- {
- return 1;
- }
- public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
- {
- return 1;
- }
- public OnVehicleRespray(playerid, vehicleid, color1, color2)
- {
- return 1;
- }
- public OnPlayerSelectedMenuRow(playerid, row)
- {
- return 1;
- }
- public OnPlayerExitedMenu(playerid)
- {
- return 1;
- }
- public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
- {
- return 1;
- }
- public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
- {
- return 1;
- }
- public OnRconLoginAttempt(ip[], password[], success)
- {
- return 1;
- }
- public OnPlayerUpdate(playerid)
- {
- return 1;
- }
- public OnPlayerStreamIn(playerid, forplayerid)
- {
- return 1;
- }
- public OnPlayerStreamOut(playerid, forplayerid)
- {
- return 1;
- }
- public OnVehicleStreamIn(vehicleid, forplayerid)
- {
- return 1;
- }
- public OnVehicleStreamOut(vehicleid, forplayerid)
- {
- return 1;
- }
- public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
- {
- return 1;
- }
- public OnPlayerClickPlayer(playerid, clickedplayerid, source)
- {
- return 1;
- }
- //=======================================[ Fim do Documento ]=========================================//
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement