Balkan SA:MP

PAWN skriptanje, gamemodovi, filterskripte, include fajlovi, mape, pluginovi => FilterScripte, Include, Pluginovi za SA-MP => Filterskripte & include fajlovi => Temu započeo: Smith.amx poslato Avgust 11, 2020, 21:30:08 POSLE PODNE

Naslov: Ednostaven Matematika SIS
Poruka od: Smith.amx poslato Avgust 11, 2020, 21:30:08 POSLE PODNE
Tip: FS
Slike ili Video: Testiraj (Sta da slikam nz ..)
Opis i dodatne informacije: //
Download link: https://pastebin.com/DsE1Ah5T
Scan link: pastebin
Credits: ME
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: XACK poslato Avgust 12, 2020, 01:38:53 PRE PODNE
Broj od 1 pa do 3 uopste ne trebas cuvati ni dodeljivati memoriju, jer igrac pogadja samo rezultat, a brojeve formatiraj lokalno.
tajmervreme takodje bespotrebno mada ako vec hoces definisi ga s #define.
Takodje bih ti preporucio da poradis na imenovanju varijabli i funkciju da to ima neku povezanost i da znas da su deo tog odredjenog sistema.
Bilo bi dobro da raslojavas provere da na primer ako kviz nije aktivan da uopste ne poziva strval.
GetPlayerName bi mogao pozvati samo pri konekciji igraca i onda koristiti sacuvano ime i update ga ako se slucajno promeni.
Kada saljes ClientMessage igracima ne moras na pocetak stringa dodavati {NEKA BOJA} vec samo iskoristi parametar iz funkcije koja ce sama na pocetak ubaciti boju.

Ovo su samo saveti koji se ne bi trebali smatrati kao uvreda vec nesto sto bi pomoglo nekome ko pravi slicne greske u nekim vecim stvarima.
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: L3o poslato Avgust 12, 2020, 02:26:28 PRE PODNE
Kao što ti je rekao Xack, moraš poraditi na kodu. Napravio sam ti jedan primjer dole pa ako želiš pogledaj, također sam malo uredio tvoju skriptu ako netko želi koristiti. Nisam testirao niti compile jer nemam samp ni' pawno, ako netko želi koristiti a ima nekih grešaka neka mi se obrati preko PM-a.

Pastebin (https://pastebin.com/yYtRscxy).

[pawn]#include <a_samp>
#include <zcmd>
#include <sscanf2>

#define COLOR_WHITE (0xFFFFFFAA)

enum E_MATH_TEST {
   m_result,
   m_reward,
   bool: m_active
}
new MathTest[E_MATH_TEST];

public OnGameModeInit() {

   // reset math-test
    MathTest[m_result] = (0);
   MathTest[m_active] = (false);
   MathTest[m_reward] = (0);
   
   return (true);
}

public OnPlayerText(playerid, text[]) {
   if(strval(text) == MathTest[m_result] && MathTest[m_active] == (true)) {
      new tmpString[90];

        format(tmpString, sizeof(tmpString), "[MATH-TEST]: Odgovorili ste tocno na math-pitanje (rezultat: %d) i zaradili ste %d$.", MathTest[m_result], MathTest[m_reward]);
        SendClientMessageToAll(COLOR_WHITE, (tmpString));

        GivePlayerMoney(playerid, MathTest[m_reward]);

       MathTest[m_result] = (0);
      MathTest[m_active] = (false);
      MathTest[m_reward] = (0);
    }
    return (true);
}

CMD:math(playerid, params[]) {

    if (!IsPlayerAdmin(playerid))
       return SendClientMessage(playerid, COLOR_WHITE, "Ne mozete koristiti ovu komandu.");

   new reward;
   if(sscanf(params, "d", reward))
      return SendClientMessage(playerid, COLOR_WHITE, "[CMD]: /math [reward].");

   new tmpString[64],
      num1 = (0), num2 = (0), num3 = (0);
   MathTest[m_result] = (num1 = random(100)) + (num2 = random(100))-(num3 = random(100));
   MathTest[m_active] = (true);
   MathTest[m_reward] = (reward);

   format(tmpString, sizeof(tmpString), "[MATH-TEST]: Unesite rezultat od (%d+%d-%d), nagrada iznosi %d$.", num1, num2, num3, MathTest[m_reward]);
    SendClientMessageToAll(COLOR_WHITE, (tmpString));

   return (true);
}[/pawn]
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: inquisitiveemmett poslato Avgust 12, 2020, 03:18:44 PRE PODNE
Citat: L3o poslato Avgust 12, 2020, 02:26:28 PRE PODNE
Kao što ti je rekao Xack, moraš poraditi na kodu. Napravio sam ti jedan primjer dole pa ako želiš pogledaj, također sam malo uredio tvoju skriptu ako netko želi koristiti. Nisam testirao niti compile jer nemam samp ni' pawno, ako netko želi koristiti a ima nekih grešaka neka mi se obrati preko PM-a.

Pastebin (https://pastebin.com/yYtRscxy).

[pawn]#include <a_samp>
#include <zcmd>
#include <sscanf2>

#define COLOR_WHITE (0xFFFFFFAA)

enum E_MATH_TEST {
   m_result,
   m_reward,
   bool: m_active
}
new MathTest[E_MATH_TEST];

public OnGameModeInit() {

   // reset math-test
    MathTest[m_result] = (0);
   MathTest[m_active] = (false);
   MathTest[m_reward] = (0);
   
   return (true);
}

public OnPlayerText(playerid, text[]) {
   if(strval(text) == MathTest[m_result] && MathTest[m_active] == (true)) {
      new tmpString[90];

        format(tmpString, sizeof(tmpString), "[MATH-TEST]: Odgovorili ste tocno na math-pitanje (rezultat: %d) i zaradili ste %d$.", MathTest[m_result], MathTest[m_reward]);
        SendClientMessageToAll(COLOR_WHITE, (tmpString));

        GivePlayerMoney(playerid, MathTest[m_reward]);

       MathTest[m_result] = (0);
      MathTest[m_active] = (false);
      MathTest[m_reward] = (0);
    }
    return (true);
}

CMD:math(playerid, params[]) {

    if (!IsPlayerAdmin(playerid))
       return SendClientMessage(playerid, COLOR_WHITE, "Ne mozete koristiti ovu komandu.");

   new reward;
   if(sscanf(params, "d", reward))
      return SendClientMessage(playerid, COLOR_WHITE, "[CMD]: /math [reward].");

   new tmpString[64],
      num1 = (0), num2 = (0), num3 = (0);
   MathTest[m_result] = (num1 = random(100)) + (num2 = random(100))-(num3 = random(100));
   MathTest[m_active] = (true);
   MathTest[m_reward] = (reward);

   format(tmpString, sizeof(tmpString), "[MATH-TEST]: Unesite rezultat od (%d+%d-%d), nagrada iznosi %d$.", num1, num2, num3, MathTest[m_reward]);
    SendClientMessageToAll(COLOR_WHITE, (tmpString));

   return (true);
}[/pawn]

A šta kažeš na ovo? Nisam 100% prepravio kod naravno, mrzelo me, nemam živaca da radim, malo sam ga samo sredio i tjt.
Btw pola od ovoga ja ne koristim tako daa...

[pawn]
#include <a_samp>
#include <zcmd>
#include <sscanf2>


enum E_MATH_TEST
{
   m_result,
   m_reward,

   bool: m_active
};

new MathTest[E_MATH_TEST];


public OnGameModeInit()
{
   // reset math-test
   MathTest[m_active] = false;
   MathTest[m_result] =
   MathTest[m_reward] = 0;

   return 1;
}


public OnPlayerText(playerid, text[])
{
   if(strval(text) == MathTest[m_result] && MathTest[m_active])
   {
      new tmpString[90];

      format(
         tmpString, sizeof(tmpString),
         "[MATH-TEST]: Odgovorili ste tocno na math-pitanje (rezultat: %d) i zaradili ste %d$.",
         MathTest[m_result], MathTest[m_reward]
      );
      SendClientMessageToAll(-1, (tmpString));


      GivePlayerMoney(playerid, MathTest[m_reward]);


      MathTest[m_active] = false;
      MathTest[m_result] =
      MathTest[m_reward] = 0;
   }

   return 1;
}


CMD:math(playerid, const params[])
{
   if (!IsPlayerAdmin(playerid))
      return SendClientMessage(playerid, -1, "Ne mozete koristiti ovu komandu.");


   if (isnull(params))
      return SendClientMessage(playerid, -1, "[CMD]: /math [reward].");


   new
      tmpString[64],

      num1 = 0,
      num2 = 0,
      num3 = 0;


   MathTest[m_result] = (num1 = random(100)) + (num2 = random(100)) - (num3 = random(100));
   MathTest[m_reward] = reward;
   MathTest[m_active] = true;


   format(tmpString, sizeof(tmpString), "[MATH-TEST]: Unesite rezultat od (%d+%d-%d), nagrada iznosi %d$.", num1, num2, num3, MathTest[m_reward]);
   SendClientMessageToAll(-1, (tmpString));

   return 1;
}
[/pawn]
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: XACK poslato Avgust 12, 2020, 11:53:00 PRE PODNE
Totalno odudarate od koncepta koji je ovaj covek odradio.
Dzaba vam rad na drugaciji nacin ako ne pratite sta i kako radite.

Ako je filterskripta onda se po tom formatu i radi, callback break nedostaje, bespotrebne inicijalizacije, bespotrebno includanje sscanfa, da ne nabrajam dalje.

[pawn]
#define FILTERSCRIPT

   /*
       @Dependencies
   */

#include <a_samp>
#include <zcmd>

   /*
       @Configuration
   */

#define MATH_TEST_AUTOTIME (15)
#define MATH_TEST_AUTOREWARD (5000)

   /*
       @Data
   */

enum E_MATH_TEST
{
   m_result,
   m_reward,
   bool: m_active
};

new MathTest[E_MATH_TEST];

   /*
      @Prototypes
   */

forward MathTest_Auto();
stock MathTest_Start(reward);

   /*
       @Native callbacks
   */

public OnFilterScriptInit()
{
   SetTimer("MathTest_Auto", 60000 * MATH_TEST_AUTOTIME, true);
   return 1;
}

public OnPlayerText(playerid, text[])
{
   if(MathTest[m_active])
   {
       if(strval(text) == MathTest[m_result])
      {
         new tmpString[90];

         GetPlayerName(playerid, tmpString);

         format(
            tmpString, sizeof tmpString,
            "[Math]: %s je prvi dao tacan odgovor (rezultat: %d | nagrada: %d$)",
            tmpString, MathTest[m_result], MathTest[m_reward]
         );
         SendClientMessageToAll(-1, tmpString);

         GivePlayerMoney(playerid, MathTest[m_reward]);

         MathTest[m_active] = false;
         MathTest[m_result] =
         MathTest[m_reward] = 0;
         return 0;
      }
   }
   return 1;
}
   /*
       @Function bodies
   */
stock MathTest_Start(reward)
{
   if(reward < 0)
   {
       return 0;
   }
   new
      tmpString[56],
      num[3];

   MathTest[m_result] = (num[0] = random(100)) + (num[1] = random(100)) - (num[2] = random(100));
   MathTest[m_reward] = reward;
   MathTest[m_active] = true;

   format(
      tmpString, sizeof tmpString,
       "[Math]: Izracunajte (%d+%d-%d), nagrada iznosi %d$.",
        num[0], num[1], num[2], MathTest[m_reward]
     );
   SendClientMessageToAll(-1, tmpString);
   return 1;
}

public MathTest_Auto()
{
   MathTest_Start(MATH_TEST_AUTOREWARD);
   return 1;
}

   /*
       @Player area
   */

CMD:math(playerid, const params[])
{
   if(!IsPlayerAdmin(playerid))
   {
      return SendClientMessage(playerid, -1, "Ne mozete koristiti ovu komandu.");
   }

   if(isnull(params))
   {
      return SendClientMessage(playerid, -1, "[CMD]: /math [reward].");
   }
      
   MathTest_Start(strval(params));

   return 1;
}
[/pawn]
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: inquisitiveemmett poslato Avgust 12, 2020, 12:08:27 POSLE PODNE
Citat: XACK poslato Avgust 12, 2020, 11:53:00 PRE PODNE
Totalno odudarate od koncepta koji je ovaj covek odradio.
Dzaba vam rad na drugaciji nacin ako ne pratite sta i kako radite.

Ako je filterskripta onda se po tom formatu i radi, callback break nedostaje, bespotrebne inicijalizacije, bespotrebno includanje sscanfa, da ne nabrajam dalje.

[pawn]
#define FILTERSCRIPT

   /*
       @Dependencies
   */

#include <a_samp>
#include <zcmd>

   /*
       @Configuration
   */

#define MATH_TEST_AUTOTIME (15)
#define MATH_TEST_AUTOREWARD (5000)

   /*
       @Data
   */

enum E_MATH_TEST
{
   m_result,
   m_reward,
   bool: m_active
};

new MathTest[E_MATH_TEST];

   /*
      @Prototypes
   */

forward MathTest_Auto();
stock MathTest_Start(reward);

   /*
       @Native callbacks
   */

public OnFilterScriptInit()
{
   SetTimer("MathTest_Auto", 60000 * MATH_TEST_AUTOTIME, true);
   return 1;
}

public OnPlayerText(playerid, text[])
{
   if(MathTest[m_active])
   {
       if(strval(text) == MathTest[m_result])
      {
         new tmpString[90];

         GetPlayerName(playerid, tmpString);

         format(
            tmpString, sizeof tmpString,
            "[Math]: %s je prvi dao tacan odgovor (rezultat: %d | nagrada: %d$)",
            tmpString, MathTest[m_result], MathTest[m_reward]
         );
         SendClientMessageToAll(-1, tmpString);

         GivePlayerMoney(playerid, MathTest[m_reward]);

         MathTest[m_active] = false;
         MathTest[m_result] =
         MathTest[m_reward] = 0;
         return 0;
      }
   }
   return 1;
}
   /*
       @Function bodies
   */
stock MathTest_Start(reward)
{
   if(reward < 0)
   {
       return 0;
   }
   new
      tmpString[56],
      num[3];

   MathTest[m_result] = (num[0] = random(100)) + (num[1] = random(100)) - (num[2] = random(100));
   MathTest[m_reward] = reward;
   MathTest[m_active] = true;

   format(
      tmpString, sizeof tmpString,
       "[Math]: Izracunajte (%d+%d-%d), nagrada iznosi %d$.",
        num[0], num[1], num[2], MathTest[m_reward]
     );
   SendClientMessageToAll(-1, tmpString);
   return 1;
}

public MathTest_Auto()
{
   MathTest_Start(MATH_TEST_AUTOREWARD);
   return 1;
}

   /*
       @Player area
   */

CMD:math(playerid, const params[])
{
   if(!IsPlayerAdmin(playerid))
   {
      return SendClientMessage(playerid, -1, "Ne mozete koristiti ovu komandu.");
   }

   if(isnull(params))
   {
      return SendClientMessage(playerid, -1, "[CMD]: /math [reward].");
   }
      
   MathTest_Start(strval(params));

   return 1;
}
[/pawn]
Ja sam rekao da nisam skroz sredio kod, samo ga malo sredio, uredio, i to, ništa ga nisam optimizovao i to. Tako da..
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: XACK poslato Avgust 12, 2020, 12:12:14 POSLE PODNE
Citat: inquisitiveemmett poslato Avgust 12, 2020, 12:08:27 POSLE PODNE
Ja sam rekao da nisam skroz sredio kod, samo ga malo sredio, uredio, i to, ništa ga nisam optimizovao i to. Tako da..
Problem je sto si ga jos vise zabrljavio, tj. ni ne moze se compile, komanda bi primala prazne parametre, nema returna u OPT itd..
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: skritpe iz 2007 godine. ( ͡° ͜ʖ ͡°) poslato Avgust 12, 2020, 12:14:46 POSLE PODNE
Ja ću samo reći da se funkcija uvek piše ovako

[pawn]main()
{
   return;
} [/pawn]

Bez obzira da li se koristi ALLMAN ili K&R (ovako i jeste pravilno u K&Ru bez obzira što inače curly bracket ide u isti red u drugim slučajevima)

EDIT: Što se samog sistema tiče (ne pričam o kodu ne loži se) je mnogo jednostavan tako da sumnjam da bi bilo gde imao primenu kada je uvek nesto+nesto-nesto...
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: inquisitiveemmett poslato Avgust 12, 2020, 13:01:37 POSLE PODNE
Citat: XACK poslato Avgust 12, 2020, 12:12:14 POSLE PODNE
Problem je sto si ga jos vise zabrljavio, tj. ni ne moze se compile, komanda bi primala prazne parametre, nema returna u OPT itd..
Šta pričaš ti? Isto si uradio komandu kao i ja samo što si one stvari dole pobacao u funkciju i to je to  ???
EDIT: I dodao
[pawn]
// Umesto ovoga (mog)
if (!IsPlayerAdmin(playerid))
      return SendClientMessage(playerid, -1, "Ne mozete koristiti ovu komandu.");


   if (isnull(params))
      return SendClientMessage(playerid, -1, "[CMD]: /math [reward].");

// Si dodao ovo
if(!IsPlayerAdmin(playerid))
   {
      return SendClientMessage(playerid, -1, "Ne mozete koristiti ovu komandu.");
   }

   if(isnull(params))
   {
      return SendClientMessage(playerid, -1, "[CMD]: /math [reward].");
   }
[/pawn]

Ne bodi se više pls

EDIT 2: Ja sam samo uredio kod, nisam ga ništa dodavao/oduzimao osim što sam obrisao COLOR_WHITE i zamenio sa -1...  ::) Tako da, nije moj problem što neće da se compile, ne nameravam da sređujem tuđe kodove baš
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: XACK poslato Avgust 12, 2020, 13:20:21 POSLE PODNE
Citat: inquisitiveemmett poslato Avgust 12, 2020, 13:01:37 POSLE PODNE
Šta pričaš ti? Isto si uradio komandu kao i ja samo što si one stvari dole pobacao u funkciju i to je to  ???
EDIT: I dodao
[pawn]
// Umesto ovoga (mog)
if (!IsPlayerAdmin(playerid))
      return SendClientMessage(playerid, -1, "Ne mozete koristiti ovu komandu.");


   if (isnull(params))
      return SendClientMessage(playerid, -1, "[CMD]: /math [reward].");

// Si dodao ovo
if(!IsPlayerAdmin(playerid))
   {
      return SendClientMessage(playerid, -1, "Ne mozete koristiti ovu komandu.");
   }

   if(isnull(params))
   {
      return SendClientMessage(playerid, -1, "[CMD]: /math [reward].");
   }
[/pawn]

Ne bodi se više pls

EDIT 2: Ja sam samo uredio kod, nisam ga ništa dodavao/oduzimao osim što sam obrisao COLOR_WHITE i zamenio sa -1...  ::) Tako da, nije moj problem što neće da se compile, ne nameravam da sređujem tuđe kodove baš

Gle, prvenstveno, ovaj lik nije uopste napravio komandu vec tajmer koji automatski pokrece kviz svakih 15 minuta.
Ti si onda dosao i stavio komandu takvu da kada je upises uvek ce se slati prazan parametar.
Zapeo si za komandu, a ostalo nisi ni video gde si pogresio.
Navikli ste da includovi rade za vas, a sami ne znate proste stvari uraditi.

Svadje bez pls  :P
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: inquisitiveemmett poslato Avgust 12, 2020, 13:25:56 POSLE PODNE
Citat: XACK poslato Avgust 12, 2020, 13:20:21 POSLE PODNE
Gle, prvenstveno, ovaj lik nije uopste napravio komandu vec tajmer koji automatski pokrece kviz svakih 15 minuta.
Ti si onda dosao i stavio komandu takvu da kada je upises uvek ce se slati prazan parametar.
Zapeo si za komandu, a ostalo nisi ni video gde si pogresio.
Navikli ste da includovi rade za vas, a sami ne znate proste stvari uraditi.

Svadje bez pls  :P
Šta sam ja pogrešio ostalo kad nisam ništa radio osim kao što sam rekao promenio color white u -1 i rokao new line ??
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: XACK poslato Avgust 12, 2020, 13:27:35 POSLE PODNE
Citat: inquisitiveemmett poslato Avgust 12, 2020, 13:25:56 POSLE PODNE
Šta sam ja pogrešio ostalo kad nisam ništa radio osim kao što sam rekao promenio color white u -1 i rokao new line ??
Samim tim sto si odobrio pisanje takvog koda te kritikujuci mene za komandu na kojoj si ti napravio gresku.
Jeste da si sredio imenovanje, ali ostalo je isto kao kod ovog lika.
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: inquisitiveemmett poslato Avgust 12, 2020, 13:30:23 POSLE PODNE
Citat: XACK poslato Avgust 12, 2020, 13:27:35 POSLE PODNE
Samim tim sto si odobrio pisanje takvog koda te kritikujuci mene za komandu na kojoj si ti napravio gresku.
Jeste da si sredio imenovanje, ali ostalo je isto kao kod ovog lika.
Njegov kod sam editovao :=





Citat: L3o poslato Avgust 12, 2020, 02:26:28 PRE PODNE
Kao što ti je rekao Xack, moraš poraditi na kodu. Napravio sam ti jedan primjer dole pa ako želiš pogledaj, također sam malo uredio tvoju skriptu ako netko želi koristiti. Nisam testirao niti compile jer nemam samp ni' pawno, ako netko želi koristiti a ima nekih grešaka neka mi se obrati preko PM-a.

