Jump to content

Boolove

Uživatel
  • Příspěvků

    8
  • Registrován

  • Aktivní

Příspěvky posted by Boolove

  1. Mám to takhle:

    if(sscanf(params, "I(99)i", id, am)) return SCM(playerid, 0x7CFC00FF, "Použití: /kredity <ID> <MNOŽSTVÍ> nebo /kredity <MNOŽSTVÍ>");

    Pak samozřejmě porovnávám 99 a podle toho nastavuji, tam už by chyba být neměla takže přidávám pouze sscanf kód.

    Jakmile zadám /kredity 400, tak mi to vyhodí zprávu o použití.

  2. On 24. 5. 2021 at 18:05, Scydo said:

    Nebo, můžeš použít velké specifikátory a tak jim hodit nějakou defaultní hodnotu, jestliže jí nenajde. Pak si za defaltní hodnotu dosadit nějaké nemožné ID (buď maximální a nebo -1) a to brát jako ID toho hráče:

    
    command(hp, playerid, params[]) {
    	new 
    		id, 
    		Float:hp;
    	if (sscanf(params, "I(-1)f", id, hp)) return SendClientMessage(playerid, -1, "Použití: /hp <ID> <MNOŽSTVÍ> nebo /hp <MNOŽSTVÍ>");
    	if (id == -1) SetPlayerHealth(playerid, hp);
    	else SetPlayerHealth(id, hp);
    	return 1;
    }

     

    Děkuji za radu. Udělal jsem to podle návodu, ale když zadám příkaz pouze s jedním parametrem, tak mi to vrátí SCM se syntaxí a příkaz se neprovede. Čím to může být?

  3. Dobrý den, lze nějak pomocí sscanf nastavit parametry tak, aby mohl být volitelný také integer? Uvedu příklad.

    Mám příkaz /hp s parametry

    /hp ID MNOZSTVI

    Po zadání všech parametrů nastaví počet HP dle zadaného ID.

    Pro jednodušší používání bych chtěl, aby když hráč zadá

    /hp MNOZSTVI

    tedy přeskočí parametr ID a zadá pouze jednu hodnotu, aby to doplnilo ty HP jemu = automaticky se dosadilo jeho ID.

    Děkuji.

  4. před 10hodinami, DuFF said:

    blém je možné riešiť uložením si ID hráčov do nejakého poľa a následným zoradením tohto podľa takým spôsobom, že ak má napr. ID 3 menšie skóre ako ID 1, tak bude ID 3 uložené v poli na nižšom indexe ako ID 1. Keď je už pole takto zoradené, nie je problém (for cyklom) prejsť postupne jeho prvky (od najnižších indexov k najvyšším) a vypisovať nicky a skóre.

    Mohl bys mi prosím ukázat néjaký názorný příklad toho, jak manipulovat s těma hodnotama v poli a jakým způsobem je následně seřazovat (tipuji, že i při tom seřazovaní bude muset být použit nějaký cyklus)?

  5. Dobrý den, potřebuji vytvořit příkaz, který mi vyprintuje seznam všech hráčů dle skóre od nejvyššího (nahoře) po nejnižší (dole). Používám klasický cyklus for a opírám se o hodnotu MAX_PLAYERS. Problémem je, že řazení je od nejnižšího ID po nejvyšší. Jakým způsobem lze přidat podmínku, aby bylo tohle řazení výsledků ovlivněno dle toho, jak jsem psal výše? Děkuji.

×
×
  • Create New...