Updated restrictions for Call partner and Emergency Recall abit

git-svn-id: https://svn.code.sf.net/p/rathena/svn/athena@339 54d463be-8e91-2dee-dedb-b68131a5f0ec
This commit is contained in:
(no author) 2004-11-24 03:10:30 +00:00
parent 427a127b53
commit 8c36a195bf
3 changed files with 9 additions and 5 deletions

View File

@ -12,6 +12,8 @@ Date Added
- Corrected Assassin Cross' dual wield - Corrected Assassin Cross' dual wield
- Changed player_cloak_check_type to yes by default and edited description - Changed player_cloak_check_type to yes by default and edited description
since it's already fully implemented. 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 11/22
* (TXT)Stripped some code off read_gm_accounts() and made with it addGM() [MC Cameri] * (TXT)Stripped some code off read_gm_accounts() and made with it addGM() [MC Cameri]

View File

@ -29,6 +29,8 @@ sec_pri.gat mapflag nosave SavePoint
// No Teleport =========================== // No Teleport ===========================
sec_pri.gat mapflag noteleport sec_pri.gat mapflag noteleport
// No Warp ===============================
sec_pri.gat mapflag nowarp
// Bloody Jail =========================== // Bloody Jail ===========================
//Uncomment following maps to let your prisoners fight with other prisoners //Uncomment following maps to let your prisoners fight with other prisoners

View File

@ -4237,14 +4237,14 @@ int skill_castend_nodamage_id( struct block_list *src, struct block_list *bl,int
case WE_CALLPARTNER: /* あなたに?いたい */ case WE_CALLPARTNER: /* あなたに?いたい */
if(sd && dstsd){ if(sd && dstsd){
if(map[sd->bl.m].flag.nomemo){
clif_skill_teleportmessage(sd,1);
return 0;
}
if((dstsd = pc_get_partner(sd)) == NULL){ if((dstsd = pc_get_partner(sd)) == NULL){
clif_skill_fail(sd,skillid,0,0); clif_skill_fail(sd,skillid,0,0);
return 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); skill_unitsetting(src,skillid,skilllv,sd->bl.x,sd->bl.y,0);
} }
break; 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++) { for(i = 0; i < g->max_member; i++, j++) {
if (j>8) j=0; if (j>8) j=0;
if ((dstsd = g->member[i].sd) != NULL && sd != dstsd && 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); clif_skill_nodamage(src,bl,skillid,skilllv,1);
pc_setpos(dstsd, sd->mapname, sd->bl.x+dx[j], sd->bl.y+dy[j], 2); pc_setpos(dstsd, sd->mapname, sd->bl.x+dx[j], sd->bl.y+dy[j], 2);
} }