[Ajuda] Hospital
#1

Tipo , tava editando um sistema de hospital , so que , quando a pessoa morre , eu queria que ela ficasse voando em frente ao hospital so que ela spawna pro Respawn Civil , ela nao fica presa la voando em frente ao hospital , ela ate chega a ir mas spawna na hora...
OBS: A mensagem de hospitalizado fica aparecendo ate acabar o tempo do hospital , apos acabar ele spawna denovo
OBS2: Nгo quero que ele va pra interior nenhum , e pra ele ficar voando em frente ao hospital..

Code do Hospital
Код:
#include <a_samp>

#define FILTERSCRIPT
#if defined FILTERSCRIPT
#define CG 0xB8860BAA

new Count[MAX_PLAYERS];
new CountdownTimer[MAX_PLAYERS];


forward HospitalCountdown(playerid);


public OnFilterScriptInit()
{
	print("-----------Hospital-------------");
	return 1;
}

public OnPlayerDeath(playerid, killerid, reason)
{
TogglePlayerControllable(playerid, 0);
SetPlayerPos(playerid,1183.4017,-1297.4088,14.2143);
SetPlayerCameraPos(playerid,1197.5721,-1325.6716,26.9214);
SetPlayerCameraLookAt(playerid, 1177.6808,-1324.3663,14.0827);
CountdownTimer[playerid] = SetTimerEx("HospitalCountdown", 1000, 1, "i", playerid);
Count[playerid] = 80;
return 1;
}

public HospitalCountdown(playerid)
{
    new string[64];
    format(string, sizeof(string), "~g~Voce esta hospitalizado ~n~~y~tempo restante:~n~~b~%d Segundos...", Count[playerid]);
    GameTextForPlayer(playerid, string, 1500, 3);
    if(Count[playerid] == 0)
    {
        KillTimer(CountdownTimer[playerid]);
		SetPlayerHealth(playerid, 100.00);
		GivePlayerMoney(playerid, -1000);
		SetCameraBehindPlayer(playerid);
		TogglePlayerControllable(playerid, 1);
		SendClientMessage(playerid, CG,"INFO: Os mйdicos te salvaram por pouco e pegaram 1000$");
    }
    Count[playerid]--;
}
#endif
Local que quero que o player fique
Код:
AddPlayerClass(23,1213.8331,-1323.8820,41.1274,91.5003,0,0,0,0,0,0); //
Obrigado desde jб.
Reply
#2

Tenta ai!

pawn Код:
//Topo:

new Morreu[MAX_PLAYERS];

public OnPlayerDeath(playerid, killerid, reason)
{
    Morreu[playerid] = 1;
    return 1;
}

public OnPlayerSpawn(playerid)
{
    if(Morreu[playerid] == 1)
    {
        TogglePlayerControllable(playerid, 0);
        SetPlayerPos(playerid,1183.4017,-1297.4088,14.2143);
        SetPlayerCameraPos(playerid,1197.5721,-1325.6716,26.9214);
        SetPlayerCameraLookAt(playerid, 1177.6808,-1324.3663,14.0827);
        CountdownTimer[playerid] = SetTimerEx("HospitalCountdown", 1000, 1, "i", playerid);
        Count[playerid] = 80;
    }
    else
    {
        //Resto de seu cуdigo aqui
    }
    return 1;
}
Reply
#3

3 Erros
Код:
C:\Users\Huug\Desktop\I****\filterscripts\hospital.pwn(47) : error 029: invalid expression, assumed zero
C:\Users\Huug\Desktop\I****\filterscripts\hospital.pwn(47) : error 004: function "HospitalCountdown" is not implemented
C:\Users\Huug\Desktop\I***\filterscripts\hospital.pwn(64) : error 030: compound statement not closed at the end of file (started at line 33)
FS Completo
Код:
#include <a_samp>

#define FILTERSCRIPT
#if defined FILTERSCRIPT
#define CG 0xB8860BAA
new Morreu[MAX_PLAYERS];
new Count[MAX_PLAYERS];
new CountdownTimer[MAX_PLAYERS];


forward HospitalCountdown(playerid);


public OnFilterScriptInit()
{
	print("-----------Hospital-------------");
	return 1;
}

