01.10.2011, 18:22
bueno es que tengo este codigo ke es un sistema de robos pero el problema es ke las facciones ke pongo para ke puedan robar no pueden y todas las demas ke no estan si pueden robar, por ejemplo kiero ke pueda robar la faccion 5 y pongo [pMember]==5 etc etc, y esa es la unica faccion ke no puede robar, bueno espero ke me ayuden con mi problema aki les dejo el codigo(esta un poco grande xd)
supongamos ke kiero ke robe la faccion 5, y le agrego el [pMember]==5, pero resulta ke en el server es la unica faccion ke no puede robar, o sea salen al contrario, porque el comando le funciona a todas menos a la 5
PD: las facciones ke kiero ke roben son la 5, 16,17 y 18
gracias por su atencion
supongamos ke kiero ke robe la faccion 5, y le agrego el [pMember]==5, pero resulta ke en el server es la unica faccion ke no puede robar, o sea salen al contrario, porque el comando le funciona a todas menos a la 5
PD: las facciones ke kiero ke roben son la 5, 16,17 y 18
gracias por su atencion
PHP код:
if(strcmp(cmd, "/robar", true) == 0 || strcmp(cmd, "/rob", true) == 0) //
{
if(IsPlayerConnected(playerid))
{
if(gPlayerLogged[playerid] == 0)
{
SendClientMessage(playerid, COLOR_GREY, " Necesitas logear primero ! ");
return 1;
}
new x_nr[64];
x_nr = strtok(cmdtext, idx);
if(!strlen(x_nr))
{
SendClientMessage(playerid, COLOR_WHITE, "(/Robatorio [nombre])");
SendClientMessage(playerid, COLOR_WHITE, "Opciones disponibles: 24-7 / Telefono / Casa");
return 1;
}
if(strcmp(x_nr,"auto",true) == 0)
{
if(PlayerInfo[playerid][pMember] != 8 && PlayerInfo[playerid][pLeader] != 8)
{
SendClientMessage(playerid, COLOR_GREY, "No puedes robar si No eres Ladron");
return 1;
}
if(!engineOn[GetPlayerVehicleID(playerid)])
{
if(GetPlayerState(playerid) == PLAYER_STATE_PASSENGER)
{
return 1;
}
if(Alambre[playerid] == 1)
{
if(CarInfo[idcar][cOwned]==0)
{
SendClientMessage(playerid, COLOR_GRAD2, "No puedes robar vehiculos en venta!");
return 1;
}
if(pveh == 510 || pveh == 462 || pveh == 481 || pveh == 509)
{
return 1;
}
if(idcar == 59 || idcar == 60)
{
return 1;
}
if(idcar >= 135 && idcar <= 154)
{
return 1;
}
if(IsAPlane(idcar))
{
return 1;
}
if(IsAHarvest(idcar))
{
return 1;
}
if(IsADrugHarvest(idcar))
{
return 1;
}
if(IsASweeper(idcar))
{
return 1;
}
if(IsAGarbage(idcar))
{
return 1;
}
if(gEngine[playerid] == 1) { return 1; }
new playerveh = GetPlayerVehicleID(playerid);
PutPlayerInVehicle(playerid, playerveh, 0);
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "* %s intenta hacer un puente", sendername);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
SetTimerEx("robovehiculo",3500,0,"i",playerid);
GameTextforPlayer(playerid, "/w/Robando Vehiculo...",3500,3);
gEngine[playerid] = 1;
}
else
{
SendClientMessage(playerid,COLOR_GREY,"No tienes Kit de Ladron!");
}
}
return 1;
}
else if(strcmp(x_nr,"telefono",true) == 0)
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)) {
SendClientMessage(playerid, COLOR_WHITE, "USO: /robatorio telefono [IdJugador/ParteDelNombre]");
return 1;
}
giveplayerid = ReturnUser(tmp);
if(PlayerInfo[playerid][pMember]== 5||PlayerInfo[playerid][pLeader]==5||PlayerInfo[playerid][pMember]==15||PlayerInfo[playerid][pLeader]==15||PlayerInfo[playerid][pMember]==17||PlayerInfo[playerid][pLeader]== 17||PlayerInfo[playerid][pMember]== 18||PlayerInfo[playerid][pLeader]==18)
{
SendClientMessage(playerid, COLOR_GREY, "No puedes robar si No eres Ladron");
return 1;
}
if(IsPlayerConnected(giveplayerid))
{
if(timesrobbed[playerid] == 1)
{
SendClientMessage(playerid, COLOR_YELLOW, "Solo se puede robar una ves despues de cada Pay Day!");
}
if(timesrobbed[playerid] == 0)
{
if(giveplayerid != INVALID_PLAYER_ID)
{
if (ProxDetectorS(3.0, playerid, giveplayerid))
{
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "* %s se hacerca a %s y le roba el telefono del bolsillo.", sendername ,giveplayer);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);format(string, sizeof(string), "* Has robado el telefono de %s.", giveplayer);
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
format(string, sizeof(string), "* %s ha robado tu telefono.", sendername);
SendClientMessage(giveplayerid, COLOR_LIGHTBLUE, string);
PlayerInfo[giveplayerid][pPnumber] = 0;
timesrobbed[playerid]+=1;
GivePlayerMoney(playerid, 100);
}
else
{
SendClientMessage(playerid, COLOR_GREY, " Jugador no cercano!");
return 1;
}
}
}
}
else
{
SendClientMessage(playerid, COLOR_GREY, " Jugador no conectado!");
return 1;
}
}
else if(strcmp(x_nr,"casa",true) == 0) // by CodeMan
{
if(PlayerInfo[playerid][pMember]== 5||PlayerInfo[playerid][pLeader]==5||PlayerInfo[playerid][pMember]==15||PlayerInfo[playerid][pLeader]==15||PlayerInfo[playerid][pMember]==17||PlayerInfo[playerid][pLeader]== 17||PlayerInfo[playerid][pMember]== 18||PlayerInfo[playerid][pLeader]==18)
{
SendClientMessage(playerid, COLOR_GREY, "No eres ladrуn!");
return 1;
}
if(timesrobbed[playerid] == 1)
{
SendClientMessage(playerid, COLOR_YELLOW, "Solo se puede robar una ves despues de cada Pay Day!");
return 1;
}
for(new i = 0; i < sizeof(HouseInfo); i++)
{
if (PlayerToPoint(3, playerid,HouseInfo[i][hEntrancex], HouseInfo[i][hEntrancey], HouseInfo[i][hEntrancez]))
{
new randomize;
new Float:cx, Float:cy, Float:cz;
GetPlayerPos(playerid, cx, cy, cz);
randomize = random(sizeof(RobCash));
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "* %s entra en la casa y roba todo lo que puede", sendername);
ProxDetector(8.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
SafeGivePlayerMoney(playerid, RobCash[randomize][0]);
timesrobbed[playerid]+=1;
WantedPoints[playerid]+=5;
SetPlayerCriminal(playerid,255, "Asaltar una casa!");
SendClientMessage(playerid, COLOR_YELLOW, "Alguien alertу a la policнa! Corre antes de que vengan!");
ApplyAnimation(playerid, "SHOP", "ROB_Loop_Threat", 4.0, 0, 0, 0, 0, 0); // Rob
format(string, sizeof(string), "** La alarma te a delatado! Corre! **", sendername);
SendRadioMessage(1, TEAM_BLUE_COLOR, string);
for(new x = 0; x < MAX_PLAYERS; x++)
{
if(IsPlayerConnected(x))
{
if(PlayerInfo[x][pMember] == 1 || PlayerInfo[i][pLeader] == 1||PlayerInfo[x][pMember] == 3 || PlayerInfo[i][pLeader] == 3)
{
SetPlayerCheckpoint(x, cx, cy, cz, 3.0);
}
}
}
ProxDetector(30.0, playerid, "* Nii Nooo Niii Nooo (( Alarma Sonando ))", COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
return 1;
}
}
}
else if(strcmp(x_nr,"24-7",true) == 0)
{
if(PlayerToPoint(3, playerid,-28.0,-89.7,1003.5))
{
if(PlayerInfo[playerid][pMember]== 5||PlayerInfo[playerid][pLeader]==5||PlayerInfo[playerid][pMember]==15||PlayerInfo[playerid][pLeader]==15||PlayerInfo[playerid][pMember]==17||PlayerInfo[playerid][pLeader]== 17||PlayerInfo[playerid][pMember]== 18||PlayerInfo[playerid][pLeader]==18)
{ SendClientMessage(playerid, COLOR_GREY, "No eres Mara, usa /atraco");return 1; }
if(timesrobbed[playerid] == 1){SendClientMessage(playerid, COLOR_YELLOW, "Solo se puede robar una ves despues de cada Pay Day!");}
if(timesrobbed[playerid] == 0)
{
GetPlayerName(playerid, sendername, sizeof(sendername));
ApplyAnimation(playerid, "SHOP", "ROB_Loop_Threat", 4.0, 0, 0, 0, 0, 0); // Rob
SendClientMessage(playerid, 0xFF0000FF, " ");
format(string, sizeof(string), "** HQ: El 24-7 de Los Santos esta siendo robado!. **", sendername);
SendRadioMessage(1, TEAM_BLUE_COLOR, string);
WantedPoints[playerid]+=4; SetPlayerCriminal(playerid,255, "Robar el 24-7!");
SendClientMessage(playerid, COLOR_YELLOW, "Has sido visto por las camaras de seguridad, corre!");
format(string,sizeof(string), "* %s apunta con su arma al vendedor.", sendername);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
SendClientMessage(playerid, COLOR_YELLOW, "Has robado 500$");
GivePlayerMoney(playerid,500);
SendClientMessage(playerid,COLOR_YELLOW,string);
timesrobbed[playerid]+=1;
}
}
return 1;
}
}
else
{
SendClientMessage(playerid, COLOR_WHITE, "HINT: /robatorio [name]");
SendClientMessage(playerid, COLOR_WHITE, "Opciones disponibles: 24-7 / Telefono / Casa");
return 1;
}