[AJUDA] Evento ! Zumbie x Mendingos ! -
Oakley_TwOPaCk - 25.06.2012
Bom Galera !
Estou aqui hoje pedindo ajuda de vocкs para me ajudarem criar meu sistema de evento de Zumbie x Mendingos !
e й o seguinte... Uso o GM BHL - Brasil Hyper Life que й base BMG... e tem varios eventos aqui ... mais esse que eu quero criar й assim :
ADM com nivel 1337 - Master digita /eventozxm ( Evento Zumbie x Mendingos ) dai Apareзe um Dialog para todos.. Soque envez de MSGBOX quero Dialog Style List vou dar um exemplo, nгo sou hard nisso vou tentar dar um exemplo !
pawn Код:
if (strcmp("/eventozxm", cmdtext, true, 10) == 0)
{
ShowPlayerDialog(playerid,ZxM,DIALOG_STYLE_LIST,"Escolha Qual Time vocк quer !","Zumbie\nMendingos","Selecionar","Cancelar");
return 1;
}
aai й so uma ideia que tive... dai o cara escolhe o time que quer e Click em Selecionar ou Cancelar para nгo participar...
Dai se ele escolher Mendingos ele й colocado em uma posiзгo... Zumbie em outra... ee a cada pessoa que o player matar ganha 1000 de Dinheiro e isso ja tenho um fs que pode me dar a base disso... vou postar aqui como poderia ser :
pawn Код:
public OnPlayerDeath(playerid, killerid, reason)
{
format(string, sizeof(string),"[EVENTO] %s Matou %s No evento e Ganhou 1000 de Bonus !.",Nomi[killerid], Nome[killerid]);
SendClientMessageToAll(Branco, string);
GivePlayerMoney(playerid, 1000);
}
return true;
}
isso ai й so uma Base... e agora presciso da Ajuda de vocкs ! e tbm presciso colocar as armas dos Zumbies e Mendingos ! йr isso ai galera, quero so uma base.. Pois estou aqui para aprender ;]]
Me Ajudem por favor
Re: [AJUDA] Evento ! Zumbie x Mendingos ! -
.FuneraL. - 25.06.2012
pawn Код:
#define DIALOGEVENTO 5432
if (strcmp("/eventozxm", cmdtext, true, 10) == 0)
{
ShowPlayerDialog(playerid,DIALOGEVENTO,DIALOG_STYLE_LIST,"Escolha Qual Time vocк quer !","Zumbie\nMendingos","Selecionar","Cancelar");
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == DIALOGEVENTO)
{
if(response)
{
switch(listitem)
{
case 0:
{
//O Que irб ser setado no time dos Zumbis
}
case 1:
{
//O Que irб ser setado no Time dos Humanos
}
}
}
}
return 0;
}
Fiz uma pequena base de como seria , sу colocar as funзхes agora.
Re: [AJUDA] Evento ! Zumbie x Mendingos ! -
dPlaYer_ - 25.06.2012
Faзa o resto ai '-' te dei a faca e o queijo
pawn Код:
#include <a_samp>
#define ZxM 5432
new InZxM[MAX_PLAYERS];
public OnFilterScriptInit(){return 1;}
public OnFilterScriptExit(){return 1;}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == ZxM)
{
if(response)
{
switch(listitem)
{
case 0:
{
InZxM[playerid] = 1;
GivePlayerWeapon(playerid, 29, 900);
GivePlayerWeapon(playerid, 24, 900);
GivePlayerWeapon(playerid, 31, 900);
SetPlayerPos(playerid, 0,0,0);
}
case 1:
{
InZxM[playerid] = 1;
GivePlayerWeapon(playerid, 26, 900);
GivePlayerWeapon(playerid, 24, 900);
GivePlayerWeapon(playerid, 32, 900);
SetPlayerPos(playerid, 0,0,0);
}
}
}
}
return 0;
}
public OnPlayerDeath(playerid, killerid, reason)
{
if(InZxM[playerid] == 1)
{
new string[100];
format(string, sizeof(string),"[EVENTO] %s Matou %s No evento e Ganhou 1000 de Bonus !.",nome(killerid), nome(playerid));
SendClientMessageToAll(-1, string);
GivePlayerMoney(killerid, 1000);
InZxM[playerid] = 0;
}
return 1;
}
public OnPlayerCommandText(playerid, cmdtext[])
{
if(InZxM[playerid] == 1) return SendClientMessage(playerid, -1, " Vocк estб em um evento e nгo pode usar comandos!");
if (strcmp("/eventozxm", cmdtext, true, 10) == 0)
{
ShowPlayerDialog(playerid,ZxM,DIALOG_STYLE_LIST,"Escolha Qual Time vocк quer !","Zumbie\nMendingos","Selecionar","Cancelar");
return 1;
}
return 0;
}
stock nome(playerid)
{
new nj[MAX_PLAYER_NAME];
GetPlayerName(playerid, nj, sizeof(nj));
return nj;
}
Re: [AJUDA] Evento ! Zumbie x Mendingos ! -
Oakley_TwOPaCk - 25.06.2012
@dPlayer
- Aew manim estou usando o seu...
mais tenho algumas Duvidas !
como eu quero que adm Modo trabalho e LVL 1337 possa usar esse cmd eu fiz ele assim :
pawn Код:
if(InZxM[playerid] == 1) return SendClientMessage(playerid, -1, " Vocк estб em um evento e nгo pode usar comandos!");
{
if(admtrampando[playerid] < 1 && PlayerInfo[playerid][pAdmin] != DONO)
{
SendClientMessage(playerid, COLOR_GRAD1, "Vocк nгo estб trabalhando! (/trabalhar)");
return true;
}
if(IsPlayerConnected(playerid))
{
if (PlayerInfo[playerid][pAdmin] >= 1337)
{
ShowPlayerDialog(playerid,DIALOGEVENTO,DIALOG_STYLE_LIST,"Escolha Qual time vocк Quer Participar","Zumbie\nMendingos","Selecionar","Cancelar");
}
}
}
}
}
Nгo sei se estб certo, й minha primeira vez que faзo um comando assim
Outra :
pawn Код:
if(dialogid == ZxM)
{
if(response)
{
switch(listitem)
{
case 0:
{
InZxM[playerid] = 1;
GivePlayerWeapon(playerid, 24, 900);
GivePlayerWeapon(playerid, 25, 900);
GivePlayerWeapon(playerid, 29, 900);
GivePlayerWeapon(playerid, 30, 900);
SetPlayerSkin(playerid, 230);
SetPlayerPos(playerid, 0,0,0);
}
case 1:
{
InZxM[playerid] = 1;
GivePlayerWeapon(playerid, 24, 900);
GivePlayerWeapon(playerid, 25, 900);
GivePlayerWeapon(playerid, 29, 900);
GivePlayerWeapon(playerid, 31, 900);
SetPlayerSkin(playerid, 209);
SetPlayerPos(playerid, 0,0,0);
}
}
}
}
Como pode ver, coloquei id das skins... ai queria que quando player Morrer voltar a skin que ele estava !
Uma coisa que nгo entendi foi isso :
pawn Код:
public OnFilterScriptInit(){return 1;}
public OnFilterScriptExit(){return 1;}
Meu gm nгo tem isso '-' й obrigatуrio o uso ?
Agora isso :
pawn Код:
stock nome(playerid)
{
new nj[MAX_PLAYER_NAME];
GetPlayerName(playerid, nj, sizeof(nj));
return nj;
}
new nj ? '-'
return nj ? D: me explica se tem alguma Stock/new que prescisa para usar isso '-'
Re: [AJUDA] Evento ! Zumbie x Mendingos ! -
@Riichard - 25.06.2012
Vocк vai adicionar isso ai, GM?
Se sim,posso montar uma base pronta aqui para vocк.
Respuesta: [AJUDA] Evento ! Zumbie x Mendingos ! -
zSuYaNw - 25.06.2012
Eu montei um gamemode faz anos luz, explicando as funзхes nativas..
http://pastebin.com/ug6XyG48
Source:
PHP код:
/*
Pequeno tutorial de como criar um GameMode TDM
facilmente, otimizado e com funзхes nativas.
Explicaзгo por min(Garfield/SuYaNw).
ATENЗГO,
- Nгo edite o gamemode, apenas leia com atenзгo
e tente fazer o seu prуprio, e caso tenha dъvidas,
antes de chegar criando tуpico, vб na Wiki.sa-mp,com.
Cordialmente,
G.SuYaNw Dбcio.
*/
#include a_samp
// Bom, caso queira colocar mais "Times", coloque "TEAM_NOME_TIME".
#define TEAM_HUMANS (10)
#define TEAM_ZOMBIES (15)
public OnGameModeInit()
{
// AddPlayerClassEx(teamid, skin, Float:x, Float:y, Float:z, Float:Angle, weapon1, weapon1_ammo, weapon2, weapon2_ammo, weapon3, weapon3_ammo)
AddPlayerClassEx(TEAM_HUMANS, 100, 2096.2456,1285.5159,78.1742, 0.0, 0,0,0,0,0,0); // Time Humanos - CLASSE 0
AddPlayerClassEx(TEAM_ZOMBIES, 128, 2096.2456,1285.5159,78.1742, 0.0, 0,0,0,0,0,0); // Time Zombies - CLASSE 1
// Utilizamos AddPlayerClasseEx para quando o membro da mesma equipe
// Atirar no outro membro da mesma equipe (TeamKill), nгo perde vida
// Assim Evitando "Team Kill".
return true;
}
public OnPlayerRequestClass(playerid, classid)
{
switch(classid)
{
case 0:
{
// Utilizamos tambйm o "CLASSEID", o Classid й a sequкncia das classes
// que foram criadas, como no caso acima, a classe "Humanso" foi criada
// Antesq ue a classe Zombies, entгo a classe 'Humanos' й 0.
// e a classe zombie й 1.
SetPlayerTeam(playerid, TEAM_HUMANS);
// Agora, na funзгo "SetPlayerTeam" para indicar qual team o jogador
// pertence, normalmente utilizamos para fazer o Anti- Team Kill.
// Agora iremos mandar uma mensagem na tela do player dizendo qual
// й o "Time" dele:
GameTextForPlayer(playerid, "Humanos", 2500, 3);
// Este texto irб desaparecer em 2 segundos e meio ( 25000 ).
}
case 1:
{
// --
SetPlayerTeam(playerid, TEAM_ZOMBIES);
GameTextForPlayer(playerid, "Zombies", 2500, 3);
// --
}
}
// Agora iremos mostrar aonde estarб o personagem para o player escolher:
// A funзгo abaixo, seta o mundo virtual do player, ele й quase infinto,
// imagine um mundo virtual, sendo um universo pararelo, o cara estб connectado
// ao servidor, mais nгo estб no mesmo "Universo" que os outros players xD.
// Por padrгo, o mundo virtual dos players й "0".
SetPlayerVirtualWorld(playerid, 0);
// Agora iremos indicar aonde fica a posiзгo do personagem, ou seja, aonde
// ele fica parao player escolher.
SetPlayerPos(playerid, 2096.2456,1285.5159,78.1742);
// Bom, na funзгo abaixo, iremos indicar aonde fica a posiзгo da cвmera do Player.
SetPlayerCameraPos(playerid,2097.145,1288.484,80.396);
// Agora iremos indicar a distвncia da camera com o personagem.
SetPlayerCameraLookAt(playerid,2096.245,1285.515,78.174);
// E por ъltimo, o Angulo.
SetPlayerFacingAngle(playerid, 0.0);
return true;
}
public OnPlayerConnect(playerid)
{
new // A funзгo "new" cria uma variбvel para alocar valores e/ou string's(textos).
string[128], // criamos a array que amarzenarб temporariamente uma mensagem.
Nome[24] // e esta array amarzenarб o nome do player. Nota-se que sempre a ъltima array/variбvel nгo tem vнrgula.
;
// Agora, com a funзгo "GetPlayerName", Pegamos o nome do player e
// 'Colocamos' na array "Nome".
GetPlayerName(playerid, Nome, 24);
// Com a funзгo "format", formatamos a mensagem para colocar o nome do player nela.
format(string, sizeof(string),"%s conectou ao servidor", Nome);
// Mandamos a mensagem formatada para todos do servidor.
SendClientMessageToAll(-1, string);
/*
Quando precisamos utilizar algum nome ou valor em uma string,
necessitamos formata-las, caso vocк tentar sem formatar, darб
erro ou bug, mais caso nгo precise introduzir valores/arrays adicionais,
basta vocк utilizar a funзгo sem criar uma array ou nome.
Vamos a um Exemplo:
Vamos dar "Bem Vindo" somente para o player que entrou.
*/
SendClientMessage(playerid, -1, "Seja bem vindo ao servidor");
/*
Nota-se que no exemplo acima, nгo precisa criar "string" ou "Nome",
porque vocк nгo irб usar.
*/
return true;
}
public OnPlayerSpawn(playerid)
{
// Vamos dar uma arma para o player, no caso a arma id "34" e com "1000" Balas.
GivePlayerWeapon(playerid, 34, 1000);
return true;
}
** Usei PHP para destacar o cуdigo.
Re: [AJUDA] Evento ! Zumbie x Mendingos ! -
Oakley_TwOPaCk - 25.06.2012
@Riichard
Isso й pro meu GM de RPG... й um evento de Zombie x MEndingos ^^
@Garfiel
Esse tutorial й otimo, mais como eu disse acima queria fazer meu cmd para apenas adm nivel 1337 modo trabalho ! Lembrando meu GM й base GF... BMG.. й o Brasil Hyper Life.. !
e quero em dialog entende ?
o do dPlayer й um exemplo, quero o CMD em Dialog, para quando eu digitar apareзer para Todos.... dai o cara escolhe a equipe, e logo й setado a skin e a Posiзгo
Isso que eu quero ;]]
Re: [AJUDA] Evento ! Zumbie x Mendingos ! -
CristoferBahr - 26.06.2012
pawn Код:
if (strcmp("/eventozxm", cmdtext, true, 10) == 0)
{
if(PlayerInfo[playerid][pAdmin] == 0)
{
SendClientMessage(playerid, CORDAMENSAGEM, " Vocк nгo й um admin nessa porra :]!");
return 1;
}
if (PlayerInfo[playerid][pAdmin] >= 1337)
{
ShowPlayerDialog(playerid,ZxM,DIALOG_STYLE_LIST,"Escolha Qual Time vocк quer !","Zumbie\nMendingos","Selecionar","Cancelar");
return 1;
}
return 1;
}
Re: [AJUDA] Evento ! Zumbie x Mendingos ! -
Oakley_TwOPaCk - 26.06.2012
Estб dano um erro e nгo sei oque faзo '-'
pawn Код:
public OnPlayerDeath(playerid, killerid, reason)
{
if(InMxA[playerid] == 1)
{
format(string,128,"[EVENTO] %s Matou %s No evento e Ganhou 1000 de Bonus !.",killer,nome); // erro nessa linha
GivePlayerMoney(killerid, 1000);
InMxA[playerid] = 0;
}
Erro :
pawn Код:
C:\Documents and Settings\FAMILIA\Desktop\[GM] - Brasil Hyper Life [TECNO-SAMP]\gamemodes\MegaLife.pwn(7845) : error 017: undefined symbol "string"
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
1 Error.
Re: [AJUDA] Evento ! Zumbie x Mendingos ! -
cJMaster_ - 26.06.2012
pawn Код:
public OnPlayerDeath(playerid, killerid, reason)
{
new string[128];
if(InMxA[playerid] == 1)
{
format(string,128,"[EVENTO] %s Matou %s No evento e Ganhou 1000 de Bonus !.",killer,nome); // erro nessa linha
GivePlayerMoney(killerid, 1000);
InMxA[playerid] = 0;
}
Vocк sу esqueceu de adicionar: 'new string[128];'
Simples ^^'