Sistema de conquistas -
HelderPT - 06.05.2018
Como o titulo jб diz poderiam me dar uma base de um sistema de conquistas?
tipo isto
https://prnt.sc/79f1n4
sei criar o textdraw apenas precisso de uma base de sistema.
abraзos.
Re: Sistema de conquistas -
AllanSG - 06.05.2018
Vocк pode criar uma pasta na scriptfiles chamada
Conquistas, dentro dela poderia conter os nicks dos jogadores em arquivos .ini, dentro dos arquivos poderia contar as conquistas, que poderiam ser feitas por ID, exemplo
pawn Code:
0 = false
1 = false
2 = false
3 = false
4 = false
etc...
Ou com os nomes das conquistas, exemplo
pawn Code:
SeRegistrou = false
PrimeiroLogin = false
LeuRegras = false
LeuCreditos = false
ChegouLevel5 = false
etc...
, fazendo uma funзгo para checar essas informaзхes na pasta, quando um jogador se registra, loga, upa, usa comandos .... verifica se a conquista jб esta desbloqueada (true), se nгo, da a recompensa e seta true na pasta de conquistas, no arquivo do jogador.
obs: poderia setar as conquistas dentro da pasta do jogador tambйm, mas acho que iria ficar muita coisa junta.
Sу nгo faзo o cуdigo e envio pra vocк porquк deu uma preguiзa gigante de programar agora

desculpe.
Re: Sistema de conquistas -
RIPOrkut - 06.05.2018
Aqui estб uma base que eu fiz agorinha na pressa mesmo, adapte ao seu gamemode e nгo se esqueзa de criar a pasta 'Conquistas', sem aspas, nas suas scriptfiles.
Includes necessбrias:
[*] DOF2
Code:
enum CONQUISTAS
{
LeuAsRegras,
LeuOsCreditos
}
new Conquistas[MAX_PLAYERS][CONQUISTAS];
#define totalconquistas 2 // mбximo de conquistas
forward CarregarConquistas();
public CarregarConquistas()
{
new playername[MAX_PLAYER_NAME + 2];
GetPlayerName(playerid, playername, sizeof(playername));
new arquivo[64];
format(arquivo, sizeof(arquivo), "Conquistas/%sConquistas.ini", playername);
if(!DOF2_FileExists(arquivo))
{
DOF2_CreateFile(arquivo);
DOF2_SetInt(arquivo, "LeuAsRegras", Conquistas[playerid][LeuAsRegras]);
DOF2_SetInt(arquivo, "LeuOsCreditos", Conquistas[playerid][LeuOsCreditos]);
}
Conquistas[playerid][LeuAsRegras] = DOF2_GetInt(arquivo, "LeuAsRegras");
Conquistas[playerid][LeuOsCreditos] = DOF2_GetInt(arquivo, "LeuOsCreditos");
return 1;
}
forward SalvarConquistas();
public SalvarConquistas()
{
new playername[MAX_PLAYER_NAME + 2];
GetPlayerName(playerid, playername, sizeof(playername));
new arquivo[64];
format(arquivo, sizeof(arquivo), "Conquistas/%sConquistas.ini", playername);
if(!DOF2_FileExists(arquivo))
{
DOF2_CreateFile(arquivo);
DOF2_SetInt(arquivo, "LeuAsRegras", Conquistas[playerid][LeuAsRegras]);
DOF2_SetInt(arquivo, "LeuOsCreditos", Conquistas[playerid][LeuOsCreditos]);
}
DOF2_SetInt(arquivo, "LeuAsRegras", Conquistas[playerid][LeuAsRegras]);
DOF2_SetInt(arquivo, "LeuOsCreditos", Conquistas[playerid][LeuOsCreditos]);
return 1;
}
if(strcmp(cmd, "/creditos", true) == 0)
{
if(IsPlayerConnected(playerid))
{
SendClientMessage(playerid, -1, "|______________ Crйditos ______________|");
SendClientMessage(playerid, -1, "Sistema de Conquistas feito por eu mesmo.");
Conquistas[playerid][LeuOsCreditos] = 1;
// TextDrawShowForPlayer aqui
}
return 1;
}
if(strcmp(cmd, "/regras", true) == 0)
{
if(IsPlayerConnected(playerid))
{
SendClientMessage(playerid, -1, "Vб ao fуrum, /forum");
Conquistas[playerid][LeuAsRegras] = 1;
// TextDrawShowForPlayer aqui
}
return 1;
}
if(strcmp(cmd, "/conquistas", true) == 0)
{
if(IsPlayerConnected(playerid))
{
new conquistas = 0;
SendClientMessage(playerid, -1, "|______________ Conquistas ______________|");
if(Conquistas[playerid][LeuAsRegras] == 1)
{
SendClientMessage(playerid, -1, "Vocк leu as regras.");
conquistas++;
}
else if(Conquistas[playerid][LeuOsCreditos] == 1)
{
SendClientMessage(playerid, -1, "Vocк leu os crйditos.");
conquistas++;
}
new string[128];
format(string, sizeof(string), "%d de %d conquistas desbloqueadas.", conquistas, totalconquistas);
SendClientMessage(playerid, -1, string);
}
return 1;
}
Re: Sistema de conquistas -
HelderPT - 07.05.2018
Obrigado pela base.
Re: Sistema de conquistas -
Felipe_Freeze - 07.05.2018
Papo, с usa Dof2 nгo kk...
Faz em MySql
Re: Sistema de conquistas -
HelderPT - 07.05.2018
Nem me fala em MYSQL!
Jб me chatiei mt com ele ;-;
Re: Sistema de conquistas -
Felipe_Freeze - 07.05.2018
Quote:
Originally Posted by HelderPT
Nem me fala em MYSQL!
Jб me chatiei mt com ele ;-;
|
Dб uma olhada nesse tutorial do Ricop sobre o Mysql:
https://sampforum.blast.hk/showthread.php?tid=299675
Tб meio desatualizado, mas dб pra ter uma noзгo bбsica.