10.06.2017, 17:47
(
Последний раз редактировалось WoozieBRz; 13.06.2017 в 13:37.
)
Realizando melhorias no cуdigo sera feito um novo FS melhorado em breve
public OnPlayerConnect(playerid)
{
/* ... */
//SISTEMA DE SALARIO
SetTimerEx("ponto", 1799000, true, "i", playerid);
SetTimerEx("salario", 1800000, true, "i", playerid);
new str[128]; new NAME[128];
new prof;
GetPlayerName(playerid,NAME,128);
format(str, sizeof(str),"/caravana/%s.ini", NAME);
prof = DOF2_GetInt(str, "profissao");
profissao[playerid] = prof;
return 1;
}
enum pinfo{
profissao,
timers[2]
}
new pData[MAX_PLAYERS][pinfo];
//exemplo:
pData[playerid][profissao] = 1;
pData[playerid][timers][0] = SetTimer
//Ou
#define PROFISSAO 0
#define TIMER1 1
#define TIMER2 2
new pData[MAX_PLAYERS][3];
pData[playerid][PROFISSAO] = 1;
profissao[playerid] = DOF2_GetInt(str, "profissao");
public OnPlayerDisconnect(playerid, reason)
{
new str[24]; new NAME[26];
GetPlayerName(playerid,NAME,26);
format(str, sizeof(str),"/caravana/%s.ini", NAME);
DOF2_CreateFile(str);
DOF2_SetInt(str, "profissao", profissao[playerid]);
DOF2_SaveFile();
return 1;
}
public OnPlayerSpawn(playerid)
{
if(profissao[playerid] != caminhoneiro) return profissao[playerid] = novato , SetPlayerColor(playerid, branco);
if(profissao[playerid] == caminhoneiro) return SetPlayerColor(playerid, cinza);
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == carregamento)
{
switch(listitem)
{
case 0:
{
new rota1 = 1;
SetPlayerMapIcon(playerid, rota1, -1299.1785, 2707.7415, 50.0625, 24, 0, MAPICON_GLOBAL);
SetPlayerCheckpoint(playerid, -1299.1785, 2707.7415, 50.0625, 10.0);
SendClientMessage(playerid, -1, "{00FF00}Cargueiro carregado!!!");
SendClientMessage(playerid, -1, "{00FF00}Foi marcado em seu mapa o local de descarregamento.");
ROTAp[playerid] = 1;
}
}
}
return 1;
}
CMD:caminhoneiro(playerid, params[])
{
new jogador;
new ajog[25], pjog [25];
GetPlayerName(jogador, ajog, sizeof(ajog));
GetPlayerName(playerid, pjog, sizeof(pjog));
if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, -1, "{FF0000}Vocк nгo й admin!");
if(sscanf(params, "d", jogador)) return SendClientMessage(playerid, -1, "{FF0000}Uso Correto: /caminhoneiro [id]");
if(!IsPlayerConnected(jogador)) return SendClientMessage(playerid, -1, "{FF0000} jogador nгo conectado.");
SendClientMessage(jogador, -1, "{00FF00}Algum admin te colocou na profissao de caminhoneiro.");
SendClientMessage(playerid, -1, "{FF0000}Vocк deu profissгo de caminhoneiro para o jogador.");
profissao[jogador] = caminhoneiro;
SetPlayerColor(jogador, cinza);
return 1;
}
CMD:cp(playerid, params[])
{
new string[128], Texto[200];
if(sscanf(params, "s[128]", string)) return SendClientMessage(playerid, -1, "{00FF00}Uso correto: /cp [Mensagem]");
if(profissao[playerid] != caminhoneiro) return SendClientMessage(playerid, -1, "{FF0000}Civis nгo tem chat prуprio");
new nome[MAX_PLAYER_NAME];
GetPlayerName(playerid, nome, sizeof(nome));
format(Texto, 128, "{999999}I Chat-Profissгo I %s diz: %s", nome, string);
for(new i, Trucker = GetMaxPlayers(); i < Trucker; i++)
{
if(!IsPlayerConnected(i)) continue;
if(profissao[i] == caminhoneiro || profissao[playerid] == caminhoneiro)
{
SendClientMessage(i, -1, Texto);
}
}
return 1;
}
for(new i, Trucker = GetMaxPlayers(); i < Trucker; i++)
for(new i, Trucker = GetPlayerPoolSize(); i <= Trucker; i++)
if(profissao[i] == caminhoneiro || profissao[playerid] == caminhoneiro)
Se (profissao[i] for igual a caminhoneiro OU profissao[playerid] for igual a caminhoneiro)
CMD:profissao(playerid, params[])
{
if(profissao[playerid] == caminhoneiro)
{
#define DialogBoxEx 2000
new str[500];
format(str, sizeof(str), "{FF0000}quer falar com outros da profissгo? /cp\n{ff0000}quer cancelar a rota ? /cancelar\n{ff0000}se perdeu ? /local\n\n{66ff66}1- Engate um cargueiro no seu caminhгo\n{ffff00}2- De {ff0000}/carregar {ffff00}e siga o icone de caminhгo no mapa\n{66ffff}3- Se estiver la de {ff0000}/carregar {66ffff}novamente\n{ff9900}4- Escolha uma rota", playerid);
ShowPlayerDialog(playerid, DialogBoxEx, DIALOG_STYLE_MSGBOX, "Como Trabalhar", str, "Entendi", "");
}
if(profissao[playerid] == novato)
{
SendClientMessage(playerid, -1, "{FF0000}Vocк nгo trabalha pegue outra profissгo!");
}
return 1;
}
nem vou mandar comentario em cima do seu para nгo poluir o tуpico
|
new pVEZ[MAX_PLAYERS], ROTAp[MAX_PLAYERS], profissao[MAX_PLAYERS] , local[MAX_PLAYERS] , matartempo[MAX_PLAYERS];
pensei q eu tava jogando CVR cara, ta bem parecido ..
mas a ideia foi boa, versгo 2.1 estб muito boa cara, parabens! |