Сейчас 19:51:25 Понедельник, 25 ноября, 2024 год
[ x ] Главная ⇒ Форум ⇐ RSS Файлы Cтатьи Картинки В о й т и   или   з а р е г и с т р и р о в а т ь с я


[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 2
  • 1
  • 2
  • »
Модератор форума: PUVer, SirNikolas, Ty3uK  
[Вопрос] Фильтр на произвольный выбор юнита
Ty3uKДата: Суббота, 03 Сентября 2011, 17:04:59 | Сообщение # 1
Группа: Ветераны
Сообщений: 6125
Награды: 2
Репутация: 1617
Блокировки:
Code
function Trig_All_Random_Filter takes nothing returns boolean
     if ( not ( GetPlayerSlotState(Player(bj_forLoopAIndex - 1) == PLAYER_SLOT_STATE_PLAYING ) ) then
         return false
     endif
     return true
endfunction

function Trig_All_Random_Actions takes nothing returns nothing
     if (IsPlayerInForce(GetLocalPlayer(), bj_FORCE_ALL_PLAYERS)) then
     DisplayTextToPlayer(GetLocalPlayer(), 0, 0, ( GetPlayerName(GetTriggerPlayer()) + ( " включил " + "|cFF008AFFAll Random|r" ) ))
     endif
     set bj_forLoopAIndex = 1
     set bj_forLoopAIndexEnd = 12
     loop
         exitwhen bj_forLoopAIndex > bj_forLoopAIndexEnd
         if ( Trig_All_Random_Filter() ) then
             unit u = CreateUnitAtLoc(Player(bj_forLoopAIndex - 1), udg_Hero[GetRandomInt(1, 9)], GetStartLocationLoc(GetPlayerStartLocation(Player(bj_forLoopAIndex - 1))), 180.00)
             if (GetLocalPlayer() == Player(bj_forLoopAIndex - 1)) then
             SetCameraPosition(GetLocationX(GetStartLocationLoc(GetPlayerStartLocation(GetLocalPlayer()))), GetLocationY(GetStartLocationLoc(GetPlayerStartLocation(GetLocalPlayer()))))
             endif
             if (IsPlayerInForce(GetLocalPlayer(), bj_FORCE_ALL_PLAYERS)) then
             DisplayTextToPlayer(GetLocalPlayer(), 0, 0, (udg_Player_Colors[GetPlayerId(Player(bj_forLoopAIndex - 1)) + 1] + ( GetPlayerName(Player(bj_forLoopAIndex - 1)) + "|r" ) ) + ( " выбрал " + GetUnitName(u)))
             endif
             u = null
             call SetPlayerTechMaxAllowed(Player(bj_forLoopAIndex - 1), 'HERO', 0)
         else
         endif
         set bj_forLoopAIndex = bj_forLoopAIndex + 1
     endloop
     call DisableTrigger( GetTriggeringTrigger() )
endfunction

function InitTrig_All_Random takes nothing returns nothing
     set gg_trg_All_Random = CreateTrigger(  )
     call TriggerRegisterPlayerChatEvent( gg_trg_All_Random, Player(1), "-ar", true )
     call TriggerAddAction( gg_trg_All_Random, function Trig_All_Random_Actions )
endfunction
собственно вопрос- как можно сделать фильтр для произвольного выбора? GetRandomInt() работает плохо, в этом никто не сомневался. Все рав-коды героев занесены в переменную с массивом Hero[] при инициализации (это я думаю поняли все). Заранее спасибо


╭∩╮(︶︿︶)╭∩╮
"Ульта Тайда мне в жопу!" © k0fe1n
Статьи: MUI-1|MUI-2|Шрифт
Полезности: JASP|JNGP|Уголок библиотек
 

lawsonДата: Суббота, 03 Сентября 2011, 18:32:04 | Сообщение # 2
Группа: Проверенные
Сообщений: 3482
Награды: 0
Репутация: 974
Блокировки:
аля гуи в тексте.

Добавлено (03 Сентябрь 2011, 18:32:04)
---------------------------------------------
Тебе нужнен рандомный выбор героя?
Это все делается элементарно.


Nic nie wiem bo mam chuj.
редактирую посты! ВСЕ!


Сообщение отредактировал lawson - Суббота, 03 Сентября 2011, 18:35:30
 

Ty3uKДата: Суббота, 03 Сентября 2011, 19:06:12 | Сообщение # 3
Группа: Ветераны
Сообщений: 6125
Награды: 2
Репутация: 1617
Блокировки:
Ну так просьба показать, как это делается. Или дать точку опоры

Добавлено (03 Сентябрь 2011, 19:06:12)
---------------------------------------------
Гуи в тексте будет выглядеть не так, если что. <_<


╭∩╮(︶︿︶)╭∩╮
"Ульта Тайда мне в жопу!" © k0fe1n
Статьи: MUI-1|MUI-2|Шрифт
Полезности: JASP|JNGP|Уголок библиотек
 

lawsonДата: Суббота, 03 Сентября 2011, 19:19:00 | Сообщение # 4
Группа: Проверенные
Сообщений: 3482
Награды: 0
Репутация: 974
Блокировки:
Тогда секундочку. Я тебе код выложу сойдет?

Добавлено (03 Сентябрь 2011, 19:19:00)
---------------------------------------------

Quote (Ty3uK)
Гуи в тексте будет выглядеть не так, если что.

Quote (Ty3uK)
exitwhen bj_forLoopAIndex > bj_forLoopAIndexEnd

Как скажешь.


Nic nie wiem bo mam chuj.
редактирую посты! ВСЕ!


Сообщение отредактировал lawson - Суббота, 03 Сентября 2011, 19:18:29
 

Ty3uKДата: Суббота, 03 Сентября 2011, 19:20:31 | Сообщение # 5
Группа: Ветераны
Сообщений: 6125
Награды: 2
Репутация: 1617
Блокировки:
Конечно, большое спасибо. А насчет а- на скорую руку делал, воткнул из старого тригга на гуи. :)

╭∩╮(︶︿︶)╭∩╮
"Ульта Тайда мне в жопу!" © k0fe1n
Статьи: MUI-1|MUI-2|Шрифт
Полезности: JASP|JNGP|Уголок библиотек
 

lawsonДата: Суббота, 03 Сентября 2011, 19:33:54 | Сообщение # 6
Группа: Проверенные
Сообщений: 3482
Награды: 0
Репутация: 974
Блокировки:
Кароче наработку долго искать пишу по памяти.
И так событие: любое событие будь то время или игрок пишет -"ar"
Действия
globals
integer array HeroId
unit array PlayerHero //Герой для каждого игрока будет в переменной после создания героя.
endglobals

function ANYFUNCTION takes nothing returns nothing
local integer l = 0
local integer j = 0
set HeroId[1] = 'рав код первого героя'
set HeroId[2] = 'рав код второго героя'
set HeroId[3] = 'рав код третьего героя'

loop
exitwhen l > 9
if GetPlayerSlotState(Player(l)) == PLAYER_SLOT_STATE_PLAYING then

loop
exitwhen HeroId[j] != 0
set j = GetRandomInt(1, 3)
endloop

set PlayerHero[l] = CreateUnit(Player(l), HeroId[j], GetRectCenterX(область создания юнита), GetRectCenterY(область создания юнита), GetRandomReal(0, 360))
set HeroId[j] = 0
endif

set l = l + 1
endloop
endfunction

Держи. Эта наработка даст тебе выбор героев без повторения.


Nic nie wiem bo mam chuj.
редактирую посты! ВСЕ!


Сообщение отредактировал lawson - Суббота, 03 Сентября 2011, 19:45:31
 

Ty3uKДата: Суббота, 03 Сентября 2011, 19:52:55 | Сообщение # 7
Группа: Ветераны
Сообщений: 6125
Награды: 2
Репутация: 1617
Блокировки:
Спасибо огромное, сейчас опробую :)

