[REÅ ENO]Uzimanje Scora(P)igraca

Započeo Plen Ki Mun
24. Jun 2016. Zaključano
1,166
pregleda
16
postova
Mate
5
Underboss
24. Jun 2016.
Skripta koju koristim: DayZ
Opis problema o kojem se radi: Pa znaci imam TD za score i timer koji update svaku promjenu na skoru,problem je u tome sto ne uzima skor od od igraca nego od nekoga drugoga igraca,znaci ne uzima njegov vlasiti!
Dio skripte:
forward ScoreTimer(playerid);
public ScoreTimer()
{
    for(new i=0; i    {
        if(IsPlayerConnected(i))
        {
            new string;
            format(string, sizeof(string), "~w~Score:~g~%d",GetPlayerScore(playerid));
            TextDrawSetString(MTD4, string);
        }
    }
    return 1;
}

TextDrawShowForPlayer(playerid, MTD4);
new str1;
format(str1, sizeof(str1),"~w~Score:~g~%d", GetPlayerScore(playerid));
TextDrawSetString(MTD4, str1);


Slika (neobavezno): //
Rudimental
5
OG Legend
24. Jun 2016.
Greska ti je sto si kod funkcije GetPlayerScore stavio playerid a trebao si samo i jer si to definisao. A mozes koristiti i foreach te bi to ovako ispalo.

forward ScoreTimer();
public ScoreTimer()
{
    new
string;
    foreach (Player, i)
    {
    format(string, sizeof(string), "~w~Score:~g~%d", GetPlayerScore(i));
    TextDrawSetString(MTD4, string);
    }
    return 1;
}
Mate
5
Underboss
24. Jun 2016.
â–… â–† â–ˆ Rudimental â–ˆ â–† â–… wrote on June 24, 2016, 8:34 am:
Greska ti je sto si kod funkcije GetPlayerScore stavio playerid a trebao si samo i jer si to definisao. A mozes koristiti i foreach te bi to ovako ispalo.

forward ScoreTimer();
public ScoreTimer()
{
    new
string;
    foreach (Player, i)
    {
    format(string, sizeof(string), "~w~Score:~g~%d", GetPlayerScore(i));
    TextDrawSetString(MTD4, string);
    }
    return 1;
}


Ok hvala,pokusat cu pa javim rezultat!  🙂
n0le
4
Shot Caller
24. Jun 2016.
Mate wrote on June 24, 2016, 8:34 am:
Greska ti je sto si kod funkcije GetPlayerScore stavio playerid a trebao si samo i jer si to definisao. A mozes koristiti i foreach te bi to ovako ispalo.

forward ScoreTimer();
public ScoreTimer()
{
    new
string;
    foreach (Player, i)
    {
    format(string, sizeof(string), "~w~Score:~g~%d", GetPlayerScore(i));
    TextDrawSetString(MTD4, string);
    }
    return 1;
}


Ok hvala,pokusat cu pa javim rezultat!  🙂

nemoj koristiti foreach baguje koristi  , sve ostalo stoji
for(new i = 0; i < MAX_PLAYERS; i++)
{
Rudimental
5
OG Legend
25. Jun 2016.
@Harden ne znam odakle ti to da foreach baguje, ja ga koristim vec par godina i nikad nisam imao problema... A foreach je mnogo bolji nego taj kod koji si poslao, jer forech ti prolazi samo kroz online igrace dok ako tako definises kao sto si ti poslao njemu onda provera prolazi kroz sve igrace odnosno kroz broj koji je definisan na MAX_PLAYERS a ne vidim potrebu da prodje kroz sve to kada mozda pola njih nije online od tog broja tako da je forech bolji 😄
Mate
5
Underboss
27. Jun 2016.
Jos uvijek uzima skor od drugih igraca ;/
Rudimental
5
OG Legend
27. Jun 2016.
Cekaj sta ti hoces zapravo pojasni mi malo bolje...
Mate
5
Underboss
27. Jun 2016.
â–… â–† â–ˆ Rudimental â–ˆ â–† â–… wrote on June 27, 2016, 5:10 pm:
Cekaj sta ti hoces zapravo pojasni mi malo bolje...


Necu ja to nego tako treba bit  😄

Ja hocu da svakom igracu pokazuje njegov skor(vlastiti) a ne od drugog igraca.Nemogu bolje pojasnit!
Rudimental
5
OG Legend
27. Jun 2016.
Pa onda jednostavno u public OnPlayerSpawn stavis to.

format(string, sizeof(string), "~w~Score:~g~%d", GetPlayerScore(playerid));
TextDrawSetString(MTD4, string);


Ali ovaj TD bi trebao da bude na playerid a ne globalni jer ce ti ovako dolaziti do bagova... Imas na samp wikiu sve u vezi TD-ova pa pronadji za playerid. E igrac jednostavno ne puni scor svaki sekund pa da mu trebas ovo u neki tajmer staviti ali mozes i u tajmer ali kazem promeni TD da ne bude globalni zato i baguje...
Mate
5
Underboss
27. Jun 2016.
â–… â–† â–ˆ Rudimental â–ˆ â–† â–… wrote on June 27, 2016, 8:00 pm:
Pa onda jednostavno u public OnPlayerSpawn stavis to.

format(string, sizeof(string), "~w~Score:~g~%d", GetPlayerScore(playerid));
TextDrawSetString(MTD4, string);


Ali ovaj TD bi trebao da bude na playerid a ne globalni jer ce ti ovako dolaziti do bagova... Imas na samp wikiu sve u vezi TD-ova pa pronadji za playerid. E igrac jednostavno ne puni scor svaki sekund pa da mu trebas ovo u neki tajmer staviti ali mozes i u tajmer ali kazem promeni TD da ne bude globalni zato i baguje...


E to, Svaka ti cast volim kada ti pomazes  😄
Rudimental
5
OG Legend
27. Jun 2016.
Jel to to sada ?
Mate
5
Underboss
27. Jun 2016.
Da! Imam jos nesto dali treba da za to uradim novu temu ili ovdje nesto u vezi statsa
Rudimental
5
OG Legend
27. Jun 2016.
Ako je neka sitnica ajde daj da ne otvaras novu temu ...
Mate
5
Underboss
28. Jun 2016.
CMD:stats(playerid,params[]) {
new string, pDeaths, player1, h, m, s,playername;
if(isnull(params)) player1 = playerid;
else player1 = strval(params);

if(IsPlayerConnected(player1)) {
    TotalGameTime(player1, h, m, s);
    GetPlayerName(player1, playername, sizeof(playername));
if(PlayerInfo == 0) pDeaths = 1; else pDeaths = PlayerInfo;
new str, str1, str2;
format(str, sizeof(str),"| ------ | %s's Status | ------- |", PlayerName2(player1));
format(string,sizeof(string),"Scores: %d | Money: $%d | Kills: %d | Deaths: %d | K/D Ratio: %0.2f", GetPlayerScore(player1), GetPlayerMoney(player1), PlayerInfo, PlayerInfo, Float:PlayerInfo/Float:pDeaths);
format(str1, sizeof(str1),"Admin Level: %d | Server Operator: %s | Rank: %s | Team: %s | Class: %s", PlayerInfo, PlayerInfo ? ("Yes") : ("No"), GetRankName(player1), GetTeamName(player1), GetClass(player1));
format(str2, sizeof(str2),"TimePlayed: [%d] hrs [%d] mins [%d] secs", h, m, s);
SendClientMessage(playerid, 0xFFFFFFFF,str);
SendClientMessage(playerid, 0xAAAAAAFF,string);
SendClientMessage(playerid, 0xAAAAAAFF,str1);
SendClientMessage(playerid, 0xAAAAAAFF,str2);
SendClientMessage(playerid, 0xFFFFFFFF,"| ---------------------------------------------------- |");
} else return SendClientMessage(playerid, red, "Player Not Connected!");
return 1;
}


Znaci ovako hocu da ovo bude u dialogu ali ja sam sve radio u jednoj liniji i nije dobro ispalo.Znaci hocu u dialogu ono jedno ispod drugoga.Hvala  🙂
Rudimental
5
OG Legend
28. Jun 2016.
Evo ti primer nadam se da ces sve razumeti iz njega.

new
glavnistring, // Ovde trebas da upises umesto broja 8 broj karaktera za ukupan prikaz celog statsa, dok u ove ispod upisujes broj karaktera koji je potreban za tu jednu liniju
string1,
string2;
format(string1, sizeof(string1), "Text"); // Evo i ovde da pojasnim za tu liniju sto sam gore pisao ovo je recimo ta jedna trenutno ima 4 karaktera pa smo tamo definisali ta 4 ali ti kada uradis sve to uvek dodaj bar jos 50 karaktera vise zbog prikazivanja brojeva eto recimo za novac ti ces ovamo staviti %d ali na serveru dobijas brojeve i ide vise karaktera ako me razumes
format(string2, sizeof(string2), "Text");
format(glavnistring, sizeof(glavnistring), "%s%s", string1, string2); // Ovde povezujes stringove koje gore definises da bi bilo sve u jednom
ShowPlayerDialog(playerid, ID, DIALOG_STYLE_MSGBOX, "Stats", glavnistring, "Ok", "");

Morate biti prijavljeni da biste odgovorili na ovu temu.

Prijava

© 2026 SmartShark. All rights reserved.

Powered by Momentum|v2026.3.001 Alpha