24.06.2011, 13:49
Boas eu tou a incurpurar o fs incendio do shadovv5 para meu gm e tame a dar alguns erros, eu tou so a tirar do fs o que eu quero mas da e erros e vvarings :S algem me ajuda? veja tudo que meti
AGRADEЗO MESMO
PHP код:
//TOPO GM
#define HOLDING(%0) \
((newkeys & (%0)) == (%0))
#define RELEASED(%0) \
(((newkeys & (%0)) != (%0)) && ((oldkeys & (%0)) == (%0)))
#define PRESSED(%0) \
(((newkeys & (%0)) == (%0)) && ((oldkeys & (%0)) != (%0)))
#define ICON 42
#define ENTRAR 942
#define SAIR 943
#define AJUDA 944
#define BRANCO 0xFFFFFFFF
#define CINZA 0xD6D6D6FF
#define VERMELHO 0xFF0000FF
#define AMARELO 0xF7E200FF
#define LARANJA 0xE89200FF
#define TEXT3D //CASO QUEIRA QUE NA CABEЗA DO BOMBEIRO TENHA DIZENDO QUE ELE Й BOMBEIRO DEIXE ESTE #define, CASO NГO, RETIRE-O
#define TEMPO 35 //TROQUE PELO TEMPO ENTRE UM INCENDIO E OUTRO (EM SEGUNDOS !)
#define APAGAR 30 //TROQUE PELO TEMPO QUE OS BOMBEIROS TКM PARA APAGAR O INCENDIO (EM SEGUNDOS !)
new Float:Fogo[][3] = {
{1916.9470, -1400.9082, 13.5703}, //TROQUE PELAS COORDENADAS QUE O FOGO PODE ESTAR
{2330.6628, -1805.5270, 13.5469}, //TROQUE PELAS COORDENADAS QUE O FOGO PODE ESTAR
{2382.5210, -1131.2479, 30.2030},
{2164.3052, -1004.4780, 62.7962},
{1282.3912, -817.9395, 84.1406},
{811.7228, -1098.1653, 25.9063},
{649.1138, -1705.1345, 14.5158},
{153.8757, -1941.5243, 3.7734},
{132.7246, -1516.6755, 10.4878},
{262.1424, -1171.0951, 79.4105}
};
new Cores[] = {
0xE02A2AFF,
0x3CE02AFF,
0xED8E12FF,
0xED12BAFF,
0x4912EDFF,
0x12EDAFFF
};
new Timer;
new Tick;
new Text3D:Saida;
new bool:F;
new bool:Chegou[MAX_PLAYERS];
new bool:Servico[MAX_PLAYERS];
new bool:Bombeiro[MAX_PLAYERS];
new Apagando[MAX_PLAYERS];
new Float:LugarFogo[3];
new pickups[5];
new Carros[3];
new Fire[7];
#if defined TEXT3D
new Text3D:texto[MAX_PLAYERS];
#endif
new Float:Fogo[][3] = {
{1916.9470, -1400.9082, 13.5703}, //TROQUE PELAS COORDENADAS QUE O FOGO PODE ESTAR
{2330.6628, -1805.5270, 13.5469}, //TROQUE PELAS COORDENADAS QUE O FOGO PODE ESTAR
{2382.5210, -1131.2479, 30.2030},
{2164.3052, -1004.4780, 62.7962},
{1282.3912, -817.9395, 84.1406},
{811.7228, -1098.1653, 25.9063},
{649.1138, -1705.1345, 14.5158},
{153.8757, -1941.5243, 3.7734},
{132.7246, -1516.6755, 10.4878},
{262.1424, -1171.0951, 79.4105}
};
new Cores[] = {
0xE02A2AFF,
0x3CE02AFF,
0xED8E12FF,
0xED12BAFF,
0x4912EDFF,
0x12EDAFFF
};
forward Apagar();
forward Check(playerid);
forward Fogoo();
//OnPlayerCommandText
if(strcmp(cmd, "/servico", true) == 0 || strcmp(cmd, "/serviзo", true) == 0)
{
if(PlayerInfo[playerid][pJob] < 21)
if(Servico[playerid] == false)
{
Servico[playerid] = true;
SendClientMessage(playerid, AMARELO, "Vocк entrou em serviзo.");
SetPVarInt(playerid, "Skin", GetPlayerSkin(playerid));
new skin[3] = { 277, 278, 279 };
SetPlayerSkin(playerid, skin[random(sizeof(skin))]);
#if defined TEXT3D
Delete3DTextLabel(texto[playerid]);
texto[playerid] = Create3DTextLabel("» Bombeiro: EM SERVIЗO «",0xFF2600FF,10.0,40.0,10.0,20.0,0);
Attach3DTextLabelToPlayer(texto[playerid], playerid, 0.0, 0.0, 0.4);
#endif
}
else
{
Servico[playerid] = false;
SendClientMessage(playerid, AMARELO, "Vocк saiu do serviзo.");
SetPlayerSkin(playerid, GetPVarInt(playerid, "Skin"));
DisablePlayerCheckpoint(playerid);
#if defined TEXT3D
Delete3DTextLabel(texto[playerid]);
#endif
}
return 1;
}
if(strcmp(cmd, "/desativar", true) == 0)
{
if(PlayerInfo[playerid][pAdmin] < 1)
for(new f = 0; f < sizeof(Fire); f ++)
{
DestroyObject(Fire[f]);
DestroyObject(Fire[f]);
}
for(new i = 0; i < MAX_PLAYERS; i ++)
{
Servico[i] = false;
Apagando[i] = 0;
Chegou[i] = false;
DisablePlayerCheckpoint(i);
KillTimer(Timer);
}
SendClientMessage(playerid, AMARELO, "O sistema de incendio foi desativado temporariamente ! Para reativб-lo digite /ativar.");
return 1;
}
if(strcmp(cmd, "/ativar", true) == 0)
{
if(PlayerInfo[playerid][pAdmin] < 1)
SendClientMessage(playerid, AMARELO, "O sistema de incendio foi ativado novamente. Para desativб-lo digite /desativar.");
return 1;
}
if(strcmp(cmd, "/fogo", true) == 0)
{
if(Bombeiro[playerid] == false) return SendClientMessage(playerid, VERMELHO, "Vocк nгo й bombeiro.");
if(F == false) return SendClientMessage(playerid, LARANJA, "Nгo hб nenhum foco de incendio em San Andreas no momento.");
Servico[playerid] = true;
SetPlayerCheckpoint(playerid, LugarFogo[0], LugarFogo[1], LugarFogo[2], 8.0);
SendClientMessage(playerid, AMARELO, "Siga o checkpoint com um carro de bombeiros ou com um extintor agora !!");
Tick = GetTickCount();
return 1;
}
//FIM DO GM
public Fogoo()
{
new fire = random(sizeof(Fogo));
new Float:X, Float:Y, Float:Z;
GetObjectPos(Fire[0], X, Y, Z);
if(LugarFogo[0] != X) { LugarFogo[0] = X; }
else if(LugarFogo[1] != Y) { LugarFogo[1] = Y; }
else if(LugarFogo[2] != Z) { LugarFogo[2] = Z; }
if(GetTickCount() - Tick > TEMPO*1000)
{
if(F == false)
{
for(new f = 0; f < sizeof(Fire); f ++) { DestroyObject(Fire[f]); DestroyObject(Fire[f]); }
F = true;
Timer = SetTimer("Apagar", APAGAR*1000, false);
Fire[0] = CreateObject(18691, Fogo[fire][0], Fogo[fire][1], Fogo[fire][2]-2.5, 0.0, 0.0, 0.0);
Fire[1] = CreateObject(18691, Fogo[fire][0]+1, Fogo[fire][1], Fogo[fire][2]-2.5, 0.0, 0.0, 0.0);
Fire[2] = CreateObject(18691, Fogo[fire][0], Fogo[fire][1]+1, Fogo[fire][2]-2.5, 0.0, 0.0, 0.0);
Fire[3] = CreateObject(18691, Fogo[fire][0]+1, Fogo[fire][1]+1, Fogo[fire][2]-2.5, 0.0, 0.0, 0.0);
Fire[4] = CreateObject(18691, Fogo[fire][0]-1, Fogo[fire][1], Fogo[fire][2]-2.5, 0.0, 0.0, 0.0);
Fire[5] = CreateObject(18691, Fogo[fire][0], Fogo[fire][1]-1, Fogo[fire][2]-2.5, 0.0, 0.0, 0.0);
Fire[6] = CreateObject(18691, Fogo[fire][0]-1, Fogo[fire][1]-1, Fogo[fire][2]-2.5, 0.0, 0.0, 0.0);
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(Bombeiro[i] == true && Servico[i] == true)
{
new str[128];
format(str, sizeof(str), "Hб um novo foco de incкndio ! Siga o checkpoint com um carro de bombeiros ou extintor agora !!", Fogo[fire][0], Fogo[fire][1], Fogo[fire][2]);
SendClientMessage(i, AMARELO, str);
SetPlayerCheckpoint(i, Fogo[fire][0], Fogo[fire][1], Fogo[fire][2], 8.0);
LugarFogo[0] = Fogo[fire][0];
LugarFogo[1] = Fogo[fire][1];
LugarFogo[2] = Fogo[fire][2];
}
}
}
}
for(new i = 0; i < MAX_PLAYERS; i ++) { if(IsPlayerInRangeOfPoint(i, 40, 1731.51, -1449.32, 13.12)) return RemovePlayerMapIcon(i, ICON); }
return 1;
}
public Apagar()
{
if(F == true)
{
for(new i = 0; i < MAX_PLAYERS; i ++)
{
if(Bombeiro[i] == true && Servico[i] == true)
{
SendClientMessage(i, VERMELHO, "O incendio nao foi apagado por nenhum bombeiro e o fogo se extinguiu.");
DisablePlayerCheckpoint(i);
Chegou[i] = false;
}
F = false;
for(new f = 0; f < sizeof(Fire); f ++)
{
DestroyObject(Fire[f]);
DestroyObject(Fire[f]);
}
Tick = GetTickCount();
}
}
return 1;
}
public Check(playerid)
{
if(GetPlayerState(playerid) == 1)
{
if(GetPlayerWeapon(playerid) == 42)
{
if(IsPlayerInRangeOfPoint(playerid, 7.0, LugarFogo[0], LugarFogo[1], LugarFogo[2]))
{
if(Apagando[playerid] > 0)
{
Apagando[playerid]++;
SetTimerEx("Check", 750, false, "i", playerid);
if(Apagando[playerid] == 13)
{
for(new f = 0; f < sizeof(Fire); f ++) { DestroyObject(Fire[f]); DestroyObject(Fire[f]); }
F = false;
GivePlayerMoney(playerid, 500);
for(new i = 0; i < MAX_PLAYERS; i ++)
{
Chegou[i] = false;
Apagando[i] = 0;
SendClientMessage(i, AMARELO, "O incкndio foi apagado !");
Tick = GetTickCount();
DisablePlayerCheckpoint(i);
KillTimer(Timer);
}
}
}
}
}
}
if(GetPlayerState(playerid) == 2)
{
if(GetVehicleModel(GetPlayerVehicleID(playerid)) == 407)
{
if(IsPlayerInRangeOfPoint(playerid, 12.0, LugarFogo[0], LugarFogo[1], LugarFogo[2]))
{
if(Apagando[playerid] > 0)
{
Apagando[playerid]++;
SetTimerEx("Check", 750, false, "i", playerid);
if(Apagando[playerid] == 10)
{
for(new f = 0; f < sizeof(Fire); f ++) { DestroyObject(Fire[f]); DestroyObject(Fire[f]); }
F = false;
GivePlayerMoney(playerid, 500);
for(new i = 0; i < MAX_PLAYERS; i ++)
{
Chegou[i] = false;
Apagando[i] = 0;
SendClientMessage(i, AMARELO, "O incкndio foi apagado !");
Tick = GetTickCount();
DisablePlayerCheckpoint(i);
KillTimer(Timer);
}
}
}
}
}
}
}
return 1;
}