public OnPlayerDeath(playerid, killerid, reason)
{
TogglePlayerControllable(playerid, 0);
Morreu[playerid] = 1;
SetPlayerPos(playerid,1183.4017,-1297.4088,14.2143);
SetPlayerCameraPos(playerid,1197.5721,-1325.6716,26.9214);
SetPlayerCameraLookAt(playerid, 1177.6808,-1324.3663,14.0827);
CountdownTimer[playerid] = SetTimerEx("HospitalCountdown",1000, 1, "i", playerid);
Count[playerid] = 80;
return 1;
}
public OnPlayerSpawn(playerid)
{
    if(Morreu[playerid] == 1)
    {
        TogglePlayerControllable(playerid, 0);
        SetPlayerPos(playerid,1183.4017,-1297.4088,14.2143);
        SetPlayerCameraPos(playerid,1197.5721,-1325.6716,26.9214);
        SetPlayerCameraLookAt(playerid, 1177.6808,-1324.3663,14.0827);
        CountdownTimer[playerid] = SetTimerEx("HospitalCountdown", 1000, 1, "i", playerid);
        Count[playerid] = 80;
    }
    else
    {
        //Resto de seu cуdigo aqui
    }
    return 1;
public HospitalCountdown(playerid)
{
    new string[64];
    format(string, sizeof(string), "~g~Voce esta hospitalizado ~n~~y~tempo restante:~n~~b~%d Segundos...", Count[playerid]);
    GameTextForPlayer(playerid, string, 1500, 3);
    if(Count[playerid] == 0)
    {
        KillTimer(CountdownTimer[playerid]);
		SetPlayerHealth(playerid, 100.00);
		GivePlayerMoney(playerid, -1000);
		SetCameraBehindPlayer(playerid);
		TogglePlayerControllable(playerid, 1);
		SendClientMessage(playerid, CG,"INFO: Os mйdicos te salvaram por pouco e pegaram 1000$");
    }
    Count[playerid]--;
}
#endif
Reply
#4

Uma return muda tudo!

pawn Код:
#include <a_samp>

#define FILTERSCRIPT
#if defined FILTERSCRIPT
#define CG 0xB8860BAA
new Morreu[MAX_PLAYERS];
new Count[MAX_PLAYERS];
new CountdownTimer[MAX_PLAYERS];


forward HospitalCountdown(playerid);


public OnFilterScriptInit()
{
    print("-----------Hospital-------------");
    return 1;
}

public OnPlayerDeath(playerid, killerid, reason)
{
TogglePlayerControllable(playerid, 0);
Morreu[playerid] = 1;
SetPlayerPos(playerid,1183.4017,-1297.4088,14.2143);
SetPlayerCameraPos(playerid,1197.5721,-1325.6716,26.9214);
SetPlayerCameraLookAt(playerid, 1177.6808,-1324.3663,14.0827);
CountdownTimer[playerid] = SetTimerEx("HospitalCountdown",1000, 1, "i", playerid);
Count[playerid] = 80;
return 1;
}
public OnPlayerSpawn(playerid)
{
    if(Morreu[playerid] == 1)
    {
        TogglePlayerControllable(playerid, 0);
        SetPlayerPos(playerid,1183.4017,-1297.4088,14.2143);
        SetPlayerCameraPos(playerid,1197.5721,-1325.6716,26.9214);
        SetPlayerCameraLookAt(playerid, 1177.6808,-1324.3663,14.0827);
        CountdownTimer[playerid] = SetTimerEx("HospitalCountdown", 1000, 1, "i", playerid);
        Count[playerid] = 80;
    }
    else
    {
        //Resto de seu cуdigo aqui
    }
    return 1;
}
public HospitalCountdown(playerid)
{
    new string[64];
    format(string, sizeof(string), "~g~Voce esta hospitalizado ~n~~y~tempo restante:~n~~b~%d Segundos...", Count[playerid]);
    GameTextForPlayer(playerid, string, 1500, 3);
    if(Count[playerid] == 0)
    {
        KillTimer(CountdownTimer[playerid]);
        SetPlayerHealth(playerid, 100.00);
        GivePlayerMoney(playerid, -1000);
        SetCameraBehindPlayer(playerid);
        TogglePlayerControllable(playerid, 1);
        SendClientMessage(playerid, CG,"INFO: Os mйdicos te salvaram por pouco e pegaram 1000$");
    }
    Count[playerid]--;
}
#endif
Reply
#5

Quote:
Originally Posted by Cidiei
Посмотреть сообщение
Uma return muda tudo!

pawn Код:
#include <a_samp>

#define FILTERSCRIPT
#if defined FILTERSCRIPT
#define CG 0xB8860BAA
new Morreu[MAX_PLAYERS];
new Count[MAX_PLAYERS];
new CountdownTimer[MAX_PLAYERS];


forward HospitalCountdown(playerid);


public OnFilterScriptInit()
{
    print("-----------Hospital-------------");
    return 1;
}

public OnPlayerDeath(playerid, killerid, reason)
{
TogglePlayerControllable(playerid, 0);
Morreu[playerid] = 1;
SetPlayerPos(playerid,1183.4017,-1297.4088,14.2143);
SetPlayerCameraPos(playerid,1197.5721,-1325.6716,26.9214);
SetPlayerCameraLookAt(playerid, 1177.6808,-1324.3663,14.0827);
CountdownTimer[playerid] = SetTimerEx("HospitalCountdown",1000, 1, "i", playerid);
Count[playerid] = 80;
return 1;
}
public OnPlayerSpawn(playerid)
{
    if(Morreu[playerid] == 1)
    {
        TogglePlayerControllable(playerid, 0);
        SetPlayerPos(playerid,1183.4017,-1297.4088,14.2143);
        SetPlayerCameraPos(playerid,1197.5721,-1325.6716,26.9214);
        SetPlayerCameraLookAt(playerid, 1177.6808,-1324.3663,14.0827);
        CountdownTimer[playerid] = SetTimerEx("HospitalCountdown", 1000, 1, "i", playerid);
        Count[playerid] = 80;
    }
    else
    {
        //Resto de seu cуdigo aqui
    }
    return 1;
}
public HospitalCountdown(playerid)
{
    new string[64];
    format(string, sizeof(string), "~g~Voce esta hospitalizado ~n~~y~tempo restante:~n~~b~%d Segundos...", Count[playerid]);
    GameTextForPlayer(playerid, string, 1500, 3);
    if(Count[playerid] == 0)
    {
        KillTimer(CountdownTimer[playerid]);
        SetPlayerHealth(playerid, 100.00);
        GivePlayerMoney(playerid, -1000);
        SetCameraBehindPlayer(playerid);
        TogglePlayerControllable(playerid, 1);
        SendClientMessage(playerid, CG,"INFO: Os mйdicos te salvaram por pouco e pegaram 1000$");
    }
    Count[playerid]--;
}
#endif
Valeu cara te amo , mas fico um bugzinho , quando sai do hospital continua contando o tempo pra ser solto e vai pra numeros negativos ex: -1 -2 -3
Reply
#6

Tenta ai

pawn Код:
#include <a_samp>

#define FILTERSCRIPT
#if defined FILTERSCRIPT
#define CG 0xB8860BAA
new Morreu[MAX_PLAYERS];
new Count[MAX_PLAYERS];
new CountdownTimer[MAX_PLAYERS];


forward HospitalCountdown(playerid);


public OnFilterScriptInit()
{
    print("-----------Hospital-------------");
    return 1;
}

public OnPlayerDeath(playerid, killerid, reason)
{
    TogglePlayerControllable(playerid, 0);
    Morreu[playerid] = 1;
    SetPlayerPos(playerid,1183.4017,-1297.4088,14.2143);
    SetPlayerCameraPos(playerid,1197.5721,-1325.6716,26.9214);
    SetPlayerCameraLookAt(playerid, 1177.6808,-1324.3663,14.0827);
    CountdownTimer[playerid] = SetTimerEx("HospitalCountdown",1000, 1, "i", playerid);
    Count[playerid] = 80;
    return 1;
}
public OnPlayerSpawn(playerid)
{
    if(Morreu[playerid] == 1)
    {
        TogglePlayerControllable(playerid, 0);
        SetPlayerPos(playerid,1183.4017,-1297.4088,14.2143);
        SetPlayerCameraPos(playerid,1197.5721,-1325.6716,26.9214);
        SetPlayerCameraLookAt(playerid, 1177.6808,-1324.3663,14.0827);
        CountdownTimer[playerid] = SetTimerEx("HospitalCountdown", 1000, 1, "i", playerid);
        format(string, sizeof(string), "~g~Voce esta hospitalizado ~n~~y~tempo restante:~n~~b~%d Segundos...", Count[playerid]);
        GameTextForPlayer(playerid, string, 1500, 3);
        Count[playerid] = 80;
    }
    else
    {
        //Resto de seu cуdigo aqui
    }
    return 1;
}
public HospitalCountdown(playerid)
{
    new string[64];
    if(Count[playerid] == 0)
    {
        Count[playerid] = 0;
        KillTimer(CountdownTimer[playerid]);
        SetPlayerHealth(playerid, 100.00);
        GivePlayerMoney(playerid, -1000);
        SetCameraBehindPlayer(playerid);
        TogglePlayerControllable(playerid, 1);
        SendClientMessage(playerid, CG,"INFO: Os mйdicos te salvaram por pouco e pegaram 1000$");
    }
    Count[playerid]--;
}
#endif
Caso nгo funcione, sу falar!
Reply
#7

Quote:
Originally Posted by Cidiei
Посмотреть сообщение
Tenta ai

pawn Код:
#include <a_samp>

#define FILTERSCRIPT
#if defined FILTERSCRIPT
#define CG 0xB8860BAA
new Morreu[MAX_PLAYERS];
new Count[MAX_PLAYERS];
new CountdownTimer[MAX_PLAYERS];


forward HospitalCountdown(playerid);


public OnFilterScriptInit()
{
    print("-----------Hospital-------------");
    return 1;
}

public OnPlayerDeath(playerid, killerid, reason)
{
    TogglePlayerControllable(playerid, 0);
    Morreu[playerid] = 1;
    SetPlayerPos(playerid,1183.4017,-1297.4088,14.2143);
    SetPlayerCameraPos(playerid,1197.5721,-1325.6716,26.9214);
    SetPlayerCameraLookAt(playerid, 1177.6808,-1324.3663,14.0827);
    CountdownTimer[playerid] = SetTimerEx("HospitalCountdown",1000, 1, "i", playerid);
    Count[playerid] = 80;
    return 1;
}
public OnPlayerSpawn(playerid)
{
    if(Morreu[playerid] == 1)
    {
        TogglePlayerControllable(playerid, 0);
        SetPlayerPos(playerid,1183.4017,-1297.4088,14.2143);
        SetPlayerCameraPos(playerid,1197.5721,-1325.6716,26.9214);
        SetPlayerCameraLookAt(playerid, 1177.6808,-1324.3663,14.0827);
        CountdownTimer[playerid] = SetTimerEx("HospitalCountdown", 1000, 1, "i", playerid);
        format(string, sizeof(string), "~g~Voce esta hospitalizado ~n~~y~tempo restante:~n~~b~%d Segundos...", Count[playerid]);
        GameTextForPlayer(playerid, string, 1500, 3);
        Count[playerid] = 80;
    }
    else
    {
        //Resto de seu cуdigo aqui
    }
    return 1;
}
public HospitalCountdown(playerid)
{
    new string[64];
    if(Count[playerid] == 0)
    {
        Count[playerid] = 0;
        KillTimer(CountdownTimer[playerid]);
        SetPlayerHealth(playerid, 100.00);
        GivePlayerMoney(playerid, -1000);
        SetCameraBehindPlayer(playerid);
        TogglePlayerControllable(playerid, 1);
        SendClientMessage(playerid, CG,"INFO: Os mйdicos te salvaram por pouco e pegaram 1000$");
    }
    Count[playerid]--;
}
#endif
Caso nгo funcione, sу falar!
Код:
C:\Users\Huug\Desktop\I****\filterscripts\hospital.pwn(40) : error 017: undefined symbol "string"
C:\Users\Huug\Desktop\I*****\filterscripts\hospital.pwn(40) : error 017: undefined symbol "string"
C:\Users\Huug\Desktop\I*****\filterscripts\hospital.pwn(40) : error 029: invalid expression, assumed zero
C:\Users\Huug\Desktop\I*****\filterscripts\hospital.pwn(40) : fatal error 107: too many error messages on one line
Acho q tenq ter alguma funзгo que faзa o contador lб parar quando sair do hospital
Reply
#8

Tenta ai

pawn Код:
#include <a_samp>

#define FILTERSCRIPT
#if defined FILTERSCRIPT
#define CG 0xB8860BAA
new Morreu[MAX_PLAYERS];
new Count[MAX_PLAYERS];
new CountdownTimer[MAX_PLAYERS];


forward HospitalCountdown(playerid);


public OnFilterScriptInit()
{
    print("-----------Hospital-------------");
    return 1;
}

public OnPlayerDeath(playerid, killerid, reason)
{
    TogglePlayerControllable(playerid, 0);
    Morreu[playerid] = 1;
    SetPlayerPos(playerid,1183.4017,-1297.4088,14.2143);
    SetPlayerCameraPos(playerid,1197.5721,-1325.6716,26.9214);
    SetPlayerCameraLookAt(playerid, 1177.6808,-1324.3663,14.0827);
    CountdownTimer[playerid] = SetTimerEx("HospitalCountdown",1000, 1, "i", playerid);
    Count[playerid] = 80;
    return 1;
}
public OnPlayerSpawn(playerid)
{
    new string[120];
    if(Morreu[playerid] == 1)
    {
        TogglePlayerControllable(playerid, 0);
        SetPlayerPos(playerid,1183.4017,-1297.4088,14.2143);
        SetPlayerCameraPos(playerid,1197.5721,-1325.6716,26.9214);
        SetPlayerCameraLookAt(playerid, 1177.6808,-1324.3663,14.0827);
        CountdownTimer[playerid] = SetTimerEx("HospitalCountdown", 1000, 1, "i", playerid);
        format(string, sizeof(string), "~g~Voce esta hospitalizado ~n~~y~tempo restante:~n~~b~%d Segundos...", Count[playerid]);
        GameTextForPlayer(playerid, string, 1500, 3);
        Count[playerid] = 80;
    }
    else
    {
        //Resto de seu cуdigo aqui
    }
    return 1;
}
public HospitalCountdown(playerid)
{
    new string[64];
    if(Count[playerid] == 0)
    {
        Count[playerid] = 0;
        KillTimer(CountdownTimer[playerid]);
        SetPlayerHealth(playerid, 100.00);
        GivePlayerMoney(playerid, -1000);
        SetCameraBehindPlayer(playerid);
        TogglePlayerControllable(playerid, 1);
        SendClientMessage(playerid, CG,"INFO: Os mйdicos te salvaram por pouco e pegaram 1000$");
    }
    Count[playerid]--;
}
#endif
Reply
#9

Quote:
Originally Posted by Cidiei
Посмотреть сообщение
Tenta ai

pawn Код:
#include <a_samp>

#define FILTERSCRIPT
#if defined FILTERSCRIPT
#define CG 0xB8860BAA
new Morreu[MAX_PLAYERS];
new Count[MAX_PLAYERS];
new CountdownTimer[MAX_PLAYERS];


forward HospitalCountdown(playerid);


public OnFilterScriptInit()
{
    print("-----------Hospital-------------");
    return 1;
}

public OnPlayerDeath(playerid, killerid, reason)
{
    TogglePlayerControllable(playerid, 0);
    Morreu[playerid] = 1;
    SetPlayerPos(playerid,1183.4017,-1297.4088,14.2143);
    SetPlayerCameraPos(playerid,1197.5721,-1325.6716,26.9214);
    SetPlayerCameraLookAt(playerid, 1177.6808,-1324.3663,14.0827);
    CountdownTimer[playerid] = SetTimerEx("HospitalCountdown",1000, 1, "i", playerid);
    Count[playerid] = 80;
    return 1;
}
public OnPlayerSpawn(playerid)
{
    new string[120];
    if(Morreu[playerid] == 1)
    {
        TogglePlayerControllable(playerid, 0);
        SetPlayerPos(playerid,1183.4017,-1297.4088,14.2143);
        SetPlayerCameraPos(playerid,1197.5721,-1325.6716,26.9214);
        SetPlayerCameraLookAt(playerid, 1177.6808,-1324.3663,14.0827);
        CountdownTimer[playerid] = SetTimerEx("HospitalCountdown", 1000, 1, "i", playerid);
        format(string, sizeof(string), "~g~Voce esta hospitalizado ~n~~y~tempo restante:~n~~b~%d Segundos...", Count[playerid]);
        GameTextForPlayer(playerid, string, 1500, 3);
        Count[playerid] = 80;
    }
    else
    {
        //Resto de seu cуdigo aqui
    }
    return 1;
}
public HospitalCountdown(playerid)
{
    new string[64];
    if(Count[playerid] == 0)
    {
        Count[playerid] = 0;
        KillTimer(CountdownTimer[playerid]);
        SetPlayerHealth(playerid, 100.00);
        GivePlayerMoney(playerid, -1000);
        SetCameraBehindPlayer(playerid);
        TogglePlayerControllable(playerid, 1);
        SendClientMessage(playerid, CG,"INFO: Os mйdicos te salvaram por pouco e pegaram 1000$");
    }
    Count[playerid]--;
}
#endif
Textdraw aparece rapidinho e some :S Textdraw nao desculpa , aquela mensagem no meioda tela aparece e some
Reply
#10

Me diga quanto tempo ele fica no hospital? Vocк tem alguma ideia?
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)