Добавлено (03 Сентябрь 2011, 19:52:55)
---------------------------------------------
Что-то не работает...


╭∩╮(︶︿︶)╭∩╮
"Ульта Тайда мне в жопу!" © k0fe1n
Статьи: MUI-1|MUI-2|Шрифт
Полезности: JASP|JNGP|Уголок библиотек
 

lawsonДата: Суббота, 03 Сентября 2011, 19:56:00 | Сообщение # 8
Группа: Проверенные
Сообщений: 3482
Награды: 0
Репутация: 974
Блокировки:
Quote (Ty3uK)
Что-то не работает...

Что не работает ошибку выдает?

Добавлено (03 Сентябрь 2011, 19:56:00)
---------------------------------------------
Выложи код как ты сделал!


Nic nie wiem bo mam chuj.
редактирую посты! ВСЕ!
 

Ty3uKДата: Суббота, 03 Сентября 2011, 19:58:27 | Сообщение # 9
Группа: Ветераны
Сообщений: 6125
Награды: 2
Репутация: 1617
Блокировки:
Code
globals
     integer array Hero
     unit array Player_Hero
endglobals

function Trig_All_Random_Actions takes nothing returns nothing
     integer i = 0
     integer j = 0
      
     set udg_Hero[1] = 'E000'
     set udg_Hero[2] = 'E008'
     set udg_Hero[3] = 'E001'
     set udg_Hero[4] = 'E005'
     set udg_Hero[5] = 'H000'
     set udg_Hero[6] = 'H003'
     set udg_Hero[7] = 'H00H'
     set udg_Hero[8] = 'H009'
     set udg_Hero[9] = 'H008'
      
     if (IsPlayerInForce(GetLocalPlayer(), bj_FORCE_ALL_PLAYERS)) then
     DisplayTextToPlayer(GetLocalPlayer(), 0, 0, ( GetPlayerName(GetTriggerPlayer()) + ( " выбрал " + "|cFF008AFFAll Random|r" ) ))
     endif
      
     loop
         exitwhen i > 9
         if (GetPlayerSlotState(Player(i)) == PLAYER_SLOT_STATE_PLAYING) then
          
             loop
                 exitwhen Hero[j] != 0
                 set j = GetRandomInt(1, 9)
             endloop
              
             Player_Hero[i] = CreateUnitAtLoc(Player(i), udg_Hero[j], GetStartLocationLoc(GetPlayerStartLocation(Player(i))), 180.00)
              
             if (GetLocalPlayer() == Player(i)) then
             SetCameraPosition(GetLocationX(GetStartLocationLoc(GetPlayerStartLocation(GetLocalPlayer()))), GetLocationY(GetStartLocationLoc(GetPlayerStartLocation(GetLocalPlayer()))))
             endif
              
             if (IsPlayerInForce(GetLocalPlayer(), bj_FORCE_ALL_PLAYERS)) then
             DisplayTextToPlayer(GetLocalPlayer(), 0, 0, (udg_Player_Colors[GetPlayerId(Player(i)) + 1] + ( GetPlayerName(Player(i)) + "|r" ) ) + ( " выбрал " + GetUnitName(Player_Hero[i])))
             endif
          
         i += 1
     endloop
      
     call DisableTrigger( GetTriggeringTrigger() )
