[FilterScript] Minigame Police x Ladrгo
#1

Mini Game Policia vs Ladrгo
v1.0
_______________________________________________


Bom galera venho trazer para vocкs um filterscript muito interessante um minigame dentro de um navio com armas walking, como ele funciona? ele funciona da seguinte maneira os players sгo levados para um navio e sгo divididos entre Policia e Ladrгo (a escolha й opcional nгo й random), entгo a equipe que chegar a 15 kills primeiro vence a batalha e ganha uma quantia de dinheiro.

Creditos

[T]akelot - Criador do filterscript.

Comandos


/abrir_minigame - abre o minigame

/fechar_minigame - fecha o minigame

/creditos_minigame - ver os creditos do minigame

/cmd_minigame - Ver comandos do minigame
  • vou colocar no 4shared mas vo deixa
    Pastebin link para quem quiser visualizar o cуdigo. bom galera pesso que deixem a vossa opiniгo sobre o filterscript bugs etc... para que eu possa ta retirando e porfavor se for usar o filterscript nгo retire os crйditos.




Reply
#2

Vocк diz que й aos 15 kills ganha mas na sua verificaзгo tem maior de 5...
PHP код:
public OnPlayerUpdate(playerid){
 
    new 
str[20];
    
format(strsizeof(str), "Policia~n~ %d"PoliceKills);
    
TextDrawSetString(IzaqueDraw[4], str);
    
format(strsizeof(str), "Ladrao~n~ %d"LadraoKills);
    
TextDrawSetString(IzaqueDraw[5], str);
   
    if(
LadraoKills 5)
        {
            for(new 
rr<MAX_PLAYERSr++)
            {
            new  
string120 ];
            
formatstringsizeof(string), "~r~~h~~>~Ladrao wins mini game!~<~~n~~w~10.000~y~$");
            
GameTextForAllstring5000);
            
SpawnPlayer(r);
            if(
Eladrao[r] == trueGivePlayerMoney(rPremio);
            
SetTimerEx("Destruir"1000false"i"playerid);
        }
    }
    if(
PoliceKills 5)
        {
            for(new 
rr<MAX_PLAYERSr++)
            {
            new  
string120 ];
            
formatstringsizeof(string), "~r~~h~~>~Police wins mini game!~<~~n~~w~10.000~y~$");
            
GameTextForAllstring5000);
            
SpawnPlayer(r);
            if(
Epolicia[r] == trueGivePlayerMoney(rPremio);
            
SetTimerEx("Destruir"1000false"i"playerid);
 
        }
    }
    return 
1;

Eu achava melhor fazer a verificaзгo de kills na callback OnPlayerDeath
Reply
#3

Quote:
Originally Posted by VeNuZ_
Посмотреть сообщение
Vocк diz que й aos 15 kills ganha mas na sua verificaзгo tem maior de 5...
Йґverdade tinha diminuido para testar e acabei esquecendo de aumentar vlw por me avisa jб corrigi...
Reply
#4

Porque raio usou a callback OnPlayerUpdate?
Reply
#5

PHP код:
new SkinLadrao  28,
    
SkinPolicia 285,
    
Linhas      337,
    
Premio      10000
Desnecessбuro.
Reply
#6

Quote:
Originally Posted by bruxo00
Посмотреть сообщение
Porque raio usou a callback OnPlayerUpdate?
Para atualizar os kills de cada equipe, e pra finalizar quando chegar a 15.

Quote:
Originally Posted by ipsLuan
Посмотреть сообщение
PHP код:
new SkinLadrao  28,
    
SkinPolicia 285,
    
Linhas      337,
    
Premio      10000
Desnecessбuro.
Sim coloquei sу pra lembrar mesmo.
Reply
#7

Atualizar as kills use o OnPlayerDeath...

E em vez de usar new nessas "notas" use defines...
Reply
#8

