diff --git a/Changelog-Trunk.txt b/Changelog-Trunk.txt index 78ba2a0765..6db20a34ac 100644 --- a/Changelog-Trunk.txt +++ b/Changelog-Trunk.txt @@ -4,6 +4,10 @@ AS OF SVN REV. 5091, WE ARE NOW USING TRUNK. ALL UNTESTED BUGFIXES/FEATURES GO IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK. EVERYTHING ELSE GOES INTO TRUNK AND WILL BE MERGED INTO STABLE BY VALARIS AND WIZPUTER. -- VALARIS +2006/03/05 + * Fixed easter.txt typo. [Lance] + * Extended summon command to enable custom timeouts. [Lance] + 2006/03/04 * Fixed a bug in the subnet checking function, login-TXT server. Also changed the messages to be a bit more informative. [Skotlex] diff --git a/npc/events/easter.txt b/npc/events/easter.txt index a75310b718..6d30619039 100644 --- a/npc/events/easter.txt +++ b/npc/events/easter.txt @@ -17,8 +17,7 @@ //============================================================ -geffen.gat,95,201,3 script Shilo 50, -{ +geffen.gat,95,201,3 script Shilo 50,{ mes "[Shilo]"; if(easter_Q == 1) goto L_Check; mes "*Sigh*... Where is my sister!?"; diff --git a/src/map/script.c b/src/map/script.c index 89cd5d8de4..b0bc771712 100644 --- a/src/map/script.c +++ b/src/map/script.c @@ -7429,7 +7429,7 @@ int buildin_mapwarp(struct script_state *st) // Added by RoVeRT return 0; map_foreachinarea(buildin_areawarp_sub, - m,x0,y0,x1,y1,BL_PC, str,x,y ); + m,x0,y0,x1,y1,BL_PC, map_mapname2mapid(str),x,y ); return 0; } @@ -9038,7 +9038,7 @@ int buildin_logmes(struct script_state *st) int buildin_summon(struct script_state *st) { - int _class, id; + int _class, id, timeout=0; char *str,*event=""; struct map_session_data *sd; struct mob_data *md; @@ -9049,14 +9049,16 @@ int buildin_summon(struct script_state *st) str =conv_str(st,& (st->stack->stack_data[st->start+2])); _class=conv_num(st,& (st->stack->stack_data[st->start+3])); if( st->end>st->start+4 ) - event=conv_str(st,& (st->stack->stack_data[st->start+4])); + timeout=conv_num(st,& (st->stack->stack_data[st->start+4])); + if( st->end>st->start+5 ) + event=conv_str(st,& (st->stack->stack_data[st->start+5])); id=mob_once_spawn(sd, "this", 0, 0, str,_class,1,event); if((md=(struct mob_data *)map_id2bl(id))){ md->master_id=sd->bl.id; md->special_state.ai=1; md->mode=mob_db(md->class_)->mode|0x04; - md->deletetimer=add_timer(tick+60000,mob_timer_delete,id,0); + md->deletetimer=add_timer(tick+(timeout<=0?timeout*1000:60000),mob_timer_delete,id,0); clif_misceffect2(&md->bl,344); } clif_skill_poseffect(&sd->bl,AM_CALLHOMUN,1,sd->bl.x,sd->bl.y,tick);