CustomGames.ru - Dota 2 пользовательские игры

Настройки в игре

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн EnDronist

  • 222
  • Мощь: 1
  • Перфекционист-максималист
Настройки в игре
« : 01-12-2016, 09:47:53 »
Как сделать панель настроек игры во время загрузки игроков, во время пика и во время игры, с нуля? К примеру:
« Последнее редактирование: 01-12-2016, 14:26:14 от EnDronist »
Ням
Мой аддон: steamcommunity.com/...ils/?id=671144274
[свернуть]

Оффлайн CryDeS

  • Друзья CG
  • 1208
  • Мощь: 12
Re: Настройки в игре
« Ответ #1 : 01-12-2016, 09:59:28 »
Как сделать панель настроек игры во время загрузки игроков, во время пика и во время игры с нуля? К примеру:
На загрузочный экран ставишь кучу кнопочек и чего угодно, и посылаешь на сервак инфу о выбранных настройках.
developer.valvesoftware.com/..._Screens

Оффлайн EnDronist

  • 222
  • Мощь: 1
  • Перфекционист-максималист
Re: Настройки в игре
« Ответ #2 : 01-12-2016, 10:07:12 »
На загрузочный экран ставишь кучу кнопочек и чего угодно, и посылаешь на сервак инфу о выбранных настройках.
developer.valvesoftware.com/..._Screens
Она ещё выезжала сбоку, а по нажатию кнопки снова заезжала влево
« Последнее редактирование: 01-12-2016, 10:12:04 от EnDronist »
Ням
Мой аддон: steamcommunity.com/...ils/?id=671144274
[свернуть]

Оффлайн CryDeS

  • Друзья CG
  • 1208
  • Мощь: 12
Re: Настройки в игре
« Ответ #3 : 01-12-2016, 10:16:15 »
Она ещё выезжала сбоку, а по нажатию кнопки снова заезжала влево
ставишь кнопку которая перемещает панель?
и на случай плагиата у других кастомок - gcfscape в помощь.

Оффлайн ZLOY

  • Супермодератор
  • 396
  • Мощь: 5
Re: Настройки в игре
« Ответ #4 : 01-12-2016, 10:42:29 »
Не на загрузочном экране же
developer.valvesoftware.com/...me_Setup

Оффлайн CryDeS

  • Друзья CG
  • 1208
  • Мощь: 12
Re: Настройки в игре
« Ответ #5 : 01-12-2016, 12:14:07 »
Не на загрузочном экране же
developer.valvesoftware.com/...me_Setup
А да, мой косяк, но суть почти не меняется.

Оффлайн MahouShoujo

  • Продвинутый
  • 195
  • Мощь: 3
Re: Настройки в игре
« Ответ #6 : 01-12-2016, 16:31:01 »
Я может не понял но Game Setup как раз на загрузочном экране. Точнее layout загрузочного экрана остается на фоне и поверх него кладется геймсетап.

Оффлайн EnDronist

  • 222
  • Мощь: 1
  • Перфекционист-максималист
Re: Настройки в игре
« Ответ #7 : 03-12-2016, 09:16:10 »
Не на загрузочном экране же
developer.valvesoftware.com/...me_Setup
Тут только информация о событиях при нажатии кнопок, которые изначально уже есть. А насчёт кастомных настроек?
« Последнее редактирование: 03-12-2016, 10:00:28 от EnDronist »
Ням
Мой аддон: steamcommunity.com/...ils/?id=671144274
[свернуть]

Оффлайн ZLOY

  • Супермодератор
  • 396
  • Мощь: 5
Re: Настройки в игре
« Ответ #8 : 03-12-2016, 09:27:32 »
Добавляешь в Custom UI Manifest
Код
<CustomUIElement type="GameSetup" layoutfile="file://{resources}/layout/custom_game/my_custom_game_setup.xml" />
И в соответствующем файле пилишь свой интерфейс.

Оффлайн EnDronist

  • 222
  • Мощь: 1
  • Перфекционист-максималист
Re: Настройки в игре
« Ответ #9 : 03-12-2016, 10:00:36 »
Добавляешь в Custom UI Manifest
Код
<CustomUIElement type="GameSetup" layoutfile="file://{resources}/layout/custom_game/my_custom_game_setup.xml" />
И в соответствующем файле пилишь свой интерфейс.
Я в панораме - полный ноль. Гайд, как сделать кнопку, мне в этом поможет или подобный стиль кнопок (CheckBox, ComboBox, SpinButton и т.д.) уже есть где-то в кэше?
(Кнопку сделал, а вот как изменить что-либо в игре по её нажатии - не знаю, в JS API такого, как SetHealth(), нет)
« Последнее редактирование: 03-12-2016, 12:06:39 от EnDronist »
Ням
Мой аддон: steamcommunity.com/...ils/?id=671144274
[свернуть]

