Jump to content

Hyroshima

Members
  • Content Count

    51
  • Joined

  • Last visited

  • Days Won

    6

Hyroshima last won the day on May 10

Hyroshima had the most liked content!

1 Follower

About Hyroshima

  • Rank
    Advanced Member
  • Birthday 02/01/2010

Profile Information

  • Gender
    Not Telling
  • Emulator
    Hercules

Recent Profile Visitors

4287 profile views
  1. View File Mob Element View A small mod that allows you to display a custom icon and a title referring to the element and element level of the mob. It can be disabled by changing it in monster.conf // Show Element Info [Hyroshima] // 0= Off, 1= On mob_ele_view: 1 I have an observation to inform, if any of the information related to show_mob_info is enabled the mod will behave as disabled. // Display some mob info next to their name? (Note 3) // (does not works on guardian or Emperium) // 1: Display mob HP (Hp/MaxHp format) // 2: Display mob HP (Percent of full life format) // 4: Display mob's level show_mob_info: 0 The video quality is not very good (sorry), watch the preview video in fullscreen 😅 Submitter Hyroshima Submitted 10/04/24 Category Source Modifications  
  2. Version 1.0.0

    41 downloads

    A small mod that allows you to display a custom icon and a title referring to the element and element level of the mob. It can be disabled by changing it in monster.conf // Show Element Info [Hyroshima] // 0= Off, 1= On mob_ele_view: 1 I have an observation to inform, if any of the information related to show_mob_info is enabled the mod will behave as disabled. // Display some mob info next to their name? (Note 3) // (does not works on guardian or Emperium) // 1: Display mob HP (Hp/MaxHp format) // 2: Display mob HP (Percent of full life format) // 4: Display mob's level show_mob_info: 0 The video quality is not very good (sorry), watch the preview video in fullscreen 😅
  3. View File Mir4 Enchant It allows you to enchant equipment using a random system between possibilities, and each registered title has 4 categories of rarity: S,A,B,C and each one with its respective chances. Note: It is necessary to add the functions to manipulate arrays and found here: Submitter Hyroshima Submitted 05/07/24 Category Utility  
  4. Hyroshima

    Mir4 Enchant

    Version 1.0.0

    75 downloads

    It allows you to enchant equipment using a random system between possibilities, and each registered title has 4 categories of rarity: S,A,B,C and each one with its respective chances. Note: It is necessary to add the functions to manipulate arrays and found here:
  5. View File Baron of Cards By deliver with noble items to the baron he will allow you to try your luck in your card game, being able to get cards mini-boss, mvps or common. Important: I was unable to upload the illustration images (always returns error -200), they are just images to use in cutin, here directly from my domain: (3mb): https://hyroshima.com/files/Card_illust.zip VirusTotal Rash: 59bd666490e2258c62c367200d3079d36a05f6e67349d5331a6f8987d36a65ca OBS: It is necessary to add the functions to manipulate arrays and found here: https://www.youtube.com/watch?v=BIfQYpXqsPg Submitter Hyroshima Submitted 04/26/24 Category Events & Games  
  6. Version 1.1

    16 downloads

    By deliver with noble items to the baron he will allow you to try your luck in your card game, being able to get cards mini-boss, mvps or common. Important: I was unable to upload the illustration images (always returns error -200), they are just images to use in cutin, here directly from my domain: (3mb): https://hyroshima.com/files/Card_illust.zip VirusTotal Rash: 59bd666490e2258c62c367200d3079d36a05f6e67349d5331a6f8987d36a65ca OBS: It is necessary to add the functions to manipulate arrays and found here: https://www.youtube.com/watch?v=BIfQYpXqsPg
  7. It's not a big deal but I'm providing a utility that I made because I hadn't found anything that did this, basically you pass 2 guild IDs to check if they are allies, 1 for true and 0 for false. script.c /* //Hyroshima *guild_ally(guild_id1,guild_id2) //= PARAM 1 (guild1) PARAM 2 (guild2) RETURN 0= false, 1= true */ static BUILDIN(guild_ally) { int guild1,guild2 = 0; if(script_getnum(st,2) == script_getnum(st,3)) { ShowError("buildin_guild_ally: guild_id1(%d) cannot be equal to guild_id2(%d).\n",script_getnum(st,2),script_getnum(st,3)); script_pushint(st,0); return true; } guild1 = script_getnum(st,2); guild2 = script_getnum(st,3); if(guild->search(guild1) == NULL) { ShowError("buildin_guild_ally: Guild does not exist (guild_id1: %d).\n",guild1); script_pushint(st,0); return true; } if(guild->search(guild2) == NULL) { ShowError("buildin_guild_ally: Guild does not exist (guild_id2: %d).\n",guild2); script_pushint(st,0); return true; } script_pushint(st,guild->isallied(guild1,guild2)); return true; } BUILDIN_DEF(guild_ally,"ii"),
  8. when I want to round values I check if the remainder of the division is greater than 5. example: .@calc1 = 237/7; .@calc1_r = 237%7; if(.@calc1_r > 5) .@calc1++;
  9. //Add a call function in item // callfunc "Boxx"; function script Boxx { //Item ID //== setarray .@ItemID[0],1108,2104,5011,2301,2404; setarray .@itemRF[0], 10, 10, 10, 7, 10; //check if you still have an item with a refine lower than 10 //== for(set .@i,0; .@i<getarraysize(.@ItemID); set .@i,.@i+1) if((getd("eqi_"+.@ItemID[.@i])-1) < .@itemRF[.@i]) setarray .@equips[getarraysize(.@equips)],.@ItemID[.@i]; //All max refined //== if(!getarraysize(.@equips)){ dispbottom "Bye bye."; end; } set .@idx,rand(getarraysize(.@equips)); set .@slot,getiteminfo(.@equips[.@idx],ITEMINFO_LOC); switch(.@slot) { case 2: set .@slot,EQI_HAND_R; break; case 16: set .@slot,EQI_ARMOR; break; case 32: set .@slot,EQI_HAND_L; break; case 64: set .@slot,EQI_SHOES; break; case 256: set .@slot,EQI_HEAD_TOP; break; } if(getd("eqi_"+.@equips[.@idx])) { if(!countitem(.@equips[.@idx])){ dispbottom "Item not found "+getitemname(.@equips[.@idx])+"!"; end; } if(getequipid(.@slot) != .@equips[.@idx]) equip .@equips[.@idx]; successrefitem .@slot; setd "eqi_"+.@equips[.@idx],getd("eqi_"+.@equips[.@idx])+1; } else { setd "eqi_"+.@equips[.@idx],1; getitem .@equips[.@idx],1; } end; } I haven't tested it, check if it will work as you wanted.
  10. I made this model as you explained how it works. //Add a call function in item // callfunc "Boxx"; function script Boxx { //Item ID //== setarray .@ItemID[0],1108,2104,5011,2301,2404; //check if you still have an item with a refine lower than 10 //== for(set .@i,0; .@i<getarraysize(.@ItemID); set .@i,.@i+1) if((getd("eqi_"+.@ItemID[.@i])-1) < 10) setarray .@equips[getarraysize(.@equips)],.@ItemID[.@i]; //All refined +10 //== if(!getarraysize(.@equips)){ dispbottom "Bye bye."; end; } set .@idx,rand(getarraysize(.@equips)); set .@slot,getiteminfo(.@equips[.@idx],ITEMINFO_LOC); switch(.@slot) { case 2: set .@slot,EQI_HAND_R; break; case 16: set .@slot,EQI_ARMOR; break; case 32: set .@slot,EQI_HAND_L; break; case 64: set .@slot,EQI_SHOES; break; case 256: set .@slot,EQI_HEAD_TOP; break; } if(getd("eqi_"+.@equips[.@idx])) { if(!countitem(.@equips[.@idx])){ dispbottom "Item not found "+getitemname(.@equips[.@idx])+"!"; end; } if(getequipid(.@slot) != .@equips[.@idx]) equip .@equips[.@idx]; successrefitem .@slot; setd "eqi_"+.@equips[.@idx],getd("eqi_"+.@equips[.@idx])+1; } else { setd "eqi_"+.@equips[.@idx],1; getitem .@equips[.@idx],1; } end; }
  11. Sorry but it's still a little confusing for me to understand. let's do it like this, tell me what you want the script to do, so that instead of looking for a solution for this model you mentioned, I can create one without using your base. 🙂 without using codes, just place an order xD
  12. seria isso? prontera,151,169,5 script Alquimista Teleport 113,{ if(Class == 5 || Class == 18 || Class == 4019) { dispbottom "class: "+Class+""; mes "Você pode ser teleportado."; next; warp "prontera",150,150; end; } mes "Somente Alquimistas podem usar esse npc."; close; }
  13. tell me a little more about it, I need to understand the reason and why you will call again and again until the 5 cases are completed. so that I can make a suitable solution for the situation.
  14. I made this function for a friend and it can be useful in general. basically allows you to add wait time for something in npc, you can put different times in the same npc using the reference names. a utility to put in Global_Functions //== Function F_SetNpcCD ================================ // Add cooldown to access specific functions of a pc but not limited //== // callfunc "F_SetNpcCD","reference_name",time_in_seconds{,cooldown type}; // Examples: // callfunc("F_SetNpcCD","name_example0",45) // Adds 45 second cooldown at player level // callfunc("F_SetNpcCD","name_example1",85,1) // Adds 1 minute 25 second cooldown at player level // callfunc("F_SetNpcCD","name_example2",120,2) // Adds 2-minute cooldown at account level function script F_SetNpcCD { set .@var$,(countstr(getarg(0)," ")?replacestr(getarg(0)," ","_"):getarg(0)); set .@time,getarg(1); set .@type,getarg(2,0); setd(""+(.@type==2?"#":"")+""+.@var$+"_time",gettimetick(2)+.@time); return; } //== Function F_GetNpcCD ================================ // Check npc access cooldown //== // callfunc "F_GetNpcCD","name_example"{,cooldown type}; // Examples: // callfunc("F_GetNpcCD","name_example0") // returns "NPC Cooldown: 00H:00M:45s (player)" // callfunc("F_GetNpcCD","name_example1",1) // returns "NPC Cooldown: 00H:01M:25s (player)" // callfunc("F_GetNpcCD","name_example2",2) // returns "NPC Cooldown: 00H:02M:00s (account)" function script F_GetNpcCD { set .@var$,(countstr(getarg(0)," ")?replacestr(getarg(0)," ","_"):getarg(0)); set .@type,getarg(1,0); if(gettimetick(2) < getd(""+(.@type==2?"#":"")+""+.@var$+"_time")) { set .@ts,getd(""+(.@type==2?"#":"")+""+.@var$+"_time")-gettimetick(2); set .@h,.@ts/3600; set .@m,(.@ts%3600)/60; set .@s,.@ts%60; dispbottom "NPC Cooldown: "+(.@h<10?"0"+.@h:.@h)+"H:"+(.@m<10?"0"+.@m:.@m)+"M:"+(.@s<10?"0"+.@s:.@s)+"s ("+(.@type==2?"account":"player")+")"; end; } return; }
  15. try like this: OnPCDieEvent: if(strcharinfo(3) == MY_EVENT_MAP) { for(set .@i,0; .@i<getarraysize($MY_VARIABLE); set .@i,.@i+1) { if(getcharid(3) == $MY_VARIABLE[.@i]) { deletearray $MY_VARIABLE[.@i],1; dispbottom "Game over."; break; } } } end;
×
×
  • Create New...

Important Information

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