Balkan SA:MP

PAWN skriptanje, gamemodovi, filterskripte, include fajlovi, mape, pluginovi => Razgovor u vezi PAWN - skriptanja => Temu započeo: [ET]Beks poslato Maj 30, 2018, 21:09:59 POSLE PODNE

Naslov: TD tajmer
Poruka od: [ET]Beks poslato Maj 30, 2018, 21:09:59 POSLE PODNE
Problem(error/warning): napravio sam TD za pare(kes)znaci radi sve super pokazuje mi +/-...E sad ne moguda skontam kako da napravim tajmer da mi posle lupam 5 sekundi nestane taj TD koliko je neki igrac dao ili dobio para...
Dio skripte: [ pawn ]ako nesto treba dat cu...[ /pawn ]
Debug iz server_log(ukoliko je u pitanju crashanje servera - crashdetect log): [ code ]////[ /code ]
Slika/video ingame problema(obavezno ako je ingame problem): //
Naslov: Odg: TD tajmer
Poruka od: InasSkripterlji poslato Maj 30, 2018, 21:32:56 POSLE PODNE
Jel ti stalno stoji li?
Naslov: Odg: TD tajmer
Poruka od: [ET]Beks poslato Maj 30, 2018, 21:48:52 POSLE PODNE
Citat: InasSkripterlji poslato Maj 30, 2018, 21:32:56 POSLE PODNE
Jel ti stalno stoji li?


Pa da....

Evo slika ako ce pomoci...

https://imgur.com/a/IX2vRxB
Naslov: Odg: TD tajmer
Poruka od: Bašovski poslato Maj 30, 2018, 22:14:41 POSLE PODNE
[pawn]forward skloni( playerid );
public skloni( playerid ) {
    return TextDrawHideForPlayer( playerid, td );
}[/pawn]
Umjesto td stavi ime tda

U funkciji za davanje para:
[pawn]SetTimerEx( "skloni", 5000, false, , "d", playerid );[/pawn]
Moraš pripaziti na ovo playerid, jer ti može unutar funkcije biti drugo ime varijable.
edit: izvini moja greska, zaboravio sam specifiere dodati
Naslov: Odg: TD tajmer
Poruka od: [ET]Beks poslato Maj 30, 2018, 22:58:41 POSLE PODNE
Imam 3 neka errora...

Dok se compile mod dajem errore i linije :/
Naslov: Odg: TD tajmer
Poruka od: [ET]Beks poslato Maj 30, 2018, 23:12:02 POSLE PODNE
D:\plrp\gamemodes\PLRP.pwn(1838) : error 017: undefined symbol "DodNovac"
D:\plrp\gamemodes\PLRP.pwn(5124) : error 035: argument type mismatch (argument 4)
D:\plrp\gamemodes\PLRP.pwn(5139) : error 035: argument type mismatch (argument 4)
Pawn compiler 3.2.3664           Copyright (c) 1997-2006, ITB CompuPhase

1838. return TextDrawHideForPlayer( id, DodNovac );

5124. SetTimerEx( "skloni", 5000, false, id );

5139. SetTimerEx( "skloni", 5000, false, id );
Naslov: Odg: TD tajmer
Poruka od: xsar.p poslato Maj 30, 2018, 23:37:30 POSLE PODNE
Citat: Beks poslato Maj 30, 2018, 23:12:02 POSLE PODNE
D:\plrp\gamemodes\PLRP.pwn(1838) : error 017: undefined symbol "DodNovac"
D:\plrp\gamemodes\PLRP.pwn(5124) : error 035: argument type mismatch (argument 4)
D:\plrp\gamemodes\PLRP.pwn(5139) : error 035: argument type mismatch (argument 4)
Pawn compiler 3.2.3664           Copyright (c) 1997-2006, ITB CompuPhase

1838. return TextDrawHideForPlayer( id, DodNovac );

5124. SetTimerEx( "skloni", 5000, false, id );

5139. SetTimerEx( "skloni", 5000, false, id );
'DodNovac' zameni sa svojim TDom.
Zameni ovo
[pawn]SetTimerEx( "skloni", 5000, false, id );[/pawn]
Sa ovim
[pawn]SetTimerEx("skloni", 5000, false, "i", id);[/pawn]

Koliko se ja secam SetTimerEx ima 5 parametra dok SetTimer ima samo 3.
WIKI:
SetTimerEx parametri:
(funcname[], interval, repeating, const format[], {Float,_}:...)

funcname[] The name of a public function to call when the timer expires.
interval Interval in milliseconds (1 second = 1000 MS).
repeating Boolean (true/false (or 1/0)) that states whether the timer should be called repeatedly (can only be stopped with KillTimer) or only once.
format[] Special format indicating the types of values the timer will pass.
{Float,_}:... Indefinite number of arguments to pass (must follow format specified in previous parameter).


SetTimer parametri:
(funcname[], interval, repeating)

