Search the Community
Showing results for tags 'batiscorleone'.
-
Zdravím , chcel by som vám predstaviť môj include Addressed Variable System v1.0.5. Popis includu : - Tento include slúži na adresované ukladanie premenných typu INT,FLOAT,STRING. - Tento include má slúžiť na rýchlejšie a prehladnejšie písanie scriptov v jazyku Pawn. - Malo by to byť jednoduché na použitie pre začiatočníkov. Výhody includu : - Nemusíte vytvárať žiadne premenné. [ "new Premenna[100];" ] - Jednoducho viete vynulovať všetky premenné na jeden riadok pomocou funkcie DeleteAllVariables(playerid);. [ Hl.využitie na OnPlayerDisconnect(playerid,reason) ] - Núti vás zadefinovať potrebné premenné podľa potreby. [ Pre začiatočníkov , napr #MAX_PLAYERS_EX ] - Na uloženie reťazca ( stringu ) je potrebné 2x menej miesta. - Pamätá sa na každého hráča že koľko premenných má nastavených a práve preto neprebehne cyklus viac krát ako je potrebné. - Po vynulovaní adresy a hodnoty sa síce polia nezmažú ale nastavia sa ich hodnoty na nulu a pri nastavení novej premennej so zaťial nevytvorenou adresou pre daného hráča sa nájde prázdne miesto a údaje sa zapíšu tam. - Načítanie a Zápis údajov je rýchlejší ako cez PVary. - Ako môžete vedieť PVary sa dajú modifikovať a načítať mimo daného FS,premenné cez AVS nie.Taktiež premenné cez PVar na daného hráča sú obmedzené a v AVS si obmedzenia nastavujete vy podľa potreby. Nevýhody includu : - Kvôli adries sa vytvorí viac polí akoby ste použili obyčajnú metódu "new Premenna[100];" - Nakoľko sa hodnoty načítavajú z adries tak sú pomalšie ako obyčajné premenné. [ Cyklus for,volanie funkcie ] Funkcie includu : SetInt(playerid,VName[],i); - Uloží hodnotu i do adresy VName[] pre pole playerid. SetFloat(playerid,VName[],f); - Uloží hodnotu f do adresy VName[] pre pole playerid. SetString(playerid,VName[],s[]); - Uloží reťazec s do adresy VName[] pre pole playerid. GetInt(playerid,VName[]); - Zistí INT-ovú hodnotu z adresy VName[] pre pole playerid. GetFloat(playerid,VName[]); - Zistí FLOAT-ovú hodnotu z adresy VName[] pre pole playerid. GetString(playerid,VName[]); - Zistí reťazec z adresy VName[] pre pole playerid. DeleteVariable(playerid,VName[],VType); - Vymaže údaje a adresu z adresy VName[] pre pole playerid. DeleteAllVaraibles(playerid); - Vymaže všetky údaje a všetky adresy pre pole playerid. Porovnanie s PVarmi [ Rýchlosť ] : - Pri každom teste sa vytvorilo 800 premenných a následne sa zapísali do logu (printf). - Každý test sa vykonal 3x Testy s verziou v1.0 : - FLOATy som netestoval z toho dôvodu že principialne fungujú rovnako ako INTy. - Pri týchto testoch AVS aj PVary ešte spomaloval cyklus for a funkcia printf takže v reálnom využití sú ešte rýchlejšie. [ Síce podľa mňa ani takto niesu pomalé. ] Changelog : AVS je teoreticky navrhnutý pre prácu s premennými pre hráčov,avšak nikde nie je obmedzené na playerid takže teoreticky je ho možné využiť aj na premenné ktoré nesúvisia s hráčom. Pokiaľ by ste nepochopili niečo z tohto popisu tak pred otázkou sa nezabudnite pozrieť do návodu ktorý je pribalený v .rar súbore. Podrobný návod na použitie nájdete pribalený v .rar súbore ! Download tu : http://files.bcph.eu/download.php?file=AVS [ v1.0.5 ]
- 6 odpovědí
-
- 1
-
- batiscorleone
- avs
-
(a 2 další)
Tagged with:
-
CoMmanD Time Limit System v1.3 FQ Edition Zdravím , už ani sa nepamätám kedy som niekedy naposledy zverejňoval niečo z mojich scriptov,ale tak čo už na všetko raz musí prísť čas. Chcem sa s vami podeliť o môj include ktorý vznikol na základe obmedzovania príkazov v mojom FUN_System-e ktorý "niečo podobné" obsahoval už v roku 2012. Neviem či už niekedy niekto robil podobný include nakoľko ja žiadne pwn fóra od roku 2011-2012 ani nesledujem. Čo dokáže tento include ? - Časovo obmedziť hociaký príkaz - Odpočítáva čas v minutách a sekundách do konca limitu - Vypisuje zvyšný čas v minutách a v sekundách - Upozorní vás keď skončil časový limit Koľko riadkov zabere tento include pri použití na jeden príkaz ? - Len 2 ! Ukážka použitia : dcmd_vasprikaz(playerid,params[]) { #pragma unused params if(GetPVarInt(playerid,"PlayerCMDLimit[0]") == 1) return UCMDLFP(playerid,2,0,"/vasprikaz",0,0); //Pošle správu so zvyšným časom //Sem pridať funckiu príkazu. Napríklad oprava vozidla a podobne. UCMDLFP(playerid,1,0,"/vasprikaz",1,30); //nastaví limit pre príkaz //UseCommandLimitForPlayer(playerid,FunctionID,CMDLimitID,CMDName[],Minutes,Seconds) - neskrátený názov stocku return 1; } public OnPlayerDisconnect(playerid) { //NullCommandLimitForPlayer(playerid); - Vynuluje všetky časové limity na príkazy a povolí ich pre daného hráča. - neskrátený názov stocku NullCMDLFP(playerid); return 1; } - Texty a farby správ môžete upraviť v CMDTLS.inc #define MessageString "[ ! ] {FFFFFF}Príkaz {00FF00}%s {FFFFFF}môžeš znova použiť za : {00FF00}%d {FFFFFF}min {00FF00}%d {FFFFFF}s !" #define Message2String "[ ! ] {FFFFFF}Príkaz {00FF00}%s {FFFFFF}môžeš znova použiť !" Screen : Podrobný návod na použitie nájdete po rozbalení stiahnutého .rar súboru ! Download : http://pawno.cz/files/file/360-command-time-limit-system/
- 12 odpovědí
-
- include
- batiscorleone
-
(a 2 další)
Tagged with: