Jump to content

Break

Members
  • Posts

    158
  • Joined

  • Last visited

  • Days Won

    1

Posts posted by Break

  1. Possible if the writing commands @votekick,

    allowing BG to vote against the other participants in the AFK characters (eg for approval Kick need 3 votes)?

     

    Just as well to change leader team @voteleader

  2. "Filter by job class" does not work in the top rankings ( add your own scripts)

     

    If the filter is not used , then all shows

    post-6008-0-88924900-1411300938_thumb.jpg

     

    That shows that the use of

    post-6008-0-40642100-1411300977_thumb.jpg

     

    Help solve the problem.

    Thanks in advance!

  3. I'm not sure exactly what the file is called, but you should be able to find it in Data/Texture/Effect folder. I looked in there and I don't think it's a bmp, since  I couldn't find any bmps that looked like that.

    So it must be a .tga. You check out all the tga files in that folder.

    Among .tga files too, there's nothing.

  4. Is it possible to change textures crit damage on non-interfering, say for example a transparent, so you can see only the numbers (without any red labels). If so, who do not share difficult or at least tell me the name of the file.

  5. Сделал через цикл, вроде бы работает. Осталось теперь разобраться с нечетным кол-вом игроков на карте...

    И да ув. Lilith просьба пишите под eAthena если вас конечно это не затруднит, а то тот код что вы выложили не работает и его пришлось переписывать под свой эмуль)

  6. За старания конечно спасибо, но к сожалению не работает :(

    Вот остальные исходники, может помогут)

    BUILDIN_FUNC(createparty)
    {
    char* nombre; //Genera un warning C4090
    int cid;
    TBL_PC* sd;
    
    nombre = script_getstr(st,2);
    cid = script_getnum(st,3);
    
    sd = map_charid2sd(cid); //Obtiene el map_session_data del char_id
    if( sd == NULL )
    {
    script_pushint(st, -1);
    return 0; //No estб enganchado a un usuario
    }
    
    if( sd->status.party_id > 0 || sd->party_joining || sd->party_creating )
    {// already associated with a party
    script_pushint(st, 0);
    return 0;
    }
    
    party_create(sd, nombre, 0, 0); //Manda a crear la Party
    
    script_pushint(st, 1);
    return 0;
    }
    
    BUILDIN_FUNC(inviteparty)
    {
    struct script_data* data;
    int32 id;
    int32 idx;
    int32 i;
    int32 n;
    int32 arr[256];
    
    struct map_session_data *sd, *tsd;
    
    data = script_getdata(st, 2);
    
    id = reference_getid(data);
    idx = reference_getindex(data);
    
    n = script_getnum(st, 3);
    
    for( i = 0; i < n; ++i )
    {
    arr[i]=(int32)get_val2(st, reference_uid(id, idx + i), reference_getref(data));
    script_removetop(st, -1, 0);
    }
    
    sd=map_charid2sd(arr[0]);
    if (sd == NULL) { return 0; }
    
    for( i = 1; i < n; ++i )
    {
    tsd=map_charid2sd(arr[i]);
    if (tsd == NULL) { continue; }
    
    if (party_invite(sd,tsd)) { party_reply_invite(tsd,sd->status.account_id,1); };
    }
    
    return 0;
    }
    BUILDIN_DEF(inviteparty,"ri"), //YXAZA
    BUILDIN_DEF(createparty,"si"),
    

    Кстати возникла ещё одна проблема. Подскажите как правильно проверить принадлежит ли игрок одному из списков, и после этого вычитать его. Мой вариант не хочет работать.

    Нужный кусок выделил тегом

    prontera,0,0,0 script pvpLadder2 -1,{
    OnPCDieEvent:
    if (getmapxy($@killer_map$,@mapx,@mapy,0,strcharinfo(0))!=0) end;
    if ( ($@killer_map$=="pvp_n_1-5") ){
    warp "prontera",180,160;
    [b]if($@sns_group1[0]){
    set $@sns_pt1,$@sns_pt1-1;}
    if($@sns_group2[0]){
    set $@sns_pt2,$@sns_pt2-1;}[/b]
    if($@sns_pt1 == 0 && $@sns_pt2 == 0) {
    mapannounce "pvp_n_1-5","[Стенка на Стенку] бой завершен!!!",17;
    enablenpc "SNS Prize";
    set $@MeveSNS, 0;
    cleararray $@mapusersid[0],0,getarraysize($@mapusersid);
    cleararray $@sns_group1[0],0,getarraysize($@sns_group1);
    cleararray $@sns_group2[0],0,getarraysize($@sns_group2);
    set $@sns_member,0;
    end;
    }
    mapannounce "pvp_n_1-5","Выживших - Команда Синих: "+$@sns_pt1+" Команда Красных: "+$@sns_pt2,1;
    end;
    }
    }

  7. Обьяснить не могу что они выполняют, т.к не я эти скриптовые команды писал, лишь догадки только...

    Вот сам код, если разберетесь

    BUILDIN_FUNC(mapusersid)
    {
    int m = map_mapname2mapid(script_getstr(st,2)),users = 0;
    struct s_mapiterator* iter;
    TBL_PC *sd;
    
    if (m < 0)
    { script_pushint(st,-1); return 0; }
    
    iter = mapit_getallusers();
    
    for (sd = (TBL_PC*)mapit_first(iter);mapit_exists(iter);sd = (TBL_PC*)mapit_next(iter))
    if ((sd->bl.m == m) && (!pc_isdead(sd))) {
    mapreg_setreg(add_str("$@mapusersid") + (users<<24), sd->status.char_id);
    mapreg_setregstr(add_str("$@mapusersname$")+(users<<24),sd->status.name);
    users++;}
    
    mapit_free(iter);
    return 0;
    }
    
    
    BUILDIN_FUNC(leaveparty)
    {
    struct script_data* data;
    int32 id;
    int32 idx;
    int32 i;
    int32 n;
    int32 arr[256];
    
    struct map_session_data *sd;
    
    data = script_getdata(st, 2);
    
    id = reference_getid(data);
    idx = reference_getindex(data);
    
    n = script_getnum(st, 3);
    
    for( i = 0; i < n; ++i )
    {
    arr[i]=(int32)get_val2(st, reference_uid(id, idx + i), reference_getref(data));
    script_removetop(st, -1, 0);
    if (((sd=map_charid2sd(arr[i])) != NULL ) && sd->status.party_id) { party_leave(sd); }
    }
    
    return 0;
    }
    BUILDIN_DEF(mapusersid,"s"), //NetherRO
    BUILDIN_DEF(leaveparty,"ri"), //YXAZA
    

×
×
  • Create New...