Quote:
Originally Posted by Neuro Toxin
Are u adding the script name to a logic entity?
|
Yeah. I write scrapped code on tutor base:
Code:
//Делаем прекэш используемых моделек. Либо не делаем, если одна из используемых моделей уже используется на карте.
function Precache() {
self.PrecacheModel("models/props_junk/watermelon01.mdl");
self.PrecacheModel("models/props_urban/plastic_water_jug001.mdl");
self.PrecacheModel("models/props/de_dust/du_antenna_a.mdl");
}
// Пробная функция. Превращает активатора в канистру.
// Если хостаге сделать аутпут, то при подъему он будет активатор и он станет канистрой. Если игрок по кнопке, то игрок. И тп. С этого я и начал :-)
function Test()
{
activator.SetModel("models/props_urban/plastic_water_jug001.mdl");
}
//Замена модельки заложника по триггеру, проверяем наличие имени и меняем модельку. Юзаю для трех хостаг черех logic_auto при NewMapSpawn.
function StartRoundHostage1()
{
local starthost1 = null;
while (Entities.FindByName(starthost1, "hostage1") != null)
{
starthost1 = Entities.FindByName(starthost1, "hostage1");
starthost1.SetModel("models/props_urban/plastic_water_jug001.mdl");
}
}
function StartRoundHostage2()
{
local starthost2 = null;
while (Entities.FindByName(starthost2, "hostage2") != null)
{
starthost2 = Entities.FindByName(starthost2, "hostage2");
starthost2.SetModel("models/props_urban/plastic_water_jug001.mdl");
}
}
function StartRoundHostage3()
{
local starthost3 = null;
while (Entities.FindByName(starthost3, "hostage3") != null)
{
starthost3 = Entities.FindByName(starthost3, "hostage3");
starthost3.SetModel("models/props_urban/plastic_water_jug001.mdl");
}
}
//Замена модельки заложника на плечах контра. Ищем hostage1, если есть меняем по моделе. Замена по имени почему-то не работает. Заложних на плечах, судя по всему, имени не имеет. Как только падает на пол, снова обретает его.
function FirstPickUpHostage1()
{
local FpickedUpHost1 = null;
while (Entities.FindByName(FpickedUpHost1, "hostage1") != null)
{
FpickedUpHost1 = Entities.FindByModel(FpickedUpHost1,"models/hostage/hostage_carry.mdl");
FpickedUpHost1.SetModel("models/props/de_dust/du_antenna_a.mdl");
}
}
function FirstPickUpHostage2()
{
local FpickedUpHost2 = null;
while (Entities.FindByName(FpickedUpHost2, "hostage2") != null)
{
FpickedUpHost2 = Entities.FindByModel(FpickedUpHost2,"models/hostage/hostage_carry.mdl");
FpickedUpHost2.SetModel("models/props/de_dust/du_antenna_a.mdl");
}
}
function FirstPickUpHostage3()
{
local FpickedUpHost3 = null;
while (Entities.FindByName(FpickedUpHost3, "hostage3") != null)
{
FpickedUpHost3 = Entities.FindByModel(FpickedUpHost3,"models/hostage/hostage_carry.mdl");
FpickedUpHost3.SetModel("models/props/de_dust/du_antenna_a.mdl");
}
}
//Замена модельки заложника на плечах контра по модельке, без имени. Второй и последующий подъемы заложника будут с дефолтной моделью.
// Поэтому можно юзать раз в n сек после первого подъема глобально. Или забить. На карте юзаю чере logic_timer и math_counter
// Второй получает +1 от любого хостаги и запускает таймер с рефаером в 2 секунды.
function HostageCarryAll()
{
local HostCarryAll = null;
while (Entities.FindByModel(HostCarryAll, "models/hostage/hostage_carry.mdl") != null)
{
HostCarryAll = Entities.FindByModel(HostCarryAll,"models/hostage/hostage_carry.mdl");
HostCarryAll.SetModel("models/props/de_dust/du_antenna_a.mdl");
}
}
And this work (+ texture bug):
https://www.youtube.com/watch?v=bUbFtd9CAZ4
https://www.youtube.com/watch?v=CW8eLxl9blg