Оффлайн ZLOY

  • Супермодератор
  • 396
  • Мощь: 5
Re: Настройки в игре
« Ответ #10 : 03-12-2016, 13:51:59 »
Гайд, как сделать кнопку, мне в этом поможет или подобный стиль кнопок (CheckBox, ComboBox, SpinButton и т.д.) уже есть где-то в кэше?
developer.valvesoftware.com/...a/Panels
Кнопку сделал, а вот как изменить что-либо в игре по её нажатии - не знаю, в JS API такого, как SetHealth(), нет
developer.valvesoftware.com/...e_Events

Оффлайн EnDronist

  • 222
  • Мощь: 1
  • Перфекционист-максималист
Re: Настройки в игре
« Ответ #11 : 03-12-2016, 14:53:44 »
ZLOY,

layout:

custom_ui_manifest.xml
Код
<root>
    <Panel>
        <CustomUIElement type="Hud" layoutfile="file://{resources}/layout/custom_game/test.xml" />
        <CustomUIElement type="Hud" layoutfile="file://{resources}/layout/custom_game/test2.xml" />
        <CustomUIElement type="Hud" layoutfile="file://{resources}/layout/custom_game/test3.xml" />
        <CustomUIElement type="Hud" layoutfile="file://{resources}/layout/custom_game/test4.xml" />
    </Panel>
</root>
test.xml
Код
<root>
   <styles>
      <include src="file://{resources}/styles/custom_game/test.css" />
   </styles>
   <scripts>
      <include src="file://{resources}/scripts/custom_game/test.js" />
   </scripts>
   <Panel class="Main" >
      <Button id="btnTest" onactivate="onBtnTestClick('myArgument')" />
   </Panel>
</root>
test2.xml
Код
<root>
   <styles>
      <include src="file://{resources}/styles/custom_game/test2.css" />
   </styles>
   <scripts>
      <include src="file://{resources}/scripts/custom_game/test2.js" />
   </scripts>
   <Panel class="Main2" >
      <RadioButton checked="checked" group="Demo" id="Demo1" text="Radio button 1" onactivate="onTest2Click('myArgument')"/>
   </Panel>
</root>
test3.xml
Код
<root>
   <styles>
      <include src="file://{resources}/styles/custom_game/test3.css" />
   </styles>
   <scripts>
      <include src="file://{resources}/scripts/custom_game/test3.js" />
   </scripts>
   <Panel class="Main3" >
      <RadioButton group="Demo" id="Demo2" text="Radio button 2" onactivate="onTest3Click('myArgument')"/>
   </Panel>
</root>
test4.xml
Код
<root>
   <styles>
      <include src="file://{resources}/styles/custom_game/test4.css" />
   </styles>
   <scripts>
      <include src="file://{resources}/scripts/custom_game/test4.js" />
   </scripts>
   <Panel class="Main4" >
      <RadioButton group="Demo" id="Demo3" text="Radio button 3" onactivate="onTest4Click('myArgument')"/>
   </Panel>
</root>
scripts:

test.css
Код
.Main {
   vertical-align: center;    /* выравнивание по центру */
   horizontal-align: center;
}
#btnTest {   /* Обычное состояние */
    background-color: #ec4; /* Цвет фона */
    width: 200px; /* Ширина и ниже - высота */
    height: 200px;
}
#btnTest:hover {   /* При наведении */
    width: 205px;
    height: 205px;
}
#btnTest:active {   /* При нажатии */
    border: 4px solid #fff; /* Рамка в 4 пикселя шириной и с белым цветом */
}
test2.css
Код
.Main2 {
   vertical-align: center;    /* выравнивание по центру */
   horizontal-align: center;
}
#Demo1 {   /* Обычное состояние */
    background-color: #ec4; /* Цвет фона */
    width: 200px; /* Ширина и ниже - высота */
    height: 150px;
}
test3.css
Код
.Main3 {
   vertical-align: center;    /* выравнивание по центру */
   horizontal-align: center;
}
#Demo2 {   /* Обычное состояние */
    background-color: #ec4; /* Цвет фона */
    width: 150px; /* Ширина и ниже - высота */
    height: 200px;
}
#Demo2:hover {   /* При наведении */
    width: 205px;
    height: 205px;
}
#Demo2:active {   /* При нажатии */
    border: 4px solid #fff; /* Рамка в 4 пикселя шириной и с белым цветом */
}
test4.css
Код
.Main4 {
   vertical-align: center;    /* выравнивание по центру */
   horizontal-align: center;
}
#Demo3{   /* Обычное состояние */
    background-color: #ec4; /* Цвет фона */
    width: 220px; /* Ширина и ниже - высота */
    height: 220px;
}
#Demo3:hover {   /* При наведении */
    width: 205px;
    height: 205px;
}
#Demo3:active {   /* При нажатии */
    border: 4px solid #fff; /* Рамка в 4 пикселя шириной и с белым цветом */
}
styles:

