[Ajuda] Sistema de Round
#1

Resolvido !
Reply
#2

Resolvido !
Reply
#3

Quote:
Originally Posted by Coringa_Vilao
Посмотреть сообщение
Alguem poderar me ajuda porfavor ? e queria colocar o tempo acima do colete la do lado direito la em cima , e queria montar um negocio tipo assim com TextDraw embaixo do dinheiro TIpo:

Round
Zombie 45 x Humano 55

ai os numeros acima й o score que o time de zombie e humano matou ai no final do round o que tiver + ganha uma quantia de dinheiro.


queria saber se tem como alguem me ajuda porfavor ficarei grato


@DoublePost

+ de 24 Horas se passaram !
Crie as textdraws usando Zamaroth's Textdraw Editor e mude o conteъdo das texts usando TextDrawSetString.
Reply
#4

Partes do Round

PHP код:

#define Round_MaxTime 360000

public OnPlayerDeath(playerid)
{
    if(
PlayerTeam[playerid] == 0)
    {

        
Arena[ZombiesKills] ++;
    }
    else if(
PlayerTeam[playerid] == 1)
    {

        
Arena[HumansKills] ++;
    }
    switch(
Arena[ZombiesKills])
    {

        case 
5SendClientMessageToAll(COLOR_GREEN,"SCORE - TIME ZUMBIS: 5");
        case 
10SendClientMessageToAll(COLOR_GREEN,"SCORE - TIME ZUMBIS: 10");
        case 
15SendClientMessageToAll(COLOR_GREEN,"SCORE - TIME ZUMBIS: 15");
        case 
20SendClientMessageToAll(COLOR_GREEN,"SCORE - TIME ZUMBIS: 20");
        case 
25SendClientMessageToAll(COLOR_GREEN,"SCORE - TIME ZUMBIS: 25");
        case 
30SendClientMessageToAll(COLOR_GREEN,"SCORE - TIME ZUMBIS: 30");
        case 
35SendClientMessageToAll(COLOR_GREEN,"SCORE - TIME ZUMBIS: 35");
        case 
40SendClientMessageToAll(COLOR_GREEN,"SCORE - TIME ZUMBIS: 40");
        case 
45SendClientMessageToAll(COLOR_GREEN,"SCORE - TIME ZUMBIS: 45");
        case 
50:
        {

            
SendClientMessageToAll(COLOR_GREEN,"SCORE - TIME ZUMBIS: 50");
            
AnnounceWinner();
        }
    }
    switch(
Arena[HumansKills])
    {

        case 
5SendClientMessageToAll(COLOR_GREEN,"SCORE - TIME HUMANOS:: 5");
        case 
10SendClientMessageToAll(COLOR_GREEN,"SCORE - TIME HUMANOS:: 10");
        case 
15SendClientMessageToAll(COLOR_GREEN,"SCORE - TIME HUMANOS:: 15");
        case 
20SendClientMessageToAll(COLOR_GREEN,"SCORE - TIME HUMANOS:: 20");
        case 
25SendClientMessageToAll(COLOR_GREEN,"SCORE - TIME HUMANOS:: 25");
        case 
30SendClientMessageToAll(COLOR_GREEN,"SCORE - TIME HUMANOS:: 30");
        case 
35SendClientMessageToAll(COLOR_GREEN,"SCORE - TIME HUMANOS:: 35");
        case 
40SendClientMessageToAll(COLOR_GREEN,"SCORE - TIME HUMANOS:: 40");
        case 
45SendClientMessageToAll(COLOR_GREEN,"SCORE - TIME HUMANOS:: 45");
        case 
50:
        {

            
SendClientMessageToAll(COLOR_GREEN,"SCORE - TIME HUMANOS:: 50");
            
AnnounceWinner();
        }
    }
    return 
1;
}

public 
OnPlayerRequestClass(playerid,classid)
{
    
SetPlayerPos(playerid,299.9177,2741.7598,42.9127);
    
SetPlayerFacingAngle(playerid,198.9686);
    
SetPlayerCameraPos(playerid,306.3498,2727.6697,37.0493);
    
SetPlayerCameraLookAt(playerid,299.9177,2741.7598,42.9127);
    if(
classid == 0)
    {

        
PlayerTeam[playerid] = 0;
        
SetPlayerTeam(playerid,0);
    }
    else if(
classid == 1)
    {

        
PlayerTeam[playerid] = 1;
        
SetPlayerTeam(playerid,1);
    }
    return 
1;
}



