Jump to content

crazyarashi

Developer
  • Posts

    761
  • Joined

  • Last visited

  • Days Won

    19

Community Answers

  1. crazyarashi's post in Looking for an Invasion Scriptwith mob selection was marked as the answer   
    - script invasion -1,{ OnInit: setarray .map$,"prontera","izlude"; function add_set; function create_set; create_set(); end; OnMinute00: function start_set; start_set(); end; OnMobDead: if(!mobcount(.current_map$,strnpcinfo(0) + "::OnMobDead")){ OnTimer900000: function end_set; end_set(); } end; //= Add your new set here. function create_set { //= add_set("Mob ID:Mob Amount{:Min amount:Max amount},....."); If min/max amount is added mob amount will be ignored. add_set("1001:50,1002:20:70:100"); add_set("1005:50:10:20,1001:20"); } function add_set { .set$[getarraysize(.set$)] = getarg(0); return; } function start_set { .current_map$ = .map$[rand(getarraysize(.map$))]; killmonster .current_map$,strnpcinfo(0) + "::OnMobDead"; explode([email protected]$,.set$[rand(getarraysize(.set$))],","); for([email protected] = 0; [email protected] < getarraysize([email protected]$); [email protected]++){ explode([email protected]$,[email protected]$[[email protected]],":"); if(getarraysize([email protected]$) > 2){ if(atoi([email protected]$[3]) == 0) [email protected] = atoi([email protected]$[1]); else [email protected] = rand(atoi([email protected]$[2]),atoi([email protected]$[3])); } else [email protected] = atoi([email protected]$[1]); monster .current_map$,0,0,"--ja--",atoi([email protected]$[0]),[email protected],strnpcinfo(0) + "::OnMobDead"; deletearray [email protected]$[0],getarraysize([email protected]$); } announce "Invasion : Invasion has started in " + .current_map$ + ".",bc_blue; initnpctimer; end; } function end_set { announce "Invasion : All monster has been killed.",bc_blue; killmonster .current_map$,strnpcinfo(0) + "::OnMobDead"; end; } }  
  2. crazyarashi's post in Https, thor patcher issue was marked as the answer   
    It doesn't support https.. An alternative is to get a sub-domain for it which is usually free.
  3. crazyarashi's post in Continue hourly points was marked as the answer   
  4. crazyarashi's post in Requesting for mvp points with different value was marked as the answer   
    - script mvp_point -1,{ end; OnNPCKillEvent: if(!getmonsterinfo(killedrid,MOB_MVPEXP) || inarray(.mvp_point, killedrid) == -1) end; [email protected] = inarray(.mvp_point, killedrid) + 1; if(!getcharid(1)){ #MVP_POINT += .mvp_point[[email protected]]; dispbottom "You got " + .mvp_point[[email protected]] + " MVP Points for killing " + getmonsterinfo(killedrid,MOB_NAME) +"."; } else { getmapxy([email protected]$,[email protected],[email protected],BL_PC); getpartymember getcharid(1),1; getpartymember getcharid(1),2; for([email protected] = 0; [email protected] < [email protected]; [email protected]++){ if(attachrid([email protected][[email protected]])){ if(strcharinfo(3) == [email protected]$ && isloggedin([email protected][[email protected]], [email protected][[email protected]])){ [email protected]_id[getarraysize([email protected]_id)] = [email protected][[email protected]]; } detachrid; } } [email protected] = getarraysize([email protected]_id); if([email protected] == 1){ #MVP_POINT += .mvp_point[[email protected]]; dispbottom "You got " + .mvp_point[[email protected]] + " MVP Points for killing " + getmonsterinfo(killedrid,MOB_NAME) +"."; end; } if([email protected] > .mvp_point[[email protected]] || [email protected] == .mvp_point[[email protected]]){ [email protected] = 1; } else { [email protected] = (.mvp_point[[email protected]]/[email protected]); } for([email protected] = 0; [email protected] < [email protected]; [email protected]++){ setd "#MVP_POINT",getd("#MVP_POINT") + [email protected],[email protected]_id[[email protected]]; dispbottom "You got " + .mvp_point[[email protected]] + " MVP Points for killing " + getmonsterinfo(killedrid,MOB_NAME) +".",0x00FF00,[email protected]_id[[email protected]]; } } end; OnInit: setarray .mvp_point, //= MVP ID, Points 1039,10, 1046,20, 1112,30; end; } I haven't tested it yet. Just add all your MVP ID, Point on the array.
  5. crazyarashi's post in Itemskill on item_db was marked as the answer   
    skill "BS_GREED",1; itemskill is for triggering skills when used. ex : fly wing, scrolls, etc.. 
  6. crazyarashi's post in Requesting NPC was marked as the answer   
    I don't know why you are looking for Endless Tower, but here
    https://github.com/rathena/rathena/blob/master/npc/instances/EndlessTower.txt
  7. crazyarashi's post in Requesting NPC was marked as the answer   
    - shop food_vendor -1,12043:20000,12058:20000,12053:20000,12063:20000,12068:20000 map,123,123,1 script Food Vendor 123,{ if(!vendor_unlocked){ mes "[ Food Vendor ]"; mes "Can you give me one " + getitemname(12128) +"?"; next; if(countitem(12128)){ if(select("Give the "+getitemname(12128)+":Cancel") == 2){ mes "[ Food Vendor ]"; mes "That's unfortunate."; close; } mes "[ Food Vendor ]"; mes "Thank you, now I can prepare my foods."; delitem 12128,1; vendor_unlocked = 1; end; } else { mes "[ Food Vendor ]"; mes "Please bring me a " + getitemname(12128) +"?"; end; } } mes "[ Food Vendor ]"; mes "How can I help you?"; next; callshop "food_vendor",1; end; }  
  8. crazyarashi's post in Item Swap was marked as the answer   
    - script item_swap -1,{ for([email protected] = 0; [email protected] < .size; [email protected]++){ [email protected]$ += "List " + ([email protected]+1) + ":"; } mes "Select a list."; next; [email protected] = select([email protected]$) - 1; explode([email protected]$,.item_list$[[email protected]],","); for([email protected] = 0; [email protected] < getarraysize([email protected]$); [email protected]++){ [email protected] = atoi([email protected]$[[email protected]]); [email protected][[email protected]] = [email protected]; if(countitem([email protected])){ [email protected][getarraysize([email protected])] = [email protected]; [email protected]$ += getitemname([email protected]) + ":"; } else { continue; } } mes "Select the item you want to swap."; next; [email protected] = select([email protected]$) - 1; [email protected]_id = [email protected][[email protected]]; [email protected] = inarray([email protected],[email protected]_id); for([email protected] = 0; [email protected] < getarraysize([email protected]); [email protected]++){ if([email protected] == [email protected]) continue; [email protected][getarraysize([email protected])] = [email protected][[email protected]]; [email protected]$ += getitemname([email protected][[email protected]]) + ":"; } mes "select the item you want to swap into."; next; [email protected] = select([email protected]$) - 1; delitem [email protected]_id,1; getitem [email protected][[email protected]],1; end; OnInit: setarray .item_list$,"501,502,503,504,505","506,507,508,509,510"; .size = getarraysize(.item_list$); end; } Haven't tested this but pretty sure it will work..
  9. crazyarashi's post in Help to change skill damage SRC File problems was marked as the answer   
    Recompile your server. 🤗
  10. crazyarashi's post in Change Korean language on some buttons was marked as the answer   
    Use a full translation file

    Zackdreaver English Translation
  11. crazyarashi's post in About : Item_DB 32302 +++ was marked as the answer   
    kRO should be in that range of ID's 32k+ except for the 100K > new range of ID in kRO, any missing database is either you make it or wait for updates.
  12. crazyarashi's post in i need simple npc gift pls. was marked as the answer   
    you didn't mention about being equipped on the topic.

     
    prontera,255,255,3 script Equip Freebies 123,{ if(#claimed){ mes "[ Freebies ]"; mes "You alreay receieved your freebies."; close; } getinventorylist; for([email protected] = 0; [email protected] < 20; [email protected]++){ [email protected] = getequipid([email protected]); if([email protected] == -1) [email protected]_id[[email protected]] = 0; // Dummy Data else [email protected]_id[[email protected]] = [email protected]; } for([email protected] = 0; [email protected] < getarraysize(.equip_id); [email protected]++){ if(inarray([email protected]_id[0],.equip_id[[email protected]]) >= 0 || inarray(@inventorylist_id[0],.equip_id[[email protected]]) >= 0){ [email protected] = 1; break; } continue; } if([email protected]){ mes "[ Freebies ]"; mes "You already have a duplicated freebies in your inventory/equipment."; close; } #claimed = 1; for([email protected] = 0; [email protected] < getarraysize(.equip_id); [email protected]++){ getitem .equip_id[[email protected]],1; equip .equip_id[[email protected]]; } mes "[ Freebies ]"; mes "Here is your freebies."; end; OnInit: setarray .equip_id,1208,2154; // Add your ID's here. end; } Here is the new script that it will automatically equip it after receiving :))
  13. crazyarashi's post in requesting item script was marked as the answer   
    [email protected] = getrefine(); skill "SM_MAGNUM",10; bonus2 bHPRegenRate,5000,10000; bonus2 bSPRegenRate,100,10000; if(BaseLevel < 99){ bonus bStr,[email protected]*3; bonus bFlee,[email protected]*5; } else { bonus bStr,[email protected]*10; bonus bFlee,[email protected]*15; }  
  14. crazyarashi's post in problem in map server was marked as the answer   
    The devs already prepared a fix for this, if you look at the pull request.
    https://github.com/rathena/rathena/pull/4065
  15. crazyarashi's post in Costumes dropped from mobs was marked as the answer   
    - script costume_drop -1,{ OnNPCKillEvent: [email protected] = inarray(.mob_id[0],killedrid); if([email protected] < 0) end; if(rand(1,10000) <= .chance){ explode([email protected]$,.drop_data$[[email protected]],":"); announce "Congratulations to the player "+ strcharinfo(0) +" who, after killing a "+ getmonsterinfo( killedrid, MOB_NAME ) +" in "+ strcharinfo(3) +", got a rare costume!",0,0x00FF00; getitem atoi([email protected]$[1]),1; deletearray [email protected]$[0],getarraysize([email protected]$); } end; OnInit: .chance = 3; setarray .drop_data$, "1001:501","1002:502","1003:503","1005:504"; //= "Mob ID:Costume ID" for([email protected] = 0; [email protected] < getarraysize(.drop_data$); [email protected]++){ explode([email protected]_id$,.drop_data$[[email protected]],":"); .mob_id[[email protected]] = atoi([email protected]_id$[0]); deletearray [email protected]_id$[0],getarraysize([email protected]_id$); } end; } I haven't tested this yet, but it should work fine :))
  16. crazyarashi's post in Freebies NPC was marked as the answer   
    getitembound2 1102,1,1,10,0,0,0,0,0,Bound_Account; getitembound2 1151,1,1,10,0,0,0,0,0,Bound_Account; getitembound2 1208,1,1,10,0,0,0,0,0,Bound_Account; getitembound2 1251,1,1,10,0,0,0,0,0,Bound_Account; getitembound2 1302,1,1,10,0,0,0,0,0,Bound_Account; getitembound2 1352,1,1,10,0,0,0,0,0,Bound_Account; getitembound2 1405,1,1,10,0,0,0,0,0,Bound_Account; getitembound2 1452,1,1,10,0,0,0,0,0,Bound_Account; getitembound2 1502,1,1,10,0,0,0,0,0,Bound_Account; getitembound2 1550,1,1,10,0,0,0,0,0,Bound_Account; getitembound2 1602,1,1,10,0,0,0,0,0,Bound_Account; getitembound2 1702,1,1,10,0,0,0,0,0,Bound_Account; getitembound2 1802,1,1,10,0,0,0,0,0,Bound_Account; getitembound2 1951,1,1,10,0,0,0,0,0,Bound_Account; getitembound2 1929,1,1,10,0,0,0,0,0,Bound_Account;  
  17. crazyarashi's post in script for max hp + 450000 was marked as the answer   
    prontera,255,55,5    script    450KHP    123,{     bonus_script "{ bonus bMaxHP,450000; }",60,512; dispbottom "Max HP increased by 450,000"; end; OnPCLoadMapEvent: bonus_script_clear 1; end; OnInit: setarray .maps$,"prontera","izlude","samplemap"; //= Maps for removing bonus HP for([email protected] = 0; [email protected] < getarraysize(.maps$); [email protected]++){ setmapflag .maps$[[email protected]],MF_LOADEVENT; } end; }  
  18. crazyarashi's post in Allow Storage with 'can_trade: false' was marked as the answer   
    In your storage.cpp. Comment out the lines that checks the permission of the sd if they can trade. Though it's not suggestible this may solve your problem.
    int storage_storageopen(struct map_session_data *sd) { nullpo_ret(sd); if(sd->state.storage_flag) return 1; //Already open? /* if( !pc_can_give_items(sd) ) { // check is this GM level is allowed to put items to storage clif_displaymessage(sd->fd, msg_txt(sd,246)); return 1; } */ sd->state.storage_flag = 1; storage_sortitem(sd->storage.u.items_storage, sd->storage.max_amount); clif_storagelist(sd, sd->storage.u.items_storage, sd->storage.max_amount, storage_getName(0)); clif_updatestorageamount(sd, sd->storage.amount, sd->storage.max_amount); return 0; }  
  19. crazyarashi's post in Where is this NPC script located? was marked as the answer   
    It's in the banquet of heroes quest. ^^
  20. crazyarashi's post in Who To Change This massage.. was marked as the answer   
    It's in your client's msgstring table just search the word in there :))
  21. crazyarashi's post in Item Box problem. Array just read 2 Item from my list. was marked as the answer   
    your rand is only for arrays 0~1 if you have 3 items on your array you need the rand to be 0~2.
  22. crazyarashi's post in NPC work in an especific time was marked as the answer   
    prontera,255,55,4 script alg_teleporter 123,{ if(Zeny >= .warp_fee){ warp "gld2_ald",0,0; end; } mes "- Not Enough Zeny -"; mes "- Come back when you have "+.warp_fee+" Zeny -"; close; OnHour23: OnHour09: OnHour15: OnHour20: enablenpc "alg_teleporter"; end; OnHour10: OnHour16: OnHour21: OnHour00: mapwarp "gld2_ald","SavePoint",0,0; disablenpc "alg_teleporter"; end; OnInit: .warp_fee = 30000; disablenpc "alg_teleporter"; end; }  
  23. crazyarashi's post in Prize Roulette was marked as the answer   
    - script Dynamic_Drops -1,{ OnNPCKillEvent: if( strcharinfo(3) == .map$ ){ if( killedrid == .killed_id ){ flks++; announce "Points +1 ["+ f1ks +"/5]",3; } if( f1ks >= 5 ){ flks = 0; sc_start sc_INCREASEAGI, 360000,10; sc_start sc_BLESSING, 360000,10; [email protected] = rand(1,2); if([email protected] == 1){ dispbottom "You got the first prize on the Roulette!"; getitem 2285,1; } else { announce "You got the second prize on the Roulette!"; getitem 16707,1; } } } end; OnInit: .map$ = "prontera"; .killed_id = 1002; end; } you're wrong in the rand line.
    set [email protected] rand (1,2){ -> set [email protected], rand(1,2);
  24. crazyarashi's post in 2018-03-07 is Intended not support over 30 Hairstyle? was marked as the answer   
    There is still no solution for that at the moment even with the nemo updated by 4144. :))
  25. crazyarashi's post in Custom attendance was marked as the answer   
    Try matching the CheckAttendance.lub file in your System to your server side
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use and Privacy Policy.