Pastebin (https://pastebin.com/yYtRscxy).

[pawn]#include <a_samp>
#include <zcmd>
#include <sscanf2>

#define COLOR_WHITE (0xFFFFFFAA)

enum E_MATH_TEST {
   m_result,
   m_reward,
   bool: m_active
}
new MathTest[E_MATH_TEST];

public OnGameModeInit() {

   // reset math-test
    MathTest[m_result] = (0);
   MathTest[m_active] = (false);
   MathTest[m_reward] = (0);
   
   return (true);
}

public OnPlayerText(playerid, text[]) {
   if(strval(text) == MathTest[m_result] && MathTest[m_active] == (true)) {
      new tmpString[90];

        format(tmpString, sizeof(tmpString), "[MATH-TEST]: Odgovorili ste tocno na math-pitanje (rezultat: %d) i zaradili ste %d$.", MathTest[m_result], MathTest[m_reward]);
        SendClientMessageToAll(COLOR_WHITE, (tmpString));

        GivePlayerMoney(playerid, MathTest[m_reward]);

       MathTest[m_result] = (0);
      MathTest[m_active] = (false);
      MathTest[m_reward] = (0);
    }
    return (true);
}

CMD:math(playerid, params[]) {

    if (!IsPlayerAdmin(playerid))
       return SendClientMessage(playerid, COLOR_WHITE, "Ne mozete koristiti ovu komandu.");

   new reward;
   if(sscanf(params, "d", reward))
      return SendClientMessage(playerid, COLOR_WHITE, "[CMD]: /math [reward].");

   new tmpString[64],
      num1 = (0), num2 = (0), num3 = (0);
   MathTest[m_result] = (num1 = random(100)) + (num2 = random(100))-(num3 = random(100));
   MathTest[m_active] = (true);
   MathTest[m_reward] = (reward);

   format(tmpString, sizeof(tmpString), "[MATH-TEST]: Unesite rezultat od (%d+%d-%d), nagrada iznosi %d$.", num1, num2, num3, MathTest[m_reward]);
    SendClientMessageToAll(COLOR_WHITE, (tmpString));

   return (true);
}[/pawn]
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: XACK poslato Avgust 12, 2020, 13:33:13 POSLE PODNE
Citat: inquisitiveemmett poslato Avgust 12, 2020, 13:30:23 POSLE PODNE
Njegov kod sam editovao :=





Svejedno je ciji je, ne radi kako bi trebalo da radi.
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: inquisitiveemmett poslato Avgust 12, 2020, 13:37:35 POSLE PODNE
Citat: XACK poslato Avgust 12, 2020, 13:33:13 POSLE PODNE
Svejedno je ciji je, ne radi kako bi trebalo da radi.
Pa to nije moj problem, nisam ja sjebao kod jer ga nisam ni radio, sjebao ga je L3o i ovaj što ga je napravio i objavio.. Ja niti imam samp na ovom kompu, niti gta, niti compiler, nemam baš ništa tako da me realno ne interesuje šta su radili, ja sam samo pokazao kako bi bilo da malo promeni stil pisanja koda, ništa više, ništa. Tako da nema potrebe da mi pričaš da ništa ne znam i tako to slično, et...
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: XACK poslato Avgust 12, 2020, 13:43:34 POSLE PODNE
Toliko ste usrali kod sa stilom da ne radi uopste, lik je objavio simple system sa timerom koji radi, a ja sam ispravio sve sto nije radilo uz decent stil.
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: inquisitiveemmett poslato Avgust 12, 2020, 14:38:15 POSLE PODNE
Citat: XACK poslato Avgust 12, 2020, 13:43:34 POSLE PODNE
Toliko ste usrali kod sa stilom da ne radi uopste, lik je objavio simple system sa timerom koji radi, a ja sam ispravio sve sto nije radilo uz decent stil.
Nerazuman si, to je to. Ne može čovek ništa da ti objasni...
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: XACK poslato Avgust 12, 2020, 14:52:58 POSLE PODNE
Nemas sta da objasnjavas, svojim postovima si pokazao sta si trebao da pokazes, dalje nema svrhe nastavljati.  :-\
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: King of the Jungle poslato Avgust 12, 2020, 14:58:08 POSLE PODNE
Evo kada već svi pišu bespotrebne primere "Kako najbolje i najlepše napisati kod" (i kako forsirati svoj stil na druge bez razloga jer svako ima svoj stil) haj i ja da napišem jedan u modularnom duhu :D

[pawn]#include <a_samp>

#if defined MATH_TIMER_INTERVAL
    #undef MATH_TIMER_INTERVAL
#endif
#define MATH_TIMER_INTERVAL (5) // Minutes

static gResult;
static bool: gMathActive;

forward Math_Timer();
forward OnCorrectMathAnswer(playerid);

// -
// Api
// -

stock ReturnMathQuizResult()
{
    return gResult;
}

stock bool:IsMathActive()
{
    return gMathActive;
}

stock bool:IsMathAnswer(const buffer[])
{
    if (!IsMathActive)
        return false;

    if (strval(buffer) == ReturnMathQuizResult())
        return true;

    return false;
}

stock ToggleMathActive(bool: toggle)
{
    return (gMathActive = toggle);
}

stock StartMathQuiz()
{
    new
        buffer[128],
        num[3]
    ;

    gResult = (num[0] = random(200)) + (num[1] = random(200)) - (num[2] = random(200));
    ToggleMathActive(true);

    format(buffer, sizeof(buffer), "{FFFFFF}[Math_Timer]: Vnesete go gResultot od izrazot %d+%d-%d i dobivate 10000$!", num[0], num[1], num[2]);
    SendClientMessageToAll(-1, buffer);
}

// -
// Callbacks
// -

public OnFilterScriptInit()
{
   SetTimer("Math_Timer", MATH_TIMER_INTERVAL * 60000, true);
   return 1;
}

public Math_Timer()
{
    StartMathQuiz();
    return 1;
}

public OnPlayerText(playerid, text[])
{
    if(IsMathAnswer(text))
    {
        CallLocalFunction("OnCorrectMathAnswer", "d", playerid);
        return 0;
    }
    return 1;
}

public OnCorrectMathAnswer(playerid)
{
    new pName[MAX_PLAYER_NAME], buffer[128];
    GetPlayerName(playerid, pName, sizeof(pName));
   
    format(buffer, sizeof(buffer), "{FFFFFF}[Math_Timer]: Tocniot odgovor na zadacata bese: %d", gResult);
    SendClientMessageToAll(-1, buffer);
   
    format(buffer, sizeof(buffer), "{FFFFFF}[Math_Timer]: Igracot %s prv go pogodi tocniot gResult i osvoi 1000$.", pName);
    SendClientMessageToAll(-1, buffer);
   
    GivePlayerMoney(playerid, 1000);
    ToggleMathActive(false);

    return;
}[/pawn]
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: King of the Jungle poslato Avgust 12, 2020, 15:04:32 POSLE PODNE
Da ispravim gore, zaboravio sam ()

[pawn]stock bool:IsMathAnswer(const buffer[])
{
    if (!IsMathActive())
        return false;

    if (strval(buffer) == ReturnMathQuizResult())
        return true;

    return false;
}[/pawn]
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: XACK poslato Avgust 12, 2020, 15:33:36 POSLE PODNE
[pawn]
#if defined MATH_TIMER_INTERVAL
    #undef MATH_TIMER_INTERVAL
#endif
[/pawn]

Ako neko vec ima definisano nesto slicno poremetices mu sistem, a on nece znati da je to promenjeno, dakle - bespotrebno.

[pawn]
CallLocalFunction("OnCorrectMathAnswer", "d", playerid);
[/pawn]

Bespotrebno, dovoljan je normalan call, ovaj je retardiran.

[pawn]
new pName[MAX_PLAYER_NAME]
[/pawn]

Umesto ovoga mozes koristiti 'buffer', btw ako koristis ovo: + 1 na MAX_PLAYER_NAME ide u slucaju da ime ima maksimalan broj karaktera

[pawn]
sizeof(pName));
[/pawn]

takodje bespotrebno, po defaultu ce uzeti tu duzinu.



Cekamo jos i plugin verziju da slucajno ne ostanemo uskraceni i za to  :D

Naslov: Odg: Ednostaven Matematika SIS
Poruka od: King of the Jungle poslato Avgust 12, 2020, 15:50:17 POSLE PODNE
Citat: XACK poslato Avgust 12, 2020, 15:33:36 POSLE PODNE
[pawn]
#if defined MATH_TIMER_INTERVAL
    #undef MATH_TIMER_INTERVAL
#endif
[/pawn]

Ako neko vec ima definisano nesto slicno poremetices mu sistem, a on nece znati da je to promenjeno, dakle - bespotrebno.

[pawn]
CallLocalFunction("OnCorrectMathAnswer", "d", playerid);
[/pawn]

Bespotrebno, dovoljan je normalan call, ovaj je retardiran.

[pawn]
new pName[MAX_PLAYER_NAME]
[/pawn]

Umesto ovoga mozes koristiti 'buffer', btw ako koristis ovo: + 1 na MAX_PLAYER_NAME ide u slucaju da ime ima maksimalan broj karaktera

[pawn]
sizeof(pName));
[/pawn]

takodje bespotrebno, po defaultu ce uzeti tu duzinu.



Cekamo jos i plugin verziju da slucajno ne ostanemo uskraceni i za to  :D
Uopšte nisam menjao kod nego stil druže...
Ali evo da odgovorimo na sve to :)

#if defined MATH_TIMER_INTERVAL
    #undef MATH_TIMER_INTERVAL
#endif

Rekao sam da pišem modularno, samim tim će definicija već biti iskorištena tamo gde treba i neće ništa poremetiti jer jer to pre-compiler

CallLocalFunction("OnCorrectMathAnswer", "d", playerid);
M O D U L A R A N kod koji verovatno nikada nisi pisao niti video.
CitatPackages
A Package is a folder containing one or more Modules.

Each isolated unit of functionality should be a package. Packages should communicate via events or exported functions. A package emits an event with CallLocalFunction to signal to other packages that something happened. A package may also export functions. Here, export simply means "to make available". static should be used to indicate a function only used within the immediate module.

CitatUmesto ovoga mozes koristiti 'buffer', btw ako koristis ovo: + 1 na MAX_PLAYER_NAME ide u slucaju da ime ima maksimalan broj karaktera
Poprilično sam siguran da niti jedan balkanac ne koristi ime duže od 18 karaktera, naravno + 1 svakako treba dodati, ja sam samo preimenovao varijablu, nisam bilo šta prčkao oko nje

Citat[pawn]
sizeof(pName));
[/pawn]

takodje bespotrebno, po defaultu ce uzeti tu duzinu.
Da, svesni smo toga, ali ostavljam to zbog urednosti jer se meni lično tako sviđa, ne zna svako da je default sizeof svakako, ništa neudi što tu stoji, meni se lično ne sviđa da GetPlayerName ima samo 2 parametra jer je sizeof pre-compiler pa ne škodi ništa da se doda

Kažem ovo sve je MOJ STIL a o STILu se ne diskutuje dok ne utiče na same perofrmanse servera.

