1. Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.
    Скрыть объявление
Скрыть объявление
В преддверии глобального обновления, мы проводим исследования, которые помогут нам сделать опыт пользования форумом ещё удобнее. Помогите нам, примите участие!

Плагин [MECH/FUN] ReActions - Что? Тогда? Иначе! [BukkitDev]

Тема в разделе "Релизы плагинов", создана пользователем fromgate, 16 июл 2013.

  1. Sanya007vuch

    Sanya007vuch Активный участник Пользователь

    Баллы:
    68
    Я в недоумении.
    Создаю зомбака, пишу ему dmg:1000, а тому вообще пофиг. Как лупил по дефолту, так и лупит с 1к дамагом. Что не так?

    Команда:
    Код:
        - MOB_SPAWN=type:zombie name:Pirate dmg:1000 loc:world,2484.756,66.0,-777.086,4.67,23.162 drop:set1:{item1:{type:ic2_blockmachine data:14 amount:1} chance:50} set2:{item1:{type:advancedsolarpanel_blockmoleculartransformer amount:1} chance:50}

    первый 0 - это секуны
    второй 0 - минут
    третий 0 - часы

    и так далее
     
  2. Lyosha12

    Lyosha12 Активный участник Пользователь

    Баллы:
    98
    Skype:
    alexey_zyuz
    Имя в Minecraft:
    Lyosha12
    Возможно, такой урон не воспринимается системой. Может, гасит античит. Попробуй увеличивать постепенно. Этот параметр точно работает как надо. Значение в 20-30 вполне может убить чаренного алмазника с одного удара.
     
  3. PYRO

    PYRO Активный участник Пользователь

    Баллы:
    78
    та же проблема, ядро craftbukkit 1.7.2, античитов нет (дамаг = 20)
     
  4. Автор темы
    fromgate

    fromgate Старожил Пользователь

    Баллы:
    173
    Имя в Minecraft:
    fromgate
    Ошибок в тоже время в логе нет? Сегодня доберусь, перепроверю.
     
  5. PYRO

    PYRO Активный участник Пользователь

    Баллы:
    78
    в логе - нет, если есть возможность дебага - посмотрю
     
  6. Sanya007vuch

    Sanya007vuch Активный участник Пользователь

    Баллы:
    68
    Логи чисты, как попка младенца
    В общем, я в полном недоумении!
    Создал моба через плугин, создал с типом skeleton и кастомным именем &6Pirate (желтный цвет)
    И хочу всунуть действия на ударе по нему, а тот полностью игнорирует меня! В чём трабла? Мб что-то я кривой? Но я уже от корки до корки вычитал вики:
    Код:
    MOB_DAMAGE:
      md:
        mob-type: player
        mob-name: Pirate
        item: ''
        actions:
        - message=123
      md1:
        mob-type: skeleton
        mob-name: Pirate
        item: ''
        actions:
        - message=123
      md3:
        mob-type: player
        mob-name: &6Pirate
        item: ''
        actions:
        - message=123
      md4:
        mob-type: skeleton
        mob-name: &6Pirate
        item: ''
        actions:
        - message=123
      md5:
        mob-type: player
        mob-name: {&6Pirate}
        item: ''
        actions:
        - message=123
      md6:
        mob-type: skeleton
        mob-name: {&6Pirate}
        item: ''
        actions:
        - message=123

    Проблема решена.
    Как оказалось, нужно имя и тип заключать в 'кавычки' . Ну пащиму об этом не написано? :confused::confused: Столько часов бился и думал как обойтись другим функционалом :/
     
  7. Автор темы
    fromgate

    fromgate Старожил Пользователь

    Баллы:
    173
    Имя в Minecraft:
    fromgate
    @Sanya007vuch
    Пути YAML не исповедимы. У меня и так работает. Почему у тебя так - не знаю. Может чего-то с кодировками?
     
  8. Sanya007vuch

    Sanya007vuch Активный участник Пользователь

    Баллы:
    68
    Есть такое дело... Много гемора доставляет.
    Пытался исправить на нормальную - безрезультатно.
    Проводил те же действия на другой машине - прошло успешно, но после ребута машинки кодировка снова слетела.
     
  9. Автор темы
    fromgate

    fromgate Старожил Пользователь

    Баллы:
    173
    Имя в Minecraft:
    fromgate
    @Sanya007vuch @PYRO
    В общем, действительно нашлась ошибка. Сейчас модификатор dmg исправлен, работает нормально.
    Обращаю внимание на то, что это множитель. Т.е. Можно поставить 0 - дамага не будет. 0.5 - будет половина от стандартного и т.п.

    0.9.6/3
    http://adf.ly/1K0nlW
     
  10. BrainRTP

    BrainRTP Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    BrainRTP
    @fromgate
    Подскажите, что за ошибка? С чем связана?
    Could not pass event CommandEvent to ReActions v0.9.6
    org.bukkit.event.EventException
    at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:310) ~[craftbukkit.jar:git-Spigot-6d0ae89-a03743b]
    at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) ~[craftbukkit.jar:git-Spigot-6d0ae89-a03743b]
    at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:502) [craftbukkit.jar:git-Spigot-6d0ae89-a03743b]
    at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:487) [craftbukkit.jar:git-Spigot-6d0ae89-a03743b]
    at me.fromgate.reactions.event.EventManager.raiseCommandEvent(EventManager.java:201) [ReActions.jar:?]
    at me.fromgate.reactions.RAListener.onPlayerCommand(RAListener.java:307) [ReActions.jar:?]
    at sun.reflect.GeneratedMethodAccessor201.invoke(Unknown Source) ~[?:?]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.7.0_75]
    at java.lang.reflect.Method.invoke(Method.java:606) ~[?:1.7.0_75]
    at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:306) [craftbukkit.jar:git-Spigot-6d0ae89-a03743b]
    at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) [craftbukkit.jar:git-Spigot-6d0ae89-a03743b]
    at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:502) [craftbukkit.jar:git-Spigot-6d0ae89-a03743b]
    at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:487) [craftbukkit.jar:git-Spigot-6d0ae89-a03743b]
    at net.minecraft.server.v1_8_R3.PlayerConnection.handleCommand(PlayerConnection.java:1127) [craftbukkit.jar:git-Spigot-6d0ae89-a03743b]
    at net.minecraft.server.v1_8_R3.PlayerConnection.chat(PlayerConnection.java:1051) [craftbukkit.jar:git-Spigot-6d0ae89-a03743b]
    at org.bukkit.craftbukkit.v1_8_R3.entity.CraftPlayer.chat(CraftPlayer.java:243) [craftbukkit.jar:git-Spigot-6d0ae89-a03743b]
    at com.gmail.filoghost.chestcommands.internal.icon.command.PlayerIconCommand.execute(PlayerIconCommand.java:15) [ChestCommands.jar:?]
    at com.gmail.filoghost.chestcommands.internal.CommandsClickHandler.onClick(CommandsClickHandler.java:34) [ChestCommands.jar:?]
    at com.gmail.filoghost.chestcommands.api.Icon.onClick(Icon.java:224) [ChestCommands.jar:?]
    at com.gmail.filoghost.chestcommands.internal.icon.ExtendedIcon.onClick(ExtendedIcon.java:208) [ChestCommands.jar:?]
    at com.gmail.filoghost.chestcommands.task.ExecuteCommandsTask.run(ExecuteCommandsTask.java:21) [ChestCommands.jar:?]
    at org.bukkit.craftbukkit.v1_8_R3.scheduler.CraftTask.run(CraftTask.java:71) [craftbukkit.jar:git-Spigot-6d0ae89-a03743b]
    at org.bukkit.craftbukkit.v1_8_R3.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:350) [craftbukkit.jar:git-Spigot-6d0ae89-a03743b]
    at net.minecraft.server.v1_8_R3.MinecraftServer.B(MinecraftServer.java:726) [craftbukkit.jar:git-Spigot-6d0ae89-a03743b]
    at net.minecraft.server.v1_8_R3.DedicatedServer.B(DedicatedServer.java:367) [craftbukkit.jar:git-Spigot-6d0ae89-a03743b]
    at net.minecraft.server.v1_8_R3.MinecraftServer.A(MinecraftServer.java:657) [craftbukkit.jar:git-Spigot-6d0ae89-a03743b]
    at net.minecraft.server.v1_8_R3.MinecraftServer.run(MinecraftServer.java:560) [craftbukkit.jar:git-Spigot-6d0ae89-a03743b]
    at java.lang.Thread.run(Thread.java:745) [?:1.7.0_75]
    Caused by: java.lang.StringIndexOutOfBoundsException: String index out of range: 55
    at java.lang.String.charAt(String.java:658) ~[?:1.7.0_75]
    at org.bukkit.util.ChatPaginator.wordWrap(ChatPaginator.java:135) ~[craftbukkit.jar:git-Spigot-6d0ae89-a03743b]
    at org.bukkit.util.ChatPaginator.paginate(ChatPaginator.java:42) ~[craftbukkit.jar:git-Spigot-6d0ae89-a03743b]
    at me.fromgate.reactions.RAUtil.printMsg(RAUtil.java:397) ~[?:?]
    at me.fromgate.reactions.actions.ActionMessage.sendMessage(ActionMessage.java:66) ~[?:?]
    at me.fromgate.reactions.actions.ActionMessage.execute(ActionMessage.java:40) ~[?:?]
    at me.fromgate.reactions.actions.Action.executeAction(Action.java:72) ~[?:?]
    at me.fromgate.reactions.actions.Actions.performAction(Actions.java:158) ~[?:?]
    at me.fromgate.reactions.actions.Actions.executeActivator(Actions.java:150) ~[?:?]
    at me.fromgate.reactions.activators.CommandActivator.activate(CommandActivator.java:97) ~[?:?]
    at me.fromgate.reactions.activators.Activator.executeActivator(Activator.java:271) ~[?:?]
    at me.fromgate.reactions.activators.Activators.activate(Activators.java:290) ~[?:?]
    at me.fromgate.reactions.RAListener.onCommandActivator(RAListener.java:402) ~[?:?]
    at sun.reflect.GeneratedMethodAccessor202.invoke(Unknown Source) ~[?:?]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.7.0_75]
    at java.lang.reflect.Method.invoke(Method.java:606) ~[?:1.7.0_75]
    at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:306) ~[craftbukkit.jar:git-Spigot-6d0ae89-a03743b]
     
  11. Автор темы
    fromgate

    fromgate Старожил Пользователь

    Баллы:
    173
    Имя в Minecraft:
    fromgate
    @BrainRTP
    Какое-то сообщение (выводимое действием MESSAGE) не может отобразиться . Случайно не отследилили какой активатор срабатывает с такой ошибкой? Чтобы я смог её повторить у себя.
    @BrainRTP
    Скачайте последний девбилд - попробуйте с ним. Ошибка не исправлена, она возникает в недрах spiogot'а, но я сделал залипуху, которая её обходит.
    Если есть возможно показать активатор который приводит к ошибке - дайте. Я попробую точно всё воспроизвести и сделать тикет на спиготовском баг-трекере.
    http://adf.ly/1K0nlW
     
  12. Sanya007vuch

    Sanya007vuch Активный участник Пользователь

    Баллы:
    68
    Несколько вопросов.
    Код:
    Код:
    LEVER:
      start_capture:
        world: world
        x: -5019
        y: 94
        z: -6962
        lever-state: 'ON'
        actions:
        - var_set=id:invader_giran value:%player_name%
        - message=&4Внимание! &eИгрок %var:invader_giran% начал захват точки.
        - action_delayed=time:10s action:{message &2Прошло 10 секунл с момента старта захвата}
        - action_delayed=time:20s action:{message &2Прошло еще 10 секунд с момента старта захвата}
        - action_delayed=time:30s action:{message &4Внимание! &eИгрок %var:invader_giran% захватил точку!!!}
        - var_set=id:giran_owner value:%var:invader_giran%
        - message=123
    Собсна, вопросы:
    1. Действие message=123 выполняется сразу после нажатия. (я думал, что всё выполняется последовательно, т.е. после отложенных действий выполняется следующий код). Нужно ставить отложенные действия и на дальнейшие действия, если я хочу делать всё по порядку?
    2. По каккому механизму работают отложенные действия, если их 2+? По принципу "от ЕДИНОЙ точки отсчёта отсчитывается то время, которое указано в свойстве активатора"? Или по принципу "сначала первое отложенно действие, потом следующее за ним, потом третье и так далее"?
     
  13. Автор темы
    fromgate

    fromgate Старожил Пользователь

    Баллы:
    173
    Имя в Minecraft:
    fromgate
    ACTION_DELAYED - здесь время ни как не суммируется. Это т.е. действие выполняется как раз через столько, какая задержка была задана.
    Т.е. в примере действия будут выполнятся так:
    - var_set=id:invader_giran value:%player_name%
    - message=&4Внимание! &eИгрок %var:invader_giran% начал захват точки.
    - var_set=id:giran_owner value:%var:invader_giran%
    - message=123
    Потом ожидание 10 секунд и выполняется message &2Прошло 10 секунл с момента старта захвата
    Потом ожидание ещё 10 секунд и выполняется message &2Прошло еще 10 секунд с момента старта захвата
    Потом ещё 10 секунд и... message &4Внимание! &eИгрок %var:invader_giran% захватил точку!

    Если же использовать действие WAIT (оно добавлено в последних девбилдах), то там действия как выполняются последовательно. Т.е. wait это пауза между действиями.
     
  14. Lyosha12

    Lyosha12 Активный участник Пользователь

    Баллы:
    98
    Skype:
    alexey_zyuz
    Имя в Minecraft:
    Lyosha12
    @fromgate, при добавлении локации можно в процессе указать наклон головы?
    Прошу добавить в таймеры больше аргументов цели активатора.
    @fromgate, почему-то выполнение команд останавливается:
    Код:
      Parkour-Add-CheckPoint:
        override: true
        regex: false
        command: cmd:Parkour arg1:add arg2:CheckPoint
        flags:
        - var_player_compare=id:Lyosha12-Own value:1
        actions:
        - var_inc=id:Parkour-CheckPoint-Counter
        - cmd=ra add Plate Parkour-CheckPoint-%var:Parkour-CheckPoint-Counter%
        - cmd=ra add Parkour-CheckPoint-%var:Parkour-CheckPoint-Counter% f !var_player_compare id:Parkour-CurrentCheckPoint-%var:Parkour-CheckPoint-Counter% value:%var:Parkour-CheckPoint-Counter%
        - cmd=ra add Parkour-CheckPoint-%var:Parkour-CheckPoint-Counter% f delay_player Slow-Execute-Activator
        - cmd=ra add Parkour-CheckPoint-%var:Parkour-CheckPoint-Counter% a delay_player 1s/Slow-Execute-Activator
        - cmd=ra add Parkour-CheckPoint-%var:Parkour-CheckPoint-Counter% a SOUND type:NOTE_PIANO volume:1 pitch:1 loc:%PLAYER_LOC%
        - cmd=ra add Parkour-CheckPoint-%var:Parkour-CheckPoint-Counter% a action_delayed time:100ms action:{SOUND type:NOTE_PIANO volume:1 pitch:3 loc:%PLAYER_LOC%}
        - cmd=ra add Parkour-CheckPoint-%var:Parkour-CheckPoint-Counter% a var_player_set id:Parkour-CurrentCheckPoint value:%var:Parkour-CheckPoint-Counter%
        - cmd=ra add Parkour-CheckPoint-%var:Parkour-CheckPoint-Counter% a var_player_set id:Parkour-Life value:%CALC:%varp:Donate-LVL%+3%
        - cmd=ra add Parkour-CheckPoint-%var:Parkour-CheckPoint-Counter% a message &6[&bExtraParkour&6] &2Чекпоинт. &7Осталось жизней:&e %varp:Parkour-Life%
        - cmd=ra add loc Parkour-CheckPoint-%var:Parkour-CheckPoint-Counter%
        - cmd=ra group Parkour-CheckPoint-%var:Parkour-CheckPoint-Counter% Parkour-CheckPoints
        - message=&7[&aExtraParkour&7] &2Добавление check-поинта завершено.
        reactions: []
    
    upload_2015-7-17_13-32-41.png
    Если снабдить действия после обрыва action_delayed - работает отлично.
    И как запретить подстановку значения в плейсхолдер? :D
     
    Последнее редактирование: 17 июл 2015
  15. Sanya007vuch

    Sanya007vuch Активный участник Пользователь

    Баллы:
    68

    Ответ нашёл)

    Блин, неполная вики на сайте, однако(

    Вопрос по флагу PVP. В каком формате задется?
    pvp 10s
    pvp t:10s
    pvp time:10s?

    Ни одно из этих не срабатывало. Ставил уже и кавычки ('10s') - тоже не работало. Каков формат?
    Кхэм, сработало, если не указывать время. Тогда считает по дефолту секунды. - сойдёт
    Каков синтаксис действия WAIT? Такой же, как и у ACTION_DELAYED?
     
  16. Автор темы
    fromgate

    fromgate Старожил Пользователь

    Баллы:
    173
    Имя в Minecraft:
    fromgate
    WAIT - просто параметр time:<Время>
    На сайте в инструкциях этого нет, поскольку версия с WAIT есть пока только в виде дев.билда
     
  17. Lyosha12

    Lyosha12 Активный участник Пользователь

    Баллы:
    98
    Skype:
    alexey_zyuz
    Имя в Minecraft:
    Lyosha12
    @fromgate, почему флаг GROUP работает не всегда точно?
    upload_2015-7-17_14-41-19.png
    upload_2015-7-17_14-43-46.png
    Код:
    REGION_ENTER:
      Parkour-Detect-Donaters:
        region: world_the_end.parkour
        flags: []
        actions:
        - delay_player=1s/Slow-Execute-Activator
        - execute=activator:Exec-Parkour-Detect-Donater-Player player:%player%
        - execute=activator:Exec-Parkour-Detect-Donater-VIP player:%player%
        - execute=activator:Exec-Parkour-Detect-Donater-PREMIUM player:%player%
        - execute=activator:Exec-Parkour-Detect-Donater-CREATIVE player:%player%
        - execute=activator:Exec-Parkour-Detect-Donater-MODER player:%player%
        - execute=activator:Exec-Parkour-Detect-Donater-ADMIN player:%player%
        - execute=activator:Exec-Parkour-Detect-Donater-LORD player:%player%
        - execute=activator:Exec-Parkour-Detect-Donater-OWNER player:%player%
        - execute=activator:Exec-Parkour-Detect-Donater-DELUXE player:%player%
        - execute=activator:Exec-Parkour-Detect-Donater-ULTRA player:%player%
        reactions: []
    EXEC:
      Exec-Parkour-Detect-Donater-Player:
        flags:
        - GROUP=player
        - '!var_player_compare=id:Donate-LVL value:0'
        - delay_player=Slow-Check-Donate-Group
        actions:
        - delay_player=500ms/Slow-Check-Donate-Group
        - var_player_set=id:Donate-LVL value:0
        - message=%varp:Donate-LVL%
        reactions: []
      Exec-Parkour-Detect-Donater-VIP:
        flags:
        - GROUP=VIP
        - '!var_player_compare=id:Donate-LVL value:1'
        - delay_player=Slow-Check-Donate-Group
        actions:
        - delay_player=500ms/Slow-Check-Donate-Group
        - var_player_set=id:Donate-LVL value:1
        - message=%varp:Donate-LVL%
        reactions: []
      Exec-Parkour-Detect-Donater-PREMIUM:
        flags:
        - GROUP=PREMIUM
        - '!var_player_compare=id:Donate-LVL value:2'
        - delay_player=Slow-Check-Donate-Group
        actions:
        - delay_player=500ms/Slow-Check-Donate-Group
        - var_player_set=id:Donate-LVL value:2
        - message=%varp:Donate-LVL%
        reactions: []
      Exec-Parkour-Detect-Donater-CREATIVE:
        flags:
        - GROUP=CREATIVE
        - '!var_player_compare=id:Donate-LVL value:3'
        - delay_player=Slow-Check-Donate-Group
        actions:
        - delay_player=500ms/Slow-Check-Donate-Group
        - var_player_set=id:Donate-LVL value:3
        - message=%varp:Donate-LVL%
        reactions: []
      Exec-Parkour-Detect-Donater-MODER:
        flags:
        - GROUP=MODER
        - '!var_player_compare=id:Donate-LVL value:4'
        - delay_player=Slow-Check-Donate-Group
        actions:
        - delay_player=500ms/Slow-Check-Donate-Group
        - var_player_set=id:Donate-LVL value:4
        - message=%varp:Donate-LVL%
        reactions: []
      Exec-Parkour-Detect-Donater-ADMIN:
        flags:
        - GROUP=ADMIN
        - '!var_player_compare=id:Donate-LVL value:5'
        - delay_player=Slow-Check-Donate-Group
        actions:
        - delay_player=500ms/Slow-Check-Donate-Group
        - var_player_set=id:Donate-LVL value:5
        - message=%varp:Donate-LVL%
        reactions: []
      Exec-Parkour-Detect-Donater-LORD:
        flags:
        - GROUP=LORD
        - '!var_player_compare=id:Donate-LVL value:6'
        - delay_player=Slow-Check-Donate-Group
        actions:
        - delay_player=500ms/Slow-Check-Donate-Group
        - var_player_set=id:Donate-LVL value:6
        - message=%varp:Donate-LVL%
        reactions: []
      Exec-Parkour-Detect-Donater-OWNER:
        flags:
        - GROUP=OWNER
        - '!var_player_compare=id:Donate-LVL value:7'
        - delay_player=Slow-Check-Donate-Group
        actions:
        - delay_player=500ms/Slow-Check-Donate-Group
        - var_player_set=id:Donate-LVL value:7
        - message=%varp:Donate-LVL%
        reactions: []
      Exec-Parkour-Detect-Donater-DELUXE:
        flags:
        - GROUP=DELUXE
        - '!var_player_compare=id:Donate-LVL value:8'
        - delay_player=Slow-Check-Donate-Group
        actions:
        - delay_player=500ms/Slow-Check-Donate-Group
        - var_player_set=id:Donate-LVL value:8
        - message=%varp:Donate-LVL%
        reactions: []
      Exec-Parkour-Detect-Donater-ULTRA:
        flags:
        - GROUP=ULTRA
        - '!var_player_compare=id:Donate-LVL value:9'
        - delay_player=Slow-Check-Donate-Group
        actions:
        - delay_player=500ms/Slow-Check-Donate-Group
        - var_player_set=id:Donate-LVL value:9
        - message=%varp:Donate-LVL%
        reactions: []
    
    PEX подключён к БД MySQL
     
  18. Автор темы
    fromgate

    fromgate Старожил Пользователь

    Баллы:
    173
    Имя в Minecraft:
    fromgate
    @Sanya007vuch
    Хм. Действительно. Там только секунды проверялись. Сейчас исправил в следующем девбилде будет поддерживаться время. Просто число - всё равно будет указывать на секунды, поэтому ни у кого ничего не сломается.

    @Lyosha12
    Смена групп там динамически не происходит? Группы через Vault проверяются и тут как бы повлиять особо не на что.
    Может переориентироваться на пермишены, привязанные к определенным группам? Это по крайней мере через bukkit API проверять можно.
     
  19. Lyosha12

    Lyosha12 Активный участник Пользователь

    Баллы:
    98
    Skype:
    alexey_zyuz
    Имя в Minecraft:
    Lyosha12
    Нет, группы статичны. Вариант с проверкой конкретных прав не очень удобен - у меня нет доступа к БД. Но попробую ещё немного поизвращаться.
     
  20. Sanya007vuch

    Sanya007vuch Активный участник Пользователь

    Баллы:
    68
    Как скоро ждать релиз?
     

Поделиться этой страницей