Jump to content

BatisCorleone

Uživatel
  • Příspěvků

    15
  • Registrován

  • Aktivní

Reputace

1 Jonny Sindacco
  1. 670 € za toto ? mám silnejšie PC (až na grafickú...mám gtx 650 2GB VRAM) a skladal som ho pred cca pol rokom za približne 525 € po častiach . (a to tam mám 2 chladiče)
  2. Ide to spraviť len tak aby to do chatu alebo hocikde zaznamenalo,ale pokiaľ hráč dá TAB tak každý tam bude mať ten znak "_". Riešenie toho je jednoduché,funkcia musí nájsť znak "_" a nahradiť ho znakom medzery (ASCII hodnota medzery je 32). P.S. je efektívnejšie to "nové meno" bez "_" uložiť niekde a pri správach do chatu nebude zistovať zase meno a meniť tam znak ale len rovno načíta to z uloženého stringu.
  3. do príkazu : new Float:HP; GetPlayerHealth(playerid,HP); //zistí koľko má HP ten hráč v momente keď zadá príkaz SetPlayerHealth(playerid,HP+5); //k zistenému HP mu pridá tých 5 hp o ktoré má jeho hp zvýšiť
  4. Teoreticky nikoho nepoznám kto by mal mobil od Asus-u. Ale pokiaľ chceš porovnať cena-výkon tak sa za tú cenu nájdu aj lepšie mobily. Napríklad tento : Lenovo A536 ( Click ) Poznámka : akurát baterku má o niečo slabšiu.
  5. GivePlayerMoney(playerid,dini_Int(CestaKSuboru,"Peniaze"));
  6. V include sa našlo zopár úsekov kde sa dalo vykonať zrýchlenie a práve preto som nahral novú verziu v1.0.5 , prosím prečítajte si changelog a poprípadne si stiahnite novú verziu.
  7. No tak z časti ano ale nie každý myslí na takéto potencionálne nebezpečenstvá , a kebyže niekto veľmi chce tak aj v AVS sa dá spraviť načítanie dát z iného scriptu Akurát to by už bolo pravdepodobne pomalšie ako cez PVary. Takže keď pre niekoho to je výhoda aby sa dali zistiť jeho premenné ( čo pre mňa je obrovská nevýhoda ) tak v tom prípade môže použiť aj PVary
  8. - Predstav si situáciu že niekto spraví zadarmo dostupné GM/Admin System ktorý bude bežať na PVaroch. - Nakoľko bude zadarmo dostupné tak hociaké naivné dieťa si to GM/AS môže dať k sebe na server. - Nakoľko je to decko tak uverí povedzme dobrej duše ktorá mu dá scripty len tak zadarmo kde povedzme bude jednoducho "SetPVarInt(playerid,"AdminLevel",5);" a tým pádom si nastaví pre seba AdminLevel alebo hociaké iné hráčske skóre. - Neskúmal som presne ako sú obmedzené ale viem že sú. - Povedzme použi tento kód a uvidíš ako sú "obmedzené" : #include <a_samp> public OnPlayerConnect(playerid) { for(new s[4],i;i<1000;i++) { format(s,sizeof(s),"%d",i); SetPVarInt(playerid,s,i); printf("%d",GetPVarInt(playerid,s)); } return 1; } - Posledných 200 hodnôt ti vyprintuje ako 0.
  9. 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 ]
  10. QWER tak som si našiel čas a spravil som novú verziu , snáď ti to už bude vyhovovať
  11. No máš pravdu ale podľa mňa nikomu prepisovať ten limit nebude robiť námahu. Ale keď tebe to až tak vadí tak neskôr spravím v1.4 na PVary
  12. Asi pretože načo by sa zbytočne vytvorilo 100 alebo aj viac premených keď sa použije len 20 alebo menej? A podľa mňa nie je to až taká veľká námaha prepísať ten limit v prípade potreby.
  13. QWER ten limit si môžeš hocikedy zmeniť. #define MAX_CMDLimits 20 new bool:PlayerCMDLimit[MAX_PLAYERS][MAX_CMDLimits]; new PlayerCMDTimeLimit_M[MAX_PLAYERS][MAX_CMDLimits]; new PlayerCMDTimeLimit_S[MAX_PLAYERS][MAX_CMDLimits]; Stačí prepísať to číslo v definícii a automaticky sa všetko prispôsobí. A mimochodom v návode v tom pwn súbore máš toto napísané. CMDLimitID = ID Limitu na príkaz [ v CMDTLS.inc - MAX_CMDLimits - nastaviť podľa potreby (basic je 20)] No ani by som to nepovedal a ináč si myslím,že začiatočníkom sa to zíjde
  14. No lenivec som ale keď sa neplatí vopred tak ani nezačnem
  15. 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/
×
×
  • Create New...