Da sam ja pisao ovaj sistem, pre svega uopšte ne bih imao ovoliko retardirane evente i ovako simple matematiku nego bi znakovi +-/* bili random :D

Poslednji odgovor koji pišem na ovu temu, nemoj džaba da se umaraš da odgovaraš
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: XACK poslato Avgust 12, 2020, 15:59:19 POSLE PODNE
Rekao sam ti da je bespotrebno, ali ti ne slusas.

Prvo, #ifdef - jednostavno nije potrebno da bude tu.

calllocalfunc, u dokumentaciji pise "should be", ali posto ti nisi u 2020. godini onda nikom nista, normal call je bolji i pouzdaniji.

buffer sam ti rekao da koristis umesto pName, jer ne moras praviti bezveze dve varijable kad mozes iskoristiti jednu za sve.

sizeof nije pre-compiler vec je operator
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: King of the Jungle poslato Avgust 12, 2020, 16:05:53 POSLE PODNE
Citat: XACK poslato Avgust 12, 2020, 15:59:19 POSLE PODNE
Rekao sam ti da je bespotrebno, ali ti ne slusas.

Prvo, #ifdef - jednostavno nije potrebno da bude tu.

calllocalfunc, u dokumentaciji pise "should be", ali posto ti nisi u 2020. godini onda nikom nista, normal call je bolji i pouzdaniji.

buffer sam ti rekao da koristis umesto pName, jer ne moras praviti bezveze dve varijable kad mozes iskoristiti jednu za sve.

sizeof nije pre-compiler vec je operator
Druže Southclaws tako poziva call-ove, Y_Less tako poziva call-ove, y_inline tako signalizira evente, jel se ti bodeš?
I to je napisano u 2019oj godini, tako da molim te :)

Imaš i call function(); (koja je opet wrapper za CallLocalFunction) opciju koju ja koristim jer koristim _ALS_DO

#ifdef je stvar ukusa stvarno, nigde ne piše da mora, ja tako pišem jer eto ide gas

A što se buffer-a tiče to nisam video uopšte :D

I sizeof() ne utiče ne perforamanse server jer se uopšte ne poziva u toku runtime-a što ga čini pre-compiler ili ti preprocessor-om, dešava se u toku kompilacije jer string/array uvek imaju fiksiranu veličinu kada pre-compiler pređe preko nje, čak i kada je u pitanju string []

Evo, ovo sam pronašao prvom google pretargom...
CitatAlso it's good to know that sizeof is a compiler directive, so it's not a function (unlike strlen for example). That implies you cannot use it on arrays with a size that's not known at compile-time (function arguments mostly).
That's why functions which write into arrays also need the size of the array passed seperately (like format).
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: XACK poslato Avgust 12, 2020, 16:13:39 POSLE PODNE
to sto koristi neko ko je malo pametniji od tebe ne znaci da je bolje

sto se tice sizeofa slazem se

sad se vrati na alhemicara, mogao si i odatle da pises
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: King of the Jungle poslato Avgust 12, 2020, 16:14:25 POSLE PODNE
Citat: XACK poslato Avgust 12, 2020, 16:13:39 POSLE PODNE
to sto koristi neko ko je malo pametniji od tebe ne znaci da je bolje

sto se tice sizeofa slazem se

sad se vrati na alhemicara, mogao si i odatle da pises
Pravim mini-accove za slučaj da me banuju :P

I da, zbog dizajna kada radiš modularno je jedini pravilni način da signaliziraš pozivanje funkcije je CLF, pokušaj nekada da kreiraš modularan gamemode, onako da ti se omakne da izađeš iz pećine ;)
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: XACK poslato Avgust 12, 2020, 16:22:57 POSLE PODNE
Citat: King of the Jungle poslato Avgust 12, 2020, 16:14:25 POSLE PODNE
Pravim mini-accove za slučaj da me banuju :P

I da, zbog dizajna kada radiš modularno je jedini pravilni način da signaliziraš pozivanje funkcije je CLF, pokušaj nekada da kreiraš modularan gamemode, onako da ti se omakne da izađeš iz pećine ;)
i normalnim pozivom signaliziras pozivanje funkcije koje je takodje i brze nego si ti naucio samo za clf, ali zasto bi se to koristilo kada jelte ne mora.
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: L3o poslato Avgust 12, 2020, 16:26:34 POSLE PODNE
Citat: XACK poslato Avgust 12, 2020, 11:53:00 PRE PODNE
Totalno odudarate od koncepta koji je ovaj covek odradio.
Dzaba vam rad na drugaciji nacin ako ne pratite sta i kako radite.

Ako je filterskripta onda se po tom formatu i radi, callback break nedostaje, bespotrebne inicijalizacije, bespotrebno includanje sscanfa, da ne nabrajam dalje.

[pawn]
#define FILTERSCRIPT

   /*
       @Dependencies
   */

#include <a_samp>
#include <zcmd>

   /*
       @Configuration
   */

#define MATH_TEST_AUTOTIME (15)
#define MATH_TEST_AUTOREWARD (5000)

   /*
       @Data
   */

enum E_MATH_TEST
{
   m_result,
   m_reward,
   bool: m_active
};

new MathTest[E_MATH_TEST];

   /*
      @Prototypes
   */

forward MathTest_Auto();
stock MathTest_Start(reward);

   /*
       @Native callbacks
   */

public OnFilterScriptInit()
{
   SetTimer("MathTest_Auto", 60000 * MATH_TEST_AUTOTIME, true);
   return 1;
}

public OnPlayerText(playerid, text[])
{
   if(MathTest[m_active])
   {
       if(strval(text) == MathTest[m_result])
      {
         new tmpString[90];

         GetPlayerName(playerid, tmpString);

         format(
            tmpString, sizeof tmpString,
            "[Math]: %s je prvi dao tacan odgovor (rezultat: %d | nagrada: %d$)",
            tmpString, MathTest[m_result], MathTest[m_reward]
         );
         SendClientMessageToAll(-1, tmpString);

         GivePlayerMoney(playerid, MathTest[m_reward]);

         MathTest[m_active] = false;
         MathTest[m_result] =
         MathTest[m_reward] = 0;
         return 0;
      }
   }
   return 1;
}
   /*
       @Function bodies
   */
stock MathTest_Start(reward)
{
   if(reward < 0)
   {
       return 0;
   }
   new
      tmpString[56],
      num[3];

   MathTest[m_result] = (num[0] = random(100)) + (num[1] = random(100)) - (num[2] = random(100));
   MathTest[m_reward] = reward;
   MathTest[m_active] = true;

   format(
      tmpString, sizeof tmpString,
       "[Math]: Izracunajte (%d+%d-%d), nagrada iznosi %d$.",
        num[0], num[1], num[2], MathTest[m_reward]
     );
   SendClientMessageToAll(-1, tmpString);
   return 1;
}

public MathTest_Auto()
{
   MathTest_Start(MATH_TEST_AUTOREWARD);
   return 1;
}

   /*
       @Player area
   */

CMD:math(playerid, const params[])
{
   if(!IsPlayerAdmin(playerid))
   {
      return SendClientMessage(playerid, -1, "Ne mozete koristiti ovu komandu.");
   }

   if(isnull(params))
   {
      return SendClientMessage(playerid, -1, "[CMD]: /math [reward].");
   }
      
   MathTest_Start(strval(params));

   return 1;
}
[/pawn]

Alright, my bad što nisam napravio kao FS - jer uopće ni nisam išao za time već sam htio pokazati momku kako i na koji način bi bilo bolje da piše kod. Što se tiče bespotrebnog inc. sscanf2-a upravu si, nisam uopće išao za time s' obzirom da god. dana nisam napisao pawn kod. Ostalo što si rekao ne pije ti vodu, jer jedino što si ti napravio je c/p ono moje i samo dodao da se math-test preko timer-a sam poziva i promijenio si poruke u SCM-ovima. Bezveze kompliciraš na ovakvim stvarima, svatko ima svoj stil pisanja koda što ne znači da je moj bolji od tvoga, jer na kraju i moj i tvoj kod radi istu funkciju.
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: King of the Jungle poslato Avgust 12, 2020, 16:30:01 POSLE PODNE
Citat: XACK poslato Avgust 12, 2020, 16:22:57 POSLE PODNE
i normalnim pozivom signaliziras pozivanje funkcije koje je takodje i brze nego si ti naucio samo za clf, ali zasto bi se to koristilo kada jelte ne mora.
Ti očigledno ne razumeš pojam modularno programiranje?

Pacakage treba da bude independent, funckija iz CallLocalFunction može a i ne mora da postoji u onom momentu kada compileaš dok direct call odmah vrati error ako funkcija ne postoji...

Znači možeš a i ne moraš da koristiš taj event(callback) :)

Takođe CallLocalFunction NE MORA da zna ime callback-a dok direktno pozivanje mora, mnogo je korisno u zavisnosti šta kreiraš :D

Znači ovako izbegavamo undefined symbol error i potpuno je dinamično manageovanje u toku samog runtime-a

Na primer možeš da kreiraš 4 callback-a koja mogu biti called samo jednom na nekom mestu i onda samo uradiš CallLocalFunction :D

I to da je brže, jeste na 1.000.000 poziva, nemoj da overkilluješ stvari bespotrebno :)
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: XACK poslato Avgust 12, 2020, 16:34:10 POSLE PODNE
Citat: L3o poslato Avgust 12, 2020, 16:26:34 POSLE PODNE
Alright, my bad što nisam napravio kao FS - jer uopće ni nisam išao za time već sam htio pokazati momku kako i na koji način bi bilo bolje da piše kod. Što se tiče bespotrebnog inc. sscanf2-a upravu si, nisam uopće išao za time s' obzirom da god. dana nisam napisao pawn kod. Ostalo što si rekao ne pije ti vodu, jer jedino što si ti napravio je c/p ono moje i samo dodao da se math-test preko timer-a sam poziva i promijenio si poruke u SCM-ovima. Bezveze kompliciraš na ovakvim stvarima, svatko ima svoj stil pisanja koda što ne znači da je moj bolji od tvoga, jer na kraju i moj i tvoj kod radi istu funkciju.
ma jebo stil vise, gledaj kod malo

Citat: King of the Jungle poslato Avgust 12, 2020, 16:30:01 POSLE PODNE
Ti očigledno ne razumeš pojam modularno programiranje?

Pacakage treba da bude independent, funckija iz CallLocalFunction može a i ne mora da postoji u onom momentu kada compileaš dok direct call odmah vrati error ako funkcija ne postoji...

Znači možeš a i ne moraš da koristiš taj event(callback) :)

Takođe CallLocalFunction NE MORA da zna ime callback-a dok direktno pozivanje mora, mnogo je korisno u zavisnosti šta kreiraš :D

Znači ovako izbegavamo undefined symbol error i potpuno je dinamično manageovanje u toku samog runtime-a

Na primer možeš da kreiraš 4 callback-a koja mogu biti called samo jednom na nekom mestu i onda samo uradiš CallLocalFunction :D

I to da je brže, jeste na 1.000.000 poziva, nemoj da overkilluješ stvari bespotrebno :)

tako gubis mogucnost boljeg testiranja, ocigledno je da si video kako se "modularno" radi samo u pawnu, izadji malo pred terasu.
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: King of the Jungle poslato Avgust 12, 2020, 16:38:09 POSLE PODNE
Citattako gubis mogucnost boljeg testiranja
??? ??? ???


ASSERT: Am I joke to you?
pawn-errors lib: No, am I joke to you?
samp-logger: No, am I the biggest joke here?
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: XACK poslato Avgust 12, 2020, 16:44:14 POSLE PODNE
Citat: King of the Jungle poslato Avgust 12, 2020, 16:38:09 POSLE PODNE
??? ??? ???


ASSERT: Am I joke to you?
pawn-errors lib: No, am I joke to you?
samp-logger: No, am I the biggest joke here?
opet silazis sa poente i ne razumes, samim nepostojanjem toga neces ga ni moci testirati
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: King of the Jungle poslato Avgust 12, 2020, 16:46:43 POSLE PODNE
Citat: XACK poslato Avgust 12, 2020, 16:44:14 POSLE PODNE
opet silazis sa poente i ne razumes, samim nepostojanjem toga neces ga ni moci testirati
Ti opet ne razumeš poentu modularnog programiranja?

Šta da testiram ako event ne postoji?!
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: XACK poslato Avgust 12, 2020, 16:47:51 POSLE PODNE
Citat: King of the Jungle poslato Avgust 12, 2020, 16:46:43 POSLE PODNE
Ti opet ne razumeš poentu modularnog programiranja?

Šta da testiram ako event ne postoji?!
kada bude postojao videces probleme, stavi kamen na rupu da ti ne puse u pecinu
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: King of the Jungle poslato Avgust 12, 2020, 16:49:40 POSLE PODNE
Citat: XACK poslato Avgust 12, 2020, 16:47:51 POSLE PODNE
kada bude postojao videces probleme, stavi kamen na rupu da ti ne puse u pecinu
I koja je razlika između toga da li postoji ili ne kod testiranja, pokušaj da objasniš svoje neznanje? ???
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: XACK poslato Avgust 12, 2020, 16:50:51 POSLE PODNE
pa ako ne postoji neces ga moci testirati, LOGIKA
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: King of the Jungle poslato Avgust 12, 2020, 16:52:45 POSLE PODNE
Citat: XACK poslato Avgust 12, 2020, 16:50:51 POSLE PODNE
pa ako ne postoji neces ga moci testirati, LOGIKA
Ti očigledno razumeš da EVENT ne mora da postoji?
Da je NAMERNO tako napravljeno da MOŽE a i da NE MORA da se koristi?

