Jump to content

Nova

Members
  • Posts

    265
  • Joined

  • Last visited

  • Days Won

    8

Posts posted by Nova

  1. Uh, you should be able to copy the snippets directly from an up to date script.c

    I'll add the code blocks to this post shortly. Though I don't see how this is client related, I imagine you meant outdated source files.

     

    https://github.com/rathena/rathena/blob/master/src/map/script.c

    /*==========================================
     * Play a BGM on a single client [Rikter/Yommy]
     *------------------------------------------*/
    BUILDIN_FUNC(playBGM)
    {
    	struct map_session_data* sd;
    
    	if( ( sd = script_rid2sd(st) ) != NULL ) {
    		clif_playBGM(sd, script_getstr(st,2));
    	}
    	return SCRIPT_CMD_SUCCESS;
    }
    
    static int playBGM_sub(struct block_list* bl,va_list ap)
    {
    	const char* name = va_arg(ap,const char*);
    	clif_playBGM(BL_CAST(BL_PC, bl), name);
    	return 0;
    }
    
    static int playBGM_foreachpc_sub(struct map_session_data* sd, va_list args)
    {
    	const char* name = va_arg(args, const char*);
    	clif_playBGM(sd, name);
    	return 0;
    }
    
    /*==========================================
     * Play a BGM on multiple client [Rikter/Yommy]
     *------------------------------------------*/
    BUILDIN_FUNC(playBGMall)
    {
    	const char* name;
    	name = script_getstr(st,2);
    
    	if( script_hasdata(st,7) ) {// specified part of map
    		const char* mapname = script_getstr(st,3);
    		int x0 = script_getnum(st,4);
    		int y0 = script_getnum(st,5);
    		int x1 = script_getnum(st,6);
    		int y1 = script_getnum(st,7);
    
    		map_foreachinarea(playBGM_sub, map_mapname2mapid(mapname), x0, y0, x1, y1, BL_PC, name);
    	}
    	else if( script_hasdata(st,3) ) {// entire map
    		const char* mapname = script_getstr(st,3);
    
    		map_foreachinmap(playBGM_sub, map_mapname2mapid(mapname), BL_PC, name);
    	}
    	else {// entire server
    		map_foreachpc(&playBGM_foreachpc_sub, name);
    	}
    	return SCRIPT_CMD_SUCCESS;
    }
    
    
  2. Yes, I believe you're the only one feeling this way. I don't know why you decided to go for 2014-02-05b after being told 2014 wasn't very thoroughly tested and we recommended you use a 2013 client.

    Your previous post before that one had no details, so nobody was able to help you, and you just exploded into a huge rant, making people feel even less inclined to bother.

  3. Easiest way is to hard set the values in the stylist itself.

    setarray .@Styles[1],

    getbattleflag("max_cloth_color"),

    getbattleflag("max_hair_style"),

    getbattleflag("max_hair_color");

    Becomes

    setarray .@Styles[1],25,29,10;

    Or whatever your respective max styles are.

    Though it is also easy to change the conf files, this method allows you to have additional styles locked out. So your max cloth color could be 300 and this NPC would manage only the first 25.

  4. You missed end quotes

    "poring_w01,81,203,59,"quiz_02",302,252;

    After poring_01 you need a "

    Oh and you need 4 coords. Walk to the top most of the map and grab that, then do the bottom right as well. Should be like 0,400,400,0

    "poring_w01",0,400,400,0,"quiz_02",302,252;

×
×
  • Create New...