endfunction

function InitTrig_All_Random takes nothing returns nothing
     set gg_trg_All_Random = CreateTrigger(  )
     call TriggerRegisterPlayerChatEvent( gg_trg_All_Random, Player(1), "-ar", true )
     call TriggerAddAction( gg_trg_All_Random, function Trig_All_Random_Actions )
endfunction
где трабла?

Добавлено (03 Сентябрь 2011, 19:58:27)
---------------------------------------------
Нет, чекер не ругается. Но при вводе только пишет, что синий игрок активировал рандом


╭∩╮(︶︿︶)╭∩╮
"Ульта Тайда мне в жопу!" © k0fe1n
Статьи: MUI-1|MUI-2|Шрифт
Полезности: JASP|JNGP|Уголок библиотек
 

lawsonДата: Суббота, 03 Сентября 2011, 19:59:39 | Сообщение # 10
Группа: Проверенные
Сообщений: 3482
Награды: 0
Репутация: 974
Блокировки:
Ty3uK, когда ты устанавливаешь глобальные переменные через globals то они не нуждаются в присатвке udg_ так что ее убери.

Nic nie wiem bo mam chuj.
редактирую посты! ВСЕ!


Сообщение отредактировал lawson - Суббота, 03 Сентября 2011, 19:59:58
 

Ty3uKДата: Суббота, 03 Сентября 2011, 20:01:52 | Сообщение # 11
Группа: Ветераны
Сообщений: 6125
Награды: 2
Репутация: 1617
Блокировки:
Ок, но дело не в этом до этого они у меня при инициализации устанавливались. Из-за этого трабла не может быть

╭∩╮(︶︿︶)╭∩╮
"Ульта Тайда мне в жопу!" © k0fe1n
Статьи: MUI-1|MUI-2|Шрифт
Полезности: JASP|JNGP|Уголок библиотек
 

