Jump to content

sader1992

Content Moderator
  • Posts

    1677
  • Joined

  • Last visited

  • Days Won

    71

Everything posted by sader1992

  1. you welcome i would suggest changing .help to help .help = npc variable << so .help for you is the same .help for every player (if your .help 500 then every player have it 500) help = char variable << this are unique for each character
  2. at the first script getitem .itemrew,itemrewq; it's .itemrewq not itemrewq prontera,164,219,4 script Collector 116,{ if (getgmlevel()>60) goto admin; if (.help == 1) goto reward; mes "Welcome "+strcharinfo(0)+","; mes "I'm Collector rune midgard item"; switch(select("What item do you collect:Ok, nice to meet you")) { case 1: next; if (.itemcoll == 0) { mes "Sorry, I'm not collecting item for now."; end;} mes "please collect "+getitemname(.itemcoll)+" for "+.itemquan +" pcs."; mes "and i will reward you "+getitemname(.itemrew)+" for "+.itemrewq +" pcs."; set .help,1; end; case 2: next; mes "Okay, see you later."; end; } reward: set .amounts, countitem(.itemcoll); if ( .amounts <= .itemquan) {mes "the quantity item not enough.";} mes "Thanks for your help"; mes "here my reward for you."; delitem .itemcoll,.itemquan; getitem .itemrew,.itemrewq; set help,0; end; admin: mes "Welcome "+strcharinfo(0)+","; mes "Please input what item for player to collect."; next; input .itemcoll; //set .itemcoll,.itemcoll; next; mes "Please input how many item to collect."; next; input .itemquan; //set .itemquan,.itemquan; next; mes "Please input what the reward item."; input .itemrew; //set .itemrew,.itemrew; next; mes "Please input how many item reward."; input .itemrewq; //set .itemrewq,.itemrewq; next; mes "Are you done?"; switch(select("Yes:No.")) { case 1: mes "Item to collect "+getitemname(.itemcoll)+" for "+.itemquan +" pcs."; mes "Item reward "+getitemname(.itemrew)+" for "+.itemrewq +" pcs."; end; case 2: mes "Okay, to re entry, please start form the begining."; end; } end; OnInit: set .itemrew,0; set .itemrewq,0; set .itemcoll,0; set .itemquan,0; end; }
  3. NEMO dose not support it for this client yet
  4. Themida is a protection unpack = crack the protection
  5. update your game files or use the last
  6. i think this from the language in mes the Enicoding
  7. ".@" - A scope variable. They are unique to the instance and scope. Each instance has its own scope that ends when the script ends. Calling a function with callsub/callfunc starts a new scope, returning from the function ends it. When a scope ends, its variables are converted to values ('return .@var;' returns a value, not a reference). .@ only inside the method you are in , for that you see something like for(.@i=0 more then one time in the script (here the .@i is declared only inside for loop) and if you put .@somthing = 0; in the start of the script then it will be 0 unless the npc calling for change and it will end when the player close the npc or when the script end or when calling func/sub if npc1 == .@something && npc2 == .@something npc1 != npc2 .@something from npc1 != .@something from npc2 each npc have it's own .@something and for each player
  8. you welcome but to make sure did you intend to kick the players level 111 only in moc_fild04 and 121 only in moc_fild05 and 131 only in moc_fild06 etc ?
  9. try the script above and for the npc i did edit it above too if(select("~ Quero me Buffar!:~ Quero voltar!")) { to if(select("~ Quero me Buffar!:~ Quero voltar!")==1) {
  10. try this //================================================================================================ // // ==================================== NPC Padrao % Feats ==================================== // //================================================================================================ - script OnFeatures -1,{ OnInit: setarray .blvl,111,121,131,141,151,161; setarray .maps$,"moc_fild04","moc_fild05","moc_fild06","moc_fild08","moc_fild09","moc_fild10","moc_fild14","moc_fild15"; end; OnPCLoadMapEvent: for ( .@i = 0; .@i < getarraysize(.maps$); .@i++) { if(strcharinfo(3) == .maps$[.@i]) { percentheal 100,100; sc_start SC_FOOD_STR_CASH,36000000,7; sc_start SC_FOOD_AGI_CASH,36000000,7; sc_start SC_FOOD_INT_CASH,36000000,7; sc_start SC_FOOD_VIT_CASH,36000000,7; sc_start SC_FOOD_DEX_CASH,36000000,7; sc_start SC_FOOD_LUK_CASH,36000000,7; mes "[^ff0000Ajudante^000000]"; mes "Bom up!"; close; } } end; OnPCBaseLvUpEvent: for ( .@i = 0; .@i < getarraysize(.blvl); .@i++) { if(strcharinfo(3) == .maps$[.@i] && BaseLevel == .blvl[.@i]) { mes "[^ff0000Alerta^000000]"; mes "Voce alcançou o nivel maximo"; mes "desse mapa!"; mes " "; mes "Voce sera teleportado em 5 segundos!"; close2; warp "prontera",157,173; } } end; } - script Manager::Ajudante -1,{ mes "[^ff0000Ajudante^000000]"; mes "Em que posso ajudar?"; if(select("~ Quero me Buffar!:~ Quero voltar!") == 1) { mes "[^ff0000Ajudante^000000]"; mes "Ok... La vai!"; sc_start SC_FOOD_STR_CASH,18000000,7; sc_start SC_FOOD_AGI_CASH,18000000,7; sc_start SC_FOOD_INT_CASH,18000000,7; sc_start SC_FOOD_VIT_CASH,18000000,7; sc_start SC_FOOD_DEX_CASH,18000000,7; sc_start SC_FOOD_LUK_CASH,18000000,7; close; } else { mes "[^ff0000Ajudante^000000]"; mes "Certo, volte sempre!"; close2; warp "prontera",157,173; } end; } moc_fild04 mapflag loadevent moc_fild05 mapflag loadevent moc_fild06 mapflag loadevent moc_fild08 mapflag loadevent moc_fild09 mapflag loadevent moc_fild10 mapflag loadevent moc_fild14 mapflag loadevent moc_fild15 mapflag loadevent
  11. i just seen the second part so i don't know if the full script have some warning (and i update my reply sorry i normally type something then edit it ) x.x
  12. OnInit: setarray .blvl$[0],111,121,131,141,151,161; .blvl = getarraysize(.blvl$); for ( .@i = 0; .@i < .blvl; .@i++) { .@blvl$ = .blvl$[.@i]; } end; setarray .maps$[0],"moc_fild04","moc_fild05","moc_fild06","moc_fild08","moc_fild09","moc_fild10","moc_fild14","moc_fild15"; .maps = getarraysize(.maps$); for ( .@i = 0; .@i < .maps; .@i++) { .@map$ = .maps$[.@i]; setmapflag .@map$,mf_loadevent; } end; here you are ending before you setting the maps array OnPCBaseLvUpEvent: for ( .@i = 0; .@i < .blvl; .@i++) { if(strcharinfo(3) == .maps$[.@i] && BaseLevel == .@blvl$[.@i]) { .@blvl$ must be .blvl$ ? this will kick the players only if they are at level (element .@i) where the map is also .@i so it's the first element of the array level and map || 2nd element from level and map etc i think it's intended ?' and use close; why you use close2; ? for ( .@i = 0; .@i < .maps; .@i++) { .@map$ = .maps$[.@i]; setmapflag .@map$,mf_loadevent; } and not sure about this i would suggest you remove it and set the mapflag outside the script like that moc_fild04 mapflag loadevent moc_fild05 mapflag loadevent moc_fild06 mapflag loadevent moc_fild08 mapflag loadevent moc_fild09 mapflag loadevent moc_fild10 mapflag loadevent moc_fild14 mapflag loadevent moc_fild15 mapflag loadevent
  13. you must use unpacked client that not patched yet
  14. update 1.1 Fix IP Check , add check for if the item id wrong , you can now edit the reward options from the npc(Name , Abuse Protection , Max Playrs , VIP)
  15. i don't know about this command but if you use script and make a (bindatcmd) in the script and hook the script with timer and in the timer the greed skill dose this do what you need O.O ? didn't try that i think it may do the animation (and you don't want that)?
  16. dose it use port 80 or 8080 ?
  17. sader1992

    help

    it's possible but only if you can tell us more about the npc XD try to use google https://translate.google.com/ translate what you need to English then re translate from English to your language and see if everything fine put the English result here XD and to get faster and better support use the right section in the forum https://rathena.org/board/forum/25-scripting/ and use title that say what in the post :x
  18. i think this would need a Source edit https://rathena.org/board/forum/36-source-requests/
  19. https://github.com/rathena/rathena/blob/master/src/map/clif_shuffle.h https://github.com/rathena/rathena/blob/master/src/map/clif_packetdb.h https://github.com/rathena/rathena/blob/master/src/map/clif_obfuscation.h https://github.com/rathena/rathena/blob/master/src/config/packets.h
  20. when you assign a reward you have the option to choose gepard protection if you didn't chose it then when the player get the reword the script wont check for gepard the gepard check only work if you did choose gepard from the npc add menu
  21. make sure that those files are readed first put them in the data folder if you don't use data folder put them in the first grf you use
  22. you should already can use the hotkey inside the game at line 208 [47] = { EXE = MsgStrID.MSI_HK_STATUSWND_ONOFF, KEY1 = 65, KEY2 = 18 }, for the option inside the game i think you need to check your msgstring_kr.lub MSI_HK_STATUSWND_ONOFF = "Status Window On/Off", but even if you didn't edit your msgstring you should be able to use the hotkey but not change it inside the game check your msgstring_kr.lub and search for the line
×
×
  • Create New...