Ako bude postojao, ne vidim razlog zašto bi bilo problema sa testiranjem, imaš propuh tamo gore
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: XACK poslato Avgust 12, 2020, 16:54:12 POSLE PODNE
hvala za postove, nemoj se puno nerviras, pozdrav' kod kuce  :P
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: King of the Jungle poslato Avgust 12, 2020, 16:56:16 POSLE PODNE
@Vodka Play na ovo ti je forum spao.
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: Сараб poslato Avgust 12, 2020, 16:59:11 POSLE PODNE
Citat: King of the Jungle poslato Avgust 12, 2020, 16:56:16 POSLE PODNE
@Vodka Play na ovo ti je forum spao.
a tebi je ban pao :(
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: King of the Jungle poslato Avgust 12, 2020, 17:04:30 POSLE PODNE
Citat: Švabо poslato Avgust 12, 2020, 16:59:11 POSLE PODNE
a tebi je ban pao :(
Ne fali ništa :D
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: // xunder poslato Avgust 12, 2020, 17:17:01 POSLE PODNE
Citat: XACK poslato Avgust 12, 2020, 15:59:19 POSLE PODNE
normal call je bolji i pouzdaniji.

Samo sam dosao po objasnjenje
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: XACK poslato Avgust 13, 2020, 09:01:24 PRE PODNE
kada pozoves calllocalfunction MORAS paziti na ime funkcije i parametre da budu tacni inace ces se posle patiti debugom ako zajebes nesto.
zar nije lakse koristiti direct call i dodati compiler tag da ignorise funkcije tog tipa kada ti treba, jednostavno struktura ti je cistija i stabilnija nego da
se oslanjas na neku mnogo retardiranu native funkciju.

Naslov: Odg: Ednostaven Matematika SIS
Poruka od: skritpe iz 2007 godine. ( ͡° ͜ʖ ͡°) poslato Avgust 13, 2020, 10:12:07 PRE PODNE
Citat: XACK poslato Avgust 13, 2020, 09:01:24 PRE PODNE
kada pozoves calllocalfunction MORAS paziti na ime funkcije i parametre da budu tacni inace ces se posle patiti debugom ako zajebes nesto.
zar nije lakse koristiti direct call i dodati compiler tag da ignorise funkcije tog tipa kada ti treba, jednostavno struktura ti je cistija i stabilnija nego da
se oslanjas na neku mnogo retardiranu native funkciju.
Au druže, već si se zakopao do dna, bolje ćuti i smrdi sebi...
Imaš wrapper u YSI da bukvalno ovako radi ako si toliko retardiran

[pawn]call function(args);[/pawn]

Meni se u životu problem sa CLF nije desio.
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: __vedran.xyz77 poslato Avgust 13, 2020, 10:24:13 PRE PODNE
Svađate se tu oko modularnog skriptanja i memorije koristite 3 varijable viška. Svi ste vi 'teoretski skripteri' nigde vam ne vidim radove.
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: omcho poslato Avgust 13, 2020, 10:40:58 PRE PODNE
Citat: King of the Jungle poslato Avgust 12, 2020, 14:58:08 POSLE PODNE
Evo kada već svi pišu bespotrebne primere "Kako najbolje i najlepše napisati kod" (i kako forsirati svoj stil na druge bez razloga jer svako ima svoj stil) haj i ja da napišem jedan u modularnom duhu :D

[pawn]#include <a_samp>

#if defined MATH_TIMER_INTERVAL
    #undef MATH_TIMER_INTERVAL
#endif
#define MATH_TIMER_INTERVAL (5) // Minutes

static gResult;
static bool: gMathActive;

forward Math_Timer();
forward OnCorrectMathAnswer(playerid);

// -
// Api
// -

stock ReturnMathQuizResult()
{
    return gResult;
}

stock bool:IsMathActive()
{
    return gMathActive;
}

stock bool:IsMathAnswer(const buffer[])
{
    if (!IsMathActive)
        return false;

    if (strval(buffer) == ReturnMathQuizResult())
        return true;

    return false;
}

stock ToggleMathActive(bool: toggle)
{
    return (gMathActive = toggle);
}

stock StartMathQuiz()
{
    new
        buffer[128],
        num[3]
    ;

    gResult = (num[0] = random(200)) + (num[1] = random(200)) - (num[2] = random(200));
    ToggleMathActive(true);

    format(buffer, sizeof(buffer), "{FFFFFF}[Math_Timer]: Vnesete go gResultot od izrazot %d+%d-%d i dobivate 10000$!", num[0], num[1], num[2]);
    SendClientMessageToAll(-1, buffer);
}

// -
// Callbacks
// -

public OnFilterScriptInit()
{
   SetTimer("Math_Timer", MATH_TIMER_INTERVAL * 60000, true);
   return 1;
}

public Math_Timer()
{
    StartMathQuiz();
    return 1;
}

public OnPlayerText(playerid, text[])
{
    if(IsMathAnswer(text))
    {
        CallLocalFunction("OnCorrectMathAnswer", "d", playerid);
        return 0;
    }
    return 1;
}

public OnCorrectMathAnswer(playerid)
{
    new pName[MAX_PLAYER_NAME], buffer[128];
    GetPlayerName(playerid, pName, sizeof(pName));
   
    format(buffer, sizeof(buffer), "{FFFFFF}[Math_Timer]: Tocniot odgovor na zadacata bese: %d", gResult);
    SendClientMessageToAll(-1, buffer);
   
    format(buffer, sizeof(buffer), "{FFFFFF}[Math_Timer]: Igracot %s prv go pogodi tocniot gResult i osvoi 1000$.", pName);
    SendClientMessageToAll(-1, buffer);
   
    GivePlayerMoney(playerid, 1000);
    ToggleMathActive(false);

    return;
}[/pawn]

imas viska varijablu, tacnije 'static bool: gMathActive;' zasto jednostavno ne proveris jel 'gResult != default value' ako jeste onda je aktivan?

ako vec se prepirete tu oko tacnosti i memorije eto samo to da ti recem
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: XACK poslato Avgust 13, 2020, 10:45:17 PRE PODNE
ukurcio se momak, koristi clf izmislio toplu vodu, dzaba mu sve to sto misli i njegova LOSA uverenja kada se od pawna nece pomeriti, em nastreba LOSE definicije em nastavlja sa proseravanjem sa njegovim marionetama koje ga u prate u stopu.

Naslov: Odg: Ednostaven Matematika SIS
Poruka od: skritpe iz 2007 godine. ( ͡° ͜ʖ ͡°) poslato Avgust 13, 2020, 10:54:18 PRE PODNE
Citat: omcho poslato Avgust 13, 2020, 10:40:58 PRE PODNE
imas viska varijablu, tacnije 'static bool: gMathActive;' zasto jednostavno ne proveris jel 'gResult != default value' ako jeste onda je aktivan?

ako vec se prepirete tu oko tacnosti i memorije eto samo to da ti recem
Ja pričam o stilu a oni o kodu, treći put kažem da kod dirao nisam, samo stil kao što sam i napisao u Originalnoj poruci ali je ovaj bata krenuo da sere...

Jesam dodao CLF ali to je zbog !!MODULARNOG STILA!!
Čitaj moju prvu poruku dok ne shvatiš šta sam napisao
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: skritpe iz 2007 godine. ( ͡° ͜ʖ ͡°) poslato Avgust 13, 2020, 10:55:06 PRE PODNE
Citat: XACK poslato Avgust 13, 2020, 10:45:17 PRE PODNE
ukurcio se momak, koristi clf izmislio toplu vodu, dzaba mu sve to sto misli i njegova LOSA uverenja kada se od pawna nece pomeriti, em nastreba LOSE definicije em nastavlja sa proseravanjem sa njegovim marionetama koje ga u prate u stopu.
Xunderu marioneto :(
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: __vedran.xyz77 poslato Avgust 13, 2020, 10:57:27 PRE PODNE
Svi ste vi po meni zatucana derišta kojima je toliko dosadno u životu pa krenu da čitaju ysi dokumentaciju. Nemam ništa protiv neka radi šta ko hoće, da vi pomognete sa tim što ste pročitali pa aj. Nego vi nekog spustite baš sa nekim bolesnim funkcijama ysi-a, a ni vi ne znate zašto služi. Umesto da blejite ovde 24/7 i čekate sekund kad će te reći nekome da nešto može drugačije da se napiše, radite nešto korisno. Upotrebite to silno znanje na nešto ili ste ipak samo teoretski skripteri koji slušaju šta će Southclaws, Y_Less i ostala govna reći i to memorišu u glavu.
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: skritpe iz 2007 godine. ( ͡° ͜ʖ ͡°) poslato Avgust 13, 2020, 11:00:30 PRE PODNE
Citat: __vedran.xyz77 poslato Avgust 13, 2020, 10:57:27 PRE PODNE
Svi ste vi po meni zatucana derišta kojima je toliko dosadno u životu pa krenu da čitaju ysi dokumentaciju. Nemam ništa protiv neka radi šta ko hoće, da vi pomognete sa tim što ste pročitali pa aj. Nego vi nekog spustite baš sa nekim bolesnim funkcijama ysi-a, a ni vi ne znate zašto služi. Umesto da blejite ovde 24/7 i čekate sekund kad će te reći nekome da nešto može drugačije da se napiše, radite nešto korisno. Upotrebite to silno znanje na nešto ili ste ipak samo teoretski skripteri koji slušaju šta će Southclaws, Y_Less i ostala govna reći i to memorišu u glavu.
Ono kada doslovno likovima koji su napravili SAMP kažeš "ostala govna"...

Orem ti po mrtvima.
Šalim se...
Skijam*, skijam ti po mrtvima.

Ja YSI doslovno ni ne koristim kao ranije, samo y_va, y_iterate i još par, sve PawnPlus koji ti nikada nećeš razumeti lmao

A i citiram šta je vaš idol @Zile42O dobio kao odgovor kada je rekao da se doda non-ysi podrška za WConfig:
CitatSorry we had code similar to this before, but in favour of just using y_iterate, there is no need to do this anymore. We insist that people use y_iterate.
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: pokerface poslato Avgust 13, 2020, 11:04:09 PRE PODNE
Al serete kvake.
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: skritpe iz 2007 godine. ( ͡° ͜ʖ ͡°) poslato Avgust 13, 2020, 11:05:40 PRE PODNE
Citat: Hydra. poslato Avgust 13, 2020, 11:04:09 PRE PODNE
Al serete kvake.
Bukvalno sam ostavio sasvim korektan dizajn modula, to što neko ne koristi ifdef je izgleda katastrofa i previše za njihove mozgiće

Meni je ifdef snippet i mnogo mi je lakše da napišem undef, tab
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: XACK poslato Avgust 13, 2020, 11:08:40 PRE PODNE
Citat: skritpe iz 2007 godine. ( ͡° ͜ʖ ͡°) poslato Avgust 13, 2020, 11:00:30 PRE PODNE
Ono kada doslovno likovima koji su napravili SAMP kažeš "ostala govna"...

Orem ti po mrtvima.
Šalim se...
Skijam*, skijam ti po mrtvima.

Ja YSI doslovno ni ne koristim kao ranije, samo y_va, y_iterate i još par, sve PawnPlus koji ti nikada nećeš razumeti lmao

A i citiram šta je vaš idol @Zile42O dobio kao odgovor kada je rekao da se doda non-ysi podrška za WConfig:
cuj ne koristi ysi pa taj deo sto koristis je vec dobar deo ysi-a, pawnplus pola stvari ne znas vec se kurcis sa njime da bi ti plugin vadio prosek iz kodiranja

fan fekt nigde ne kazem da je ysi/pp los samo si ti mali autizam

ifdef uopste ne moras koristiti za takvo nesto, sada vredjas nekog ko ne koristi nesto bespotrebno a do par poruka ranije si govorio kako je to STIL
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: skritpe iz 2007 godine. ( ͡° ͜ʖ ͡°) poslato Avgust 13, 2020, 11:10:39 PRE PODNE
Citat: XACK poslato Avgust 13, 2020, 11:08:40 PRE PODNE
cuj ne koristi ysi pa taj deo sto koristis je vec dobar deo ysi-a, pawnplus pola stvari ne znas vec se kurcis sa njime da bi ti plugin vadio prosek iz kodiranja

fan fekt nigde ne kazem da je ysi/pp los samo si ti mali autizam

ifdef uopste ne moras koristiti za takvo nesto, sada vredjas nekog ko ne koristi nesto bespotrebno a do par poruka ranije si govorio kako je to STIL
PawnPlus doslovno koristim containere i asihrone funkcije, više mi ni ne treba.
I ti očigledno ne znaš šta sve YSI ima pa kažeš da je ovo dobar deo njega, e živote idiote...

I nikog ja ne vređam nego si se ti iztriggerovao toliko kao da sam napisao ne znam šta i ako sam rekao da je to moj stil i da nema veze sa vezom da se raspravlja oko toga
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: __vedran.xyz77 poslato Avgust 13, 2020, 11:12:18 PRE PODNE
Citat: skritpe iz 2007 godine. ( ͡° ͜ʖ ͡°) poslato Avgust 13, 2020, 11:00:30 PRE PODNE
Ono kada doslovno likovima koji su napravili SAMP kažeš "ostala govna"...

Orem ti po mrtvima.
Šalim se...
Skijam*, skijam ti po mrtvima.

Ja YSI doslovno ni ne koristim kao ranije, samo y_va, y_iterate i još par, sve PawnPlus koji ti nikada nećeš razumeti lmao

A i citiram šta je vaš idol @Zile42O dobio kao odgovor kada je rekao da se doda non-ysi podrška za WConfig:


Pa i jesu govna. Najebem ti se majke mrtve na groblju one bolesne zatucane deriste nevaspitano sta da ocekujes od lika koji prozivao malog Dusana? Zar ne mozes da shvatis da si jebeno bolestan? Zelis samo da neko misli da znas da skriptas u stvari si go kurac. Kako ide AC za SkillArenu sto radi ? Kako ti ide auto od 15k evra ? Lazes svaki minut deriste napaceno.


Zaboli me kurac za PP i YSI, ako ti znas da ih koristis bravo uspeo si u zivotu zaradjivaces od toga. Hoces kurac blejaces ovde na forumu dok ne ostanu 2 sampera na balkanu i posle toga ti dzaba ogromno znanje pp-a i ysi-a.



BTW moj idol sam ja, a ne neko drugi. Kao tebi sto je primer Y_Less ili SouthClaws idol, koliko znam Zile radi kao developer i boli ga kurac i za tebe i za ysi i za WC
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: ChampaWasTaken poslato Avgust 13, 2020, 11:14:17 PRE PODNE
Citat: skritpe iz 2007 godine. ( ͡° ͜ʖ ͡°) poslato Avgust 13, 2020, 11:05:40 PRE PODNE
Bukvalno sam ostavio sasvim korektan dizajn modula, to što neko ne koristi ifdef je izgleda katastrofa i previše za njihove mozgiće

Meni je ifdef snippet i mnogo mi je lakše da napišem undef, tab

Ne izgledas nista pametnije, ni ti ni bilo ko, ko ide po nekim releasovima i trazi najmanju sitnicu da bi mogao nesto komentarisati...
Ne kazem, ima shit kodova koji ne bi trebali vidjeti svjetlo dana ali ti druze bas pretjerujes
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: skritpe iz 2007 godine. ( ͡° ͜ʖ ͡°) poslato Avgust 13, 2020, 11:14:52 PRE PODNE
Pa neću sigurno Zari da šaljem AC kada završim :'(

Xunder moja marioneta nema :(
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: __vedran.xyz77 poslato Avgust 13, 2020, 11:18:06 PRE PODNE
Citat: skritpe iz 2007 godine. ( ͡° ͜ʖ ͡°) poslato Avgust 13, 2020, 11:14:52 PRE PODNE
Pa neću sigurno Zari da šaljem AC kada završim :'(

Xunder moja marioneta nema :(
Zara ne zeli da poseduje tvoj kod ni u jednom od svojih repozitorija.
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: XACK poslato Avgust 13, 2020, 11:19:26 PRE PODNE
"to što neko ne koristi ifdef je izgleda katastrofa i previše za njihove mozgiće"

do pre 10-ak objava: "#ifdef je stvar ukusa stvarno, nigde ne piše da mora, ja tako pišem jer eto ide gas"

ne moras da spustas druge ako nesto koristis i da slepo verujes svakome sa samp discorda ko ima ruzicasto ime


btw sumnjam da ce tvoj ac prismrditi bilo kom ac-u pa cak i ovima sto su opensource, jer ocigledno je da ne znas ni funkcionisanje rpcova a ni samu matematiku da napravis nesto inovativnije
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: King of the Jungle poslato Avgust 13, 2020, 13:07:32 POSLE PODNE
Citat: __vedran.xyz77 poslato Avgust 13, 2020, 10:24:13 PRE PODNE
Svađate se tu oko modularnog skriptanja i memorije koristite 3 varijable viška. Svi ste vi 'teoretski skripteri' nigde vam ne vidim radove.
Nemoj mene ovde da mešaš, ja uopšte kod editovao nisam niti sam imao nameru.
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: // xunder poslato Avgust 13, 2020, 18:35:25 POSLE PODNE
Citat: XACK poslato Avgust 13, 2020, 09:01:24 PRE PODNE
kada pozoves calllocalfunction MORAS paziti na ime funkcije i parametre da budu tacni inace ces se posle patiti debugom ako zajebes nesto.
Kako mislis moras paziti na ime funkcije? Moras paziti sta ces upisati u CLF() sto ne bi trebala biti muka jer odavno postoji CTRL + C i CTRL + V.

Citat: XACK poslato Avgust 13, 2020, 09:01:24 PRE PODNE
zar nije lakse koristiti direct call i dodati compiler tag da ignorise funkcije tog tipa kada ti treba, jednostavno struktura ti je cistija i stabilnija nego da
Sta bi se desilo ako hoces tu funkciju da pozoves u nekom drugom modulu koji ces include prije samog matematickog kviza?

Citat: XACK poslato Avgust 13, 2020, 09:01:24 PRE PODNE
se oslanjas na neku mnogo retardiranu native funkciju.
Sta znaci retardirana native funkcija? Kako moze biti funkcija retardirana, valjda ti ljudi koji su pravili to imaju znanja kao ti? Ili mozda nemaju, bolje da im objasnis neke stvari :|

Citat: __vedran.xyz77 poslato Avgust 13, 2020, 10:57:27 PRE PODNE
Upotrebite to silno znanje na nešto ili ste ipak samo teoretski skripteri koji slušaju šta će Southclaws, Y_Less i ostala govna reći i to memorišu u glavu.
Nema nista lose u slusanju Y-lessa i Southclawsa, oni su sigurno iskusni i provjereni programeri koji znaju sta rade (sto pokazuju i svojim radovima koje koriste 90% danasnjih samp skriptera).

Citat: omcho poslato Avgust 13, 2020, 10:40:58 PRE PODNE
imas viska varijablu, tacnije 'static bool: gMathActive;' zasto jednostavno ne proveris jel 'gResult != default value' ako jeste onda je aktivan?

ako vec se prepirete tu oko tacnosti i memorije eto samo to da ti recem
E tu si ga vec overkillovao haha  :D

Citat: ChampaWasTaken poslato Avgust 13, 2020, 11:14:17 PRE PODNE
Ne izgledas nista pametnije, ni ti ni bilo ko, ko ide po nekim releasovima i trazi najmanju sitnicu da bi mogao nesto komentarisati...
Ne kazem, ima shit kodova koji ne bi trebali vidjeti svjetlo dana ali ti druze bas pretjerujes
Nebitno koliko god bio dobar i sa tobom Makenzi, Vedranom, Ziletom, Lanijem i ko se vec sve tu proziva moram se sloziti sa Krampom.
Umjesto toga sto se prozivate, ovaj forum bi mogao biti mnogo ljepse mjesto za pocetnike kada bi vi iskusniji usli u normalnu raspravu - podijelite svoj kod i napisite zasto je bolji od koda koji je neko drugi podijelio.
Sada imas npr. XACK-a koji ce da uporedi `MyFunc();` i `CallLocalFunction("MyFunc");` sto je potpuno pogresno. Pawn glasi za spor jezik ali evo otkricu vam tajnu da se izmedju ta 2 nacina calla vrijeme izvrsavanja mjeri u nanosekundima.
Svakako, svako ce uzeti kod koji mu odgovara, u buducnosti ako mu ne bude taj kod stimao uzece drugi i vidjeti zasto je bolji.
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: ChampaWasTaken poslato Avgust 13, 2020, 19:35:37 POSLE PODNE
Citat: // xunder poslato Avgust 13, 2020, 18:35:25 POSLE PODNE
Kako mislis moras paziti na ime funkcije? Moras paziti sta ces upisati u CLF() sto ne bi trebala biti muka jer odavno postoji CTRL + C i CTRL + V.
Sta bi se desilo ako hoces tu funkciju da pozoves u nekom drugom modulu koji ces include prije samog matematickog kviza?
Sta znaci retardirana native funkcija? Kako moze biti funkcija retardirana, valjda ti ljudi koji su pravili to imaju znanja kao ti? Ili mozda nemaju, bolje da im objasnis neke stvari :|
Nema nista lose u slusanju Y-lessa i Southclawsa, oni su sigurno iskusni i provjereni programeri koji znaju sta rade (sto pokazuju i svojim radovima koje koriste 90% danasnjih samp skriptera).
E tu si ga vec overkillovao haha  :D
Nebitno koliko god bio dobar i sa tobom Makenzi, Vedranom, Ziletom, Lanijem i ko se vec sve tu proziva moram se sloziti sa Krampom.
Umjesto toga sto se prozivate, ovaj forum bi mogao biti mnogo ljepse mjesto za pocetnike kada bi vi iskusniji usli u normalnu raspravu - podijelite svoj kod i napisite zasto je bolji od koda koji je neko drugi podijelio.
Sada imas npr. XACK-a koji ce da uporedi `MyFunc();` i `CallLocalFunction("MyFunc");` sto je potpuno pogresno. Pawn glasi za spor jezik ali evo otkricu vam tajnu da se izmedju ta 2 nacina calla vrijeme izvrsavanja mjeri u nanosekundima.
Svakako, svako ce uzeti kod koji mu odgovara, u buducnosti ako mu ne bude taj kod stimao uzece drugi i vidjeti zasto je bolji.

Joj sunđeru, topim se
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: XACK poslato Avgust 13, 2020, 20:48:40 POSLE PODNE
Citat: // xunder poslato Avgust 13, 2020, 18:35:25 POSLE PODNE
....just a xunder shitting around... bla bla...

ako u clf-u pogresis jedan parametar ili nesto slicno saznaces na tezi nacin, funkcija koja je stvarno beskorisna i jedina svrha joj je da ti uzme koji bajt vise samim pisanjem njenog imena, nepouzdana, dosta sporija(sto je ajde reci neprimetno) ali opet je SPORIJA i sporije ces handle-ovati vise evenata, uopste se ne bi trebala koristiti i susta je razlika clr-u koji zapravo ima neku svrhu.


"Sta bi se desilo ako hoces tu funkciju da pozoves u nekom drugom modulu koji ces include prije samog matematickog kviza?"
neces je pozvati pre matematickog kviza jer nisi ni include matematicki kviz i sama nece biti pozivana bez triggera u matematickom kvizu zar ne?

Naslov: Odg: Ednostaven Matematika SIS
Poruka od: King of the Jungle poslato Avgust 13, 2020, 21:00:48 POSLE PODNE
Citat: XACK poslato Avgust 13, 2020, 20:48:40 POSLE PODNE
ako u clf-u pogresis jedan parametar ili nesto slicno saznaces na tezi nacin, funkcija koja je stvarno beskorisna i jedina svrha joj je da ti uzme koji bajt vise samim pisanjem njenog imena, nepouzdana, dosta sporija(sto je ajde reci neprimetno) ali opet je SPORIJA i sporije ces handle-ovati vise evenata, uopste se ne bi trebala koristiti i susta je razlika clr-u koji zapravo ima neku svrhu.


"Sta bi se desilo ako hoces tu funkciju da pozoves u nekom drugom modulu koji ces include prije samog matematickog kviza?"
neces je pozvati pre matematickog kviza jer nisi ni include matematicki kviz i sama nece biti pozivana bez triggera u matematickom kvizu zar ne?
Aha, znači ti ovako radiš?

1. Napisati neki kod
2. Compile kod
3. Kod se compile bez errora? Super - odmah upload na produkcioni server bez testiranja i gasi debug flagove i pali -O!!!


Da budemo jasni, u životu takvu grešku napravio nisam...
Posebno što većina mojih CLF koristi samo "d"
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: XACK poslato Avgust 13, 2020, 21:04:59 POSLE PODNE
Citat: King of the Jungle poslato Avgust 13, 2020, 21:00:48 POSLE PODNE
Aha, znači ti ovako radiš?

1. Napisati neki kod
2. Compile kod
3. Kod se compile bez errora? Super - odmah upload na produkcioni server bez testiranja i gasi debug flagove i pali -O!!!


Da budemo jasni, u životu takvu grešku napravio nisam...
Posebno što većina mojih CLF koristi samo "d"
ne palamudi, kako ces pozvati funkciju iz include-a ako nije includovana i ako je pozoves iz clf-a to je vec bad practice

sa tvojim clf-om tek neces moci da testiras tkd ono dzaba se vadis iz govana
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: King of the Jungle poslato Avgust 13, 2020, 21:07:17 POSLE PODNE
Citat: XACK poslato Avgust 13, 2020, 21:04:59 POSLE PODNE
ne palamudi, kako ces pozvati funkciju iz include-a ako nije includovana i ako je pozoves iz clf-a to je vec bad practice

sa tvojim clf-om tek neces moci da testiras tkd ono dzaba se vadis iz govana
Druže jel ti razumeš da ako funkcija postoji, recimo ovako:

[pawn]forward func(const a[]);
public func(const a[])
{
    return format(a, sizeof(a), "Nebitno"); // Error bez obzira da li si pozvao f-ju sa CLF ili direct
}[/pawn]

tako da ne razumem o čemu ti pričaš, o kakvom testiranju se ovde radi?

Citati ako je pozoves iz clf-a to je vec bad practice
Da je CLF bio bad practices ne bi ga svi koristili, lep pozdrav, pitam li se zašto tvoj CMD procesor koristi CLF :-/
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: XACK poslato Avgust 13, 2020, 21:13:21 POSLE PODNE
Citat: King of the Jungle poslato Avgust 13, 2020, 21:07:17 POSLE PODNE
Druže jel ti razumeš da ako funkcija postoji, recimo ovako:

[pawn]forward func(const a[]);
public func(const a[])
{
    return format(a, sizeof(a), "Nebitno"); // Error bez obzira da li si pozvao f-ju sa CLF ili direct
}[/pawn]

tako da ne razumem o čemu ti pričaš, o kakvom testiranju se ovde radi?
Da je CLF bio bad practices ne bi ga svi koristili, lep pozdrav, pitam li se zašto tvoj CMD procesor koristi CLF :-/
pa o kakvom testiranju se radi, testiranje je spomenuto pre 5-10 postova i funkcija se moze pozvati samo ako je pre toga definisana sto NIJE slucaj ako uradis ovo:

[pawn]
event
{
funkcija(); // funkcija koja se nalazi u include fajlu ispod
}

#include <dependency> //fajl koji sadrzi funkciju
[/pawn]
e tako ste vi opisali to iznad



i otkad pawncmd koristi calllocalfunction aj mi samo to reci  ??? ??? ::) ::)

Naslov: Odg: Ednostaven Matematika SIS
Poruka od: King of the Jungle poslato Avgust 13, 2020, 21:22:14 POSLE PODNE
Citat: XACK poslato Avgust 13, 2020, 21:13:21 POSLE PODNE
pa o kakvom testiranju se radi, testiranje je spomenuto pre 5-10 postova i funkcija se moze pozvati samo ako je pre toga definisana sto NIJE slucaj ako uradis ovo:

[pawn]
event
{
funkcija(); // funkcija koja se nalazi u include fajlu ispod
}

#include <dependency> //fajl koji sadrzi funkciju
[/pawn]
e tako ste vi opisali to iznad



i otkad pawncmd koristi calllocalfunction aj mi samo to reci  ??? ??? ::) ::)
Zamisli da nekome kažeš kako preteruje sa pluginima koji zapravo dodaju neke nove mogućnosti koje inače nije moguće uraditi u pure-pawn jer hookuju Amx_Exec i onda ta ista osoba ubaci Pawn.CMD što je inače već moguće uraditi u skripti zbog ~50μ (što znači da će se tek na 600.000 poziva komande videti razlika od nevjerovatne sekunde!)
I da dodam da y_commands > pawn.cmd ali necemo o tome sada :D

b]funkcija se moze pozvati samo ako je pre toga definisana[/b]
Pa jel tebi ko brani da kreiraš funkciju koju pozivaš putem CLF-a?