public 
AnnounceWinner()
{
    if(
Arena[ZombiesKills] > Arena[HumansKills])
    {

        
GameTextForAll("~r~ZOMBIES~w~ WON~y~ ]]",3000,5);
        
format(Text,256,"Humanos infectados: %d | Zumbis mortos: %d",
        
Arena[ZombiesKills],Arena[HumansKills]);
        
SendClientMessageToAll(COLOR_YELLOW,Text);
    }
    if(
Arena[ZombiesKills] < Arena[HumansKills])
    {

        
GameTextForAll("~b~HUMANS~w~ WON~y~ ]]",3000,5);
        
format(Text,256,"Zumbis mortos: %d | Humanos infeectados: %d",
        
Arena[HumansKills],Arena[ZombiesKills]);
        
SendClientMessageToAll(COLOR_YELLOW,Text);
    }
    if(
Arena[ZombiesKills] == Arena[HumansKills])
    {

        
GameTextForAll("~y~ DRAW",3000,5);
        
format(Text,256,"Os dois times tiveram %d perdas.",
        
Arena[ZombiesKills]);
        
SendClientMessageToAll(COLOR_YELLOW,Text);
    }
    
Arena[ID] ++;
    
SetTimer("ChangeRound",10000,0);
    
SendClientMessageToAll(COLOR_RED,"Espere 10 segundos atй o prуximo round comeзar!");
    for(new 
0MAX_PLAYERSi++)
    {

        
SetPlayerCameraPos(i,-1438.0342,1751.5375,45.6543);
        
SetPlayerCameraLookAt(i,-1736.0754,1132.5067,45.6543);
        
SetPlayerInterior(i,0);
    }
    return 
1;
}



