[Ajuda] SetPlayerChatBubble - Help
#1

Olб , estou com uma duvida e preciso muito de ajuda

Spawn:
PHP код:
SetPlayerChatBubble(playerid,"Anti SpawnKill" cor_vermelho15.015000); // 15 segundos (duraзгo) 
Apos acabar o "Anti-SpawnKIll" o "SetPlayerChatBubble" mude para::
PHP код:
new MsgTime[30];
format(MsgTimesizeof(MsgTime), "%s %s"RanksClasses);
SetPlayerChatBubble(playeridMsgTime GetPlayerColor(playerid), 15.0cellmax); //nгo sei o que colocar no lugar de cellmax... 
ai quando o player troca de time , o "Anti-SpawnKill" nгo aparece... й tambem como fazer para o "MsgTime" alterar quando o player troca de time ?

Att Moda
Reply
#2

Tu queres que apareзa o "Anti SpawnKill" e que depois dele desaparecer que mostre o "MsgTime"?

E queres que o "Anti SpawnKill" apareзa cada vez que o player faзa spawn ou que seja sу na primeira vez que entra no servidor?
Reply
#3

Toda vez que ele der spawn , quero que apareзa...
Reply
#4

Colocas o "Anti SpawnKill" no OnPlayerSpawn e crias um timer que comece 15 segundos depois (o tempo do teu Anti SpawnKill) que mostre o "MsgTime".
Reply
#5

amigo o "MsgTime" tem que durar atй o cara mudar time , como fazer isso ?
Reply
#6

Код:
public OnPlayerSpawn(playerid)
{
        SetPlayerChatBubble(playerid,"Anti SpawnKill" , cor_vermelho, 15.0, 15000);
	SetTimer("chamar", 15000, false);
	return 1;
}

forward chamar(playerid);
public chamar(playerid)
{
        new MsgTime[30];
	format(MsgTime, sizeof(MsgTime), "%s %s", Ranks, Classes);
	SetPlayerChatBubble(playerid, MsgTime , GetPlayerColor(playerid), 15.0, cellmax);
	return 1;
}
cellmax = 2147483647 *

P.S. - Podes querer alterar o timer de 15 para 16 segundos... O que te der mais jeito. Testa in-game.

* tempo em milisegundos.

Edit:

Atenзгo aos timers.

https://sampforum.blast.hk/showthread.php?tid=571505

ou https://sampforum.blast.hk/showthread.php?tid=289675

O player ao trocar de equipa vai ter que morrer e dar spawn, certo?
Reply
#7

Certo... vo tentar aqui

@ eu jб uso timers...
Reply
#8

Quote:
Originally Posted by ModaLOKO
Посмотреть сообщение
Certo... vo tentar aqui

@ eu jб uso timers...
Okay, sу estava a prevenir. Nгo tinha a certeza se tinhas mais experiкncia.

E houve um engano meu. O timer deveria ser:

https://sampwiki.blast.hk/wiki/SetTimerEx

Edit: Deixei o "cellmax" porque jб o tinhas. Nгo й necessбrio tanto tempo. Calculas mais ou menos o tempo que ele vai aguentar vivo.
Reply
#9

OnPlayerSpawn:

PHP код:
    SetPlayerHealth(playerid99999);
    
SendClientMessage(playeridcor_vermelho"Anti-Spawnkill Ativado por 15 Segundos!");
    
SetTimerEx("AntiSpawnkill",15000,0,"i",playerid);
    
