29.01.2013, 15:28
Esas coordenadas para lo que harбs estбn mal, deberнas llevar: MAX_X, MAX_Y, MAX_Z, MIN_X, MIN_Y, MIN_Z.
Podrнas sacarlas conЙste programa
Aquн te hice un cуdigo de armas pacificas, no lo he probado aъn, avнsame si te funciona.
Йste sistema te quita las armas al entrar y te las da al salir, segъn lo que hice, avisa si no es eso.
Podrнas sacarlas conЙste programa
Aquн te hice un cуdigo de armas pacificas, no lo he probado aъn, avнsame si te funciona.
pawn Код:
#include <a_samp>
#include <streamer>
new bool:TieneArmasQuitadas[MAX_PLAYERS];
new ZonaArmas;
new ArmasAnticipadas[MAX_PLAYERS][3], BalasAncipadas[MAX_PLAYERS][3];
#pragma tabsize 0
public OnPlayerEnterDynamicArea(playerid, areaid)
{
new xweapon, xbalas;
if(areaid == ZonaArmas){
#define ARMAS_SI "Tus armas han sido removidas dada a la zona"
#define ARMAS_NO "Aquн no se permiten armas."
for (new slot=0; slot<3; slot++){
GetPlayerWeaponData(playerid, slot, xweapon, xbalas);
if(xweapon != 0){
GetPlayerWeaponData(playerid, 1, ArmasAnticipadas[playerid][0], BalasAncipadas[playerid][0]);
GetPlayerWeaponData(playerid, 2, ArmasAnticipadas[playerid][1], BalasAncipadas[playerid][1]);
GetPlayerWeaponData(playerid, 3, ArmasAnticipadas[playerid][2], BalasAncipadas[playerid][2]);
TieneArmasQuitadas[playerid] = true;
SendClientMessage(playerid, -1, ARMAS_SI);
return ResetPlayerWeapons(playerid);
}else{
ResetPlayerWeapons(playerid);
TieneArmasQuitadas[playerid] = false;
return SendClientMessage(playerid, -1, ARMAS_NO);
}
}
}
return 1;
}
public OnPlayerLeaveDynamicArea(playerid, areaid)
{
if(areaid == ZonaArmas){
#define ARMAS_SI_1 "Tus armas han sido devueltas dado a que saliste de esa zona."
#define ARMAS_NO_1 "Ya puedes usar armas en йsta zona, no tenнas cuando te las quitaron."
if(TieneArmasQuitadas[playerid] == true){
SendClientMessage(playerid, -1, ARMAS_SI_1);
TieneArmasQuitadas[playerid] = false;
for(new ARMASa = 0; ARMASa < sizeof(ARMASa); ARMASa++){
return GivePlayerWeapon(playerid, ArmasAnticipadas[playerid][ARMASa], BalasAncipadas[playerid][ARMASa]);
}
}
else{
return SendClientMessage(playerid, -1, ARMAS_NO_1);
}
}
return 1;
}
public OnFilterScriptInit()
{
ZonaArmas = CreateDynamicRectangle(0.0, 0.0, 0.0, 0.0, -1, -1, -1);
return 1;
}