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

Как делать ловушки?

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

Оффлайн remeercs

  • 73
  • Мощь: 1
Как делать ловушки?
« : 13-06-2017, 07:21:53 »
помогите пожалуйста как сделать такие же ловушки как в Овертров и силтбрейкер именно такие на которые ты наступил и они сработали
« Последнее редактирование: 18-06-2017, 11:57:37 от Илья »

Оффлайн remeercs

  • 73
  • Мощь: 1
у меня вышло только самое изи тупо скопировать файлы из овера,а чекая карту там нет моделей ловушки и нажимных плит если что я делаю веном трап

Оффлайн CryDeS

  • Друзья CG
  • 1212
  • Мощь: 12
у меня вышло только самое изи тупо скопировать файлы из овера,а чекая карту там нет моделей ловушки и нажимных плит если что я делаю веном трап
Тригер вызывающий скрипт. Посмотри где то на форуме завалялся древний, но все еще актуальный, гайд по телепортации юнитов. Все так же, ток вместо телепорта двигай предметы на карте.

Оффлайн remeercs

  • 73
  • Мощь: 1
Тригер вызывающий скрипт. Посмотри где то на форуме завалялся древний, но все еще актуальный, гайд по телепортации юнитов. Все так же, ток вместо телепорта двигай предметы на карте.
а я же скопировал триггер скрипт из овертров
только как теперь это все использовать в моей кастомке что ставить и т.д

Оффлайн CryDeS

  • Друзья CG
  • 1212
  • Мощь: 12
а я же скопировал триггер скрипт из овертров
только как теперь это все использовать в моей кастомке что ставить и т.д
Понятия не имею, кастомка же твоя. Ставь триггер где нужно, ставь скрипт куда нужно.

Оффлайн remeercs

  • 73
  • Мощь: 1
Понятия не имею, кастомка же твоя. Ставь триггер где нужно, ставь скрипт куда нужно.
local triggerActive = true

вопрос в чем?! мне нужно узнать как поставить этот тригер посколько такого нету ниже файлы
файл из юнится кастом
Спойлер
Код
"npc_dota_venom_trap_ward"
{
// General
//
"BaseClass" "npc_dota_creature" // Class of entity of link to.
"Model" "models/props/traps/hooded_fang/hooded_fang.vmdl"// Model.
"Level" "1"
    "VisbibleInPortraitOnly" "1"
 
// Abilities
//----------------------------------------------------------------

"Ability1" "breathe_poison" // Ability 1.
"Ability2" "trap_unselectable" // Ability 2.
"Ability3" "" // Ability 3.
"Ability4" "" // Ability 4.
"Ability5" "" // Ability 5.
"Ability6" "" // Ability 6 - Extra.
"Ability7" "" // Ability 7 - Extra.
"Ability8" "" // Ability 8 - Extra.

// Attack
//----------------------------------------------------------------
"AttackCapabilities" "DOTA_UNIT_CAP_RANGED_ATTACK"

// Movement
//----------------------------------------------------------------
"MovementCapabilities" "DOTA_UNIT_CAP_MOVE_NONE" // Type of locomotion - ground, air
"MovementSpeed" "0" // Speed
"MovementTurnRate" "0.25" // Turning rate.

// Team
//----------------------------------------------------------------
"UnitRelationshipClass" "DOTA_NPC_UNIT_RELATIONSHIP_TYPE_WARD"
}
}
ну и содержимое файла venom_trap_trigger
--[[ venom_trap_trigger.lua ]]

local triggerActive = true

function OnStartTouch(trigger)
local triggerName = thisEntity:GetName()
local team = trigger.activator:GetTeam()
local level = trigger.activator:GetLevel()
--print("Trap Button Trigger Entered")
if not triggerActive then
print( "Trap Skip" )
return
end
triggerActive = false
local button = triggerName .. "_button"

local model = triggerName .. "_model"
local npc = Entities:FindByName( nil, triggerName .. "_npc" )
local target = Entities:FindByName( nil, triggerName .. "_target" )
if npc ~= nil then
local venomTrap = npc:FindAbilityByName("breathe_poison")
npc:SetContextThink( "ResetButtonModel", function() ResetButtonModel() end, 4 )
npc:CastAbilityOnPosition(target:GetOrigin(), venomTrap, -1 )
DoEntFire( model, "SetAnimation", "fang_attack", .4, self, self )
end

local model1 = triggerName .. "_model1"
local npc1 = Entities:FindByName( nil, triggerName .. "_npc1" )
local target1 = Entities:FindByName( nil, triggerName .. "_target1" )
if npc1 ~= nil then
local venomTrap = npc1:FindAbilityByName("breathe_poison")
--npc:SetContextThink( "ResetButtonModel", function() ResetButtonModel() end, 4 )
npc1:CastAbilityOnPosition(target1:GetOrigin(), venomTrap, -1 )
DoEntFire( model1, "SetAnimation", "fang_attack", .4, self, self )
end

local model2 = triggerName .. "_model2"
local npc2 = Entities:FindByName( nil, triggerName .. "_npc2" )
local target2 = Entities:FindByName( nil, triggerName .. "_target2" )
if npc2 ~= nil then
local venomTrap = npc2:FindAbilityByName("breathe_poison")
--npc2:SetContextThink( "ResetButtonModel", function() ResetButtonModel() end, 4 )
npc2:CastAbilityOnPosition(target2:GetOrigin(), venomTrap, -1 )
DoEntFire( model2, "SetAnimation", "fang_attack", .4, self, self )
end

DoEntFire( button, "SetAnimation", "ancient_trigger001_down", 0, self, self )
DoEntFire( button, "SetAnimation", "ancient_trigger001_down_idle", .35, self, self )
DoEntFire( button, "SetAnimation", "ancient_trigger001_up", 4, self, self )
DoEntFire( button, "SetAnimation", "ancient_trigger001_idle", 4.5, self, self )

local heroIndex = trigger.activator:GetEntityIndex()
local heroHandle = EntIndexToHScript(heroIndex)
npc.KillerToCredit = heroHandle
end

function OnEndTouch(trigger)
local triggerName = thisEntity:GetName()
local team = trigger.activator:GetTeam()
--print("Trap Button Trigger Exited")
local heroIndex = trigger.activator:GetEntityIndex()
local heroHandle = EntIndexToHScript(heroIndex)
end

function ResetButtonModel()
print( "Trap RESET" )
triggerActive = true
end
[свернуть]
« Последнее редактирование: 13-06-2017, 17:45:06 от -ExotiC- »

Оффлайн Илья

  • Супермодератор
  • 2131
  • Мощь: 21
Думаю, здеь ответ будет такой же:

Понятия не имею, кастомка же твоя. Ставь триггер где нужно, ставь скрипт куда нужно.

А вообще тебе ответили прям полным ответом в первом же комменте: иди читай гайды.