Jump to content

Angelmelody

Members
  • Content Count

    772
  • Joined

  • Last visited

  • Days Won

    23

Reputation Activity

  1. Upvote
    Angelmelody got a reaction from Hadeszeus in Rental item problem with cards   
    try this
    --- a/src/map/pc.c +++ b/src/map/pc.c @@ -496,6 +496,25 @@ void pc_rental_expire(struct map_session_data *sd, int i) { } clif->rental_expired(sd->fd, i, sd->status.inventory[i].nameid); + + { // expiration return card + int s,flag =0; + for (s = 0; s < MAX_SLOTS; s++) { + if( itemdb->exists(sd->status.inventory[i].card[s]) != NULL ){ + struct item card_it; + memset(&card_it,0,sizeof(card_it)); + card_it.nameid=sd->status.inventory[i].card[s]; + card_it.identify=itemdb->isidentified(card_it.nameid); + if ((flag = pc->additem(sd, &card_it, 1 ,LOG_TYPE_NONE))) + { + clif->additem(sd, 0, 0, flag); + storage->additem(sd,&card_it,1); + + } + } + } + } + pc->delitem(sd, i, sd->status.inventory[i].amount, 0, 0, LOG_TYPE_OTHER); } void pc_inventory_rentals(struct map_session_data *sd)
  2. Upvote
    Angelmelody got a reaction from eKoh in Rental item problem with cards   
    try this
    --- a/src/map/pc.c +++ b/src/map/pc.c @@ -496,6 +496,25 @@ void pc_rental_expire(struct map_session_data *sd, int i) { } clif->rental_expired(sd->fd, i, sd->status.inventory[i].nameid); + + { // expiration return card + int s,flag =0; + for (s = 0; s < MAX_SLOTS; s++) { + if( itemdb->exists(sd->status.inventory[i].card[s]) != NULL ){ + struct item card_it; + memset(&card_it,0,sizeof(card_it)); + card_it.nameid=sd->status.inventory[i].card[s]; + card_it.identify=itemdb->isidentified(card_it.nameid); + if ((flag = pc->additem(sd, &card_it, 1 ,LOG_TYPE_NONE))) + { + clif->additem(sd, 0, 0, flag); + storage->additem(sd,&card_it,1); + + } + } + } + } + pc->delitem(sd, i, sd->status.inventory[i].amount, 0, 0, LOG_TYPE_OTHER); } void pc_inventory_rentals(struct map_session_data *sd)
  3. Upvote
    Angelmelody got a reaction from evilpuncker in Rental item problem with cards   
    try this
    --- a/src/map/pc.c +++ b/src/map/pc.c @@ -496,6 +496,25 @@ void pc_rental_expire(struct map_session_data *sd, int i) { } clif->rental_expired(sd->fd, i, sd->status.inventory[i].nameid); + + { // expiration return card + int s,flag =0; + for (s = 0; s < MAX_SLOTS; s++) { + if( itemdb->exists(sd->status.inventory[i].card[s]) != NULL ){ + struct item card_it; + memset(&card_it,0,sizeof(card_it)); + card_it.nameid=sd->status.inventory[i].card[s]; + card_it.identify=itemdb->isidentified(card_it.nameid); + if ((flag = pc->additem(sd, &card_it, 1 ,LOG_TYPE_NONE))) + { + clif->additem(sd, 0, 0, flag); + storage->additem(sd,&card_it,1); + + } + } + } + } + pc->delitem(sd, i, sd->status.inventory[i].amount, 0, 0, LOG_TYPE_OTHER); } void pc_inventory_rentals(struct map_session_data *sd)
  4. Upvote
    Angelmelody got a reaction from evilpuncker in Where is Ind?   
    There are a lot of  report bugs ,  Can devs  take time to fix them?
  5. Upvote
    Angelmelody got a reaction from iZeal in storing npc name as variable need help   
    prontera,151,189,5 script example 100,{ mes "-------"+.npcname$+"-------"; mes "123456789abcdefgh........"; close;OnInit: .npcname$ = strnpcinfo(1);end;}
  6. Upvote
    Angelmelody reacted to pan in Who know why the eathena forum was down for a long time   
    It sadly seems so :/ so many useful resources and information lost. Does anybody have a backup or maybe information gathered with a crawler?
  7. Upvote
    Angelmelody got a reaction from zackpinoy in q>about broadcast message   
    query_sql("SELECT account_id FROM `login` WHERE group_id=2" ,.@g2aid);  .@size = getarraysize(.@g2aid);  for(.@i=0;.@i<.@size;.@i++) {    if (attachrid(.@g2aid[.@i]))      announce "blah blah........",bc_blue|bc_self;      }
  8. Upvote
    Angelmelody got a reaction from iZeal in item_noequip.txt where is it?   
    http://herc.ws/board/topic/302-introducing-hercules-map-zone-database/
  9. Upvote
    Angelmelody got a reaction from kyeme in R> Jumping Candy item script   
    solved by myself
     
     
     
    { Id: 14586 AegisName: "Spark_Candy" Name: "jumping candy" Type: 2 Buy: 0 Weight: 10 Upper: 63 Delay: 180000 Trade: { nodrop: true noselltonpc: true } Script: <" sc_start SC_INCBASEATK,60000,20; sc_start SC_INCASPDRATE,60000,25; sc_start SC_ENDURE,60000,1; sc_start4 SC_HPDRAIN,60000,100,10,0,0; ">},adding required sc state 
     
     
  10. Upvote
    Angelmelody got a reaction from iZeal in Request for an Double Exp Event every Friday and Saturday   
    you can try this  not tested
     
    - script asdfjkl -1,{end;OnClock0800:OnClock1900: .@tt = 1;OnInit: atcommand "@reloadbattleconf"; if(gettime(4)!=5 && gettime(4)!=6 && ( !gettime(4) && !@tt ? 0 : 1 ) ) end; if((gettime(3) >= 1 && gettime(3) < 8 ) || (gettime(3) >= 14 && gettime(3) < 19) ) end; announce "double drop rate started", bc_all; setbattleflag ("base_exp_rate", getbattleflag("base_exp_rate")*2); setbattleflag ("job_exp_rate", getbattleflag("job_exp_rate")*2); setbattleflag ("item_rate_common", getbattleflag("item_rate_common")*2); setbattleflag ("item_rate_heal", getbattleflag("item_rate_heal")*2); setbattleflag ("item_rate_use", getbattleflag("item_rate_use")*2); setbattleflag ("item_rate_equip", getbattleflag("item_rate_equip")*2); end;OnClock0100: .@mo = 1;OnClock1400: if(gettime(4)!=5 && gettime(4)!=6 && ( !gettime(4) && !.@mo ? 0 : 1 ) ) end; atcommand "@reloadbattleconf"; announce "double drop rate ended", bc_all; end;}
  11. Upvote
    Angelmelody got a reaction from Ehwaz in R> Jumping Candy item script   
    solved by myself
     
     
     
    { Id: 14586 AegisName: "Spark_Candy" Name: "jumping candy" Type: 2 Buy: 0 Weight: 10 Upper: 63 Delay: 180000 Trade: { nodrop: true noselltonpc: true } Script: <" sc_start SC_INCBASEATK,60000,20; sc_start SC_INCASPDRATE,60000,25; sc_start SC_ENDURE,60000,1; sc_start4 SC_HPDRAIN,60000,100,10,0,0; ">},adding required sc state 
     
     
  12. Upvote
    Angelmelody reacted to quesoph in Robot Gloves   
    This is a free release.
    Please do not claim my work as yours.

    robotgloves.7z
     
  13. Upvote
    Angelmelody got a reaction from evilpuncker in June Digest 2014   
    the fewest commits from past to present .
    ..........
     
    no comment
  14. Upvote
    Angelmelody got a reaction from rodney2210 in Help ! Convert the source   
    Sorry, fixed typo try again
     
     
     
  15. Upvote
    Angelmelody got a reaction from rodney2210 in Help ! Convert the source   
    /* ====================================================== * * @cloneskill [Hold] * <> Permite ao jogador plagiar qualquer habilidade * Uso: * <> @cloneskill <id/nome da habilidade> <nível> <tipo> * tipo: * <> 0 = Copiada através da habilidade Plágio * <> 1 = Copiada através da habilidade Mimetismo * ------------------------------------------------------ */ACMD(cloneskill){ char name[255]; int id, lvl, type = 0, oldskreg; if (!message || !*message || ( sscanf(message, ""%99[^"]" %d %d", name, &lvl, &type) < 2 && sscanf(message, "%99s %d %d", name, &lvl, &type) < 2 ) ) { clif->message(fd, "Voce precisa inserir ID e Nivel da habilidade."); return false; } if(!(id = skill->name2id(name)) && !(id = skill->get_index(atoi(name)))) { clif->message(fd, "Nome ou ID da habilidade sao invalidos."); return false; } if(oldskreg = pc_readglobalreg(sd,script->add_str( ((type) ? "REPRODUCE_SKILL" : "CLONE_SKILL")))) { sd->status.skill[oldskreg].id = 0; sd->status.skill[oldskreg].lv = 0; sd->status.skill[oldskreg].flag = 0; clif->deleteskill(sd, oldskreg); } sd->status.skill[id].id = id; sd->status.skill[id].lv = lvl; sd->status.skill[id].flag = SKILL_FLAG_PLAGIARIZED; if(type) sd->reproduceskill_id = id; else sd->cloneskill_id = id; pc_setglobalreg(sd, script->add_str( ((type) ? "REPRODUCE_SKILL" : "CLONE_SKILL")), id); pc_setglobalreg(sd, script->add_str( ((type) ? "REPRODUCE_SKILL_LV" : "CLONE_SKILL_LV")), lvl); clif->addskill(sd, id); sprintf(atcmd_output,"Habilidade: '%s' | Nivel: '%d' | Utilizando: '%s'", skill->get_name(id), lvl, ((type) ? "Mimetismo" : "Plagio")); clif->message(fd, atcmd_output); return true;} ACMD_DEF(cloneskill),
  16. Upvote
    Angelmelody reacted to Tokeiburu in GRF Editor   
    File Name: GRF Editor
    File Submitter: Tokeiburu
    File Submitted: 20 Jun 2014
    File Category: Client Resources
     
    ** This program has been orignally uploaded on rAthena; it's been uploaded on Hercules due to multiple requests. If you have suggestions or feedback and you want a quick response, please contact me via rAthena. I will respond on Hercules' forum as well, but it'll take a bit longer .
     
    Hey everyone,
     
    This is a GRF tool I started to develop for my own personnal use, but I thought I'd share it since I've upgraded the UI. Its primary goal is to be easy to use while offering a wide variety of options and customizations. The software is quite stable and can handle large operations easily.
     
    How to install
    Download the zip archive provided from the download link at the bottom of this description or directly from there : http://www.mediafire.com/?aflylbhblrzpz0h
    Install the application with GRF Editor Installer.exe; if you are missing a .NET Framework you will be prompted to download it.
    Once you are done, you can start the program from the link on your desktop.

    Key features
    Overall speed is faster (or at least equal) than any GRF tool.
    Common operations : add, delete, merge, extract, preview, save.
    Undo and redo for any operation.
    It can open any GRF file.
    Clean and very interactive interface.
    Saving formats supported : 0x200, 0x103 and 0x102 (through the Settings page).
    Instant filter and search options (example : "map .gat").
    File association and context menus integration for .grf, .gpf and .rgz (through the Settings page).
    Can rebuild separated images into one file easily.
    Lub decompilation (in beta, but it can decompile almost any lub file so far).
    Drag and drop (with the ALT key, can be modified in the Settings page). This is a big part of the software; most of the items can be moved around within the application itself or from/to Windows Explorer.

    Tools
    Sprite editor : a simple sprite editor with powerful features. Semi-transparent images can be added, you can easily change the order or replace images, etc. This tool can convert images in the wrong type by showing you multiple solutions (merging a new palette, dithering the image by using current palette, using the closest color, and a few more).
    Grf validation : allows you to validate a GRF with multiple settings. It can detect corrupted GRF entries, invalid sprites, empty files, non-GRF files, duplicate files and a lot more.
    Flat maps maker : generates flat maps from .gat and .rsw files. Useful to generate WoE maps or to fasten up the loading time.
    Patch maker : generates a GRF patch based on two different GRFs.
    Hash viewer : shows the hash code (both CRC32 and MD5) for files.
    Image converter : converts an image to any format requested (BMP, PNG, JPG, TGA).
    GrfCL : used to create batch files (.bat) which can automate tasks on GRF files. See the content in GrfCL.rar in the download for more information. This tool can be customized from the sources as well.
    Palette recolorer : creates new sprites by changing their colors (this tool is now deprecated).
    Client database editor : allows modifications of the database client files (txt and lua) with easy and simple tools. Work in progress.

    Grf encryption
     

    The encryption feature has been enabled again. It's similar to what it used to be and it has been tested on client versions ranging from 2012-08-01 to 2014-02-05. Some error messages will be displayed if necessary. If you have an issue, copy the error message (with the code, if there's one) and send me the client executable with the cps.dll file generated by GRF Editor. There shouldn't be compatibility issues anymore though!  
    Technical stuff
    Requires .Net Framework 3.5 (SP1) Client Profile to run (3.5 or more will work as well).
    Automatically converts file name encoding to their proper values (you can change the encoding).
    Data virtualization is used as much as possible to preview files, meaning the files aren't completely loaded.
    Right-clicking an item will bring up the available options with that file.
    Preview file formats : txt, log, xml, lua, lub, bmp, png, tga, jpp, db, ebm, pal, gnd, rsw, gat, rsm, str, spr, act, imf, fna and wav.
    Services are "crash ready", meaning that you will be warned about a failed operation and no work will be lost (the application won't close and crash). It tries to continue operating even if it meets unsual conditions.
    Operations can be cancelled by clicking on the button near the progress bar.
    The warning level can be changed to avoid messages like "Please select a folder first."
    When prompted with an error, use Ctrl-C to copy the current dialog's content.

    Some screenshots!
    1) Previewing an act file, while showing the search feature

     
    2) Preview of a model file (rsm)

     
    3) Preview of GrfCL with the MakeGrf command

     
    4) Preview of the Client Database Editor

     
    5) Preview of Grf validation

     
    6) Search feature (press Ctrl-F or Ctrl-H to bring up within a text editor)

    Sources : http://www.mediafire.com/download.php?7z6hkdag4ayj8rs
     
    Got a feedback? I'd gladly hear you out and fix issues you have with the program. If you want new features to be added, don't hesitate to ask!
     
    Click here to download this file
  17. Upvote
    Angelmelody got a reaction from Helena in How to also block/check for items in cart?   
    http://herc.ws/board/topic/6029-script-cmd-cartcountitem/
     
     Try this command that will immediately check cart inventory item 
     
      without waiting  the emulator to save player's cart data
  18. Upvote
    Angelmelody got a reaction from Legend in [script cmd] cartcountitem   
    *cartcountitem( <item id> or "<item name>" )*cartcountitem2(<item id> or "<item name>",<identify>,<refine>,<attribute>,<card1>,<card2>,<card3>,<card4>)  
     
     
    This cmd will return the number of items for the specified item ID that the invoking character has in the cart inventory
     
     
     
    download:
    cartcountitem.c
  19. Upvote
    Angelmelody got a reaction from Helena in How to also block/check for items in cart?   
    - script Vanilla1 -1,{OnPCLoadMapEvent:getmapxy(.@map$,.@mapx,.@mapy,0);if(.@map$ == "prtg_cas01"){ for(set .@i,0; .@i < getarraysize(.itemcheck); set .@i, .@i + 1){ if(countitem(.itemcheck[.@i])){ dispbottom "[ Info ] : item ["+getitemname(.itemcheck[.@i])+"] found (Inventory). Kicking.."; warp "prontera",200,180; end; } if(query_sql("SELECT `nameid` FROM `cart_inventory` WHERE `char_id` = " + getcharid(0), .itemcheck[0]) { dispbottom "[ Info ] : item ["+getitemname(.itemcheck[.@i])+"] found (Cart). Kicking.."; warp "prontera",200,180; end; } }end;OnInit:setarray .itemcheck[0],2383,2204,20025,20026,20027,20028,20029,20030,20031,20032,20033;end;}prtg_cas01 mapflag loadevent
  20. Like
    Angelmelody got a reaction from Coookie in MVP and Mini Boss Card global removal   
    you can try src modification
     
     
    https://github.com/HerculesWS/Hercules/blob/master/src/map/mob.c#L2373
     
    to add this line
    if ( it->type == IT_CARD && ( md->status.mode & MD_BOSS ) ) continue;
  21. Upvote
    Angelmelody reacted to Luffy in MVP and Mini Boss Card global removal   
    Here i've searched it including the mini boss based on RMS.
     
     
     
  22. Upvote
    Angelmelody reacted to Mumbles in Partyscript Debugger   
    Utility: Partyscript Debugger
     
    Description:
    Debug utility for Mhalicot's partyscript plugin. Accessible via '@modparty' or '@mp'.  
    Download:
    https://github.com/datmumbles/Scripts/raw/master/sample/party.txt
  23. Upvote
    Angelmelody got a reaction from iZeal in No ATL+Q on 2012-04-10?   
    make sure your client diffed with load lua before lub option
    and
    check your lua files are  in ROdataluafiles514lua fileshokey.lua
     
    if still not working  here is the  lua file  for  2012-04-10a
     
    you can try these lua files  instead of yours.
     
    2012-04-10 lua file.7z
  24. Upvote
    Angelmelody reacted to Dastgir in Display Name to item_db   
    Fixed @r19. (ahh, I have overseen too many lines ..)
  25. Upvote
    Angelmelody reacted to Dastgir in Display Name to item_db   
    Requested by AngelMelody: http://herc.ws/board/topic/2954-item-db-file-structure-overhaul/page-4#entry37029
     
    This is a simple tool which allows you to copy display names for range of items from idnum2itemdisplayname.txt or from iteminfo.lua to your item_db.conf, within just 30 seconds.
     
    Link: https://github.com/dastgir/LuaScripts/tree/master/Lua/CopyDisplayName
     
    just run copyname.bat and input the details it requires.
×
×
  • Create New...

Important Information

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