[pawn]
event
{
funkcija(); // funkcija koja se nalazi u include fajlu ispod
}

#include <dependency> //fajl koji sadrzi funkciju
[/pawn]
A ovo neću ni da komentarišem, tačno se vidi koliko si glup kao kurac i da nisi niti jednom imao interakciju sa skriptom a gde modularnom skriptom.

Što bi Vedran rekao, ggwp teoretski skripteru (samo ti ni tu teoriju nisi razumeo vidim).
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: XACK poslato Avgust 13, 2020, 21:26:20 POSLE PODNE
Citat: King of the Jungle poslato Avgust 13, 2020, 21:22:14 POSLE PODNE
Zamisli da nekome kažeš kako preteruje sa pluginima koji zapravo dodaju neke nove mogućnosti koje inače nije moguće uraditi u pure-pawn jer hookuju Amx_Exec i onda ta ista osoba ubaci Pawn.CMD što je inače već moguće uraditi u skripti zbog ~50μ (što znači da će se tek na 600.000 poziva komande videti razlika od nevjerovatne sekunde!)
I da dodam da y_commands > pawn.cmd ali necemo o tome sada :D

b]funkcija se moze pozvati samo ako je pre toga definisana[/b]
Pa jel tebi ko brani da kreiraš funkciju koju pozivaš putem CLF-a?


