24.05.2018, 17:32
estou editando uma gm mata mata GM BASE Alpha DOG
soque o quando vc chama um oponente no /x1c o player vai aceitar no /gx1 soq quando vao se teletransporta para area de DM o lugar nao aparece e eu nao sei onde tenho que arrumar
soque o quando vc chama um oponente no /x1c o player vai aceitar no /gx1 soq quando vao se teletransporta para area de DM o lugar nao aparece e eu nao sei onde tenho que arrumar
PHP код:
if(strcmp("/gx1", cmdtext, true) == 0) {
//Inicializa
if(!IsPlayerSpawned(playerid)){return 1;}
if(Anova == 1) return SendClientMessage(playerid, COLOUR_ERRO, "[ERRO]: Esta arena foi temporariamente desativada para manutenзгo");
if(Arena[playerid] == 1) return SendClientMessage(playerid, COLOUR_ERRO, StringTable[9]);
new oponenteid = ChamadoParaX1Por[playerid];
new Tx1 = CX1Tipo[playerid];
if(oponenteid == playerid) return SendClientMessage(playerid,COLOUR_ERRO,"[ERRO]: Vocк nгo pode disputar um X1 contra sua sombra!");
if(oponenteid == -1) return SendClientMessage(playerid,COLOUR_ERRO,"[ERRO]: Ninguйm te convidou para um X1 ou o convite foi cancelado");
//Valida oponente
if(!IsPlayerSpawned(oponenteid)) return SendClientMessage(playerid,COLOUR_ERRO,"[ERRO]: Seu oponente nгo nasceu ainda!");
if(EventoProibirTele == true && NoEvento[oponenteid] == 1 && EventoAtivo == 1) return SendClientMessage(playerid, COLOUR_ERRO, "[ERRO]: Seu oponente estб dentro de um evento");
if(GetPlayerInterior(oponenteid) != 0) return SendClientMessage(playerid,COLOUR_ERRO,"[ERRO]: Seu oponente deve sair do interior");
if(Arena[oponenteid] == 1) return SendClientMessage(playerid, COLOUR_ERRO, "[ERRO]: Seu oponente jб estб em uma arena!");
if(LifeBaixo(oponenteid)) return SendClientMessage(playerid, COLOUR_ERRO, "[ERRO]: Seu oponente estб com pouca vida!");
if(CallRemoteFunction("LocalInvalidoParaTeleporte","i",oponenteid) && GetPlayerInterior(oponenteid) > 0) return SendClientMessage(playerid, COLOUR_ERRO, "[ERRO]: Seu oponente estб em um local em que os teleportes sгo bloqueados");
//Valida playerid
if(!IsPlayerSpawned(playerid)){return 1;}
if(EventoProibirTele == true && NoEvento[playerid] == 1 && EventoAtivo == 1) return SendClientMessage(playerid, COLOUR_ERRO, StringTable[3]);
if(GetPlayerInterior(playerid) != 0) return SendClientMessage(playerid,COLOUR_ERRO,StringTable[7]);
if(Arena[playerid] == 1) return SendClientMessage(playerid, COLOUR_ERRO, StringTable[9]);
if(LifeBaixo(playerid)) return SendClientMessage(playerid, COLOUR_ERRO, StringTable[6]);
if(CallRemoteFunction("LocalInvalidoParaTeleporte","i",playerid) && GetPlayerInterior(playerid) > 0) return SendClientMessage(playerid, COLOUR_ERRO, StringTable[2]);
//Prepara sistema - verificaзхes finais
if(Tx1 == 0) return SendClientMessage(playerid,COLOUR_ERRO,"[ERRO]: Houve um erro interno no gamemode! Para evitar bugs o X1 nгo irб ocorrer...");
new rand;
//Prepara Arena
new X1CWorld = 11000+oponenteid;
for(new i; i < GetMaxPlayers(); i++)
{
if(IsPlayerConnected(i))
{
if(GetPlayerVirtualWorld(i) == X1CWorld && IsPlayerSpawned(i))
{
SetPlayerHealth(i,0.0);
SendClientMessage(i,COLOUR_AVISO,"[AVISO]: Vocк foi morto por estar em uma arena/world de X1 que serб usada agora");
}
}
}
//Prepara playerid
ResetAwayStatus(playerid);
RemoverTodosAttachsObj(playerid);
SetPlayerVirtualWorld(playerid, X1CWorld);
rand = random(sizeof(ArenaPos));
SetPlayerPos(playerid, ArenaPos[rand][0], ArenaPos[rand][1], ArenaPos[rand][2]); // Warp the player
SetCameraBehindPlayer(playerid);
ResetPlayerWeapons(playerid);
//X1 Running
if(Tx1 == 1){
SetPlayerHealth(playerid,100);
SetPlayerArmour(playerid,100);
GivePlayerWeapon(playerid, 22, 9999);
GivePlayerWeapon(playerid, 28, 9999);
GivePlayerWeapon(playerid, 26, 9999);
GameTextForPlayer(playerid,"~r~X1! MANDA VER!", 3000, 5);
ArenaTipo[playerid] = 13;
Arena[playerid] = 1;}
//X1 Walking
if(Tx1 == 2){
SetPlayerHealth(playerid,100);
SetPlayerArmour(playerid,100);
GivePlayerWeapon(playerid, 4, 2);
GivePlayerWeapon(playerid, 24, 9999);
GivePlayerWeapon(playerid, 25, 9999);
GivePlayerWeapon(playerid, 31, 9999);
GivePlayerWeapon(playerid, 34, 9999);
GivePlayerWeapon(playerid, 29, 9999);
GameTextForPlayer(playerid,"~r~X1 WALK! MANDA VER!", 3000, 5);
ArenaTipo[playerid] = 14;
Arena[playerid] = 1;}
//Prepara oponente
ResetAwayStatus(oponenteid);
RemoverTodosAttachsObj(oponenteid);
SetPlayerVirtualWorld(oponenteid, X1CWorld);
rand = random(sizeof(ArenaPos));
SetPlayerPos(oponenteid, ArenaPos[rand][0], ArenaPos[rand][1], ArenaPos[rand][2]); // Warp the player
SetCameraBehindPlayer(oponenteid);
ResetPlayerWeapons(oponenteid);
//X1 Running
if(Tx1 == 1){
SetPlayerHealth(oponenteid,100);
SetPlayerArmour(oponenteid,100);
GivePlayerWeapon(oponenteid, 22, 9999);
GivePlayerWeapon(oponenteid, 28, 9999);
GivePlayerWeapon(oponenteid, 26, 9999);
GameTextForPlayer(oponenteid,"~r~X1! MANDA VER!", 3000, 5);
ArenaTipo[oponenteid] = 13;
Arena[oponenteid] = 1;}
//X1 Walking
if(Tx1 == 2){
SetPlayerHealth(oponenteid,100);
SetPlayerArmour(oponenteid,100);
GivePlayerWeapon(oponenteid, 4, 2);
GivePlayerWeapon(oponenteid, 24, 9999);
GivePlayerWeapon(oponenteid, 25, 9999);
GivePlayerWeapon(oponenteid, 31, 9999);
GivePlayerWeapon(oponenteid, 34, 9999);
GivePlayerWeapon(oponenteid, 29, 9999);
GameTextForPlayer(oponenteid,"~r~X1 WALK! MANDA VER!", 3000, 5);
ArenaTipo[oponenteid] = 14;
Arena[oponenteid] = 1;}
//Finalizar
new pname[MAX_PLAYER_NAME],pname2[MAX_PLAYER_NAME];
GetPlayerName(playerid, pname, sizeof(pname));
GetPlayerName(oponenteid, pname2, sizeof(pname2));
new str[160];
new X1TipoSTR[20];
if(Tx1 == 1) X1TipoSTR = "RUNNING";
if(Tx1 == 2) X1TipoSTR = "WALKING";
//CX1Tipo[param]
format(str, sizeof(str), "[X1]: Comeзou um X1 {00FFFF}%s{00FF00}: {FFFFFF}%s {00FF00}contra{FFFFFF} %s", X1TipoSTR, pname, pname2);
SendClientMessageToAll(COLOUR_INFORMACAO, str);
return 1;}