test.js
Код
function onBtnTestClick(event){
    $.Msg("Ti pidr") // вывод в консоль
   GameUI.SetCameraTarget( Players.GetPlayerHeroEntityIndex( -1 ) )
    var plyID = Game.GetLocalPlayerID(); // Game - глобальна¤ штука, смотри API JS
   Game.SetPlayerMuted( plyID, 0 )
   $.Msg(plyID)
    var data = {      // ќбьект дл¤ передачи в Ћуа
        playerID: plyID,
        msg: event        // аргумен, который указывали в хмл onactivate="onBtnTestClick('myArgument')
    }
    // кладем                      "придуманное_им¤_событи¤" и наш обьект
    GameEvents.SendCustomGameEventToServer(  "event_test",             data );
}
test2.js
Код
function onTest2Click(event){
    $.Msg("Ti pidr") // вывод в консоль
   GameUI.SetCameraTarget( Players.GetPlayerHeroEntityIndex( -1 ) )
    var plyID = Game.GetLocalPlayerID(); // Game - глобальна¤ штука, смотри API JS
   Game.SetPlayerMuted( plyID, 0 )
   $.Msg(plyID)
    var data = {      // ќбьект дл¤ передачи в Ћуа
        playerID: plyID,
        msg: event        // аргумен, который указывали в хмл onactivate="onBtnTestClick('myArgument')
    }
    // кладем                     "придуманное_им¤_событи¤" и наш обьект
    GameEvents.SendCustomGameEventToServer(  "event_test",             data );
}
test3.js
Код
function onTest3Click(event){
    $.Msg("Ti pidr") // вывод в консоль
   GameUI.SetCameraTarget( Players.GetPlayerHeroEntityIndex( -1 ) )
    var plyID = Game.GetLocalPlayerID(); // Game - глобальна¤ штука, смотри API JS
   Game.SetPlayerMuted( plyID, 0 )
   $.Msg(plyID)
    var data = {      // ќбьект дл¤ передачи в Ћуа
        playerID: plyID,
        msg: event        // аргумен, который указывали в хмл onactivate="onBtnTestClick('myArgument')
    }
    // кладем                     "придуманное_им¤_событи¤" и наш обьект
    GameEvents.SendCustomGameEventToServer(  "event_test",             data );
}
test4.js
Код
[b]function onTest4Click(event){
    $.Msg("Ti pidr") // вывод в консоль
   GameUI.SetCameraTarget( Players.GetPlayerHeroEntityIndex( -1 ) )
    var plyID = Game.GetLocalPlayerID(); // Game - глобальна¤ штука, смотри API JS
   Game.SetPlayerMuted( plyID, 0 )
   $.Msg(plyID)
    var data = {      // ќбьект дл¤ передачи в Ћуа
        playerID: plyID,
        msg: event        // аргумен, который указывали в хмл onactivate="onBtnTestClick('myArgument')
    }
    // кладем                     "придуманное_им¤_событи¤" и наш обьект
    GameEvents.SendCustomGameEventToServer(  "event_test",             data );
}
Итог:
« Последнее редактирование: 03-12-2016, 14:57:36 от EnDronist »
Ням
Мой аддон: steamcommunity.com/...ils/?id=671144274
[свернуть]

Оффлайн EnDronist

  • 222
  • Мощь: 1
  • Перфекционист-максималист
Re: Настройки в игре
« Ответ #12 : 04-12-2016, 01:44:58 »
Что я сделал не так и как укомпановать все файлы в один? Нужен ли мне vtex формат для создания целой панели с кнопками?
Ням
Мой аддон: steamcommunity.com/...ils/?id=671144274
[свернуть]

Оффлайн CryDeS

  • Друзья CG
  • 1208
  • Мощь: 12
Re: Настройки в игре
« Ответ #13 : 04-12-2016, 07:05:02 »
Что я сделал не так и как укомпановать все файлы в один? Нужен ли мне vtex формат для создания целой панели с кнопками?
Я не вижу на быстрый взгляд косяков, сделай один файл с одним радиобаттоном, и потом попробуй и выложи код, так будет проще.

Оффлайн EnDronist

  • 222
  • Мощь: 1
  • Перфекционист-максималист
Re: Настройки в игре
« Ответ #14 : 05-12-2016, 11:04:40 »
Ну, кнопка у меня есть, а вот наложить на неё нормальную текстуру и поменять шрифт текста я не могу

Ну а сама кнопка так же и выглядит, я не знаю, как сделать текстуру, которая была бы похожа на RadioButton
P.S. Разобрался, но текстуру кнопки брать откуда? Где-то искать, скачивать или вырезать и фотошопить?
« Последнее редактирование: 05-12-2016, 13:02:59 от EnDronist »
Ням
Мой аддон: steamcommunity.com/...ils/?id=671144274
[свернуть]