Как сделать распаковывающийся итем?
Ну то есть, подходим к коробке, а от туда высыпаются скажем пять рандомных предметов. Я смотрел один мод как это примерно делается, однако он устаревший и на новых движках не работает, и где именно ошибка, понять не могу.
Делаем коробку неподвижным врагом, у которого есть мили-атака. Как только атакует, то переходит в стэйт смерти. А в стэйте смерти прописываем дроп айтемов.
Ну так, мысли вслух, мож есть и более ч0ткие варианты.
BETEPAH[iddqd] вот код из мода. подошел, сама открывается и дропает, если полностью забрать нельзя. это как пример:
Скрытый текст:
ACTOR SmartClipBox : CustomInventory replaces Stimpack
{
+LOOKALLAROUND
Radius 1
States
{
Spawn:
AMMO A 1 A_Look
Loop
Pickup:
AMMO A 1
Fail
See:
AMMO A 1 A_JumpIfCloser(36,"CheckPlayerPack")
Loop
CheckPlayerPack:
TNT1 A 0 A_JumpIfInTargetInventory("NewClip",0,"FullFail")
TNT1 A 0 A_JumpIfInTargetInventory("GotAPack_h",1,"CheckSkill_Pack_h")
TNT1 A 0 A_JumpIfInTargetInventory("GotAPack",1,"CheckSkill_Pack")
Goto CheckSkill_NoPack
CheckSkill_Pack:
TNT1 A 0 A_JumpIf(2==ACS_NamedExecuteWithResult("SkillAmmoMultiplierCheck",0,0,0),"2xAmmoFactorSkill_Pack")
TNT1 A 0 A_JumpIf(3==ACS_NamedExecuteWithResult("SkillAmmoMultiplierCheck",0,0,0),"15xAmmoFactorSkill_Pack")
1xAmmoFactorSkill_Pack:
TNT1 A 0 A_JumpIfInTargetInventory("NewClip",501,"SpawnClips")
Goto SpawnBox
15xAmmoFactorSkill_Pack:
TNT1 A 0 A_JumpIfInTargetInventory("NewClip",451,"SpawnClips")
Goto SpawnBox
2xAmmoFactorSkill_Pack:
TNT1 A 0 A_JumpIfInTargetInventory("NewClip",401,"SpawnClips")
Goto SpawnBox
CheckSkill_NoPack:
TNT1 A 0 A_JumpIf(2==ACS_NamedExecuteWithResult("SkillAmmoMultiplierCheck",0,0,0),"2xAmmoFactorSkill_NoPack")
TNT1 A 0 A_JumpIf(3==ACS_NamedExecuteWithResult("SkillAmmoMultiplierCheck",0,0,0),"15xAmmoFactorSkill_NoPack")
1xAmmoFactorSkill_NoPack:
TNT1 A 0 A_JumpIfInTargetInventory("NewClip",201,"SpawnClips")
Goto SpawnBox
15xAmmoFactorSkill_NoPack:
TNT1 A 0 A_JumpIfInTargetInventory("NewClip",151,"SpawnClips")
Goto SpawnBox
2xAmmoFactorSkill_NoPack:
TNT1 A 0 A_JumpIfInTargetInventory("NewClip",101,"SpawnClips")
Goto SpawnBox
CheckSkill_Pack_h:
TNT1 A 0 A_JumpIf(2==ACS_NamedExecuteWithResult("SkillAmmoMultiplierCheck",0,0,0),"2xAmmoFactorSkill_Pack_h")
TNT1 A 0 A_JumpIf(3==ACS_NamedExecuteWithResult("SkillAmmoMultiplierCheck",0,0,0),"15xAmmoFactorSkill_Pack_h")
1xAmmoFactorSkill_Pack_h:
TNT1 A 0 A_JumpIfInTargetInventory("NewClip",701,"SpawnClips")
Goto SpawnBox
15xAmmoFactorSkill_Pack_h:
TNT1 A 0 A_JumpIfInTargetInventory("NewClip",651,"SpawnClips")
Goto SpawnBox
2xAmmoFactorSkill_Pack_h:
TNT1 A 0 A_JumpIfInTargetInventory("NewClip",601,"SpawnClips")
Goto SpawnBox
SpawnBox:
TNT1 A 0 A_SpawnItemEx("FullClipBox")
Stop
SpawnClips:
AMMO B 15
AMMO CCDDE 10 A_SpawnItemEx("NewClip",0,0,0,frandom(2,4),0,frandom(2,4),random(1,360))
AMMO EFFFG 8 A_SpawnItemEx("NewClip",0,0,0,frandom(2,4),0,frandom(2,4),random(1,360))
AMMO G 70
FadeOut:
AMMO G 5 A_FadeOut(0.1,1)
Loop
FullFail:
AMMO A 1
Goto See
}
}
ACTOR FullClipBox : NewClip
{
Inventory.PickupMessage "Picked up a Large Bullet Case"
Inventory.PickupSound "CBOXPKUP"
Inventory.Amount 100
States
{
Spawn:
AMMO A -1
Stop
}
}
Ты извини конечно, но вопрос не просто не понятен, он вообще не корректный. Какая строка в чем? В декорейте или в меню игры? Правой кнопкой мыши? - у каждого человека зум может быть настроен на какую угодно клавишу. Вообщем учтоняй...
YURA_111 ок! имеется автомат. при нажимании правой кнопки мыши он начинает прицеливаться. а при прицеливании увеличивается зум. где можно найти строку зумирования? (файр 2 смотрел, что-то не понял там ничего)
Fantom Keilin Fox Спасибо, работает отлично! А как сделать, что бы выпадало каждый раз разное количество предметов (допустим от 3 до 10 предметов), ну и предметы могли быть разные?
ACTOR SmartMedikit : CustomInventory replaces Medikit
{
+LOOKALLAROUND
Radius 1
States
{
Spawn:
MEDI A 1 A_Look
Loop
See:
MEDI A 1 A_JumpIfCloser(36,"CheckPlayerHealth")
Loop
CheckPlayerHealth:
TNT1 A 0 A_JumpIfHealthLower(76,"SpawnKit",AAPTR_TARGET)
TNT1 A 0 A_JumpIfHealthLower(100,"SpawnStims",AAPTR_TARGET)
MEDI A 1
Goto See
SpawnKit:
TNT1 A 0 A_Jump(24, "NewMedkit")
TNT1 A 0 A_SpawnItemEx("Medikit2",0,0,0,0,0,0,0,288)
Stop
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""NewMedkit:
TNT1 AAA 0
TNT1 A 0 A_JumpIfHealthLower(51,7)
MEDI C 10 A_SpawnItemEx("MiniStim",0,0,0,frandom(2,4),0,frandom(2,4),random(1,360))
MEDI CDDE 10 A_SpawnItemEx("MiniStim",0,0,0,frandom(2,4),0,frandom(2,4),random(1,360))
MEDI E 10 A_SpawnItemEx("MiniStim",0,0,0,frandom(2,4),0,frandom(2,4),random(1,360))
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""Goto FadeOut
TNT1 AAA 0
MEDI E 10 A_SpawnItemEx("NewMedipack",0,0,0,frandom(2,4),0,frandom(2,4),random(1,360))
Goto FadeOut
SpawnStims:
TNT1 A 0 A_Jump(24, "NewMedkit")
MEDI B 15
MEDI C 10 A_SpawnItemEx("MiniStim",0,0,0,frandom(2,4),0,frandom(2,4),random(1,360))
MEDI DE 10 A_SpawnItemEx("MiniStim",0,0,0,frandom(2,4),0,frandom(2,4),random(1,360))
MEDI E 70
FadeOut:
MEDI E 5 A_FadeOut(0.1,1)
Loop
}
}
я вывел по середине строки, которые дропают предметы. например 3 аптечки дропается вот там можно поменять, что будет дропаться