Jump to content

idLaZ

Members
  • Posts

    93
  • Joined

  • Last visited

  • Days Won

    1

Everything posted by idLaZ

  1. @Scylla thank you! The source mod is working fine with the error. However, how to fix to make the single strip always consume 1 GCoat for every attempt? The current mod is not consuming any gcoat.
  2. Very nice update and it is working! Is this possible to reload when the server is currently up?
  3. Provide the missing files please ? Thank you ?
  4. Open skill.c Find: struct map_session_data *tsd = BL_CAST(BL_PC, target); After, add: struct status_change *sc, *tsc; Find the 2: if( require.weapon && !pc_check_weapontype(sd,require.weapon) ) { Replace with: if(require.weapon && !(pc_check_weapontype(sd,require.weapon) || (skill_id == LK_PARRYING && sc && sc->data[SC_SPIRIT] && sc->data[SC_SPIRIT]->val2 == SL_KNIGHT && sd->status.weapon == W_1HSWORD)) ){
  5. If I remember correctly, I made it work in the latest rAthena. Will send you the fix, possible later when I'm in office.
  6. Are you using the latest version of rAthena?
  7. Ahh yes, I thought you have commented other line than that. It is not working on the latest. Thank you!
  8. Hi, are you using latest rAthena? May I know what lines have you commented? Thanks.
  9. This is already fixed. The changes is located in conf folder.
  10. Sanctuary and Slim Potion Pitcher are working on Emperium but the Potion Pitch is still not. Anyone knows why? Thanks in advance. BUMP
  11. Yes, I always recompile whenever I edit inside src folder. Additional info: Sanctuary and Slim Potion Pitch are working. Still need to know why the Potion Pitch is not working on Emperium. BUMP
  12. Hi, anyone knows why Potion Pitch is still not working even I already commented these lines? Thank you.
  13. Can anyone update this to the latest rAthena? Index: src/map/battle.c =================================================================== --- src/map/battle.c (revision 15817) +++ src/map/battle.c (working copy) @@ -233,10 +233,8 @@ nullpo_ret(target); sc = status_get_sc(target); - - if( sc && sc->data[SC_DEVOTION] && damage > 0 && skill_id != PA_PRESSURE && skill_id != CR_REFLECTSHIELD ) + //devotion patch by Cyrix (rathena) ([email protected]) +//https://www.facebook.com/ragdb.ragnarok +if( sc && sc->data[SC_DEVOTION] && damage > 0 && skill_id != PA_PRESSURE && skill_id != CR_REFLECTSHIELD ) damage = 0; - if ( !battle_config.delay_battle_damage || amotion <= 1 ) { map_freeblock_lock(); status_fix_damage(src, target, damage, ddelay); // We have to seperate here between reflect damage and others [icescope] @@ -4186,7 +4184,7 @@ } else status_change_end(target, SC_DEVOTION, INVALID_TIMER); - } + } if (sc && sc->data[SC_AUTOSPELL] && rnd()%100 < sc->data[SC_AUTOSPELL]->val4) { int sp = 0; Index: src/map/pc.c =================================================================== --- src/map/pc.c (revision 15817) +++ src/map/pc.c (working copy) @@ -6078,8 +6078,7 @@ for(k = 0; k < 5; k++) if (sd->devotion[k]){ struct map_session_data *devsd = map_id2sd(sd->devotion[k]); - if (devsd) - status_change_end(&devsd->bl, SC_DEVOTION, INVALID_TIMER); + //devotion patch by Cyrix (rathena) ([email protected]) +//https://www.facebook.com/ragdb.ragnarok + if (devsd) status_change_end(&devsd->bl,SC_DEVOTION,-1); sd->devotion[k] = 0; } Index: src/map/status.c =================================================================== --- src/map/status.c (revision 15817) +++ src/map/status.c (working copy) @@ -1015,31 +1015,43 @@ // if (!target->prev && !(flag&2)) // return 0; //Cannot damage a bl not on a map, except when "charging" hp/sp - sc = status_get_sc(target); - if( hp && battle_config.invincible_nodamage && src && sc && sc->data[SC_INVINCIBLE] && !sc->data[SC_INVINCIBLEOFF] ) - hp = 1; + //devotion patch by Cyrix (rathena) ([email protected]) +//https://www.facebook.com/ragdb.ragnarok + sc = status_get_sc(target); + - if( hp && !(flag&1) ) { + if( hp && !(flag&(1|8)) ) { if( sc ) { struct status_change_entry *sce; + if( (sce = sc->data[SC_DEVOTION]) && src && battle_getcurrentskill(src) != PA_PRESSURE ) + { // Devotion prevents any of the other ailments from ending. + struct block_list *d_bl = map_id2bl(sce->val1); + + if( d_bl && ( + (d_bl->type == BL_MER && ((TBL_MER*)d_bl)->master && ((TBL_MER*)d_bl)->master->bl.id == target->id) || + (d_bl->type == BL_PC && ((TBL_PC*)d_bl)->devotion[sce->val2] == target->id) + ) && check_distance_bl(target, d_bl, sce->val3) ) + { + clif_damage(d_bl, d_bl, gettick(), 0, 0, hp, 0, 0, 0); + status_fix_damage(NULL, d_bl, hp, 0); + return 0; + } + + status_change_end(target, SC_DEVOTION, -1); + } if (sc->data[SC_STONE] && sc->opt1 == OPT1_STONE) - status_change_end(target, SC_STONE, INVALID_TIMER); - status_change_end(target, SC_FREEZE, INVALID_TIMER); - status_change_end(target, SC_SLEEP, INVALID_TIMER); - status_change_end(target, SC_WINKCHARM, INVALID_TIMER); - status_change_end(target, SC_CONFUSION, INVALID_TIMER); - status_change_end(target, SC_TRICKDEAD, INVALID_TIMER); - status_change_end(target, SC_HIDING, INVALID_TIMER); - status_change_end(target, SC_CLOAKING, INVALID_TIMER); - status_change_end(target, SC_CHASEWALK, INVALID_TIMER); - status_change_end(target, SC_CAMOUFLAGE, INVALID_TIMER); - status_change_end(target, SC__INVISIBILITY, INVALID_TIMER); - status_change_end(target, SC_DEEPSLEEP, INVALID_TIMER); + status_change_end(target,SC_STONE,-1); + status_change_end(target,SC_FREEZE,-1); + status_change_end(target,SC_SLEEP,-1); + status_change_end(target,SC_WINKCHARM,-1); + status_change_end(target,SC_CONFUSION,-1); + status_change_end(target,SC_TRICKDEAD,-1); + status_change_end(target,SC_HIDING,-1); + status_change_end(target,SC_CLOAKING,-1); + status_change_end(target,SC_CHASEWALK,-1); if ((sce=sc->data[SC_ENDURE]) && !sce->val4) { //Endure count is only reduced by non-players on non-gvg maps. //val4 signals infinite endure. [Skotlex] if (src && src->type != BL_PC && !map_flag_gvg(target->m) && !map[target->m].flag.battleground && --(sce->val2) < 0) - status_change_end(target, SC_ENDURE, INVALID_TIMER); + status_change_end(target, SC_ENDURE, -1); } if ((sce=sc->data[SC_GRAVITATION]) && sce->val3 == BCT_SELF) { struct skill_unit_group* sg = skill_id2group(sce->val4); @@ -8235,14 +8247,14 @@ for( i = 0; i < 5; i++ ) { if( sd->devotion[i] && (tsd = map_id2sd(sd->devotion[i])) && tsd->sc.data[type] ) - status_change_end(&tsd->bl, type, INVALID_TIMER); + status_change_end(&tsd->bl, type, -1); } } else if( bl->type == BL_MER && ((TBL_MER*)bl)->devotion_flag ) { // Clear Status from Master tsd = ((TBL_MER*)bl)->master; if( tsd && tsd->sc.data[type] ) - status_change_end(&tsd->bl, type, INVALID_TIMER); + status_change_end(&tsd->bl, type, -1); } } break; @@ -8258,10 +8270,10 @@ clif_devotion(d_bl, NULL); } - status_change_end(bl, SC_AUTOGUARD, INVALID_TIMER); - status_change_end(bl, SC_DEFENDER, INVALID_TIMER); - status_change_end(bl, SC_REFLECTSHIELD, INVALID_TIMER); - status_change_end(bl, SC_ENDURE, INVALID_TIMER); + status_change_end(bl,SC_AUTOGUARD,-1); + status_change_end(bl,SC_DEFENDER,-1); + status_change_end(bl,SC_REFLECTSHIELD,-1); + status_change_end(bl,SC_ENDURE,-1); } break; Thank you.
  14. Hi, anyone knows what's wrong in this error? I'm using the latest rathena. Thanks!
  15. Working fine now with help of Dastgir from Hercules Discord. Solution: Just put any value on last login and brithdate.
  16. Hi! Anyone knows what's causing this error? I also have a working Hercules test server in my machine where I run the rAthena. Already tried various troubleshooting to fix this but got no luck. Anyone can help me? Thanks!
  17. Hi @Vykimo, is this compatible with the latest hercules?
  18. My vote goes to @fTakano, the green one. Followed by @Narutekz. Awesome designs!
  19. Can't download the map. Anyone got a backup download?
×
×
  • Create New...