Tutorial
Como aprender e/ou usar um Sistema de Cigarros no teu Gamemode. Óptimo para Roleplay.
Primeiro que nada terá que usar apenas tres includes no topo do GM:
Como aprender e/ou usar um Sistema de Cigarros no teu Gamemode. Óptimo para Roleplay.
Primeiro que nada terá que usar apenas tres includes no topo do GM:
pawn Code:
#include <zcmd> #include <sscanf2> #include <a_samp>
Nota: O sscanf2 nao é necessário neste caso, porém eu pus no tutorial para voces agora criarem os vossos próprios sistemas mais complexos.
Segundo terá que criar a variável que permitirá a contagem dos seus cigarros:
pawn Code:
new Cig[MAX_PLAYERS];
Juntamente crie ou adicione as cores necessárias.
pawn Code:
#define COLOR_GREEN 0x33AA33AA #define COLOR_RED 0xA10000AA
Terceiro agora vamos dificultar um bocado.
Vamos criar um comando para que o Player ganhe os cigarros, neste caso os compre.
Vamos criar um comando para que o Player ganhe os cigarros, neste caso os compre.
pawn Code:
CMD:comprarcigarros(playerid, params[]) { Cig[playerid] = 10; SendClientMessage(playerid, COLOR_GREEN, "Tiraste um cigarro do maço."); GivePlayerMoney(playerid, -200); return 1; }
Explicaçao:
Code:
Cig[playerid] = 10; - Significa os Cigarros que o player irá receber. SendClientMessage(playerid, COLOR_GREEN, "Tiraste um cigarro do maço."); - Manda mensagem ao Player. GivePlayerMoney(playerid, -200); - Significa o dinheiro que o player irá pagar.
Quarto, vamos criar um comando para que o Player fume:
pawn Code:
CMD:fumar(playerid, params[]) { if(Cig[playerid] == 0) return SendClientMessage(playerid,COLOR_RED,"Ja nao tens mais cigarros!"); SetPlayerSpecialAction(playerid, SPECIAL_ACTION_SMOKE_CIGGY); SendClientMessage(playerid,COLOR_GREEN,"Acendeste um cigarro!"); Cig[playerid] --; return 1; }
Explicação:
Code:
if(Cig[playerid] == 0) return SendClientMessage(playerid,COLOR_RED,"Ja nao tens mais cigarros!"); - Significa se estiver 0 cigarros, já não pode fumar mais. SetPlayerSpecialAction(playerid, SPECIAL_ACTION_SMOKE_CIGGY); - oferece ao playerid, um cigarro. SendClientMessage(playerid,COLOR_GREEN,"Acendeste um cigarro!"); - Manda mensagem ao player. Cig[playerid] --;
Quinto vamos criar um comando para que o player saiba quantos cigarros tem no seu "maço".
pawn Code:
CMD:maço(playerid, params[]) { SendClientMessage(playerid, COLOR_GREEN,"======== Maço ========"); new string[MAX_PLAYERS]; format(string,sizeof(string),"Cigarros: %d",Cig[playerid]); SendClientMessage(playerid,COLOR_GREEN,string); return 1; }
Explicação:
Code:
SendClientMessage(playerid, COLOR_GREEN,"======== Maço ========"); - Mandar mensagem. new string[MAX_PLAYERS]; - Contagem de string neste caso cigarros no format abaixo. format(string,sizeof(string),"Cigarros: %d",Cig[playerid]); - Mensagem que diz quantos cigarros tens. SendClientMessage(playerid,COLOR_GREEN,string); - Afirma que é uma ClientMessage, e dá a cor á mensagem.
Nota: Peço desculpa por alguma coisa, eu sei que o código do rapaz que criou o sistema de cigarros está parecido com o meu. Eu apenas usei o que ele fez e adaptei-o á minha maneira. Espero que tenho deixado tudo bem esclarecido. Alguma dúvida é só dizer (:
Postar um comentário