diff options
-rw-r--r-- | Changelog.txt | 2 | ||||
-rw-r--r-- | conf-tmpl/mapflag/jail.txt | 2 | ||||
-rw-r--r-- | src/map/skill.c | 10 |
3 files changed, 9 insertions, 5 deletions
diff --git a/Changelog.txt b/Changelog.txt index ac8b6e7bf..4ee296625 100644 --- a/Changelog.txt +++ b/Changelog.txt @@ -12,6 +12,8 @@ Date Added - Corrected Assassin Cross' dual wield - Changed player_cloak_check_type to yes by default and edited description since it's already fully implemented. + - Added a bit more restrictions to Call Partner and Emergency Recall and + updated mapflag for sec_pri.gat 11/22 * (TXT)Stripped some code off read_gm_accounts() and made with it addGM() [MC Cameri] diff --git a/conf-tmpl/mapflag/jail.txt b/conf-tmpl/mapflag/jail.txt index 77e4c4d95..5e497b911 100644 --- a/conf-tmpl/mapflag/jail.txt +++ b/conf-tmpl/mapflag/jail.txt @@ -29,6 +29,8 @@ sec_pri.gat mapflag nosave SavePoint // No Teleport =========================== sec_pri.gat mapflag noteleport +// No Warp =============================== +sec_pri.gat mapflag nowarp // Bloody Jail =========================== //Uncomment following maps to let your prisoners fight with other prisoners diff --git a/src/map/skill.c b/src/map/skill.c index eb84c7598..0b734d41a 100644 --- a/src/map/skill.c +++ b/src/map/skill.c @@ -4237,14 +4237,14 @@ int skill_castend_nodamage_id( struct block_list *src, struct block_list *bl,int case WE_CALLPARTNER: /* あなたに?いたい */ if(sd && dstsd){ - if(map[sd->bl.m].flag.nomemo){ - clif_skill_teleportmessage(sd,1); - return 0; - } if((dstsd = pc_get_partner(sd)) == NULL){ clif_skill_fail(sd,skillid,0,0); return 0; } + if(map[sd->bl.m].flag.nomemo || map[sd->bl.m].flag.nowarpto || map[dstsd->bl.m].flag.nowarp){ + clif_skill_teleportmessage(sd,1); + return 0; + } skill_unitsetting(src,skillid,skilllv,sd->bl.x,sd->bl.y,0); } break; @@ -4450,7 +4450,7 @@ int skill_castend_nodamage_id( struct block_list *src, struct block_list *bl,int for(i = 0; i < g->max_member; i++, j++) { if (j>8) j=0; if ((dstsd = g->member[i].sd) != NULL && sd != dstsd && - !map[sd->bl.m].flag.nowarpto && !map[sd->bl.m].flag.nowarp) { + !map[sd->bl.m].flag.nowarpto && !map[dstsd->bl.m].flag.nowarp) { clif_skill_nodamage(src,bl,skillid,skilllv,1); pc_setpos(dstsd, sd->mapname, sd->bl.x+dx[j], sd->bl.y+dy[j], 2); } |