int viewpointmap_sub(struct block_list *bl, va_list ap) { struct map_session_data *sd; int npc_id, type, x, y, id, color; npc_id = va_arg(ap,int); type = va_arg(ap,int); x = va_arg(ap,int); y = va_arg(ap,int); id = va_arg(ap,int); color = va_arg(ap,int); sd = (struct map_session_data *)bl; clif->viewpoint(sd,npc_id,type,x,y,id,color); return 0; } BUILDIN(viewpointmap) { int type,x,y,id,color,m; const char *map_name; map_name = script_getstr(st,2); if( (m = map->mapname2mapid(map_name)) < 0 ) return true; // Invalid Map type=script_getnum(st,3); x=script_getnum(st,4); y=script_getnum(st,5); id=script_getnum(st,6); color=script_getnum(st,7); map->foreachinmap(viewpointmap_sub,m,BL_PC,st->oid,type,x,y,id,color); return true; }