Belo FS parabйns!, Porйm parabйns tambйm para o pessoal que criticaram mas colocaram em forma de critica construtiva que de forma final lhe ajuda a melhorar.
Reply
#9

Nгo entendi o uso disso:

PHP код:
public OnPlayerRequestClass(playeridclassid){
    
SetPlayerTeamFromClass(playerid);
    return 
1;
}

SetPlayerTeamFromClass(playerid){
        
gTeam[playerid] = TEAM_POLICIA;
        
gTeam[playerid] = TEAM_LADRAO;

Tem algumas coisas a melhorar, e att o downloads do 4shared.
Reply
#10

PHP код:
public OnPlayerRequestClass(playeridclassid){
    
SetPlayerTeamFromClass(playerid);
    return 
1;
}
SetPlayerTeamFromClass(playerid){
    
gTeam[playerid] = TEAM_POLICIA;
    
gTeam[playerid] = TEAM_LADRAO;

A array gTeam й desnecessaria, vocк nem a usou. E tambйm a Eladrao e Epolicia jб que vocк estб usando a funзгo SetPlayerTeam.

PHP код:
new SkinLadrao  28,
    
SkinPolicia 285,
    
Linhas      337,
    
Premio      10000
Alйm das variбveis SkinLadrao, SkinPolicia, Linhas e Premio como foi citado acima.

Estou tentando entender isto tambйm:

PHP код:
if(LadraoKills 5)
    {
           for(new 
rr<MAX_PLAYERSr++)
        {
            new  
string120 ];
            
formatstringsizeof(string), "~r~~h~~>~Ladrao wins mini game!~<~~n~~w~10.000~y~$");
            
GameTextForAllstring5000);
            
SpawnPlayer(r);
            if(
Eladrao[r] == trueGivePlayerMoney(rPremio);
            
SetTimerEx("Destruir"1000false"i"playerid);
        }
    }
    if(
PoliceKills 5)
    {
           for(new 
rr<MAX_PLAYERSr++)
        {
            new  
string120 ];
            
formatstringsizeof(string), "~r~~h~~>~Police wins mini game!~<~~n~~w~10.000~y~$");
            
GameTextForAllstring5000);
            
SpawnPlayer(r);
            if(
Epolicia[r] == trueGivePlayerMoney(rPremio);
            
SetTimerEx("Destruir"1000false"i"playerid);
        }
    } 
Como foi citado vocк poderia fazer a verificaзгo na callback OnPlayerDeath.

Tambйm nгo entendi se vocк queria dar spawn em todo mundo que estava no minigame ou dar spawn em todos que estam online no servidor.

PHP код:
new  string120 ];
formatstringsizeof(string), "~r~~h~~>~Police wins mini game!~<~~n~~w~10.000~y~$");
GameTextForAllstring5000); 
Por qual motivo vocк formatou a string?

E por qual motivo vocк setou um timer para chamar variбs vezes a callback Destruir, jб imaginou se o MAX_PLAYERS estiver como 500, essa callback vai ser chamada esscas 500 vezes mesmo sendo sу dois jogadores no minigame, contando com esses 2, 4 online no servidor?

E tambйm o SetTimer й desnecessario.


PHP код:
#define  MAX_PLAYERS         30 
Ira dar um aviso por vocк redefini MAX_PLAYERS.

@EDIT


Agora que eu vi que vocк tambйm colocou no pastebin.

Nessa parte no OnPlayerUpdate:
PHP код:
public OnPlayerUpdate(playerid){
 
    new 
str[20];
    
format(strsizeof(str), "Policia~n~ %d"PoliceKills);
    
TextDrawSetString(IzaqueDraw[4], str);
    
format(strsizeof(str), "Ladrao~n~ %d"LadraoKills);
    
TextDrawSetString(IzaqueDraw[5], str);
 
    return 
1;

Й melhor colocar em na Callback OnPlayerDeath, pois quando alguem mata alguem vai ser chamada a callback OnPlayerDeath, a OnPlayerUpdate vai ser chamada toda hora.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)