boa tarde. to com outro problema o checkpoint quando você perde a estrela de procurado fica no mapa para os policiais ele não ta sumindo ao perder a estrela nem ao deslogar.
Quando da o comando /procurados e seleciona o player procurado ele aparece o checkpoint porém ele esta com problemas quando o player perde a estrela o checkpoint fica nele ainda.
Olá, bom tenho esse sistema na minha GM, porém ao plantar o tempo passa muito rápido (tempo para regar antes de secar), e o tempo de colher passa muito rapido. Os codigos:
Código:
public TimerPlantas()
{
new string[256], query[254];
for(new e; e < MAX_MARIHUANA; e++)
{
if(Marihuana[e][Created] > 0)
{
Marihuana[e][Time] --;
if(TimerMaria > 300) GuardarPlanta(e),TimerMaria = 0;
TimerMaria ++;
switch(Marihuana[e][Status])
{
case 1:
{
if(Marihuana[e][Time] < 1)
{
Marihuana[e][Status] = 0;
Marihuana[e][Created] = 0;
if(IsValidDynamicObject(Marihuana[e][Object])) DestroyDynamicObject(Marihuana[e][Object]);
if(IsValidDynamic3DTextLabel(Marihuana[e][Etiqueta])) DestroyDynamic3DTextLabel(Marihuana[e][Etiqueta]);
mysql_format(handle_db, query, sizeof(query), "DELETE FROM marihuana WHERE ID = '%d'", Marihuana[e][mID]);
mysql_tquery(handle_db, query);
format(Marihuana[e][Owner], 24, "Nadie");
return true;
}
format(string, sizeof(string), "{91ed00}Semillas de Marihuana{FFFFFF}\nSembradas por {4C94F6}%s{FFFFFF}\nSe seca en %dm %ds\n{DBED15}/regar{FFFFFF}", Marihuana[e][Owner], Marihuana[e][Time]/60,Marihuana[e][Time]%(60));
if(IsValidDynamic3DTextLabel(Marihuana[e][Etiqueta])) UpdateDynamic3DTextLabelText(Marihuana[e][Etiqueta], COLOR_ROJO, string);
}
case 2:
{
new hora = Marihuana[e][Time]/3600;
new minuto = Marihuana[e][Time]/60%(60);
if(hora > 0 && minuto == 0)
{
if(IsValidDynamicObject(Marihuana[e][Object])) DestroyDynamicObject(Marihuana[e][Object]);
switch(hora)
{
case 2: Marihuana[e][Object] = CreateDynamicObject(19473, Marihuana[e][PosX], Marihuana[e][PosY], Marihuana[e][PosZ]-1.52, 0.000000, 0.000000, -0.000000);
case 3: Marihuana[e][Object] = CreateDynamicObject(19473, Marihuana[e][PosX], Marihuana[e][PosY], Marihuana[e][PosZ]-1.26, 0.000000, 0.000000, -0.000000);
case 4: Marihuana[e][Object] = CreateDynamicObject(19473, Marihuana[e][PosX], Marihuana[e][PosY], Marihuana[e][PosZ]-1.78, 0.000000, 0.000000, -0.000000);
case 5: Marihuana[e][Object] = CreateDynamicObject(19473, Marihuana[e][PosX], Marihuana[e][PosY], Marihuana[e][PosZ]-2.4, 0.000000, 0.000000, -0.000000);
default: Marihuana[e][Object] = CreateDynamicObject(19473, Marihuana[e][PosX], Marihuana[e][PosY], Marihuana[e][PosZ]-1, 0.000000, 0.000000, -0.000000);
}
}
if(Marihuana[e][Time] <= 0)
{
Marihuana[e][Status] = 3;
Marihuana[e][Time] = 86400;
if(IsValidDynamicObject(Marihuana[e][Object])) DestroyDynamicObject(Marihuana[e][Object]);
if(!IsValidDynamicObject(Marihuana[e][Object])) Marihuana[e][Object] = CreateDynamicObject(19473, Marihuana[e][PosX], Marihuana[e][PosY], Marihuana[e][PosZ]-1, 0.000000, 0.000000, -0.000000);
format(string, sizeof(string), "{00cc00}Planta de Marihuana{FFFFFF}\nSembrada por {00ccff}%s{FFFFFF}\nSe seca en %dh %dm %ds\n{DBED15}/cosechar planta{FFFFFF}", Marihuana[e][Owner],Marihuana[e][Time]/3600, Marihuana[e][Time]/60%(60),Marihuana[e][Time]%(60));
}
else format(string, sizeof(string), "{00cc00}Planta de Marihuana{FFFFFF}\nSembrada por {00ccff}%s{FFFFFF}\nMadura en %dh %dm %ds", Marihuana[e][Owner],Marihuana[e][Time]/3600, Marihuana[e][Time]/60%(60),Marihuana[e][Time]%(60));
if(IsValidDynamic3DTextLabel(Marihuana[e][Etiqueta])) UpdateDynamic3DTextLabelText(Marihuana[e][Etiqueta], COLOR_ROJO, string);
}
case 3:
{
if(Marihuana[e][Time] <= 0)
{
Marihuana[e][Created] = 0;
if(IsValidDynamicObject(Marihuana[e][Object])) DestroyDynamicObject(Marihuana[e][Object]);
if(IsValidDynamic3DTextLabel(Marihuana[e][Etiqueta])) DestroyDynamic3DTextLabel(Marihuana[e][Etiqueta]);
mysql_format(handle_db, query, sizeof(query), "DELETE FROM marihuana WHERE ID = '%d'", Marihuana[e][mID]);
mysql_tquery(handle_db, query);
format(Marihuana[e][Owner], 24, "Nadie");
}
else
{
format(string, sizeof(string), "{00cc00}Planta de Marihuana{FFFFFF}\nSembrada por {00ccff}%s{FFFFFF}\nSe seca en %dh %dm %ds\n{DBED15}/cosechar planta{FFFFFF}", Marihuana[e][Owner],Marihuana[e][Time]/3600, Marihuana[e][Time]/60,Marihuana[e][Time]%(60));
if(IsValidDynamic3DTextLabel(Marihuana[e][Etiqueta])) UpdateDynamic3DTextLabelText(Marihuana[e][Etiqueta], COLOR_ROJO, string);
}
}
}
}
}
return 1;
}
boa noite. queria saber se consigo usar a tecla F = KEY_SECONDARY_ATTACK para dois comandos
eu fiz assim:
Código PHP:
if(newkeys == KEY_SECONDARY_ATTACK) { if(!IsPlayerInRangeOfPoint(playerid, 2.0, 257.5956,76.0713,1003.6406)) return Msg(playerid, Vermelho, "<!> {FFFFFF}Você não esta no vestiario da DP de Los Santos!"); cmd_equiparp(playerid); } if(newkeys == KEY_SECONDARY_ATTACK) { if(!IsPlayerInRangeOfPoint(playerid, 2.0, 1154.6479,-2037.2949,69.0078)) return Msg(playerid, Vermelho, "<!> {FFFFFF}Você não esta na favela2!"); cmd_equiparl(playerid); }
Porém não funcionou e sempre que clico F ou enter mesmo longe do local fica falando que não estou na favela ou na dp ou não sou policial ou ladrão...
boa noite. estou fazendo um comando de equipar porém ele esta equipando mesmo longe do local que eu coloquei...
Código PHP:
CMD:equipar(playerid) { if(GetPlayerClass(playerid) != PLAYER_CLASS_POLICE) return SendClientMessage(playerid,-1,"{E84F33}<!> {FFFFFF}Você não é um Policial!");
static timeCMD[MAX_PLAYERS];
if(gettime() - timeCMD[playerid] < 120 && !IsVip(playerid)) return Msg(playerid, Vermelho, "<!> {FFFFFF}Aguarde 2 minutos para usar esse comando novamente!");
if(PlayerToPoint(2.0, playerid, 1448.3535,-2490.5864,13.5547)) return Msg(playerid,0xFFFFFFFF,"Você não esta no vestiario da delegacia"); GameTextForPlayer(playerid,"~b~equipado! Você equipo vida/colete uma m4 e uma desert. Bom RP!", 5000,2); SetPlayerHealth(playerid,100); SetPlayerArmour(playerid,100); SetPlayerSkin(playerid, 280); GivePlayerWeapon(playerid, 31,150); GivePlayerWeapon(playerid, 24,150); return 1; }
boa tarde, estou com o problema que eu dou cadeia pra um player ele e setado pro mundo 0 no caso não esta salvando o mundo em que ele estava retorna sempre pro 0 quando eu do cadeia e quando ele e liberado da cadeia ele vai pro 0 queria que ele ficasse no mesmo mundo em que estava e na hora que ele fosse solto tb..
new id, time, motive[55 + (MAX_PLAYER_NAME * 2) + 6 + 19 + 1];
if(sscanf(params, "uis[400]", id, time, motive)) return SendClientMessage(playerid, COLOR_YELLOW, "<!> {FFFFFF}Use: /Cadeia <id> <tempo em minutos> <motivo>");
if(!IsPlayerConnected(id)) return SendClientMessage(playerid, COLOR_YELLOW, "<!> {FFFFFF}Esse jogador não está conectado!");
if(ContaPlayer[id][Level] > 0) return SendClientMessage(playerid, COLOR_YELLOW, "<!> {FFFFFF}Você não pode dar cadeia em administradores!");
if(IsPlayerInChainAdmin(id)) return SendClientMessage(playerid, COLOR_YELLOW, "<!> {FFFFFF}Esse jogador já está na cadeia admin! Para tira-lo Use: /Rcadeia <id> <motivo>");
PutPlayerInChainAdmin(id, time * 60);
format(motive, sizeof(motive), "Admin %s prendeu %s na CADEIA ADMIN por %d minuto%s. Motivo: %s.", Nome(playerid), Nome(id), time, (time == 1) ? ("") : ("s"), motive); MsgToAll(0xFF444499, motive); return 1; }
Boa noite, bom, estou precisando de um sistema de setor VIP no evento, porém, não tenho base de como é. Por isso, vim aqui pedir a ajuda de vocês, deixarei um exemplo abaixo:
Exemplo: esse sistema é para quando, algum adm fizer um evento, quando o adm executar o comando /setvipevento [id] [dias], ele vai setar o dias de VIP, sem alterar o VIP do player, se o player tiver, 30 dias de VIP e o adm querer setar mais 3 dias, o adm vai executar /setvipevento [id] 303, vai apenas setar mais 3 dias sem alterar nada nos 30 do player!!
Alguem tem algum video bom de explicação, tanto de instalação quanto de uso do YSI, estou rachando a cabeça, porque toda vez que tento instalar dá diversos erros, procurei aqui no forum e não achei nada, só links quebrados e etc.