[pawn]
event
{
funkcija(); // funkcija koja se nalazi u include fajlu ispod
}

#include <dependency> //fajl koji sadrzi funkciju
[/pawn]
A ovo neću ni da komentarišem, tačno se vidi koliko si glup kao kurac i da nisi niti jednom imao interakciju sa skriptom a gde modularnom skriptom.

Što bi Vedran rekao, ggwp teoretski skripteru (samo ti ni tu teoriju nisi razumeo vidim).

lice dzaba se izvlacis, nigde nisam rekao da je neki plugin los i da je lose koristiti plugine vec tvoj clf koje idealizujes i mislis da znas da radis modularno(a ne znas plaky :().

sto se tice pozivanja sa clf-om necu da vodim raspravu dalje, rekao sam sta sam imao.

btw pawncmd > y_commands

"Pa jel tebi ko brani da kreiraš funkciju koju pozivaš putem CLF-a?"
a zasto bih je kreirao ako je u includu, pogledaj sta je lik gore napisao i kako je to opisao pa palamudi pametnice moja
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: King of the Jungle poslato Avgust 13, 2020, 21:27:38 POSLE PODNE
Okej, shvatiću ovo kao da si rekao "Samoj nabijam postove i glumim Lanmija" jer čisto sumnjam da ovoliko neko glup može biti.
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: XACK poslato Avgust 13, 2020, 21:28:42 POSLE PODNE
Citat: King of the Jungle poslato Avgust 13, 2020, 21:27:38 POSLE PODNE
Okej, shvatiću ovo kao da si rekao "Samoj nabijam postove i glumim Lanmija" jer čisto sumnjam da ovoliko neko glup može biti.
neargumentovano vredjanje opet, idi odspavaj malo odmori glavu da ti se slegnu informacije.
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: King of the Jungle poslato Avgust 13, 2020, 21:48:48 POSLE PODNE
Citat: XACK poslato Avgust 13, 2020, 21:28:42 POSLE PODNE
neargumentovano vredjanje opet, idi odspavaj malo odmori glavu da ti se slegnu informacije.
Timing "CLF[100000]"...
          Mean = 3.55us
          Mode = 3.46us
        Median = 3.49us
         Range = 0.43us

Timing "Direct[100000]"...
          Mean = 0.87us
          Mode = 0.83us
        Median = 0.86us
         Range = 0.10us


Vau! Uspeo si da ubrzaš svoj kod za čitavih 2.5us na 100000 pozivanja direct-a!!!

A sto se ycmd > pcmd tice, ycmd po defaulti ima bone sistem permisija, grupa i loopovanja kroz iste te komande (plus ti daje MNOGO vise mogucnosti da manageas koamdne) ali ne - ti si ipak samo video neprimetljivu brzinu, takodje YSI ima odlican help sys built-in :)
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: XACK poslato Avgust 13, 2020, 21:55:35 POSLE PODNE
Citat: King of the Jungle poslato Avgust 13, 2020, 21:48:48 POSLE PODNE
Timing "CLF[100000]"...
          Mean = 3.55us
          Mode = 3.46us
        Median = 3.49us
         Range = 0.43us

Timing "Direct[100000]"...
          Mean = 0.87us
          Mode = 0.83us
        Median = 0.86us
         Range = 0.10us


Vau! Uspeo si da ubrzaš svoj kod za čitavih 2.5us na 100000 pozivanja direct-a!!!

A sto se ycmd > pcmd tice, ycmd po defaulti ima bone sistem permisija, grupa i loopovanja kroz iste te komande (plus ti daje MNOGO vise mogucnosti da manageas koamdne) ali ne - ti si ipak samo video neprimetljivu brzinu, takodje YSI ima odlican help sys built-in :)
pa kada bi malo procitao i sumirao celu diskusiju video bi da nije samo brzina bolja, al dobro za to cemo zahvaliti tvojoj uciteljici iz prvog razreda i tvom intelektu.

pawncmd:
brzi
isto ima permove
isto ima loopove koje spominjes