lawsonДата: Суббота, 03 Сентября 2011, 20:17:46 | Сообщение # 12
Группа: Проверенные
Сообщений: 3482
Награды: 0
Репутация: 974
Блокировки:


Nic nie wiem bo mam chuj.
редактирую посты! ВСЕ!


Сообщение отредактировал lawson - Суббота, 03 Сентября 2011, 20:22:39
 

Ty3uKДата: Суббота, 03 Сентября 2011, 20:19:16 | Сообщение # 13
Группа: Ветераны
Сообщений: 6125
Награды: 2
Репутация: 1617
Блокировки:
Начнем с того, что парсер cJass позволяет это делать. Я не забыл- я их специально не ставлю. Большое спасибо, все заработало. Когда смогу- поставлю плюс :)

╭∩╮(︶︿︶)╭∩╮
"Ульта Тайда мне в жопу!" © k0fe1n
Статьи: MUI-1|MUI-2|Шрифт
Полезности: JASP|JNGP|Уголок библиотек
 

lawsonДата: Суббота, 03 Сентября 2011, 20:19:35 | Сообщение # 14
Группа: Проверенные
Сообщений: 3482
Награды: 0
Репутация: 974
Блокировки:
Quote (Ty3uK)
cJass

Так и сказал бы. Пфф


Nic nie wiem bo mam chuj.
редактирую посты! ВСЕ!


Сообщение отредактировал lawson - Суббота, 03 Сентября 2011, 20:19:43
 

Ty3uKДата: Суббота, 03 Сентября 2011, 20:20:13 | Сообщение # 15
Группа: Ветераны
Сообщений: 6125
Награды: 2
Репутация: 1617
Блокировки:
Мой код "полноценный" ;-) все способности так делаю, ничего, все работает :)

╭∩╮(︶︿︶)╭∩╮
"Ульта Тайда мне в жопу!" © k0fe1n
Статьи: MUI-1|MUI-2|Шрифт
Полезности: JASP|JNGP|Уголок библиотек
 

lawsonДата: Суббота, 03 Сентября 2011, 20:20:36 | Сообщение # 16
Группа: Проверенные
Сообщений: 3482
Награды: 0
Репутация: 974
Блокировки:
Ty3uK, У меня на карте такое же но через структуру все делается.

Nic nie wiem bo mam chuj.
редактирую посты! ВСЕ!
 

Ty3uKДата: Суббота, 03 Сентября 2011, 20:20:38 | Сообщение # 17
Группа: Ветераны
Сообщений: 6125
Награды: 2
Репутация: 1617
Блокировки:
Тему можно закрывать :)

╭∩╮(︶︿︶)╭∩╮
"Ульта Тайда мне в жопу!" © k0fe1n
Статьи: MUI-1|MUI-2|Шрифт
Полезности: JASP|JNGP|Уголок библиотек
 

lawsonДата: Суббота, 03 Сентября 2011, 20:23:35 | Сообщение # 18
Группа: Проверенные
Сообщений: 3482
Награды: 0
Репутация: 974
Блокировки:
Действительно както не заметил с самого начала что ты без call пишешь функции.

Nic nie wiem bo mam chuj.
редактирую посты! ВСЕ!


Сообщение отредактировал lawson - Суббота, 03 Сентября 2011, 20:24:50
 

HexingДата: Понедельник, 05 Сентября 2011, 16:12:02 | Сообщение # 19
10 уровень
Группа: Проверенные
Сообщений: 1645
Награды: 1
Репутация: 432
Блокировки:
или я не в теме, или да, но с cJass-ом можно без "call" писать вызов функции buba

 

Ty3uKДата: Вторник, 06 Сентября 2011, 08:11:56 | Сообщение # 20
Группа: Ветераны
Сообщений: 6125
Награды: 2
Репутация: 1617
Блокировки:
Да, именно так. Он не заметил сначала

╭∩╮(︶︿︶)╭∩╮
"Ульта Тайда мне в жопу!" © k0fe1n
Статьи: MUI-1|MUI-2|Шрифт
Полезности: JASP|JNGP|Уголок библиотек
 

