Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 07/12/22 in all areas

  1. switch(select("MENU 1","MENU 2",(case == 1 ? "ON" : "OFF"))){ case 1: //CODE case 2: //CODE case 3: case = (case == 1 ? 0 : 1); } Use ternary operator
    1 point
  2. Lacking break on strip armor code. int d = 0; // By pass FCP when using single strip skills by 15%(requires Glistening Coat). if ( sd && tsc && sd->sc.data[SC_SPIRIT] && sd->sc.data[SC_SPIRIT]->val2 == SL_ROGUE && rand()%100 < 75 && ( skill_id == RG_STRIPWEAPON && tsc->data[SC_CP_WEAPON] || skill_id == RG_STRIPSHIELD && tsc->data[SC_CP_SHIELD] || skill_id == RG_STRIPARMOR && tsc->data[SC_CP_ARMOR] || skill_id == RG_STRIPHELM && tsc->data[SC_CP_HELM] ) ) { int item_id = 7139; // Glistening Coat int ii; ARR_FIND( 0, MAX_INVENTORY, ii, sd->inventory.u.items_inventory[ii].nameid == item_id ); if ( ii < MAX_INVENTORY ) { pc_delitem( sd, ii, 1, 0, 0, LOG_TYPE_CONSUME); switch ( skill_id ) { case RG_STRIPWEAPON: status_change_end( bl, SC_CP_WEAPON, INVALID_TIMER ); sc_start(src,bl,SC_STRIPWEAPON,100,skill_lv,skill_get_time(skill_id,skill_lv)); break; case RG_STRIPSHIELD: status_change_end( bl, SC_CP_SHIELD, INVALID_TIMER ); sc_start(src,bl,SC_STRIPSHIELD,100,skill_lv,skill_get_time(skill_id,skill_lv)); break; case RG_STRIPARMOR: status_change_end( bl, SC_CP_ARMOR, INVALID_TIMER ); sc_start(src,bl,SC_STRIPARMOR,100,skill_lv,skill_get_time(skill_id,skill_lv)); break; // <-- this part was missing case RG_STRIPHELM: status_change_end( bl, SC_CP_HELM, INVALID_TIMER ); sc_start(src,bl,SC_STRIPHELM,100,skill_lv,skill_get_time(skill_id,skill_lv)); break; } clif_skill_nodamage( src, bl, skill_id, skill_lv, i ); break; } }
    1 point
  3. go to skill.cpp and look for this // Ashura Strike still has slide effect in GVG if ((mbl == src || (!map_flag_gvg2(src->m) && !map_getmapflag(src->m, MF_BATTLEGROUND))) && unit_movepos(src, mbl->x + x, mbl->y + y, 1, 1)) { clif_blown(src); clif_spiritball(src); } change it into like this // Ashura Strike still has slide effect in GVG if (mbl == src || (!map_flag_gvg2(src->m) && !map_getmapflag(src->m, MF_BATTLEGROUND))) { clif_spiritball(src); }
    1 point
  4. @masterzeus Open "../src/map/pet.cpp" and in the function "pet_ai_sub_hard" change: if(!target && pd->loot && pd->loot->count < pd->loot->max && DIFF_TICK(tick,pd->ud.canact_tick) > 0) { to: if (!target && pd->loot && pd->loot->count < pd->loot->max && !pc_isdead(pd->master) && DIFF_TICK(tick,pd->ud.canact_tick) > 0) { Save changes and recompile the server.
    1 point
  5. My mistake. battle.c if( ((d_tbl && check_distance_bl(target, d_tbl, sc->data[SC_DEVOTION]->val3)) || e_tbl) && damage > 0 && skill_id != PA_PRESSURE && skill_id != CR_REFLECTSHIELD ) damage = 0; skill.c if (tsc && skill_id != PA_PRESSURE && skill_id != HW_GRAVITATION && skill_id != NPC_EVILLAND) {
    1 point
  6. if your pre add this to your db/import/skill_require_db.txt 215,0,0,17:19:21:23:25,0,0,0,99,0,0,none,0,0,7139,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RG_STRIPWEAPON 216,0,0,12:14:16:18:20,0,0,0,99,0,0,none,0,0,7139,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RG_STRIPSHIELD 217,0,0,17:19:21:23:25,0,0,0,99,0,0,none,0,0,7139,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RG_STRIPARMOR 218,0,0,12:14:16:18:20,0,0,0,99,0,0,none,0,0,7139,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RG_STRIPHELM and if your re add this instead 215,0,0,17:19:21:23:25,0,0,0,99,0,0,none,0,0,7139,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RG_STRIPWEAPON 216,0,0,12:14:16:18:20,0,0,0,99,0,0,none,0,0,7139,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RG_STRIPSHIELD 217,0,0,17:19:21:23:25,0,0,0,99,0,0,none,0,0,7139,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RG_STRIPARMOR 218,0,0,12:14:16:18:20,0,0,0,99,0,0,none,0,0,7139,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //RG_STRIPHELM
    1 point
  7. the fastest way by editing on `battle.c::battle_calc_damage`, find if( (sce = sc->data[SC_AUTOGUARD]) && flag&BF_WEAPON && !(skill_get_nk(skill_id)&NK_NO_CARDFIX_ATK) && rnd()%100 < sce->val2 ) { remove the `rnd()%100 < sce->val2` part, to if( (sce = sc->data[SC_AUTOGUARD]) && flag&BF_WEAPON && !(skill_get_nk(skill_id)&NK_NO_CARDFIX_ATK) ) {
    1 point
  8. try find on pc.c::pc_isUseitem, just find & follow this line if (sd->state.storage_flag && item->type != IT_CASH) { clif_colormes(sd->fd, color_table[COLOR_RED], msg_txt(sd,388)); return false; // You cannot use this item while storage is open. }it disables item usage while storage is opened, except cash_item (in item_db, the one that type 18)
    1 point
  9. Try replacing ... if (src->type == BL_PC) { sprintf(str, "You've healed %s for %dhp!", tsd->status.name, hp); clif_displaymessage(sd->fd, str); } if (target->type == BL_PC && target->id != src->id) { sprintf(str, "You've been healed for %dhp by %s!", hp, sd->status.name); clif_displaymessage(tsd->fd, str); } With: if (src->type == BL_PC) { if (target->type == BL_PC) { sprintf(str, "You've healed %s for %dhp!", tsd->status.name, hp); clif_displaymessage(sd->fd, str); } else { sprintf(str, "Target healed for %dhp!", hp); clif_displaymessage(sd->fd, str); } } if (target->type == BL_PC && target->id != src->id) { sprintf(str, "You've been healed for %dhp by %s!", hp, sd->status.name); clif_displaymessage(tsd->fd, str); }
    1 point
×
×
  • Create New...