Obtížnost: 1/5
Zdarec, akorát jsem řešil problém s chybou
symbol "@yH_OnUnoccupiedVehicleUpdate@0" is truncated to 31 characters
kterou hází y_hook v případě že délka jména callbacku přesáhne určitý počet znaků. V praxi se s tím setkáte jen u hookování callbacků jako je například OnUnoccupiedVehicleUpdate a OnPlayerEnterRaceCheckpoint. Existuje jednoduché řešení které YLess implementoval do YSI. Jmenují se HOOK_REPLACEMENTS. V podstatě jde o to že nějakou část jména callbacku zaměníte za náhradu která je kratší. V YSI jsou připravené replacementy například pro Checkpointy kde místo
hook OnPlayerEnterRaceCheckpoint
hooknete
hook OnPlayerEnterRaceCP
V případě mé chyby jsem si nad callback OnUnoccupiedVehicleUpdate přidal řádek
DEFINE_HOOK_REPLACEMENT( Unoccupied , Uncp );
a pak změnil hook na
hook OnUncpVehicleUpdate
a tím je problém vyřešen.
Doufám , že to někomu pomůže, samozřejmě určitě to nekdo znal ale já se k tomu dostal dnes.
No čistě teoreticky... By to dělalo kyvadlo tak dlouho dokud by se to neusadilo uprostřed. Ale spíš si myslím že by to nabralo takové zrychlení že by to překonalo gravitační sílu a vylétlo to ven
Uplně nejlíp by udělal kdyby do clienta zabudoval updater a a při připojení na server by si automaticky stáhl klient verzi jakou potřebuje to by byl klid hnedka
POužij nějaký ini systém a při připojení kontroluj jestli exisutje soubor se jménem hráč a pokud ano vip = 1 pokud ne tak nic a vip nastavis vytvořením souboru se jménem
To máš nejspíš pravdu ale když se na to vykašleš uplně tak se to potom odrazí na plynulosti hry... Mám zkušenost kdy měl týpek mód kde používat na jméno 1024 , samozřejmě nebylo to jen to ale jakmile někdo udělal cokoliv ( vyvolal dialog, šlapl na pickup ) automaticky měl cely server lag. Já osobně si myslím že té optimalizaci by se člověk věnovat měl, proč ten kód nepsat rovnou pěkně a optimalně a když ně kvůli serveru tak alespon kvůli sobě
udělej si jednoduše #define PER_WL 5000// 5000 za každej level
public OnPlayerDeath(plaerid,killerid,reason)
{
GivePlayerMoney(killerid,GetPlayerWantedLevel(playerid)*PER_WL);
SetPlayerWantedLevel(playerid,0);
}
DOF2_CreateFile má jako druhý parametr heslo a mám pocit že používá klasický udb hash v základu ale lze to přepnou na bernstaina záleží kde jsi ten includ stáhl
Ohledně porovnání je tam funkce CheckLogin
To zzáleží... Můžeš psát klidně v notepadu ale lepší je si vybrat nějaký editor. Za mě bych ti mohl doporučit Atom.
Jednoduchou stránku ano ( jednoduchou stránkou je myšleno čisté html a js ) v případě php musíš mít webserver. Ale i to jde lokálně za mě ti opět můžu doporučit WAMP.
Budeš potřebovat jazyky:
HTML,CSS,PHP,Javascript,SQL
Užitečné weby:
https://getbootstrap.com
http://php.net
https://www.w3schools.com/php/
Případně bych ti doporučil učit se PHP rovnou na nějakém MVCčku budeš to mít sice složitější a těžší ale jakmile se naučíš s jedním MVC tak v podstatě umíš všechny.
K tomu minigunu jednak nemusis pouzivat GetPlayerWeapon ale id zbrane mas ulozene rovnou v reason a druhak by treba mohlo bxt efektivnejsi kontrolovat jakmile hrac udeli damage minigunem ale to uz je na interpretaci