Пятница, 19.04.2024, 06:56
 
Приветствую Вас Guest | RSS
Главная страница | Бесполезный код) - Форум | Регистрация | Вход
[Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Форум » Игровая мастерская » Программирование » Бесполезный код)
Бесполезный код)
DetLeRДата: Пятница, 03.09.2010, 00:50 | Сообщение # 1
Engineer
Группа: Администраторы
Сообщений: 1731
Статус: Offline
Решил что буду понемногу подбрасывать бесполезный код, который я портирую из ЭС в свой мод smile Для начала кину вам ентитю beam_spotlight для двигла эп2. Отличия от point_spotlight только в том, что у этой ентити куева хуча настроек для "ротатинга" туда-сюда, и всякие левые инпуты/аутпуты, как я понял, тоже для кручения.
Client
Server
Тыкнуть в base.fgd вот это:
Code
@PointClass base(Targetname, Parentname, RenderFields, Angles, DXLevelChoice) studio("models/editor/cone_helper.mdl") = beam_spotlight :    
    "An entity to draw a spotlight. Will draw a beam when the player views it side on, and a halo when it's facing towards the player. "+
    "Unless the 'No Dynamic Light' spawnflag is checked, it will also create a dynamic light wherever the end of the spotlight rests." +
    "This spotlight is entirely client side, it is not sync'd across clients."
[
    spawnflags(Flags) =    
    [
     1 : "Start On" : 1
     2 : "No Dynamic Light" : 0
     4 : "Start rotation on" : 0
     8 : "Reverse Direction" : 0
     16 : "X Axis"  : 0
     32 : "Y Axis"  : 0
    ]

    maxspeed(integer) : "Max Rotation Speed" : 100 : "The maximum rotation speed of the spotlight, in degrees per second."

    spotlightlength(integer) : "Spotlight Length" : 500 : "Length of the spotlight beam."
    spotlightwidth(integer) : "Spotlight Width" : 50 : "Width of the spotlight beam."
    rendercolor(color255) : "Color (R G B)" : "255 255 255"
    HDRColorScale(float) : "HDR color scale." : "0.7" : "float value to multiply sprite color by when running in HDR mode."
       
    // Inputs
    input LightOn(void) : "Turn the spotlight on."
    input LightOff(void) : "Turn the spotlight off"
    input Start(void) : "Start the rotator rotating."
    input Stop(void) : "Stop the rotator from rotating."
    input Reverse(void) : "Reverse the direction of rotation of the rotator."
       
    // outputs
    output OnLightOn(void) : "Fires when light turns on."
    output OnLightOff(void) : "Fires when light turns off."
]

Позже может еще чего кину smile Собственно с этой штукой не особо парясь можно сделать красивый эффект, например от аварийном лампочки. Как пример, красный фонарь на de_nuke при взрыве бомбы.

 
HitmenДата: Пятница, 03.09.2010, 10:25 | Сообщение # 2
Spy
Группа: Проверенные
Сообщений: 2104
Репутация: 84
Статус: Offline
Прикольненько

Туториалы по программированию, мои и слегка изменённые чужие. :)

Sp@ce Project Blog
Sp@ce Project Web-Site

I'm in spaaace!
Я в контакте
Я в Facebook'е

 
AndreazzzДата: Пятница, 03.09.2010, 15:00 | Сообщение # 3
Spy
Группа: Проверенные
Сообщений: 996
Репутация: 55
Статус: Offline
DetLeR, можнобыло просто point_spotlight заменить етим

Добавлено (03.09.2010, 14:49)
---------------------------------------------
О точно, ты свой materialsystem скинь)

Добавлено (03.09.2010, 15:00)
---------------------------------------------
m_bHasDynamicLight , хм.. ето можно совместить


 
DetLeRДата: Пятница, 03.09.2010, 23:23 | Сообщение # 4
Engineer
Группа: Администраторы
Сообщений: 1731
Статус: Offline
Andreazzz, мой materialsystem практически ничем не отличаеться от твоего materialsystem smile Тебе чем то в моде мешает point_spotlight? Просто юзай эту ентитю.

За флуд буду выдавать штрафные балы.

 
StriderДата: Суббота, 04.09.2010, 00:45 | Сообщение # 5
Spy
Группа: Проверенные
Сообщений: 1465
Репутация: 51
Статус: Offline
1. Не флуд а оффтоп
2. В чём оффтоп, я предложил сделать лобби из ас для дм.
 
AndreazzzДата: Суббота, 04.09.2010, 13:36 | Сообщение # 6
Spy
Группа: Проверенные
Сообщений: 996
Репутация: 55
Статус: Offline
DetLeR, я сказал по теме, тк ето нужно подключать сторонние длл и это почти невозможно, и кто ето будет делать? Ето было и останется хламом

 
DetLeRДата: Понедельник, 24.09.2012, 22:45 | Сообщение # 7
Engineer
Группа: Администраторы
Сообщений: 1731
Статус: Offline
В тф2 есть незаюзаная ентитя, называется env_fallingrocks, как нетрудно догадаться - это падающие камни. Сама ентитя работает так, спавниться от чего либо камень интуп/оутпут. В параметрах задается 4 опции, а именно:
1. Fall Speed - ну вообщем скорость с которой камень будет падать с места где он появляется.
2. Rotation Speed - скорость вращения, я пока не до конца понимаю зачем это надо, но оно есть и его можно юзать.
3, 4. MinSpawnTime и MaxSpawnTime - минимальный и максимальный промежуток времени в котором спавниться камень, вообщем, кто юзал таймер - поймет, это не сложно.
КОД.
Вставляем в корневую папку сервера и добавляем в проект, компилим.
В *.fgd тф2 я не нашел этой ентити, так что пришлось написать самому:
Code
@PointClass size( -4 -4 -4, 4 4 4 ) base(Targetname, Parentname, Angles) = env_fallingrocks : "Falling Rock"
[
  FallSpeed(float) : "Fall Speed" : 1
  RotationSpeed(float) : "Rotation Speed" : 1
  MinSpawnTime(float) : "Minimum Spawn Time" : 1
  MaxSpawnTime(float) : "Maximum Spawn Time" : 1
   
  output OnRockSpawned(void) : "On Rock Spawned"
   
  input SpawnRock(float) : "Spawn Rock"
]

Все параметры, как видно, на единице. Подберете параметры сами по вкусу. Ну и небольшое видео демонстрации вот тут (лагает в начале - хз почему, но вообщем всё понятно). На видео есть горка, камни. Ентитя присобачена к func_tracktrain который катается по двум патч трекам, только со скоростью я затупил, так что этого практически не видно.. Вообщем пользуйтесь на здоровье.
 
Форум » Игровая мастерская » Программирование » Бесполезный код)
  • Страница 1 из 1
  • 1
Поиск:

Помощь в разработке форума: HOMiE7