funcname[] Name of the function to call as a string. This must be a public function (forwarded). A null string here will crash the server.
interval Interval in milliseconds.
repeating Boolean (true/false) on whether the timer should repeat or not.

Naslov: Odg: TD tajmer
Poruka od: [ET]Beks poslato Maj 30, 2018, 23:39:28 POSLE PODNE
Citat: #ꜱVK | WᴇꜱᴛSɪá´...á´‡ poslato Maj 30, 2018, 23:37:30 POSLE PODNE
'DodNovac' zameni sa svojim TDom.
Umesto SetTimerEx(...); // fali ti jedan parametar probaj staviti
[pawn]SetTimerEx("skloni", 5000, false, "i", id);[/pawn]

WIKI:
Parameters:
(funcname[], interval, repeating, const format[], {Float,_}:...)
funcname[] The name of a public function to call when the timer expires.
interval Interval in milliseconds (1 second = 1000 MS).
repeating Boolean (true/false (or 1/0)) that states whether the timer should be called repeatedly (can only be stopped with KillTimer) or only once.
format[] Special format indicating the types of values the timer will pass.
{Float,_}:... Indefinite number of arguments to pass (must follow format specified in previous parameter).




Pa moje je TD DodNovac

stock KreirajDodNovac(playerid)
{
      if(JelKreiranDodNovac[playerid] == false)
      {
          DodNovac[playerid] = TextDrawCreate(608.000000,94.000000,"+$99999999");
          TextDrawAlignment(DodNovac[playerid],3);
          TextDrawBackgroundColor(DodNovac[playerid],0x000000ff);
          TextDrawFont(DodNovac[playerid],3);
          TextDrawLetterSize(DodNovac[playerid],0.399999,1.500000);
          TextDrawColor(DodNovac[playerid],COLOR_YELLOW);
          TextDrawSetOutline(DodNovac[playerid],1);
          TextDrawSetProportional(DodNovac[playerid],1);
          TextDrawSetShadow(DodNovac[playerid],1);
          JelKreiranDodNovac[playerid] = true;
          brojdrawowa +=1;
      }
      return true;
}


ovo je jedan od stock-ova
Naslov: Odg: TD tajmer
Poruka od: xsar.p poslato Maj 30, 2018, 23:48:09 POSLE PODNE
Citat: Beks poslato Maj 30, 2018, 23:39:28 POSLE PODNE
Pa moje je TD DodNovac

stock KreirajDodNovac(playerid)
{
      if(JelKreiranDodNovac[playerid] == false)
      {
          DodNovac[playerid] = TextDrawCreate(608.000000,94.000000,"+$99999999");
          TextDrawAlignment(DodNovac[playerid],3);
          TextDrawBackgroundColor(DodNovac[playerid],0x000000ff);
          TextDrawFont(DodNovac[playerid],3);
          TextDrawLetterSize(DodNovac[playerid],0.399999,1.500000);
          TextDrawColor(DodNovac[playerid],COLOR_YELLOW);
          TextDrawSetOutline(DodNovac[playerid],1);
          TextDrawSetProportional(DodNovac[playerid],1);
          TextDrawSetShadow(DodNovac[playerid],1);
          JelKreiranDodNovac[playerid] = true;
          brojdrawowa +=1;
      }
      return true;
}


ovo je jedan od stock-ova
Pokusaj zameniti  return TextDrawHideForPlayer( id, DodNovac ); sa  return TextDrawHideForPlayer( playerid, DodNovac[playerid] ); // svaki primer na samp wiki-u je sa ImeTDa[playerid].

Ili probaj zamenit ovo ovde.
[pawn]forward skloni( playerid );
public skloni( playerid ) {
    return TextDrawHideForPlayer( playerid, td );
}[/pawn]

Sa ovim ovde (ne verujem da ce biti neke razlike, ali svjdn pokusaj.)
[pawn]
forward skloni( playerid ); // probaj takodje zameniti playerid sa id.
public skloni( playerid )
{
    TextDrawHideForPlayer( id, DodNovac[id] ); // ako ne radi sa [id] probaj sa [playerid].
    return 1;
}
[/pawn]
// jebo ja sebe ak sam skontao sta sam napisao.
Naslov: Odg: TD tajmer
Poruka od: [ET]Beks poslato Maj 31, 2018, 11:51:53 PRE PODNE
Hej drugari sada imam jos jedan problem....

Uspeli smo da resimo timer i sada ga sklonja posle 5 sekundi kako smo i zamislili...

E sad imam PROBLEM sto mi TD pokazuje samo jednom...I dokle god igrac ne ode relog TD za +/- se vise ne pokazuje :/
Naslov: Odg: TD tajmer
Poruka od: [ET]Beks poslato Maj 31, 2018, 18:57:05 POSLE PODNE
Bump...i dalje nije reseno
Naslov: Odg: TD tajmer
Poruka od: [ET]Beks poslato Jun 01, 2018, 01:15:35 PRE PODNE
Resio sam..Hvala svima moze lock..