22.12.2012, 09:45
hello, i creating my server, and i have KRace filterscript, indexed in my server. and its bugging:
/join command:
and I am created a cmd with which I check i am inrace or instunt (IsAnywhere):
p.s. when i am InStunt zone, and type /tikrinu server sends a message "yes" that means i am instunt, and when i type /join cmd to join in race, server setting my pos, well its working, but when i type /tikrinu , server say's "no" that i am not in zone ( inrace) whats problem?
pawn Код:
new RaceID = -1;
new RaceI[MAX_RACES][RaceInfo];
new CurrentRace = -1;
//new InRace[MAX_PLAYERS] = -1;
new bool:InRace[MAX_PLAYERS];
new RaceCPS[MAX_PLAYERS];
new RaceJoinable;
new CoUnTDown, CDTIME;
new LastCP[MAX_PLAYERS];
new RaceTime[MAX_PLAYERS];
new RacePos;
new Racee;
#define IsAnywhere(%0) \
( InRace [ %0 ] , InStunt [ %0 ] )
new bool:InStunt[MAX_PLAYERS];
pawn Код:
if(!strcmp(cmdtext, "/join", true))
{
if(CurrentRace == -1) return SendClientMessage(playerid, 0x00D300AA, "Lenktynлs рiuo metu nevyksta!");
if(RaceJoinable == 0) return SendClientMessage(playerid, 0x00D300AA, "Lenktynлs jau pradлtos.");
if(InRace[playerid] == true) return SendClientMessage(playerid, 0x00D300AA, "Jыs jau lenktynлse.");
if(IsPlayerInAnyVehicle(playerid))
{
new Veh = GetPlayerVehicleID(playerid);
SetPlayerVirtualWorld(playerid, 1333337);
SetVehicleVirtualWorld(Veh, 1333337);
PutPlayerInVehicle(playerid, Veh, 0);
SetPlayerPos(playerid, RaceI[CurrentRace][X][0], RaceI[CurrentRace][Y][0], RaceI[CurrentRace][Z][0]);
SetVehiclePos(Veh, RaceI[CurrentRace][X][0], RaceI[CurrentRace][Y][0], RaceI[CurrentRace][Z][0]);
RaceTime[playerid] = 0;
//RaceIn[playerid] = true;
}
CPTD[playerid] = TextDrawCreate(506.000000, 113.000000, "Checkpoint: 45/100");
TextDrawBackgroundColor(CPTD[playerid], 65535);
TextDrawFont(CPTD[playerid], 1);
TextDrawLetterSize(CPTD[playerid], 0.270000, 1.100000);
TextDrawColor(CPTD[playerid], 16777215);
TextDrawSetOutline(CPTD[playerid], 1);
TextDrawSetProportional(CPTD[playerid], 1);
new str[56];
format(str, 56, "%d/%d", RaceCPS[playerid], RaceI[CurrentRace][CPNUM]);
TextDrawSetString(CPTD[playerid], str);
TextDrawShowForPlayer(playerid, CPTD[playerid]);
TextDrawShowForPlayer(playerid, RaceTD);
SetPlayerPos(playerid, RaceI[CurrentRace][X][0], RaceI[CurrentRace][Y][0], RaceI[CurrentRace][Z][0]);
SetPlayerRaceCheckpoint(playerid, 0, RaceI[CurrentRace][X][0], RaceI[CurrentRace][Y][0], RaceI[CurrentRace][Z][0], RaceI[CurrentRace][X][1], RaceI[CurrentRace][Y][1], RaceI[CurrentRace][Z][1], 11);
InRace[playerid] = true;
//RaceIn[playerid] = true;
return 1;
}
pawn Код:
dcmd_tikrinu(playerid, params[])
{
#pragma unused params
if(IsAnywhere(playerid)) return SendClientMessage(playerid,GREEN," yes");
if(!IsAnywhere(playerid)) return SendClientMessage(playerid,GREEN," no");
return 1;
}