SetPlayerChatBubble(playerid,"Anti SpawnKill" cor_vermelho15.015000); 
PHP код:
forward AntiSpawnkill(playerid);
public 
AntiSpawnkill(playerid)
{
    new 
Ranks[100], Classes[100];
    {
    if(
GetPlayerScore(playerid) >= 0Ranks "Novato";
    if(
GetPlayerScore(playerid) >= 300Ranks "Soldado";
    if(
GetPlayerScore(playerid) >= 750Ranks "Cabo";
    if(
GetPlayerScore(playerid) >= 3000Ranks "Sargento";
    if(
GetPlayerScore(playerid) >= 5000Ranks "Coronel";
    if(
GetPlayerScore(playerid) >= 10000Ranks "General";
    if(
GetPlayerScore(playerid) >= 30000Ranks "Veterano";
    if(
gClasse[playerid] == SOLDADOClasses "Assalto";
    if(
gClasse[playerid] == SNIPERClasses "Sniper";
    if(
gClasse[playerid] == ENGENHEIROClasses "Engenheiro";
    if(
gClasse[playerid] == PILOTOClasses "Piloto";
    if(
gClasse[playerid] == MEDICOClasses "Suporte";
    
    
SendClientMessage(playeridcor_vermelho"Proteзгo Anti-Spawnkill acabou!");
    new 
MsgTime[30];
    
format(MsgTimesizeof(MsgTime), "%s %s"RanksClasses);
    
SetPlayerChatBubble(playeridMsgTime GetPlayerColor(playerid), 15.0cellmax);
    }
    return 
1;

Reply
#10

Exemplo:

Код:
#include <a_samp>

#define Assalto 	1
#define Sniper 		2
#define Engenheiro 	3
#define Piloto 		4
#define Suporte 	5

public OnGameModeInit()
{
	AddPlayerClassEx(Assalto, 0, -980.5886, -623.2478, 32.0078, 85.2375, 0, 0, 0, 0, 0, 0);
	AddPlayerClassEx(Sniper, 1, -980.5886, -623.2478, 32.0078, 85.2375, 0, 0, 0, 0, 0, 0);
	AddPlayerClassEx(Engenheiro, 2, -980.5886, -623.2478, 32.0078, 85.2375, 0, 0, 0, 0, 0, 0);
	AddPlayerClassEx(Piloto, 3, -980.5886, -623.2478, 32.0078, 85.2375, 0, 0, 0, 0, 0, 0);
	AddPlayerClassEx(Suporte, 4, -980.5886, -623.2478, 32.0078, 85.2375, 0, 0, 0, 0, 0, 0);
	return 1;
}

public OnPlayerSpawn(playerid)
{
	SetPlayerHealth(playerid, cellmax);
	SendClientMessage(playerid, cor_vermelho, "Anti-Spawnkill Ativado por 15 Segundos!");
	SetPlayerChatBubble(playerid,"Anti SpawnKill" , cor_vermelho, 15.0, 15000);
	SetTimer("chamar", 15000, false);
	return 1;
}

forward chamar(playerid);
public chamar(playerid)
{
	new Ranks[9],
			Classes[11],
				MsgTime[22];
			
   	SetPlayerHealth(playerid, 100);
   	SendClientMessage(playerid, cor_vermelho, "Proteзгo Anti-Spawnkill acabou!");
   	
        if(GetPlayerScore(playerid) >= 0)
	{
		Ranks = "Novato";
	}
	if(GetPlayerScore(playerid) >= 300)
	{
		Ranks = "Soldado";
	}
        if(GetPlayerScore(playerid) >= 750)
	{
		Ranks = "Cabo";
	}
	if(GetPlayerScore(playerid) >= 3000)
	{
		Ranks = "Sargento";
	}
        if(GetPlayerScore(playerid) >= 5000)
	{
		Ranks = "Coronel";
	}
	if(GetPlayerScore(playerid) >= 10000)
	{
		Ranks = "General";
	}
	if(GetPlayerScore(playerid) >= 30000)
	{
		Ranks = "Veterano";
	}
	
	if(GetPlayerTeam(playerid) == Assalto)
	{
		Classes = "Assalto";
	}
	if(GetPlayerTeam(playerid) == Sniper)
	{
		Classes = "Sniper";
	}
        if(GetPlayerTeam(playerid) == Engenheiro)
	{
		Classes = "Engenheiro";
	}
	if(GetPlayerTeam(playerid) == Piloto)
	{
		Classes = "Piloto";
	}
	if(GetPlayerTeam(playerid) == Suporte)
	{
		Classes = "Suporte";
	}

	format(MsgTime, sizeof(MsgTime), "%s %s", Ranks, Classes);
	SetPlayerChatBubble(playerid, MsgTime , GetPlayerColor(playerid), 15.0, cellmax);
	return 1;
}
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)