Pomoc - Glad

Započeo Benac, Februar 16, 2014, 00:19:26 PRE PODNE

prethodna tema - sledeća tema

0 članova i 2 gostiju pregledaju ovu temu.

Skripta koju koristim:moja
Detaljan opis problema: Napravio sam Bar kao fol za glad sys kako da napravim kada je manje od 20 bar da pokazuje poruku da ste gladni da idete jesti i kako da kada dode na 0 da svaki 3 sec skida po 3 helta
Dio skripte:
ovo je da svaki par sekundi skida sa tog bara healt a kao sto sam gore napiso da kada skine sa tog da onda pravi helth skida ?
public ProgressBar()
{
    for(new playerid; playerid < MAX_PLAYERS; playerid++)
    {
		SetProgressBarValue(hungry[playerid], GetProgressBarValue(hungry[playerid])-2);
	}
	return 1;
}

Neke slike/video za lakse dobivanje pomoci(neobavezno):
TUTORIALI :

Big Respect: " C++ "  (Majke mi nepamtim boljeg moderatora pawno sekcije, dada Blaeks je nekad bio :P)

Uradi ovako,

// Ako je manje od 5 da uzima 3 helta.
GetProgressBarValue(hungry[playerid]) < 5) { new Float:health; GetPlayerHealth(i, health); SafeSetPlayerHealth(i, floatsub(health, 3)); }


MeÄ'utim definiÅ¡i tajmer koji radi updejtovanje progress bara i gladi.

možeš odraditi ovako

forward GladanSam();
public GladanSam()
{
    foreach (Player, i)
    {
        if(IsPlayerConnected(i))
	{
            // Ako je manje od 5 da uzima 3 helta.
            GetProgressBarValue(hungry[playerid]) < 5) { new Float:health; GetPlayerHealth(i, health); SafeSetPlayerHealth(i, floatsub(health, 3)); }
            // ovde stavi da ti oduzima glad sa bara, na primer 1 glad poen.
            // ovde daj update bara 
        }
    }
    return 1;
}


I sad na osnovu toga definišeš ovako
SetTimer("GladanSam",VREME, 1);


forum.sa-mp.com info:
Over 1000 posts.
Over 50 reputation.

C:\Users\Nikola\Desktop\UCENJE FUNKCIJA\filterscripts\hunger.pwn(48) : error 017: undefined symbol "playerid"
C:\Users\Nikola\Desktop\UCENJE FUNKCIJA\filterscripts\hunger.pwn(48) : error 029: invalid expression, assumed zero
C:\Users\Nikola\Desktop\UCENJE FUNKCIJA\filterscripts\hunger.pwn(49) : error 017: undefined symbol "playerid"
Pawn compiler 3.2.3664	 	 	Copyright (c) 1997-2006, ITB CompuPhase


3 Errors.


forward GladanSam();
public GladanSam()
{
    foreach (Player, i)
    {
        if(IsPlayerConnected(i))
	{
            // Ako je manje od 5 da uzima 3 helta.
            GetProgressBarValue(hungry[playerid]) < 10) { new Float:health; GetPlayerHealth(i, health); SetPlayerHealth(i, floatsub(health, 3)); } //48 linija
            UpdateProgressBar(hungry[playerid], i);
			// ovde stavi da ti oduzima glad sa bara, na primer 1 glad poen.
            // ovde daj update bara
        }
    }
    return 1;
}
TUTORIALI :

Big Respect: " C++ "  (Majke mi nepamtim boljeg moderatora pawno sekcije, dada Blaeks je nekad bio :P)

Jao benac ti ko da si pao s marsa :D

Updejtuj foreach ili zameni

foreach (Player, i)


sa

for(new playerid; playerid < MAX_PLAYERS; playerid++)


forum.sa-mp.com info:
Over 1000 posts.
Over 50 reputation.

Niko procitaj na PM i na temu molim te brate

C:\Users\Nikola\Desktop\UCENJE FUNKCIJA\filterscripts\hunger.pwn(48) : warning 215: expression has no effect
C:\Users\Nikola\Desktop\UCENJE FUNKCIJA\filterscripts\hunger.pwn(48) : error 001: expected token: ";", but found ")"
C:\Users\Nikola\Desktop\UCENJE FUNKCIJA\filterscripts\hunger.pwn(48) : error 029: invalid expression, assumed zero
Pawn compiler 3.2.3664	 	 	Copyright (c) 1997-2006, ITB CompuPhase


2 Errors.

GetProgressBarValue(hungry[playerid]) < 10) { new Float:health; GetPlayerHealth(playerid, health); SetPlayerHealth(playerid, floatsub(health, 3)); } //48 linija
TUTORIALI :

Big Respect: " C++ "  (Majke mi nepamtim boljeg moderatora pawno sekcije, dada Blaeks je nekad bio :P)

forward GladanSam();
public GladanSam()
{
    for(new playerid; playerid < MAX_PLAYERS; playerid++)
    {
		new Float:health;
  		GetProgressBarValue(hungry[playerid] < 10)	    //(46) : warning 213: tag mismatch
		GetPlayerHealth(playerid, health);              //(47) : error 001: expected token: ";", but found "-identifier-"
		SetPlayerHealth(playerid, health-3);
		UpdateProgressBar(hungry[playerid], playerid);
    }
    return 1;
}


tu su errori i oznacene linije

EDIT:
Sry za DP
Poslednja Izmena: Februar 16, 2014, 02:14:04 PRE PODNE od Benac
TUTORIALI :

Big Respect: " C++ "  (Majke mi nepamtim boljeg moderatora pawno sekcije, dada Blaeks je nekad bio :P)

ja ovo nerazumijem :S kako da tu provjeruju napravim
forward GladanSam();
public GladanSam()
{
    for(new playerid; playerid < MAX_PLAYERS; playerid++)
    {
        new Float:health;
        SetProgressBarValue(hungry[playerid], GetProgressBarValue(hungry[playerid] < 10));   //(46) : warning 213: tag mismatch
        GetPlayerHealth(playerid, health);                      
        SetPlayerHealth(playerid, health-3);
        UpdateProgressBar(hungry[playerid], playerid);
    }
    return 1;
}
TUTORIALI :

Big Respect: " C++ "  (Majke mi nepamtim boljeg moderatora pawno sekcije, dada Blaeks je nekad bio :P)

public ProgressBar()
{
    for(new playerid; playerid < MAX_PLAYERS; playerid++)
    {
		SetProgressBarValue(hungry[playerid], GetProgressBarValue(hungry[playerid])-2);
	}
	return 1;
}


enum PlayerStats
{
	Hunger
};
new PInfo[MAX_PLAYERS][PlayerStats];


i meni treba provjera kada dode do 0 da opadaju pravi helti
TUTORIALI :

Big Respect: " C++ "  (Majke mi nepamtim boljeg moderatora pawno sekcije, dada Blaeks je nekad bio :P)

neradi hungry ti je ovo
hungry[playerid] = CreateProgressBar(548.00, 59.00, 56.50, 3.50, 6883839, 100.0);
TUTORIALI :

Big Respect: " C++ "  (Majke mi nepamtim boljeg moderatora pawno sekcije, dada Blaeks je nekad bio :P)