[DUОS]Дата: Вторник, 06 Сентября 2011, 18:16:28 | Сообщение # 21
Группа: Заблокированные
Сообщений: 6279
Награды: 9
Репутация: 1708
Блокировки:
Ty3uK,
Твой код не даст гарантии точной работы. Ответь, например, на вопрос - если синим игроком управляет не человек, что в этом случае? Тут нужно автоопределение того, где находится этот игрок. Плюс ко всему, могут попадаться одинаковые юниты; эта проблема решаема. Цвета игроков приятнее в цвете :)

Code
function FirstOfPlaying takes nothing returns player
     local integer i = 0
     local player p
       
     loop
         exitwhen i > 11
         set p = Player(i)
         if GetPlayerSlotState(p) == PLAYER_SLOT_STATE_PLAYING and GetPlayerController(p) == MAP_CONTROL_USER then
             set i = 11     
         endif
         set i = i + 1
     endloop
       
     return p
endfunction

function GetPlayerNameColored takes player p returns string
        local playercolor col=GetPlayerColor(p)
        local string r=GetPlayerName(p)
        if GetPlayerId(p) == 12 then
            set r="the |CFF333429"+r+"|r"
        elseif GetPlayerId(p) == 13 then
            set r="the |cffc1c1ff"+r+"|r"
        elseif GetPlayerId(p) == 14 then
            set r="the |CFF333429"+r+"|r"
        elseif GetPlayerId(p) == 15 then
            set r="the |CFF333429"+r+"|r"
        elseif col == PLAYER_COLOR_RED then
            set r="|CFFFF0303"+r+"|r"
        elseif col == PLAYER_COLOR_BLUE then
            set r="|CFF0042FF"+r+"|r"
        elseif col == PLAYER_COLOR_CYAN then
            set r="|CFF1CE6B9"+r+"|r"
        elseif col == PLAYER_COLOR_PURPLE then
            set r="|CFF540081"+r+"|r"
        elseif col == PLAYER_COLOR_YELLOW then
            set r="|CFFFFFC00"+r+"|r"
        elseif col == PLAYER_COLOR_ORANGE then
            set r="|CFFFE8A0E"+r+"|r"
        elseif col == PLAYER_COLOR_GREEN then
            set r="|CFF20C000"+r+"|r"
        elseif col == PLAYER_COLOR_PINK then
            set r="|cffff80c0"+r+"|r"
        elseif col == PLAYER_COLOR_LIGHT_GRAY then
            set r="|CFF959697"+r+"|r"
        elseif col == PLAYER_COLOR_LIGHT_BLUE then
            set r="|CFF7FBFF1"+r+"|r"
        elseif col == PLAYER_COLOR_AQUA then
            set r="|cFF106246"+r+"|r"
        elseif col == PLAYER_COLOR_BROWN then
            set r="|cFF4E2A04"+r+"|r"
        else
            set r=""
        endif
        set col=null
        return r
endfunction

function IsHeroTypeAvailable takes integer min, integer max returns boolean
     local integer i = min
      
     loop
         exitwhen i > max
         if LoadBoolean(udg_hash,GetUnitTypeId(udg_Hero[i]),0) != true then
             return true
         endif
         set i = i + 1
     endloop
     return false
endfunction

function PickRandomUnitType takes integer min, integer max returns integer
     local integer rnd
     local integer utype
      
     // Кто-то может ввести min большее, чем max. Не стоит его за это корить,
     // мы просто поменяем их местами, чтобы избежать проблем.
     if min > max then
         set rnd = min
         set max = min
         set min = rnd
     endif
      
     if IsHeroTypeAvailable(min,max) then
         // Этот цикл обязательно возвратит нам тип юнита, так как первое условие
         // исключает его бесконечность.
         loop
             set rnd = GetRandomInt(min,max)
             set utype = GetUnitTypeId(udg_Hero[rnd])
             if LoadBoolean(udg_hash,utype,0) != true then
                 call SaveBoolean(udg_hash,utype,0,true)
                 return utype
             endif
         endloop
     else
         call DisplayTextToPlayer(GetLocalPlayer(),0,0,"|cffffcc00Ошибка - доступных типов героев меньше, чем игроков.|r")
     endif
     return 0
endfunction