public 
ChangeRound()
{
    
Arena[ZombiesKills] = 0;
    
Arena[HumansKills] = 0;
    for(new 
0MAX_PLAYERSi++)
    {

        
SpawnPlayer(i);
        switch(
Arena[ID])
        {

            case 
0:
            {

                
SetPlayerInterior(i,5);
            }
            case 
1:
            {

                
SetPlayerInterior(i,15);
            }
            case 
2:
            {

                
SetPlayerInterior(i,5);
            }
            case 
3:
            {

                
SetPlayerInterior(i,3);
                
Arena[ID] = 0;
            }
        }
    }
    return 
1;

Nгo testei nada! Da uma olhada ai se й isso mesmo,qualquer coisa fala ae.
Reply
#5

Resolvido !
Reply
#6

Quote:
Originally Posted by Coringa_Vilao
Посмотреть сообщение
@Los

vocк estб flando da parte do Zombie x Humano nй ?
To falando da parte que vocк quer mostrar para todos os pontos de time X e o de time Y em textdraw.
Reply
#7

Ai vei nгo sei se ta certo sou novo na area me corrijam qualquer coisa aew

PHP код:

//[Includes]
#include <a_samp>
//[Defines]
#define Round_MaxTime 360000
#define TEAM_HUMAN 0
#define TEAM_ZOMBIE 1
#define COLOR_HUMAN 0x6495EDAA
#define COLOR_ZOMBIE 0x275511FF
#define WEAPON3_ZOMBIE 0
#define COLOR_RED 0xFF0000AA
#define COLOR_YELLOW 0xFFFF00AA
#define COLOR_GREEN 0x66CC99AA
enum aInfo
{
    
HumansCount,
    
ZombiesCount,
    
HumansKills,
    
ZombiesKills,
    
ID
};
enum pInfo
{
    
TotalCount,
    
Team
};
//[New's]
new Arena[aInfo];
new 
PlayerCount;
new 
PlayerTeam[MAX_PLAYERS];
new 
Text[256];
new 
Float:OldHP[MAX_PLAYERS];
//[Fowards]
forward AnnounceWinner();
forward ChangeRound();
forward OnPlayerUpdate(playerid);
#if defined FILTERSCRIPT
public OnFilterScriptInit()
{
    print(
"\n--------------------------------------");
    print(
" Sistema de Rounds Carregado");
    print(
"--------------------------------------\n");
    
Arena[ID] = 0;
    
SetTimer("AnnounceWinner",100000,1);
    return 
1;
}
public 
OnFilterScriptExit()
{
    return 
1;
}
public 
OnPlayerRequestClass(playeridclassid)
{
    
SetPlayerPos(playerid1958.37831343.157215.3746);
    
SetPlayerCameraPos(playerid1958.37831343.157215.3746);
    
SetPlayerCameraLookAt(playerid1958.37831343.157215.3746);
    return 
1;
}
public 
OnPlayerConnect(playerid)
{
    return 
1;
}
public 
OnPlayerDisconnect(playeridreason)
{
    return 
1;
}
public 
OnPlayerSpawn(playerid)//Seta as skins dos player zumbis e humanos
{
    if(
PlayerTeam[playerid] == 0)//Time Humano
    
{
        
HumanTeam(playerid);
        
SetPlayerTeam(playerid,0);
    }
    else if(
PlayerTeam[playerid] == 1)//Time zumbi
    
{
        
ZombieTeam(playerid);
        
SetPlayerTeam(playerid,1);
    }
    switch(
Arena[ID])
    {
        case 
0:
        {
            if(
PlayerTeam[playerid] == 0)// Skin Humanos
            
{
                
SetPlayerPos(playerid,1300.0236,-790.1140,1084.0078);
                
SetPlayerFacingAngle(playerid,0.3154);
                
SetPlayerInterior(playerid,5);
            }
            if(
PlayerTeam[playerid] == 1)// Skin Zumbi
            
{
                
SetPlayerPos(playerid,1266.4395,-780.0988,1091.9063);
                
SetPlayerFacingAngle(playerid,269.7846);
                
SetPlayerInterior(playerid,5);
            }
        }
        case 
1:
        {
            if(
PlayerTeam[playerid] == 0)// Skin Humanos
            
{
                
SetPlayerPos(playerid,2220.3972,-1151.4685,1025.7969);
                
SetPlayerFacingAngle(playerid,269.3734);
                
SetPlayerInterior(playerid,15);
            }
            if(
PlayerTeam[playerid] == 1)// Skin Zumbi
            
{
                
SetPlayerPos(playerid,2193.5583,-1141.1141,1029.7969);
                
SetPlayerFacingAngle(playerid,178.7957);
                
SetPlayerInterior(playerid,15);
            }
        }
        case 
2:
        {
            if(
PlayerTeam[playerid] == 0)// Skin Humanos
            
{
                
SetPlayerPos(playerid,2346.9094,-1172.8066,1031.9766);
                
SetPlayerFacingAngle(playerid,85.3327);
                
SetPlayerInterior(playerid,5);
            }
            if(
PlayerTeam[playerid] == 1)// Skin Zumbi
            
{
                
SetPlayerPos(playerid,2349.6428,-1181.0731,1027.9766);
                
SetPlayerFacingAngle(playerid,87.8066);
                
SetPlayerInterior(playerid,5);
            }
        }
        case 
3:
        {
            if(
PlayerTeam[playerid] == 0)// Skin Humanos
            
{
                
SetPlayerPos(playerid,366.8517,215.5397,1008.3828);
                
SetPlayerFacingAngle(playerid,178.3608);
                
SetPlayerInterior(playerid,3);
            }
            if(
PlayerTeam[playerid] == 1)// Skin Zumbi
            
{
                
SetPlayerPos(playerid,348.3492,162.2359,1025.7891);
                
SetPlayerFacingAngle(playerid,269.5417);
                
SetPlayerInterior(playerid,3);
            }
        }
    }
    return 
1;
}
public 
OnPlayerDeath(playerid)//Spawna ele na arena dos zumbis ou humanos
{
    if(
PlayerTeam[playerid] == 0)
    {
        
Arena[ZombiesKills] ++;
    }
    else if(
PlayerTeam[playerid] == 1)
    {
        
Arena[HumansKills] ++;
    }
    switch(
Arena[ZombiesKills])//Score dos times
    
{
        case 
5SendClientMessageToAll(COLOR_GREEN,"SCORE - TIME ZUMBIS: 5");
        case 
10SendClientMessageToAll(COLOR_GREEN,"SCORE - TIME ZUMBIS: 10");
        case 
15SendClientMessageToAll(COLOR_GREEN,"SCORE - TIME ZUMBIS: 15");
        case 
20SendClientMessageToAll(COLOR_GREEN,"SCORE - TIME ZUMBIS: 20");
        case 
25SendClientMessageToAll(COLOR_GREEN,"SCORE - TIME ZUMBIS: 25");
        case 
30SendClientMessageToAll(COLOR_GREEN,"SCORE - TIME ZUMBIS: 30");
        case 
35SendClientMessageToAll(COLOR_GREEN,"SCORE - TIME ZUMBIS: 35");
        case 
40SendClientMessageToAll(COLOR_GREEN,"SCORE - TIME ZUMBIS: 40");
        case 
45SendClientMessageToAll(COLOR_GREEN,"SCORE - TIME ZUMBIS: 45");
        case 
50:
        {
            
SendClientMessageToAll(COLOR_GREEN,"SCORE - TIME ZUMBIS: 50");
            
AnnounceWinner();
        }
    }
    switch(
Arena[HumansKills])
    {
        case 
5SendClientMessageToAll(COLOR_GREEN,"SCORE - TIME HUMANOS:: 5");
        case 
10SendClientMessageToAll(COLOR_GREEN,"SCORE - TIME HUMANOS:: 10");
        case 
15SendClientMessageToAll(COLOR_GREEN,"SCORE - TIME HUMANOS:: 15");
        case 
20SendClientMessageToAll(COLOR_GREEN,"SCORE - TIME HUMANOS:: 20");
        case 
25SendClientMessageToAll(COLOR_GREEN,"SCORE - TIME HUMANOS:: 25");
        case 
30SendClientMessageToAll(COLOR_GREEN,"SCORE - TIME HUMANOS:: 30");
        case 
35SendClientMessageToAll(COLOR_GREEN,"SCORE - TIME HUMANOS:: 35");
        case 
40SendClientMessageToAll(COLOR_GREEN,"SCORE - TIME HUMANOS:: 40");
        case 
45SendClientMessageToAll(COLOR_GREEN,"SCORE - TIME HUMANOS:: 45");
        case 
50:
        {
            
SendClientMessageToAll(COLOR_GREEN,"SCORE - TIME HUMANOS:: 50");
            
AnnounceWinner();
        }
    }
    return 
1;
}
public 
OnVehicleSpawn(vehicleid)
{
    return 
1;
}
public 
OnVehicleDeath(vehicleidkillerid)
{
    return 
1;
}
public 
OnPlayerText(playeridtext[])
{
    return 
1;
}
public 
OnPlayerCommandText(playeridcmdtext[])
{
    if (
strcmp("/mycommand"cmdtexttrue10) == 0)
    {
        
// Do something here
        
return 1;
    }
    return 
0;
}
public 
OnPlayerEnterVehicle(playeridvehicleidispassenger)
{
    return 
1;
}
public 
OnPlayerExitVehicle(playeridvehicleid)
{
    return 
1;
}
public 
OnPlayerStateChange(playeridnewstateoldstate)
{
    return 
1;
}
public 
OnPlayerEnterCheckpoint(playerid)
{
    return 
1;
}
public 
OnPlayerLeaveCheckpoint(playerid)
{
    return 
1;
}
public 
OnPlayerEnterRaceCheckpoint(playerid)
{
    return 
1;
}
public 
OnPlayerLeaveRaceCheckpoint(playerid)
{
    return 
1;
}
public 
OnRconCommand(cmd[])
{
    return 
1;
}
public 
OnPlayerRequestSpawn(playerid)
{
    return 
1;
}
public 
OnObjectMoved(objectid)
{
    return 
1;
}
public 
OnPlayerObjectMoved(playeridobjectid)
{
    return 
1;
}
public 
OnPlayerPickUpPickup(playeridpickupid)
{
    return 
1;
}
public 
OnVehicleMod(playeridvehicleidcomponentid)
{
    return 
1;
}
public 
OnVehiclePaintjob(playeridvehicleidpaintjobid)
{
    return 
1;
}
public 
OnVehicleRespray(playeridvehicleidcolor1color2)
{
    return 
1;
}
public 
OnPlayerSelectedMenuRow(playeridrow)
{
    return 
1;
}
public 
OnPlayerExitedMenu(playerid)
{
    return 
1;
}
public 
OnPlayerInteriorChange(playeridnewinterioridoldinteriorid)
{
    return 
1;
}
public 
OnPlayerKeyStateChange(playeridnewkeysoldkeys)
{
    return 
1;
}
public 
OnRconLoginAttempt(ip[], password[], success)
{
    return 
1;
}
public 
OnPlayerUpdate(playerid)
{
    return 
1;
}
public 
OnPlayerStreamIn(playeridforplayerid)
{
    return 
1;
}
public 
OnPlayerStreamOut(playeridforplayerid)
{
    return 
1;
}
public 
OnVehicleStreamIn(vehicleidforplayerid)
{
    return 
1;
}
public 
OnVehicleStreamOut(vehicleidforplayerid)
{
    return 
1;
}
public 
OnDialogResponse(playeriddialogidresponselistiteminputtext[])
{
    return 
1;
}
public 
OnPlayerClickPlayer(playeridclickedplayeridsource)
{
    return 
1;
}
public 
AnnounceWinner()//Anuncia o time vencedor
{
    if(
Arena[ZombiesKills] > Arena[HumansKills])
    {
        
GameTextForAll("~r~ZOMBIES~w~ WON~y~ ]]",3000,5);//Anuncia se os zumbis ganharam
        
format(Text,256,"Humanos infectados: %d | Zumbis mortos: %d",
        
Arena[ZombiesKills],Arena[HumansKills]);
        
SendClientMessageToAll(COLOR_YELLOW,Text);
    }
    if(
Arena[ZombiesKills] < Arena[HumansKills])
    {
        
GameTextForAll("~b~HUMANS~w~ WON~y~ ]]",3000,5);//Anuncia se os humanos ganharam
        
format(Text,256,"Zumbis mortos: %d | Humanos infeectados: %d",
        
Arena[HumansKills],Arena[ZombiesKills]);
        
SendClientMessageToAll(COLOR_YELLOW,Text);
    }
    if(
Arena[ZombiesKills] == Arena[HumansKills])
    {
        
GameTextForAll("~y~ DRAW",3000,5);//Anuncia o tanto de kills dos times
        
format(Text,256,"Os dois times tiveram %d perdas.",
        
Arena[ZombiesKills]);
        
SendClientMessageToAll(COLOR_YELLOW,Text);
    }
    
Arena[ID] ++;
    
SetTimer("ChangeRound",10000,0);//Timer para trocar de round
    
SendClientMessageToAll(COLOR_RED,"Espere 10 segundos atй o prуximo round comeзar!");
    for(new 
0MAX_PLAYERSi++)
    {
        
SetPlayerCameraPos(i,-1438.0342,1751.5375,45.6543);
        
SetPlayerCameraLookAt(i,-1736.0754,1132.5067,45.6543);
        
SetPlayerInterior(i,0);
    }
    return 
1;
}
public 
ChangeRound()//Public Para Trocar o Round
{
    
Arena[ZombiesKills] = 0;
    
Arena[HumansKills] = 0;
    for(new 
0MAX_PLAYERSi++)
    {
        
SpawnPlayer(i);
        switch(
Arena[ID])
        {
            case 
0:
            {
                
SetPlayerInterior(i,5);
            }
            case 
1:
            {
                
SetPlayerInterior(i,15);
            }
            case 
2:
            {
                
SetPlayerInterior(i,5);
            }
            case 
3:
            {
                
SetPlayerInterior(i,3);
                
Arena[ID] = 0;
            }
        }
    }
    return 
1;
}
public 
OnPlayerUpdate(playerid)
{
    new 
Float:NewHP;
    
GetPlayerArmour(playerid,NewHP);
    if(
NewHP OldHP[playerid])
    {
        new 
Skin GetPlayerSkin(playerid);
        if(
Skin == 285)
        {
            
ZombieTeam(playerid);
            
Arena[ZombiesKills] ++;
            switch(
Arena[ZombiesKills])
            {
                case 
5SendClientMessageToAll(COLOR_GREEN,"SCORE - TIME ZUMBIS: 5");
                case 
10SendClientMessageToAll(COLOR_GREEN,"SCORE - TIME ZUMBIS: 10");
                case 
15SendClientMessageToAll(COLOR_GREEN,"SCORE - TIME ZUMBIS: 15");
                case 
20SendClientMessageToAll(COLOR_GREEN,"SCORE - TIME ZUMBIS: 20");
                case 
25SendClientMessageToAll(COLOR_GREEN,"SCORE - TIME ZUMBIS: 25");
                case 
30SendClientMessageToAll(COLOR_GREEN,"SCORE - TIME ZUMBIS: 30");
                case 
35SendClientMessageToAll(COLOR_GREEN,"SCORE - TIME ZUMBIS: 35");
                case 
40SendClientMessageToAll(COLOR_GREEN,"SCORE - TIME ZUMBIS: 40");
                case 
45SendClientMessageToAll(COLOR_GREEN,"SCORE - TIME ZUMBIS: 45");
                case 
50:
                {
                    
SendClientMessageToAll(COLOR_GREEN,"SCORE - TIME ZUMBIS: 50");
                    
AnnounceWinner();
                }
            }
        }
    }
    
OldHP[playerid] = NewHP;
    return 
1;
    }
#endif 
Reply
#8

Resolvido !
Reply
#9

Olha cara eu acho que nгo vai funfar sem algumas delas nгo mais sei la se o Los pudesse dar uma conferida ai

Abrass
Reply
#10

Resolvido !
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)