Перейти к содержанию

Incubus

Очередь
  • Постов

    42
  • Зарегистрирован

  • Посещение

  • Победитель дней

    28

Сообщения, опубликованные Incubus

  1. Гильд мастер, собрав нужный лут, может создать вещь, закрепленную за гильдией.

    3e2173661930t.jpg

    Список вещей и нужного на нее лута указывается в отдельном файле.

    28663ba5efact.jpg

    Вещь подписывается именем гильдии.

    3ad019d43733t.jpg

    Эту вещь нельзя выкинуть, передать игроку не в гильдии или положить в обычный склад.

    При выходе из гильдии вещь перекидывается в гильд склад.

    При удалении гильдии вещь удаляется.

    Цена вопроса: 1000р.

    Обращаться в ПМ или icq 260474081

  2. Предлагаю проверить будет ли сумма двух массивов: $@sns_group2 и $@sns_group1 равна размеру массива $@mapusersid, когда количество игроков не четное.

    В этом куске ты наверное не изменил ничего?


    for (set .i, 0; .i < $@sns_member; set .i, .i+1) {
    warpchar "pvp_n_1-5",66,100,$@sns_group1[.i];
    warpchar "pvp_n_1-5",136,100,$@sns_group2[.i];}
    pvpon "pvp_n_1-5";
    }

    не проще ли варпать командой warpparty раз ты уже всех раскидал по пати?

    А также тут внимательно посмотри


    if(getmapusers("pvp_n_1-5")>2 && getmapusers("pvp_n_1-5")<4) {
    inviteparty($@sns_group2[0],$@sns_member);}

    else if (getmapusers("pvp_n_1-5")>3) {
    inviteparty($@sns_group1[0],$@sns_member);
    inviteparty($@sns_group2[0],$@sns_member);}

    думаю лучше будет писать типа такого:

    inviteparty($@sns_group2[0],getarraysize($@sns_group2));

    • Upvote 1
  3. как вариант из первого поста замени строку

    copyarray $@sns_group2[0],$@mapusersid[$@sns_member],$@sns_member;

    на

    copyarray $@sns_group2[0],$@mapusersid[$@sns_member],(getarraysize($@mapusersid)%2>0?($@sns_member+1):$@sns_member);

    если я правильно понял команду inviteparty.

    В этом случае будет последнего игрока всегда добавлять в $@sns_group2

    В твоем первом посте всегда последний игрок отметался, потому как при делении в афине округление идет в меньшую сторону, т.е. 5/2 будет 2.

    • Upvote 1
  4. в skill.c

    case SN_FALCONASSAULT:
    case PA_PRESSURE:
    case CR_ACIDDEMONSTRATION:
    case TF_THROWSTONE:
    case NPC_SMOKING:
    case GS_FLING:
    case NJ_ZENYNAGE:
    case GN_THORNS_TRAP:
    case GN_BLOOD_SUCKER:
    case GN_HELLS_PLANT_ATK:
    skill_attack(BF_MISC,src,src,bl,skillid,skilllv,tick,flag);
    break;

    замени на

    case PA_PRESSURE:
    case CR_ACIDDEMONSTRATION:
    case TF_THROWSTONE:
    case NPC_SMOKING:
    case GS_FLING:
    case NJ_ZENYNAGE:
    case GN_THORNS_TRAP:
    case GN_BLOOD_SUCKER:
    case GN_HELLS_PLANT_ATK:
    skill_attack(BF_MISC,src,src,bl,skillid,skilllv,tick,flag);
    break;
    case SN_FALCONASSAULT:
    skill_attack(BF_WEAPON,src,src,bl,skillid,skilllv,tick,flag);
    break;

    • Upvote 1
  5. Правильно, косяк в резидене. Насколько я помню у вас в файле clif.c

    эта строка:

    status_calc_pc(sd, true);

    стоит до условия:


    if(!map[sd->bl.m].flag.resident && sd->state.resident)
    {
    sd->state.resident = 0;
    pc_disguise(sd,0);
    }

    А должно выглядеть вот так:

    	if(!map[sd->bl.m].flag.resident && sd->state.resident)
    {
    status_calc_pc(sd, true);
    sd->state.resident = 0;
    pc_disguise(sd,0);
    }

    • Upvote 1
  6. У кого есть этот мод, тот увидит(не полная часть этого лейбла):

    if(map[sd->bl.m].flag.resident && sd->state.resident == 1)
    {
    npc_script_event(sd,NPCE_DAMAGE);
    pc_stop_attack((TBL_PC*)src);
    }

    в функции

    void pc_damage(struct map_session_data *sd,struct block_list *src,unsigned int hp, unsigned int sp)

    и как я уже сказал нужно добавить проверку скила.

    Какой пруф тебе еще нужен?

  7. Первый пост обновлен. Исправлена ошибка с количеством символов.

    в файле clif.c начало функции void badword(char *mes1,char *mes)

    должно выглядеть так:

    void badword(char *mes1,char *mes)
    {
    char uk[1];
    char *line = NULL;
    int i,k;

    line = mes;
    for(i=0; i < strlen(line); i++)
    line[i] = tolower(line[i]);

    • Upvote 2
  8. У вас у самих нету столько сообщений :huh:... хайд опустите хотя бы до 150...а то я в первый раз не скопировал диф :lol:

    Ну ты облажался, шанс то был :). Тебе осталось то всего ничего нафлудить. B)

    Инкубус конечно няшечка, но 200 постов флудить как-то западло.. "Я слишком стар для этого дерьма" (с)

    Может пора тебе свой статус отрабатывать? ;) А серьезно, если очень нужно, пиши в личку.

    • Upvote 1
×
×
  • Создать...
Яндекс.Метрика