function Trig_All_Random_Actions takes nothing returns nothing
     local integer i = 0
     local real x
     local real y
     local unit u
     local player p
      
     call DisplayTextToPlayer(GetLocalPlayer(),0,0,GetPlayerNameColored(GetTriggerPlayer()) + " включил |cFF008AFFAll Random|r")
       
     loop
         exitwhen i > 11
         set p = Player(i)
         if GetPlayerSlotState(p) == PLAYER_SLOT_STATE_PLAYING then
             set x = GetStartLocationX(GetPlayerStartLocation(p))
             set y = GetStartLocationY(GetPlayerStartLocation(p))
             if GetLocalPlayer() == p then
                 call PanCameraToTimed(x,y,0.)     
             endif
             set u = CreateUnit(p,PickRandomUnitType(1,9),x,y,180.)
             call DisplayTextToPlayer(GetLocalPlayer(),0,0,GetPlayerNameColored(p) + " выбрал " + GetUnitName(u))
             call SetPlayerTechMaxAllowed(p,'HERO',0)
         endif
         set i = i + 1
     endloop
       
     call DisableTrigger(GetTriggeringTrigger())     
     set p = null
endfunction

function InitTrig_All_Random takes nothing returns nothing
      set gg_trg_All_Random = CreateTrigger()
      call TriggerRegisterPlayerChatEvent(gg_trg_All_Random,FirstOfPlaying(),"-ar",true)
      call TriggerAddAction(gg_trg_All_Random,function Trig_All_Random_Actions)
endfunction

Вот рабочий -ar на чистом Jass. Всё, что над функцией Trig_All_Random_Actions, заносится в кастом код карты. Требует также проинициализированного хеша.


НУ И ЧТО ТЕПЕРЬ?


Кликайте на дракошку ;)


Сообщение отредактировал [DUОS] - Вторник, 06 Сентября 2011, 18:18:01
 

lawsonДата: Вторник, 06 Сентября 2011, 18:19:37 | Сообщение # 22
Группа: Проверенные
Сообщений: 3482
Награды: 0
Репутация: 974
Блокировки:
Quote (|DUОS|)
Плюс ко всему, могут попадаться одинаковые юниты

Как могут?
там же написано что рав код юнита в массиве после создания обнуляется!?


Nic nie wiem bo mam chuj.
редактирую посты! ВСЕ!
 

[DUОS]Дата: Вторник, 06 Сентября 2011, 18:24:01 | Сообщение # 23
Группа: Заблокированные
Сообщений: 6279
Награды: 9
Репутация: 1708
Блокировки:
Quote (lawson)

там же написано что рав код юнита в массиве после создания обнуляется!?

Ещё лучше... Ты представь себе - будет создавать юнита null. Весело.


НУ И ЧТО ТЕПЕРЬ?


Кликайте на дракошку ;)
 

lawsonДата: Вторник, 06 Сентября 2011, 18:47:12 | Сообщение # 24
Группа: Проверенные
Сообщений: 3482
Награды: 0
Репутация: 974
Блокировки:
Quote (|DUОS|)
Ещё лучше... Ты представь себе - будет создавать юнита null. Весело.

не тупи. там условие что в ячейке массива число не равное 0.

loop
exitwhen l > 9
if GetPlayerSlotState(Player(l)) == PLAYER_SLOT_STATE_PLAYING then

loop
exitwhen HeroId[j] != 0
set j = GetRandomInt(1, 3)

endloop

set PlayerHero[l] = CreateUnit(Player(l), HeroId[j], GetRectCenterX(область создания юнита), GetRectCenterY(область создания юнита), GetRandomReal(0, 360))
set HeroId[j] = 0
endif

set l = l + 1
endloop


Nic nie wiem bo mam chuj.
редактирую посты! ВСЕ!
 

[DUОS]Дата: Вторник, 06 Сентября 2011, 23:15:39 | Сообщение # 25
Группа: Заблокированные
Сообщений: 6279
Награды: 9
Репутация: 1708
Блокировки:
Quote (lawson)
loop
exitwhen HeroId[j] != 0
set j = GetRandomInt(1, 3)
endloop

Вариант, так можно обойтись без хэша, но смотри - возникает проблема бесконечного цикла, когда все Hero в ранже уже null.


НУ И ЧТО ТЕПЕРЬ?


Кликайте на дракошку ;)
 

  • Страница 1 из 2
  • 1
  • 2
  • »
Поиск:

Copyright © 2006 - 2024 Warcraft3FT.info При копировании материалов c сайта ставьте, пожалуйста, активную обратную ссылку на нас • Design by gReeB04ki ©
Хостинг от uCoz