server achievements

Тема в разделе "Общего назначения", создана пользователем Lexass, 7 мар 2013.

  1. Dr_Killjoy

    Dr_Killjoy Заблокированные

    Поподробнее.
     
  2. Shadow5

    Shadow5 Бандит

    Решил поэкспериментировать над ачивками.
    Сделал три ачивки.
    При компилировании выдает ошибку:
    Error: D:\\\ \Killing Floor\ServerAchievementsPack\Classes\MyAchievementPack.uc(4) : Error, Missing '}' in 'Enum'
    Но там ведь ни черта не пропущено. Всё так же, как и в других паках.
    Вот мой пак ачивок:
    class MyAchievementPack extends AchievementPackPartImpl;

    enum AchvIndex {
    MEAT!, PROFESSIONAL_DEMOLITIONS, IN_POINT
    };

    function MatchStarting() {
    log("Match is starting");
    }

    event killedMonster(Pawn target, class<DamageType> damageType, bool headshot) {
    if (ZombieBloat(target) != none && ZombieFleshpound(target).bDecapitated && ClassIsChildOf(damageType, class'DamTypePipebomb')) {
    addProgress(AchvIndex.MEAT!, 1);
    } else if (ZombieClot(target) != none && ClassIsChildOf(damageType, class'DamTypeRocketImpact')) {
    addProgress(AchvIndex.PROFESSIONAL_DEMOLITIONS, 1);
    }
    }

    event damagedMonster(int damage, Pawn target, class<DamageType> damageType, bool headshot) {
    if (target.IsA('KFMonster')) {
    if (headshot && KFMonster(target).bDecapitated) {
    if (KFMonster(target).bLaserSightedEBRM14Headshotted) {
    addProgress(AchvIndex.IN_POINT, 1);
    }
    }

    defaultproperties
    {
    Achievements(0)=(Title="Meat!",Description="Убей 100 FleshPounds с помощью мин",maxProgress=100,notifyIncrement=0.200000)
    Achievements(1)=(Title="Professional Demolitions",Description="Убить 30 клотов гранатой",maxProgress=30,notifyIncrement=0.333300)
    Achievements(2)=(Title="In point",Description="30 выстрелов в голову подряд с EBR при использовании лазерного прицела.",maxProgress=30)
    packName="MyAchievementPack"
    }

    Вот enum из FailAchievements.
    class FailAchievements extends AchievementPackPartImpl;

    enum FailIndex {
    GORED_FAST, AMATEUR_DEMOLITIONS, LOST_BAGGAGE, LEVEL_6_PRO,
    PROFESSIONAL_DEMOLITIONS, WATCH_YOUR_STEP, PISTOL_PETE,
    MELTING_POINT, MASTER_DEMOLITIONS, DEMOLITIONS_GOD, USELESS_BAGGAGE,
    SHARP_SHOOTER
    };

    Может, я что-то упустил? Помогите, пожалуйста.
     
  3. Dr_Killjoy

    Dr_Killjoy Заблокированные

    Восклицательный знак нельзя использовать как часть имени.
     
    ЛОХМАТЫЙ, Shadow5 и Flame нравится это.
  4. Shadow5

    Shadow5 Бандит

    Доброго времени суток.)
    Кто-нибудь может написать, как добавить кнопку Achievements в SRInvasionLoginMenu.uc?
     
  5. ScreamyRain

    ScreamyRain Новенький

    Всё сделано по инструкции, но вкладка Achievements в меню не появляется, хотя сообщения об открытии ачивок всплывают. SP v7. В чём может быть проблема? Придется прописывать вручную чтобы вкладка отображалась?
     
  6. Rainishе

    Rainishе Солдат

    Evald, Seraph1m, Flame и ещё 1-му нравится это.
  7. AitherKill

    AitherKill Солдат

    Я и у тебя вижу баг с раздвоением кнопок , кто знает как поправить?
     
    prototype22 нравится это.
  8. Винни

    Винни Мододел "UM"

    Там не только проблема с кнопками, но и с названием "achievements"
     
    prototype22 нравится это.
  9. Rainishе

    Rainishе Солдат

    можно ещё отредактированть в файлах мутатора файл SAInteraction немного изменив функцию KeyEvent вот так:

    function bool KeyEvent(EInputKey Key, EInputAction Action, float Delta ) {
    local string alias;
    local MidGamePanel panel;

    alias= ViewportOwner.Actor.ConsoleCommand("KEYBINDING"@ViewportOwner.Actor.ConsoleCommand("KEYNAME"@Key));
    if (Action == IST_Press && alias ~= "showmenu") {
    if (KFGUIController(ViewportOwner.GUIController).ActivePage == None) {
    ViewportOwner.Actor.ShowMenu();
    }
    if (SRInvasionLoginMenu(KFGUIController(ViewportOwner.GUIController).ActivePage) != none &&
    SRInvasionLoginMenu(KFGUIController(ViewportOwner.GUIController).ActivePage).c_Main.TabIndex(achievementPanel.caption) == -1) {
    panel= MidGamePanel(SRInvasionLoginMenu(KFGUIController(ViewportOwner.GUIController).ActivePage).c_Main.AddTabItem(achievementPanel));
    if (panel != none) {
    panel.ModifiedChatRestriction= SRInvasionLoginMenu(KFGUIController(ViewportOwner.GUIController).ActivePage).UpdateChatRestriction;
    }
    }
    }
    return false;
    }

    но проблема с кнопками так не решится.

    [​IMG]
     
    AitherKill, Винни и kok-s нравится это.
  10. AitherKill

    AitherKill Солдат

    Не понял тогда смысл сия действия.
     
  11. Rainishе

    Rainishе Солдат

    вопрос был как с сп7 совместить я ответил.

    ну молодцы. наминусовали за ответ. вот и помогай после этого людям.
     
    AitherKill и kok-s нравится это.
  12. kok-s

    kok-s Капо

    Баг с кнопками нужно скорее всего править в самом server achievements (там же он по идеи ссылается на обычное меню).

    Rainishе просто ответил на поставленный вопрос.
     
  13. kok-s

    kok-s Капо

    Что то понравилась мне идея совмещения ачивок и сп))

    Что нужно сделать чтоб в СП 7.10 появилась вкладка:
    1) В ServerPerks.SRInvasionLoginMenu добавляем

    Panels(5)=(ClassName="ServerAchievements.AchievementPanel",Caption="Achievements",Hint="View your Achivment of this server")
    2) В ServerAchievements.AchievementPanel нам нужно изменить наследуемый класс: class AchievementPanel extends UT2K4TabPanel;
    3) Так же в ServerAchievements.AchievementPanel нам больше не нужны строчки:


    sb_Players=None


    sb_Specs=None


    sb_Options=None


    ch_NoVoiceChat=None


    ch_NoSpeech=None


    ch_NoText=None


    ch_Ban=None

    Всё нормально работает и вроде без багов.

    [​IMG]
     
    AitherKill и Винни нравится это.
  14. Rainishе

    Rainishе Солдат

    Щас сделаю отдельным мутом.
     
  15. AitherKill

    AitherKill Солдат

    :thanks: Работает без нареканий.
    Всем ли ни пофигу на эти минусоплюсы :thumbsup:
     
  16. Rainishе

    Rainishе Солдат

    Сделал отдельным мутом что бы не было не совпадения контейнеров. Баг с кнопками пофиксен. В СП лезть ненадо, ничего прописывать тоже не надо.Просто запускаем сп и етот мут и радуемся жизни.

    http://www.mediafire.com/download/uzo1lwefyahym7o/ServerAchievementsFixSP.zip


    Исходники http://www.mediafire.com/download/lmb8un3m63wcwxa/#sourceCode-ServerAchievementsFixSP.zip

    ServerAchievementsFixSP.SAMutator


    Вобще можно добавить ето в шапку что бы народ голову не ломал.
     
    Evald, Flame, Stein и 2 другим нравится это.
  17. kok-s

    kok-s Капо

    Нужно только предупредить людей о том, что при компиляции ServerAchievements должен быть ниже сп (так как SRInvasionLoginMenu задействован).
     
  18. Stein

    Stein Солдат

    на счет установки - прописываем это в мутлоадере ServerAchievementsFixSP.SAMutator а это не где не надо ServerAchievementsPackFixSP.u ?
     
  19. Rainishе

    Rainishе Солдат

    у меня нет. я вшил в сп так что не знаю как там дело обстоит если отдельно. хотя должно подгружать автоматом раз в мутлоадере прописано. с серверпаккейдж я не добавлял. у меня ни одного мута не добавлено в серверпаккейдж.
     
  20. Stein

    Stein Солдат

    вроде тоже всё работает