2010 081234567891011121314151617181920212223242526272829302010 10

TOP > Auriga/eAthena > title − 【Aurig】スコアの表示【戦場システム】
 【Aurig】スコアの表示【戦場システム】
あああ

戦場システムで使うよくわからないこれの移植について(・艸・`*)

追加したスクリプトの使い方!(・艸・`*)

        bg_updatescore関数
            bg_updatescore <gatname>,<num1>,<num2>
           
            <gatname>        マップ名
            <num1>            数値
            <num2>            数値
           
            <gatname>におけるスコアを設定する


※battlegroundというmapflagを各自で追加してから以下を追加してください※

map.h
L900あたり
map_data構造体の中に追加

    int npc_num;
    int users;
//------------------追加-------------by mame-------
    short bgscore_lion, bgscore_eagle; // Battleground ScoreBoard
//---------------------ここまで--------------------



clif.h
#endifの上あたりに

//------------------追加-------------by mame-------
int clif_bg_updatescore(int m);
int clif_bg_updatescore_single(struct map_session_data *sd);
void clif_set01D6(struct map_session_data* sd, int mode);

//---------------------ここまで--------------------

clif.c
適当なところに以下を追加

//------------------追加-------------by mame-------
int clif_bg_updatescore(int m)
{
    struct block_list bl;
    unsigned char buf[6];

    bl.id = 0;
    bl.type = BL_NUL;
    bl.m = m;

    WBUFW(buf,0) = 0x2de;
    WBUFW(buf,2) = map[m].bgscore_lion;
    WBUFW(buf,4) = map[m].bgscore_eagle;
    clif_send(buf,6,&amp;bl,ALL_SAMEMAP);

    return 0;
}

int clif_bg_updatescore_single(struct map_session_data *sd)
{
    int fd;
    nullpo_retr(0,sd);
    fd = sd-&gt;fd;
    
    WFIFOW(fd,0) = 0x2de;
    WFIFOW(fd,2) = map[sd-&gt;bl.m].bgscore_lion;
    WFIFOW(fd,4) = map[sd-&gt;bl.m].bgscore_eagle;
    WFIFOSET(fd,6);
    return 0;
}

void clif_set01D6(struct map_session_data* sd, int mode)
{
    int fd;

    nullpo_retv(sd);

    fd = sd-&gt;fd;
    WFIFOW(fd,0)=0x1D6;
    WFIFOW(fd,2)=mode;
    WFIFOSET(fd,packet_db[0x1D6].len);
}

//---------------------ここまで--------------------


clif_parse_LoadEndAck関数
L11500あたり

    if(map[sd-&gt;bl.m].flag.pk) {
        sd-&gt;pvp_timer = -1;
        clif_set0199(sd-&gt;fd,4);
        if(battle_config.pk_noshift)
            sd-&gt;status.karma = 1;
    } else if(map[sd-&gt;bl.m].flag.pvp) {
        sd-&gt;pvp_timer     = add_timer(gettick()+200,pc_calc_pvprank_timer,sd-&gt;bl.id,NULL);
        sd-&gt;pvp_rank      = 0;
        sd-&gt;pvp_lastusers = 0;
        sd-&gt;pvp_point     = 5;
        clif_set0199(sd-&gt;fd,1);
    } else {
        sd-&gt;pvp_timer = -1;
    }

//------------------追加-------------by mame-------
        if(map[sd-&gt;bl.m].flag.battleground )
        {
            clif_set01D6(sd,19); // Battleground Mode
                clif_bg_updatescore_single(sd);
        }

//---------------------ここまで--------------------

    if(map[sd-&gt;bl.m].flag.gvg)
        clif_set0199(sd-&gt;fd,3);

    if(battle_config.pk_noshift &amp;&amp; !map[sd-&gt;bl.m].flag.pk)
        sd-&gt;status.karma = 0;


scripct.c
L3700
//埋め込み関数 とかいてあるところの↓に追加

int buildin_bg_updatescore(struct script_state *st);


function buildin_func構造体の中に適当に追加

    {buildin_bg_updatescore,"bg_updatescore","sii"},

わかりやすいところに追加

/*==========================================
 * 鳥さんと虎さんの表示更新
 *------------------------------------------
 */
int buildin_bg_updatescore(struct script_state *st)
{
    const char *str;
    int m;

    str = conv_str(st,& (st->stack->stack_data[st->start+2]));
    if( (m = map_mapname2mapid(str)) < 0 )
        return 0;

    map[m].bgscore_lion = conv_num(st,& (st->stack->stack_data[st->start+3]));
    map[m].bgscore_eagle = conv_num(st,& (st->stack->stack_data[st->start+4]));

    clif_bg_updatescore(m);
    return 0;
}


PVPで使用したい場合は、flag.battlegroundflag.pvp に変えて使用してください

カテゴリ【Auriga/eAthenaトラックバック(0) | コメント(2) | top↑

+ Comment List +
【ぜーんぜん関係無いけど】 ******より。
通りすがってきました

このスコアのライオンの画像って何ともいたたまれない寂しい画像ですよね・・・・・・・・・・
完全に横たわってお亡くなりになっているような・・・・・・

【Re: ぜーんぜん関係無いけど】 真姫より。
コメありがとうございます(●´ω`●)

確かにお亡くなりになってるようにも見えるし・・・
ライオンなのに強さが感じられない・・・w


<<item_db_editer | ホーム | 【Ragexe】Lua_filesスキル日本語化>>
ぜーんぜん関係無いけど
通りすがってきました

このスコアのライオンの画像って何ともいたたまれない寂しい画像ですよね・・・・・・・・・・
完全に横たわってお亡くなりになっているような・・・・・・
【2010/09/05 14:59】URL | ****** #wLMIWoss[ 編集]
Re: ぜーんぜん関係無いけど
コメありがとうございます(●´ω`●)

確かにお亡くなりになってるようにも見えるし・・・
ライオンなのに強さが感じられない・・・w
【2010/09/05 20:34】URL | 真姫 #-[ 編集]















管理者にだけ表示を許可する

トラックバックURL
http://xachux.blog109.fc2.com/tb.php/81-5a555dac 
この記事にトラックバックする(FC2ブログユーザー)

| ホーム |