mada u ovom slucaju izbor zavisi do korisnika, samo nemoj blatiti nesto ako ga ne poznajes, za mene je pawncmd idealan i nisu mi potrebni dodatni feature-ovi koje ti spominjes i takodje ih pawncmd poseduje, al dobro.

ps: nigde ne kazem da je y_cmds los, meni je pawncmd prakticniji
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: skritpe iz 2007 godine. ( ͡° ͜ʖ ͡°) poslato Avgust 13, 2020, 22:02:24 POSLE PODNE
Citat: XACK poslato Avgust 13, 2020, 21:55:35 POSLE PODNE
pa kada bi malo procitao i sumirao celu diskusiju video bi da nije samo brzina bolja, al dobro za to cemo zahvaliti tvojoj uciteljici iz prvog razreda i tvom intelektu.

pawncmd:
brzi
isto ima permove
isto ima loopove koje spominjes

mada u ovom slucaju izbor zavisi do korisnika, samo nemoj blatiti nesto ako ga ne poznajes, za mene je pawncmd idealan i nisu mi potrebni dodatni feature-ovi koje ti spominjes i takodje ih pawncmd poseduje, al dobro.

ps: nigde ne kazem da je y_cmds los, meni je pawncmd prakticniji
Znam o čemu pričaš sine ali neću da pominjem to više kao što sam rekao kada si glup kao kurčina i ne možeš da povežeš osnovne stvari u svojoj glavi, dovoljno sam pisao jedno isto, bitno je da su ostali razumeli, ti si mi nebitan
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: XACK poslato Avgust 13, 2020, 22:08:20 POSLE PODNE
Citat: skritpe iz 2007 godine. ( ͡° ͜ʖ ͡°) poslato Avgust 13, 2020, 22:02:24 POSLE PODNE
Znam o čemu pričaš sine ali neću da pominjem to više kao što sam rekao kada si glup kao kurčina i ne možeš da povežeš osnovne stvari u svojoj glavi, dovoljno sam pisao jedno isto, bitno je da su ostali razumeli, ti si mi nebitan
pa ti zivis od toga da ispadnes cool a zaprao si obican magarac zeljan paznje i bivas poklopljen na svaku opasku
trenutno mi je istekao dnevni limit za caskanje sa tobom te odoh da malo odmorim, pazi na clf majstore i pozdravi kod kuce   8)
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: __vedran.xyz77 poslato Avgust 13, 2020, 22:18:24 POSLE PODNE
Citat: // xunder poslato Avgust 13, 2020, 18:35:25 POSLE PODNE
Nema nista lose u slusanju Y-lessa i Southclawsa, oni su sigurno iskusni i provjereni programeri koji znaju sta rade (sto pokazuju i svojim radovima koje koriste 90% danasnjih samp skriptera).
Nisam rekao da je lose, nego ono sto im SouthClaws kaze to ce i memorisati nece im pasti na pamet da razmisle zasto je on to rekao. Ne razmisljaju svojim mozgom nego tudjim, doci ovde na bsampu i ponavljati sta je SouthClaws rekao umesto da ostavi kod i objasni zasto je to uradjeno.
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: // xunder poslato Avgust 14, 2020, 00:06:12 PRE PODNE
Citat: XACK poslato Avgust 13, 2020, 20:48:40 POSLE PODNE
ako u clf-u pogresis jedan parametar ili nesto slicno saznaces na tezi nacin, funkcija koja je stvarno beskorisna i jedina svrha joj je da ti uzme koji bajt vise samim pisanjem njenog imena, nepouzdana, dosta sporija(sto je ajde reci neprimetno) ali opet je SPORIJA i sporije ces handle-ovati vise evenata, uopste se ne bi trebala koristiti i susta je razlika clr-u koji zapravo ima neku svrhu.


"Sta bi se desilo ako hoces tu funkciju da pozoves u nekom drugom modulu koji ces include prije samog matematickog kviza?"
neces je pozvati pre matematickog kviza jer nisi ni include matematicki kviz i sama nece biti pozivana bez triggera u matematickom kvizu zar ne?



Izgleda da se ti hvatas tog pawn-lang manuala a nisi ga ni sam procitao. I inace tim quoteom pokazujes samo nepostovanje i ne ispadas niti malo zanimljiv al dobro necu da se spustam na taj nivo da nekoga ponizavam :S
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: XACK poslato Avgust 14, 2020, 00:15:05 PRE PODNE
Citat: // xunder poslato Avgust 14, 2020, 00:06:12 PRE PODNE
Izgleda da se ti hvatas tog pawn-lang manuala a nisi ga ni sam procitao. I inace tim quoteom pokazujes samo nepostovanje i ne ispadas niti malo zanimljiv al dobro necu da se spustam na taj nivo da nekoga ponizavam :S
Poslao sam ti svoje argumentovano misljenje i odgovor na primer koji si postavio pre toga, a realno dobio da izvines kurac od odgovora :-[
Nicim nisam pokazao zelju za "zanimljivoscu" kao npr. dzunglar guy ili nepostovanje koje ti upravo sada pokazujes.
Niko nigde nije spomenuo pawn-lang tako da ne vidim razlog spominjanja istog.
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: ChampaWasTaken poslato Avgust 14, 2020, 01:55:12 PRE PODNE
Citat: XACK poslato Avgust 14, 2020, 00:15:05 PRE PODNE
Poslao sam ti svoje argumentovano misljenje i odgovor na primer koji si postavio pre toga, a realno dobio da izvines kurac od odgovora :-[
Nicim nisam pokazao zelju za "zanimljivoscu" kao npr. dzunglar guy ili nepostovanje koje ti upravo sada pokazujes.
Niko nigde nije spomenuo pawn-lang tako da ne vidim razlog spominjanja istog.

Postoje design patterni i sistemi koje koriste drugi programski jezici zvani autoloading i dependency injection (samp, koliko sam upucen, toga nema)
Kod autoloadinga (samo ti ime govori) loadas tkz "module" u glavnu skriptu i nije ti zagarantovan redoslijed loadanja istih (mada ne kazem da se ne moze implementirati nesto cime ti eksplicitno odredjujes redoslijed)
Kada se ti "moduli" (obicno su to klase al te necu zamarati time jer ne znam da li znas oop principe) loadaju, mozes koristiti funkcije iz bilo kog u bilo kom (negdje moras namespace navesti doduse)
Tako da sa CallLocalFunction imas tu mogucnost da ti modul bude potpuno nezavisan gdje ce biti includan a opet da zavisi od nekog drugog modula, tipa da koristi metode/varijable sta vec (sto je cesta stvar)

Preporucujem ti da to malo istrazis i vidis svijet izvan pawna i sampa
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: __vedran.xyz77 poslato Avgust 14, 2020, 02:13:56 PRE PODNE
Citat: ChampaWasTaken poslato Avgust 14, 2020, 01:55:12 PRE PODNE
Postoje design patterni i sistemi koje koriste drugi programski jezici zvani autoloading i dependency injection (samp, koliko sam upucen, toga nema)
Kod autoloadinga (samo ti ime govori) loadas tkz "module" u glavnu skriptu i nije ti zagarantovan redoslijed loadanja istih (mada ne kazem da se ne moze implementirati nesto cime ti eksplicitno odredjujes redoslijed)
Kada se ti "moduli" (obicno su to klase al te necu zamarati time jer ne znam da li znas oop principe) loadaju, mozes koristiti funkcije iz bilo kog u bilo kom (negdje moras namespace navesti doduse)
Tako da sa CallLocalFunction imas tu mogucnost da ti modul bude potpuno nezavisan gdje ce biti includan a opet da zavisi od nekog drugog modula, tipa da koristi metode/varijable sta vec (sto je cesta stvar)

Preporucujem ti da to malo istrazis i vidis svijet izvan pawna i sampa
Paaa vidi da ti kazem...
Da

Naslov: Odg: Ednostaven Matematika SIS
Poruka od: skritpe iz 2007 godine. ( ͡° ͜ʖ ͡°) poslato Avgust 14, 2020, 02:17:22 PRE PODNE
Citat: __vedran.xyz77 poslato Avgust 14, 2020, 02:13:56 PRE PODNE
Paaa vidi da ti kazem...
Da
Ja ovom liku balavim pola sata da postoji YSI library koji wrappuje to (call) i bukvalno se CLF ponaša kao direct call tj imaš sve errore koje inače nemaš i lik rešio da tera svoje do kraja i ako zna da nije u pravu ali to mu jedini ""argument""
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: XACK poslato Avgust 14, 2020, 11:09:05 PRE PODNE
Citat: ChampaWasTaken poslato Avgust 14, 2020, 01:55:12 PRE PODNE
Postoje design patterni i sistemi koje koriste drugi programski jezici zvani autoloading i dependency injection (samp, koliko sam upucen, toga nema)
Kod autoloadinga (samo ti ime govori) loadas tkz "module" u glavnu skriptu i nije ti zagarantovan redoslijed loadanja istih (mada ne kazem da se ne moze implementirati nesto cime ti eksplicitno odredjujes redoslijed)
Kada se ti "moduli" (obicno su to klase al te necu zamarati time jer ne znam da li znas oop principe) loadaju, mozes koristiti funkcije iz bilo kog u bilo kom (negdje moras namespace navesti doduse)
Tako da sa CallLocalFunction imas tu mogucnost da ti modul bude potpuno nezavisan gdje ce biti includan a opet da zavisi od nekog drugog modula, tipa da koristi metode/varijable sta vec (sto je cesta stvar)

Preporucujem ti da to malo istrazis i vidis svijet izvan pawna i sampa

Bravo, jedini validan argument u celoj diskusiji, shvatam sta pokusavas reci, ja sam to radio direktno sa tagom, ali good point.

Citat: skritpe iz 2007 godine. ( ͡° ͜ʖ ͡°) poslato Avgust 14, 2020, 02:17:22 PRE PODNE
Ja ovom liku balavim pola sata da postoji YSI library koji wrappuje to (call) i bukvalno se CLF ponaša kao direct call tj imaš sve errore koje inače nemaš i lik rešio da tera svoje do kraja i ako zna da nije u pravu ali to mu jedini ""argument""
pa logicno da balavis kada si balavac, ne znas da vodis diskusiju i samo skreces sa teme, uozbilji se malo jbt.
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: // xunder poslato Avgust 14, 2020, 18:05:09 POSLE PODNE
Citat: XACK poslato Avgust 14, 2020, 00:15:05 PRE PODNE
Poslao sam ti svoje argumentovano misljenje i odgovor na primer koji si postavio pre toga, a realno dobio da izvines kurac od odgovora :-[
Nicim nisam pokazao zelju za "zanimljivoscu" kao npr. dzunglar guy ili nepostovanje koje ti upravo sada pokazujes.
Niko nigde nije spomenuo pawn-lang tako da ne vidim razlog spominjanja istog.

"....just a xunder shitting around... bla bla..." nije nepostovanje ni malo.
"koje ti upravo sada pokazujes." ja pokazujem nepostovanje? Ovdje si me bez teksta ostavio priznajem :D
"Niko nigde nije spomenuo pawn-lang tako da ne vidim razlog spominjanja istog." aha pardon nisi pomenio manual ali si nas i one koji su napravili isti jezik naucio da je CLF nepotreban i treba biti izbacen :|

edit; elem out sam
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: kristal poslato Avgust 14, 2020, 22:39:27 POSLE PODNE
lose
Naslov: Odg: Ednostaven Matematika SIS
Poruka od: Anchi poslato Avgust 18, 2020, 05:28:30 PRE PODNE
onako