Add ant mission 1
This commit is contained in:
185
mods/ra/maps/ant-01/ant-01.lua
Normal file
185
mods/ra/maps/ant-01/ant-01.lua
Normal file
@@ -0,0 +1,185 @@
|
|||||||
|
--[[
|
||||||
|
Copyright 2007-2018 The OpenRA Developers (see AUTHORS)
|
||||||
|
This file is part of OpenRA, which is free software. It is made
|
||||||
|
available to you under the terms of the GNU General Public License
|
||||||
|
as published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version. For more
|
||||||
|
information, see COPYING.
|
||||||
|
]]
|
||||||
|
|
||||||
|
--Boolean Vars
|
||||||
|
baseDiscovered = false
|
||||||
|
AtEndGame = false
|
||||||
|
|
||||||
|
--Basic Vars
|
||||||
|
DifficultySetting = Map.LobbyOption("difficulty")
|
||||||
|
TimerColor = Player.GetPlayer("Spain").Color
|
||||||
|
InsertionHelicopterType = "tran.insertion"
|
||||||
|
TimerTicks = DateTime.Minutes(18) -- 18 minutes is roughly 30 mins in the original game
|
||||||
|
ticks = TimerTicks
|
||||||
|
|
||||||
|
--Table Vars
|
||||||
|
TankPath = { waypoint12.Location, waypoint13.Location }
|
||||||
|
InsertionPath = { waypoint12.Location, waypoint0.Location }
|
||||||
|
AlliedBase = { WarFactory, PillBox1, PillBox2, Refinery, PowerPlant1, PowerPlant2, RepairPad, OreSilo, Barracks, RadarDome }
|
||||||
|
AlliedForces = { "2tnk" , "2tnk", "mcv" }
|
||||||
|
ChopperTeam = { "e1r1", "e1r1", "e2", "e2", "e1r1" }
|
||||||
|
|
||||||
|
SendTanks = function()
|
||||||
|
Media.PlaySpeechNotification(allies, "ReinforcementsArrived")
|
||||||
|
Reinforcements.Reinforce(allies, AlliedForces, TankPath, DateTime.Seconds(1))
|
||||||
|
end
|
||||||
|
|
||||||
|
SendInsertionHelicopter = function()
|
||||||
|
Media.PlaySpeechNotification(allies, "AlliedReinforcementsSouth")
|
||||||
|
Reinforcements.ReinforceWithTransport(allies, InsertionHelicopterType, ChopperTeam, InsertionPath, { waypoint4.Location })
|
||||||
|
end
|
||||||
|
|
||||||
|
FinishTimer = function()
|
||||||
|
for i = 0, 9, 1 do
|
||||||
|
local c = TimerColor
|
||||||
|
if i % 2 == 0 then
|
||||||
|
c = HSLColor.White
|
||||||
|
end
|
||||||
|
Trigger.AfterDelay(DateTime.Seconds(i), function() UserInterface.SetMissionText("Allied forces have arrived!", c) end)
|
||||||
|
end
|
||||||
|
Trigger.AfterDelay(DateTime.Seconds(10), function() UserInterface.SetMissionText("") end)
|
||||||
|
end
|
||||||
|
|
||||||
|
TimerExpired = function()
|
||||||
|
allies.MarkCompletedObjective(SurviveObjective)
|
||||||
|
end
|
||||||
|
|
||||||
|
DiscoveredAlliedBase = function(actor, discoverer)
|
||||||
|
if (not baseDiscovered and discoverer.Owner == allies) then
|
||||||
|
baseDiscovered = true
|
||||||
|
Media.PlaySpeechNotification(allies, "ObjectiveReached")
|
||||||
|
Utils.Do(AlliedBase, function(building)
|
||||||
|
building.Owner = allies
|
||||||
|
end)
|
||||||
|
|
||||||
|
--Need to delay this so we don't fail mission before obj added
|
||||||
|
Trigger.AfterDelay(DateTime.Seconds(1), function()
|
||||||
|
SurviveObjective = allies.AddPrimaryObjective("Defend outpost until reinforcements arrive.")
|
||||||
|
SetupTimeNotifications()
|
||||||
|
Trigger.OnAllRemovedFromWorld(AlliedBase, function()
|
||||||
|
allies.MarkFailedObjective(SurviveObjective)
|
||||||
|
end)
|
||||||
|
Media.PlaySpeechNotification(allies, "TimerStarted")
|
||||||
|
Trigger.AfterDelay(DateTime.Seconds(2), function() allies.MarkCompletedObjective(DiscoverObjective) end)
|
||||||
|
creeps.GetActorsByType("harv")[1].FindResources()
|
||||||
|
creeps.GetActorsByType("harv")[1].Owner = allies
|
||||||
|
end)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
SetupTimeNotifications = function()
|
||||||
|
Trigger.AfterDelay(DateTime.Minutes(8), function()
|
||||||
|
Media.PlaySpeechNotification(allies, "TenMinutesRemaining")
|
||||||
|
end)
|
||||||
|
Trigger.AfterDelay(DateTime.Minutes(13), function()
|
||||||
|
Media.PlaySpeechNotification(allies, "WarningFiveMinutesRemaining")
|
||||||
|
end)
|
||||||
|
|
||||||
|
Trigger.AfterDelay(DateTime.Minutes(14), function()
|
||||||
|
Media.PlaySpeechNotification(allies, "WarningFourMinutesRemaining")
|
||||||
|
end)
|
||||||
|
|
||||||
|
Trigger.AfterDelay(DateTime.Minutes(15), function()
|
||||||
|
Media.PlaySpeechNotification(allies, "WarningThreeMinutesRemaining")
|
||||||
|
end)
|
||||||
|
|
||||||
|
Trigger.AfterDelay(DateTime.Minutes(16), function()
|
||||||
|
Media.PlaySpeechNotification(allies, "WarningTwoMinutesRemaining")
|
||||||
|
end)
|
||||||
|
|
||||||
|
Trigger.AfterDelay(DateTime.Minutes(17), function()
|
||||||
|
Media.PlaySpeechNotification(allies, "WarningOneMinuteRemaining")
|
||||||
|
end)
|
||||||
|
|
||||||
|
Trigger.AfterDelay(DateTime.Minutes(17) + DateTime.Seconds(40), function()
|
||||||
|
Media.PlaySpeechNotification(allies, "AlliedForcesApproaching")
|
||||||
|
end)
|
||||||
|
end
|
||||||
|
|
||||||
|
GetTicks = function()
|
||||||
|
return ticks
|
||||||
|
end
|
||||||
|
|
||||||
|
Tick = function()
|
||||||
|
if SurviveObjective ~= nil then
|
||||||
|
if ticks > 0 then
|
||||||
|
if ticks == DateTime.Minutes(17) then
|
||||||
|
StartAntAttack()
|
||||||
|
elseif ticks == DateTime.Minutes(15) then
|
||||||
|
if DifficultySetting ~= "hard" then
|
||||||
|
SendInsertionHelicopter()
|
||||||
|
end
|
||||||
|
elseif ticks == DateTime.Minutes(12) then
|
||||||
|
StartAntAttack()
|
||||||
|
elseif ticks == DateTime.Minutes(6) then
|
||||||
|
StartAntAttack()
|
||||||
|
elseif ticks == DateTime.Minutes(1) then
|
||||||
|
EndAntAttack()
|
||||||
|
end
|
||||||
|
|
||||||
|
ticks = ticks - 1;
|
||||||
|
UserInterface.SetMissionText("Reinforcements arrive in " .. Utils.FormatTime(ticks), TimerColor)
|
||||||
|
else
|
||||||
|
if not AtEndGame then
|
||||||
|
Media.PlaySpeechNotification(allies, "SecondObjectiveMet")
|
||||||
|
AtEndGame = true
|
||||||
|
FinishTimer()
|
||||||
|
Camera.Position = waypoint13.CenterPosition
|
||||||
|
SendTanks()
|
||||||
|
Trigger.AfterDelay(DateTime.Seconds(2), function() TimerExpired() end)
|
||||||
|
end
|
||||||
|
ticks = ticks - 1
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
InitObjectives = function()
|
||||||
|
Trigger.OnObjectiveAdded(allies, function(p, id)
|
||||||
|
Media.DisplayMessage(p.GetObjectiveDescription(id), "New " .. string.lower(p.GetObjectiveType(id)) .. " objective")
|
||||||
|
end)
|
||||||
|
|
||||||
|
DiscoverObjective = allies.AddPrimaryObjective("Find the outpost.")
|
||||||
|
|
||||||
|
Utils.Do(AlliedBase, function(actor)
|
||||||
|
Trigger.OnEnteredProximityTrigger(actor.CenterPosition, WDist.FromCells(8), function(discoverer, id)
|
||||||
|
DiscoveredAlliedBase(actor, discoverer)
|
||||||
|
end)
|
||||||
|
end)
|
||||||
|
|
||||||
|
Trigger.AfterDelay(DateTime.Seconds(1), function()
|
||||||
|
creeps.GetActorsByType("harv")[1].Stop()
|
||||||
|
end)
|
||||||
|
|
||||||
|
Trigger.OnObjectiveCompleted(allies, function(p, id)
|
||||||
|
Media.DisplayMessage(p.GetObjectiveDescription(id), "Objective completed")
|
||||||
|
end)
|
||||||
|
Trigger.OnObjectiveFailed(allies, function(p, id)
|
||||||
|
Media.DisplayMessage(p.GetObjectiveDescription(id), "Objective failed")
|
||||||
|
end)
|
||||||
|
|
||||||
|
Trigger.OnPlayerLost(allies, function()
|
||||||
|
Media.PlaySpeechNotification(allies, "MissionFailed")
|
||||||
|
end)
|
||||||
|
|
||||||
|
Trigger.OnPlayerWon(allies, function()
|
||||||
|
Trigger.AfterDelay(DateTime.Seconds(1), function() Media.PlaySpeechNotification(allies, "MissionAccomplished") end)
|
||||||
|
end)
|
||||||
|
|
||||||
|
Camera.Position = Ranger.CenterPosition
|
||||||
|
end
|
||||||
|
|
||||||
|
WorldLoaded = function()
|
||||||
|
allies = Player.GetPlayer("Spain")
|
||||||
|
creeps = Player.GetPlayer("Creeps")
|
||||||
|
InitObjectives()
|
||||||
|
InitEnemyPlayers()
|
||||||
|
Trigger.OnKilled(MoneyDerrick, function()
|
||||||
|
Actor.Create("moneycrate", true, { Owner = allies, Location = MoneyDerrick.Location + CVec.New(1,0) })
|
||||||
|
end)
|
||||||
|
end
|
||||||
89
mods/ra/maps/ant-01/ant-attack.lua
Normal file
89
mods/ra/maps/ant-01/ant-attack.lua
Normal file
@@ -0,0 +1,89 @@
|
|||||||
|
DifficultySetting = Map.LobbyOption("difficulty")
|
||||||
|
timeTracker = 0
|
||||||
|
amount = 1
|
||||||
|
SendAnts = true
|
||||||
|
|
||||||
|
AttackAngles = {
|
||||||
|
{ waypoint4.Location, waypoint18.Location, waypoint5.Location, waypoint15.Location },
|
||||||
|
{ waypoint20.Location, waypoint10.Location, waypoint2.Location },
|
||||||
|
{ waypoint17.Location, waypoint1.Location },
|
||||||
|
{ waypoint8.Location, waypoint9.Location, waypoint19.Location }
|
||||||
|
}
|
||||||
|
|
||||||
|
AttackInterval = {
|
||||||
|
easy = DateTime.Seconds(40),
|
||||||
|
normal = DateTime.Seconds(30),
|
||||||
|
hard = DateTime.Seconds(20)
|
||||||
|
}
|
||||||
|
|
||||||
|
AntTypes = {
|
||||||
|
"scoutant",
|
||||||
|
"fireant"
|
||||||
|
}
|
||||||
|
|
||||||
|
MaxAnts = {
|
||||||
|
easy = 3,
|
||||||
|
normal = 5,
|
||||||
|
hard = 7
|
||||||
|
}
|
||||||
|
|
||||||
|
MaxFireAnts = {
|
||||||
|
easy = 2,
|
||||||
|
normal = 3,
|
||||||
|
hard = 4
|
||||||
|
}
|
||||||
|
|
||||||
|
StartAntAttack = function()
|
||||||
|
local path = Utils.Random(AttackAngles)
|
||||||
|
local antType = "scoutant"
|
||||||
|
local index = 0
|
||||||
|
local amount = 1
|
||||||
|
local timeTracker = GetTicks()
|
||||||
|
|
||||||
|
if timeTracker > DateTime.Minutes(6) then
|
||||||
|
antType = Utils.Random(AntTypes)
|
||||||
|
end
|
||||||
|
|
||||||
|
if antType == "warriorant" and DifficultySetting == "easy" then
|
||||||
|
antType = "scoutant"
|
||||||
|
end
|
||||||
|
|
||||||
|
if DifficultySetting == "normal" and timeTracker < DateTime.Minutes(6) and antType == "scoutant" then
|
||||||
|
antType = "warriorant"
|
||||||
|
elseif DifficultySetting == "hard" and timeTracker < DateTime.Minutes(12) and antType == "scoutant" then
|
||||||
|
antType = "warriorant"
|
||||||
|
end
|
||||||
|
|
||||||
|
local max = MaxAnts[DifficultySetting] - math.ceil(timeTracker / DateTime.Minutes(6))
|
||||||
|
if timeTracker > DateTime.Minutes(3) and antType == "fireant" then
|
||||||
|
amount = Utils.RandomInteger(1, MaxFireAnts[DifficultySetting])
|
||||||
|
elseif timeTracker > 15 and antType == "fireant" then
|
||||||
|
antType = "scoutant"
|
||||||
|
else
|
||||||
|
amount = Utils.RandomInteger(1, max)
|
||||||
|
end
|
||||||
|
|
||||||
|
for i = 0,amount,1 do
|
||||||
|
Reinforcements.Reinforce(AntMan, { antType }, path, DateTime.Seconds(5), function(actor)
|
||||||
|
actor.AttackMove(CPos.New(65, 65))
|
||||||
|
Trigger.OnIdle(actor, function()
|
||||||
|
actor.Hunt()
|
||||||
|
end)
|
||||||
|
end)
|
||||||
|
end
|
||||||
|
|
||||||
|
-- Setup next wave
|
||||||
|
if SendAnts then
|
||||||
|
Trigger.AfterDelay(AttackInterval[DifficultySetting], function()
|
||||||
|
StartAntAttack()
|
||||||
|
end)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
EndAntAttack = function()
|
||||||
|
SendAnts = false
|
||||||
|
end
|
||||||
|
|
||||||
|
InitEnemyPlayers = function()
|
||||||
|
AntMan = Player.GetPlayer("AntMan")
|
||||||
|
end
|
||||||
BIN
mods/ra/maps/ant-01/map.bin
Normal file
BIN
mods/ra/maps/ant-01/map.bin
Normal file
Binary file not shown.
BIN
mods/ra/maps/ant-01/map.png
Normal file
BIN
mods/ra/maps/ant-01/map.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 146 KiB |
597
mods/ra/maps/ant-01/map.yaml
Normal file
597
mods/ra/maps/ant-01/map.yaml
Normal file
@@ -0,0 +1,597 @@
|
|||||||
|
MapFormat: 11
|
||||||
|
|
||||||
|
RequiresMod: ra
|
||||||
|
|
||||||
|
Title: 01: Discovery
|
||||||
|
|
||||||
|
Author: Westwood Studios
|
||||||
|
|
||||||
|
Tileset: TEMPERAT
|
||||||
|
|
||||||
|
MapSize: 128,128
|
||||||
|
|
||||||
|
Bounds: 40,40,50,50
|
||||||
|
|
||||||
|
Visibility: MissionSelector
|
||||||
|
|
||||||
|
Categories: Campaign
|
||||||
|
|
||||||
|
LockPreview: True
|
||||||
|
|
||||||
|
Players:
|
||||||
|
PlayerReference@Neutral:
|
||||||
|
Name: Neutral
|
||||||
|
OwnsWorld: True
|
||||||
|
NonCombatant: True
|
||||||
|
Faction: allies
|
||||||
|
PlayerReference@Creeps:
|
||||||
|
Name: Creeps
|
||||||
|
NonCombatant: True
|
||||||
|
Faction: england
|
||||||
|
Enemies: AntMan
|
||||||
|
Allies: Neutral
|
||||||
|
PlayerReference@Spain:
|
||||||
|
Name: Spain
|
||||||
|
Playable: True
|
||||||
|
AllowBots: False
|
||||||
|
Required: True
|
||||||
|
LockFaction: True
|
||||||
|
Faction: allies
|
||||||
|
LockColor: True
|
||||||
|
LockSpawn: True
|
||||||
|
LockTeam: True
|
||||||
|
Enemies: AntMan
|
||||||
|
Color: F6D679
|
||||||
|
PlayerReference@AntMan:
|
||||||
|
Name: AntMan
|
||||||
|
Faciton: soviet
|
||||||
|
Enemies: Spain, Creeps
|
||||||
|
|
||||||
|
Actors:
|
||||||
|
Actor0: brik
|
||||||
|
Location: 57,58
|
||||||
|
Owner: Neutral
|
||||||
|
Actor1: brik
|
||||||
|
Location: 58,58
|
||||||
|
Owner: Neutral
|
||||||
|
Actor2: brik
|
||||||
|
Location: 59,58
|
||||||
|
Owner: Neutral
|
||||||
|
Actor3: brik
|
||||||
|
Location: 60,58
|
||||||
|
Owner: Neutral
|
||||||
|
Actor4: brik
|
||||||
|
Location: 61,58
|
||||||
|
Owner: Neutral
|
||||||
|
Actor5: brik
|
||||||
|
Location: 62,58
|
||||||
|
Owner: Neutral
|
||||||
|
Actor6: brik
|
||||||
|
Location: 63,58
|
||||||
|
Owner: Neutral
|
||||||
|
Actor7: brik
|
||||||
|
Location: 67,58
|
||||||
|
Owner: Neutral
|
||||||
|
Actor8: brik
|
||||||
|
Location: 68,58
|
||||||
|
Owner: Neutral
|
||||||
|
Actor9: brik
|
||||||
|
Location: 69,58
|
||||||
|
Owner: Neutral
|
||||||
|
Actor10: brik
|
||||||
|
Location: 70,58
|
||||||
|
Owner: Neutral
|
||||||
|
Actor11: brik
|
||||||
|
Location: 71,58
|
||||||
|
Owner: Neutral
|
||||||
|
Actor12: brik
|
||||||
|
Location: 72,58
|
||||||
|
Owner: Neutral
|
||||||
|
Actor13: brik
|
||||||
|
Location: 57,59
|
||||||
|
Owner: Neutral
|
||||||
|
Actor14: brik
|
||||||
|
Location: 62,59
|
||||||
|
Owner: Neutral
|
||||||
|
Actor15: brik
|
||||||
|
Location: 63,59
|
||||||
|
Owner: Neutral
|
||||||
|
Actor16: brik
|
||||||
|
Location: 67,59
|
||||||
|
Owner: Neutral
|
||||||
|
Actor17: brik
|
||||||
|
Location: 68,59
|
||||||
|
Owner: Neutral
|
||||||
|
Actor18: brik
|
||||||
|
Location: 57,60
|
||||||
|
Owner: Neutral
|
||||||
|
Actor19: brik
|
||||||
|
Location: 57,61
|
||||||
|
Owner: Neutral
|
||||||
|
Actor20: brik
|
||||||
|
Location: 74,61
|
||||||
|
Owner: Neutral
|
||||||
|
Actor21: brik
|
||||||
|
Location: 57,62
|
||||||
|
Owner: Neutral
|
||||||
|
Actor22: brik
|
||||||
|
Location: 58,62
|
||||||
|
Owner: Neutral
|
||||||
|
Actor23: brik
|
||||||
|
Location: 73,62
|
||||||
|
Owner: Neutral
|
||||||
|
Actor24: brik
|
||||||
|
Location: 74,62
|
||||||
|
Owner: Neutral
|
||||||
|
Actor25: brik
|
||||||
|
Location: 57,63
|
||||||
|
Owner: Neutral
|
||||||
|
Actor26: brik
|
||||||
|
Location: 58,63
|
||||||
|
Owner: Neutral
|
||||||
|
Actor27: brik
|
||||||
|
Location: 73,63
|
||||||
|
Owner: Neutral
|
||||||
|
Actor28: brik
|
||||||
|
Location: 74,63
|
||||||
|
Owner: Neutral
|
||||||
|
Actor29: brik
|
||||||
|
Location: 57,67
|
||||||
|
Owner: Neutral
|
||||||
|
Actor30: brik
|
||||||
|
Location: 58,67
|
||||||
|
Owner: Neutral
|
||||||
|
Actor31: brik
|
||||||
|
Location: 73,67
|
||||||
|
Owner: Neutral
|
||||||
|
Actor32: brik
|
||||||
|
Location: 74,67
|
||||||
|
Owner: Neutral
|
||||||
|
Actor33: brik
|
||||||
|
Location: 57,68
|
||||||
|
Owner: Neutral
|
||||||
|
Actor34: brik
|
||||||
|
Location: 58,68
|
||||||
|
Owner: Neutral
|
||||||
|
Actor35: brik
|
||||||
|
Location: 73,68
|
||||||
|
Owner: Neutral
|
||||||
|
Actor36: brik
|
||||||
|
Location: 74,68
|
||||||
|
Owner: Neutral
|
||||||
|
Actor37: brik
|
||||||
|
Location: 57,69
|
||||||
|
Owner: Neutral
|
||||||
|
Actor38: brik
|
||||||
|
Location: 74,69
|
||||||
|
Owner: Neutral
|
||||||
|
Actor39: brik
|
||||||
|
Location: 57,70
|
||||||
|
Owner: Neutral
|
||||||
|
Actor40: brik
|
||||||
|
Location: 74,70
|
||||||
|
Owner: Neutral
|
||||||
|
Actor41: brik
|
||||||
|
Location: 57,71
|
||||||
|
Owner: Neutral
|
||||||
|
Actor42: brik
|
||||||
|
Location: 62,71
|
||||||
|
Owner: Neutral
|
||||||
|
Actor43: brik
|
||||||
|
Location: 63,71
|
||||||
|
Owner: Neutral
|
||||||
|
Actor44: brik
|
||||||
|
Location: 67,71
|
||||||
|
Owner: Neutral
|
||||||
|
Actor45: brik
|
||||||
|
Location: 68,71
|
||||||
|
Owner: Neutral
|
||||||
|
Actor46: brik
|
||||||
|
Location: 74,71
|
||||||
|
Owner: Neutral
|
||||||
|
Actor47: brik
|
||||||
|
Location: 57,72
|
||||||
|
Owner: Neutral
|
||||||
|
Actor48: brik
|
||||||
|
Location: 58,72
|
||||||
|
Owner: Neutral
|
||||||
|
Actor49: brik
|
||||||
|
Location: 59,72
|
||||||
|
Owner: Neutral
|
||||||
|
Actor50: brik
|
||||||
|
Location: 60,72
|
||||||
|
Owner: Neutral
|
||||||
|
Actor51: brik
|
||||||
|
Location: 61,72
|
||||||
|
Owner: Neutral
|
||||||
|
Actor52: brik
|
||||||
|
Location: 62,72
|
||||||
|
Owner: Neutral
|
||||||
|
Actor53: brik
|
||||||
|
Location: 63,72
|
||||||
|
Owner: Neutral
|
||||||
|
Actor54: brik
|
||||||
|
Location: 67,72
|
||||||
|
Owner: Neutral
|
||||||
|
Actor55: brik
|
||||||
|
Location: 68,72
|
||||||
|
Owner: Neutral
|
||||||
|
Actor56: brik
|
||||||
|
Location: 69,72
|
||||||
|
Owner: Neutral
|
||||||
|
Actor57: brik
|
||||||
|
Location: 74,72
|
||||||
|
Owner: Neutral
|
||||||
|
Actor58: v15
|
||||||
|
Location: 57,78
|
||||||
|
Owner: Neutral
|
||||||
|
Actor59: v16
|
||||||
|
Location: 58,79
|
||||||
|
Owner: Neutral
|
||||||
|
Actor60: tc01
|
||||||
|
Location: 70,58
|
||||||
|
Owner: Neutral
|
||||||
|
Actor61: tc02
|
||||||
|
Location: 77,70
|
||||||
|
Owner: Neutral
|
||||||
|
Actor62: tc02
|
||||||
|
Location: 47,88
|
||||||
|
Owner: Neutral
|
||||||
|
Actor63: tc03
|
||||||
|
Location: 53,69
|
||||||
|
Owner: Neutral
|
||||||
|
Actor64: t15
|
||||||
|
Location: 54,74
|
||||||
|
Owner: Neutral
|
||||||
|
Actor65: t14
|
||||||
|
Location: 81,75
|
||||||
|
Owner: Neutral
|
||||||
|
Actor66: t01
|
||||||
|
Location: 78,77
|
||||||
|
Owner: Neutral
|
||||||
|
Actor67: tc04
|
||||||
|
Location: 52,88
|
||||||
|
Owner: Neutral
|
||||||
|
Actor68: tc01
|
||||||
|
Location: 64,88
|
||||||
|
Owner: Neutral
|
||||||
|
Actor69: tc03
|
||||||
|
Location: 44,61
|
||||||
|
Owner: Neutral
|
||||||
|
Actor70: tc02
|
||||||
|
Location: 43,64
|
||||||
|
Owner: Neutral
|
||||||
|
Actor71: tc01
|
||||||
|
Location: 54,54
|
||||||
|
Owner: Neutral
|
||||||
|
Actor72: tc02
|
||||||
|
Location: 86,86
|
||||||
|
Owner: Neutral
|
||||||
|
Actor73: tc02
|
||||||
|
Location: 57,49
|
||||||
|
Owner: Neutral
|
||||||
|
Actor74: tc04
|
||||||
|
Location: 61,72
|
||||||
|
Owner: Neutral
|
||||||
|
Actor75: t11
|
||||||
|
Location: 50,51
|
||||||
|
Owner: Neutral
|
||||||
|
Actor76: t07
|
||||||
|
Location: 54,48
|
||||||
|
Owner: Neutral
|
||||||
|
Actor77: tc05
|
||||||
|
Location: 55,39
|
||||||
|
Owner: Neutral
|
||||||
|
Actor78: tc04
|
||||||
|
Location: 53,40
|
||||||
|
Owner: Neutral
|
||||||
|
Actor79: tc01
|
||||||
|
Location: 61,47
|
||||||
|
Owner: Neutral
|
||||||
|
Actor80: t07
|
||||||
|
Location: 40,80
|
||||||
|
Owner: Neutral
|
||||||
|
Actor81: tc04
|
||||||
|
Location: 69,88
|
||||||
|
Owner: Neutral
|
||||||
|
Actor82: t10
|
||||||
|
Location: 75,55
|
||||||
|
Owner: Neutral
|
||||||
|
Actor83: t08
|
||||||
|
Location: 63,78
|
||||||
|
Owner: Neutral
|
||||||
|
Actor84: tc04
|
||||||
|
Location: 82,46
|
||||||
|
Owner: Neutral
|
||||||
|
Actor85: tc05
|
||||||
|
Location: 81,48
|
||||||
|
Owner: Neutral
|
||||||
|
Actor86: tc03
|
||||||
|
Location: 89,49
|
||||||
|
Owner: Neutral
|
||||||
|
Actor87: tc03
|
||||||
|
Location: 83,45
|
||||||
|
Owner: Neutral
|
||||||
|
Actor88: tc04
|
||||||
|
Location: 64,41
|
||||||
|
Owner: Neutral
|
||||||
|
Actor89: tc03
|
||||||
|
Location: 65,40
|
||||||
|
Owner: Neutral
|
||||||
|
Actor90: tc01
|
||||||
|
Location: 50,55
|
||||||
|
Owner: Neutral
|
||||||
|
Actor91: tc03
|
||||||
|
Location: 76,45
|
||||||
|
Owner: Neutral
|
||||||
|
Actor92: tc02
|
||||||
|
Location: 71,43
|
||||||
|
Owner: Neutral
|
||||||
|
Actor93: tc03
|
||||||
|
Location: 87,67
|
||||||
|
Owner: Neutral
|
||||||
|
Actor94: tc01
|
||||||
|
Location: 82,39
|
||||||
|
Owner: Neutral
|
||||||
|
Actor95: t01
|
||||||
|
Location: 89,53
|
||||||
|
Owner: Neutral
|
||||||
|
Actor96: tc05
|
||||||
|
Location: 77,56
|
||||||
|
Owner: Neutral
|
||||||
|
Actor97: t06
|
||||||
|
Location: 78,60
|
||||||
|
Owner: Neutral
|
||||||
|
Actor98: t12
|
||||||
|
Location: 87,62
|
||||||
|
Owner: Neutral
|
||||||
|
WarFactory: weap
|
||||||
|
Location: 62,62
|
||||||
|
Owner: Creeps
|
||||||
|
Health: 39
|
||||||
|
PillBox1: hbox
|
||||||
|
Location: 65,60
|
||||||
|
Owner: Creeps
|
||||||
|
Health: 35
|
||||||
|
PillBox2: hbox
|
||||||
|
Location: 72,65
|
||||||
|
Owner: Creeps
|
||||||
|
Health: 37
|
||||||
|
Refinery: proc
|
||||||
|
Location: 59,67
|
||||||
|
Owner: Creeps
|
||||||
|
Health: 43
|
||||||
|
PowerPlant1: powr
|
||||||
|
Location: 58,59
|
||||||
|
Owner: Creeps
|
||||||
|
Health: 12
|
||||||
|
PowerPlant2: powr
|
||||||
|
Location: 68,67
|
||||||
|
Owner: Creeps
|
||||||
|
Health: 37
|
||||||
|
RepairPad: fix
|
||||||
|
Location: 71,69
|
||||||
|
Owner: Creeps
|
||||||
|
Health: 14
|
||||||
|
OreSilo: silo
|
||||||
|
Location: 61,60
|
||||||
|
Owner: Creeps
|
||||||
|
Health: 12
|
||||||
|
Barracks: tent
|
||||||
|
Location: 68,61
|
||||||
|
Owner: Creeps
|
||||||
|
Health: 31
|
||||||
|
Actor108: v01
|
||||||
|
Location: 55,79
|
||||||
|
Owner: Neutral
|
||||||
|
Health: 12
|
||||||
|
Actor109: v02
|
||||||
|
Location: 51,81
|
||||||
|
Owner: Neutral
|
||||||
|
Health: 22
|
||||||
|
Actor110: v03
|
||||||
|
Location: 58,82
|
||||||
|
Owner: Neutral
|
||||||
|
Health: 28
|
||||||
|
Actor111: v06
|
||||||
|
Location: 53,86
|
||||||
|
Owner: Neutral
|
||||||
|
Health: 20
|
||||||
|
Actor112: v08
|
||||||
|
Location: 48,77
|
||||||
|
Owner: Neutral
|
||||||
|
Health: 12
|
||||||
|
Actor113: v09
|
||||||
|
Location: 47,70
|
||||||
|
Owner: Neutral
|
||||||
|
Health: 14
|
||||||
|
Actor114: v10
|
||||||
|
Location: 62,86
|
||||||
|
Owner: Neutral
|
||||||
|
Health: 14
|
||||||
|
Actor115: v11
|
||||||
|
Location: 53,78
|
||||||
|
Owner: Neutral
|
||||||
|
Health: 12
|
||||||
|
Actor116: v11
|
||||||
|
Location: 43,78
|
||||||
|
Owner: Neutral
|
||||||
|
Health: 25
|
||||||
|
Actor117: v19
|
||||||
|
Location: 55,49
|
||||||
|
Owner: Neutral
|
||||||
|
Actor118: v19
|
||||||
|
Location: 54,51
|
||||||
|
Owner: Neutral
|
||||||
|
Actor119: brl3
|
||||||
|
Location: 56,49
|
||||||
|
Owner: AntMan
|
||||||
|
Actor120: barl
|
||||||
|
Location: 56,50
|
||||||
|
Owner: AntMan
|
||||||
|
Actor121: brl3
|
||||||
|
Location: 55,50
|
||||||
|
Owner: AntMan
|
||||||
|
Actor122: barl
|
||||||
|
Location: 55,51
|
||||||
|
Owner: AntMan
|
||||||
|
Actor123: brl3
|
||||||
|
Location: 55,52
|
||||||
|
Owner: AntMan
|
||||||
|
Actor124: barl
|
||||||
|
Location: 53,52
|
||||||
|
Owner: AntMan
|
||||||
|
Actor125: brl3
|
||||||
|
Location: 53,51
|
||||||
|
Owner: AntMan
|
||||||
|
Actor126: barl
|
||||||
|
Location: 54,50
|
||||||
|
Owner: AntMan
|
||||||
|
Actor127: v10
|
||||||
|
Location: 50,74
|
||||||
|
Owner: Neutral
|
||||||
|
Health: 12
|
||||||
|
Actor128: v02
|
||||||
|
Location: 46,66
|
||||||
|
Owner: Neutral
|
||||||
|
Health: 22
|
||||||
|
RadarDome: dome
|
||||||
|
Location: 71,60
|
||||||
|
Owner: Creeps
|
||||||
|
Health: 12
|
||||||
|
Actor130: v19
|
||||||
|
Location: 77,47
|
||||||
|
Owner: Neutral
|
||||||
|
Actor131: v19
|
||||||
|
Location: 73,52
|
||||||
|
Owner: Neutral
|
||||||
|
Actor132: brl3
|
||||||
|
Location: 74,52
|
||||||
|
Owner: AntMan
|
||||||
|
Actor133: barl
|
||||||
|
Location: 73,53
|
||||||
|
Owner: AntMan
|
||||||
|
Actor134: brl3
|
||||||
|
Location: 76,48
|
||||||
|
Owner: AntMan
|
||||||
|
Actor135: barl
|
||||||
|
Location: 76,47
|
||||||
|
Owner: AntMan
|
||||||
|
Actor136: barl
|
||||||
|
Location: 75,51
|
||||||
|
Owner: AntMan
|
||||||
|
Actor137: barl
|
||||||
|
Location: 75,48
|
||||||
|
Owner: AntMan
|
||||||
|
MoneyDerrick: v19
|
||||||
|
Location: 63,76
|
||||||
|
Owner: Neutral
|
||||||
|
Actor139: brl3
|
||||||
|
Location: 63,75
|
||||||
|
Owner: AntMan
|
||||||
|
Actor140: barl
|
||||||
|
Location: 62,74
|
||||||
|
Owner: AntMan
|
||||||
|
Actor141: brl3
|
||||||
|
Location: 64,76
|
||||||
|
Owner: AntMan
|
||||||
|
Actor142: barl
|
||||||
|
Location: 65,76
|
||||||
|
Owner: AntMan
|
||||||
|
Ranger: jeep
|
||||||
|
Location: 43,87
|
||||||
|
Owner: Spain
|
||||||
|
Facing: 223
|
||||||
|
Steve: e1
|
||||||
|
Location: 43,86
|
||||||
|
Owner: Spain
|
||||||
|
SubCell: 0
|
||||||
|
Daniel: e1
|
||||||
|
Location: 44,87
|
||||||
|
Owner: Spain
|
||||||
|
SubCell: 2
|
||||||
|
Phillip: e1
|
||||||
|
Location: 42,87
|
||||||
|
Owner: Spain
|
||||||
|
SubCell: 2
|
||||||
|
Johnathan: e1
|
||||||
|
Location: 43,88
|
||||||
|
Owner: Spain
|
||||||
|
SubCell: 2
|
||||||
|
waypoint0: waypoint
|
||||||
|
Location: 65,65
|
||||||
|
Owner: Neutral
|
||||||
|
waypoint1: waypoint
|
||||||
|
Location: 50,64
|
||||||
|
Owner: Neutral
|
||||||
|
waypoint2: waypoint
|
||||||
|
Location: 82,65
|
||||||
|
Owner: Neutral
|
||||||
|
waypoint3: waypoint
|
||||||
|
Location: 86,54
|
||||||
|
Owner: Neutral
|
||||||
|
waypoint4: waypoint
|
||||||
|
Location: 89,40
|
||||||
|
Owner: Neutral
|
||||||
|
waypoint5: waypoint
|
||||||
|
Location: 69,46
|
||||||
|
Owner: Neutral
|
||||||
|
waypoint6: waypoint
|
||||||
|
Location: 55,44
|
||||||
|
Owner: Neutral
|
||||||
|
waypoint7: waypoint
|
||||||
|
Location: 48,40
|
||||||
|
Owner: Neutral
|
||||||
|
waypoint8: waypoint
|
||||||
|
Location: 77,89
|
||||||
|
Owner: Neutral
|
||||||
|
waypoint9: waypoint
|
||||||
|
Location: 75,80
|
||||||
|
Owner: Neutral
|
||||||
|
waypoint10: waypoint
|
||||||
|
Location: 84,79
|
||||||
|
Owner: Neutral
|
||||||
|
waypoint11: waypoint
|
||||||
|
Location: 45,84
|
||||||
|
Owner: Neutral
|
||||||
|
waypoint12: waypoint
|
||||||
|
Location: 41,89
|
||||||
|
Owner: Neutral
|
||||||
|
waypoint13: waypoint
|
||||||
|
Location: 45,75
|
||||||
|
Owner: Neutral
|
||||||
|
waypoint14: waypoint
|
||||||
|
Location: 65,84
|
||||||
|
Owner: Neutral
|
||||||
|
waypoint15: waypoint
|
||||||
|
Location: 66,51
|
||||||
|
Owner: Neutral
|
||||||
|
waypoint16: waypoint
|
||||||
|
Location: 46,55
|
||||||
|
Owner: Neutral
|
||||||
|
waypoint17: waypoint
|
||||||
|
Location: 48,45
|
||||||
|
Owner: Neutral
|
||||||
|
waypoint18: waypoint
|
||||||
|
Location: 85,43
|
||||||
|
Owner: Neutral
|
||||||
|
waypoint19: waypoint
|
||||||
|
Location: 65,75
|
||||||
|
Owner: Neutral
|
||||||
|
waypoint20: waypoint
|
||||||
|
Location: 89,75
|
||||||
|
Owner: Neutral
|
||||||
|
waypoint21: waypoint
|
||||||
|
Location: 89,80
|
||||||
|
Owner: Neutral
|
||||||
|
waypoint26: waypoint
|
||||||
|
Location: 76,56
|
||||||
|
Owner: Neutral
|
||||||
|
waypoint27: waypoint
|
||||||
|
Location: 54,80
|
||||||
|
Owner: Neutral
|
||||||
|
DefaultCameraPosition: waypoint
|
||||||
|
Location: 43,87
|
||||||
|
Owner: Neutral
|
||||||
|
|
||||||
|
Rules: ra|rules/campaign-rules.yaml, ra|rules/campaign-tooltips.yaml, rules.yaml, ra|rules/campaign-palettes.yaml
|
||||||
134
mods/ra/maps/ant-01/rules.yaml
Normal file
134
mods/ra/maps/ant-01/rules.yaml
Normal file
@@ -0,0 +1,134 @@
|
|||||||
|
Player:
|
||||||
|
PlayerResources:
|
||||||
|
DefaultCash: 1500
|
||||||
|
World:
|
||||||
|
ScriptLobbyDropdown@difficulty:
|
||||||
|
ID: difficulty
|
||||||
|
Label: Difficulty
|
||||||
|
Values:
|
||||||
|
easy: Easy
|
||||||
|
normal: Normal
|
||||||
|
hard: Hard
|
||||||
|
Default: easy
|
||||||
|
LuaScript:
|
||||||
|
Scripts: ant-01.lua, ant-attack.lua
|
||||||
|
MissionData:
|
||||||
|
BackgroundVideo: antintro.vqa
|
||||||
|
Briefing: We've lost contact with one of our outposts. Before it went off-line, we recieved a brief communique about giant ants. We're unsure what to make of this report, so we want you to investigate. \n\nScout the area, bring the outpost back on-line, and report your findings. If there is a threat, reinforcements will be sent in to help you. \n\nKeep the base functional and radio contact open -- we don't want to lose the outpost again.
|
||||||
|
|
||||||
|
^Palettes:
|
||||||
|
IndexedPlayerPalette@scoutant:
|
||||||
|
BaseName: scoutant
|
||||||
|
BasePalette: player
|
||||||
|
RemapIndex: 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95
|
||||||
|
PlayerIndex:
|
||||||
|
AntMan: 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 123, 123, 123, 123
|
||||||
|
AllowModifiers: True
|
||||||
|
IndexedPlayerPalette@warriorant:
|
||||||
|
BaseName: warriorant
|
||||||
|
BasePalette: player
|
||||||
|
RemapIndex: 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95
|
||||||
|
PlayerIndex:
|
||||||
|
AntMan: 229, 230, 231, 232, 233, 234, 235, 8, 236, 237, 238, 239, 221, 222, 223, 223
|
||||||
|
AllowModifiers: True
|
||||||
|
IndexedPlayerPalette@fireant:
|
||||||
|
BaseName: fireant
|
||||||
|
BasePalette: player
|
||||||
|
RemapIndex: 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95
|
||||||
|
PlayerIndex:
|
||||||
|
AntMan: 158, 158, 159, 159, 229, 229, 216, 216, 217, 217, 218, 218, 221, 222, 223, 223
|
||||||
|
AllowModifiers: True
|
||||||
|
|
||||||
|
WarriorAnt:
|
||||||
|
RenderSprites:
|
||||||
|
PlayerPalette: warriorant
|
||||||
|
|
||||||
|
ScoutAnt:
|
||||||
|
RenderSprites:
|
||||||
|
PlayerPalette: scoutant
|
||||||
|
|
||||||
|
FireAnt:
|
||||||
|
RenderSprites:
|
||||||
|
PlayerPalette: fireant
|
||||||
|
|
||||||
|
SPY:
|
||||||
|
Buildable:
|
||||||
|
Prerequisites: ~disabled
|
||||||
|
|
||||||
|
SPY.England:
|
||||||
|
Buildable:
|
||||||
|
Prerequisites: ~disabled
|
||||||
|
|
||||||
|
MECH:
|
||||||
|
Buildable:
|
||||||
|
Prerequisites: ~disabled
|
||||||
|
|
||||||
|
MRJ:
|
||||||
|
Buildable:
|
||||||
|
Prerequisites: ~disabled
|
||||||
|
|
||||||
|
APC:
|
||||||
|
Buildable:
|
||||||
|
Prerequisites: ~disabled
|
||||||
|
|
||||||
|
STNK:
|
||||||
|
Buildable:
|
||||||
|
Prerequisites: ~disabled
|
||||||
|
|
||||||
|
TRUK:
|
||||||
|
Buildable:
|
||||||
|
Prerequisites: ~disabled
|
||||||
|
|
||||||
|
SPY:
|
||||||
|
Buildable:
|
||||||
|
Prerequisites: ~disabled
|
||||||
|
|
||||||
|
SNIPER:
|
||||||
|
Buildable:
|
||||||
|
Prerequisites: ~disabled
|
||||||
|
|
||||||
|
MGG:
|
||||||
|
Buildable:
|
||||||
|
Prerequisites: ~disabled
|
||||||
|
|
||||||
|
1TNK:
|
||||||
|
Buildable:
|
||||||
|
Prerequisites: ~disabled
|
||||||
|
|
||||||
|
2TNK:
|
||||||
|
Buildable:
|
||||||
|
Prerequisites: ~disabled
|
||||||
|
|
||||||
|
E3:
|
||||||
|
Buildable:
|
||||||
|
Prerequisites: ~disabled
|
||||||
|
|
||||||
|
E2:
|
||||||
|
Buildable:
|
||||||
|
Prerequisites: ~tent
|
||||||
|
|
||||||
|
E7:
|
||||||
|
Buildable:
|
||||||
|
Prerequisites: ~disabled
|
||||||
|
|
||||||
|
ARTY:
|
||||||
|
Buildable:
|
||||||
|
Prerequisites: ~disabled
|
||||||
|
|
||||||
|
MCV:
|
||||||
|
Buildable:
|
||||||
|
Prerequisites: ~disabled
|
||||||
|
|
||||||
|
TRAN.Insertion:
|
||||||
|
Inherits: TRAN
|
||||||
|
WithFacingSpriteBody:
|
||||||
|
RenderSprites:
|
||||||
|
Image: tran
|
||||||
|
Interactable:
|
||||||
|
-Selectable:
|
||||||
|
|
||||||
|
MONEYCRATE:
|
||||||
|
GiveCashCrateAction:
|
||||||
|
Amount: 2000
|
||||||
|
SelectionShares: 1
|
||||||
|
UseCashTick: true
|
||||||
@@ -33,3 +33,5 @@ OpenRA Originals:
|
|||||||
./mods/ra/maps/intervention
|
./mods/ra/maps/intervention
|
||||||
./mods/ra/maps/survival01
|
./mods/ra/maps/survival01
|
||||||
./mods/ra/maps/survival02
|
./mods/ra/maps/survival02
|
||||||
|
Ant Missions:
|
||||||
|
./mods/ra/maps/ant-01
|
||||||
|
|||||||
@@ -752,3 +752,52 @@ Ant:
|
|||||||
HitShape:
|
HitShape:
|
||||||
Type: Circle
|
Type: Circle
|
||||||
Radius: 469
|
Radius: 469
|
||||||
|
|
||||||
|
FireAnt:
|
||||||
|
Inherits: Ant
|
||||||
|
Tooltip:
|
||||||
|
Name: Fire Ant
|
||||||
|
GenericVisibility: none
|
||||||
|
Mobile:
|
||||||
|
Speed: 80
|
||||||
|
Armament:
|
||||||
|
Weapon: AntFireball
|
||||||
|
Health:
|
||||||
|
HP: 7500
|
||||||
|
Armor:
|
||||||
|
Type: Heavy
|
||||||
|
Buildable:
|
||||||
|
Prerequisites: ~disabled
|
||||||
|
|
||||||
|
ScoutAnt:
|
||||||
|
Inherits: Ant
|
||||||
|
Tooltip:
|
||||||
|
Name: Scout Ant
|
||||||
|
GenericVisibility: none
|
||||||
|
Health:
|
||||||
|
HP: 8500
|
||||||
|
Armor:
|
||||||
|
Type: Light
|
||||||
|
AutoTarget:
|
||||||
|
ScanRadius: 7
|
||||||
|
Buildable:
|
||||||
|
Prerequisites: ~disabled
|
||||||
|
|
||||||
|
WarriorAnt:
|
||||||
|
Inherits: Ant
|
||||||
|
Tooltip:
|
||||||
|
Name: Warrior Ant
|
||||||
|
GenericVisibility: none
|
||||||
|
Mobile:
|
||||||
|
Speed: 65
|
||||||
|
Health:
|
||||||
|
HP: 12500
|
||||||
|
Armor:
|
||||||
|
Type: Heavy
|
||||||
|
Armament:
|
||||||
|
Weapon: MandibleHeavy
|
||||||
|
Buildable:
|
||||||
|
Prerequisites: ~disabled
|
||||||
|
RenderSprites:
|
||||||
|
Image: Ant
|
||||||
|
|
||||||
|
|||||||
@@ -1321,3 +1321,53 @@ ant:
|
|||||||
Tick: 400
|
Tick: 400
|
||||||
ZOffset: -511
|
ZOffset: -511
|
||||||
icon: anticon
|
icon: anticon
|
||||||
|
|
||||||
|
fireant:
|
||||||
|
stand: ant2
|
||||||
|
Facings: 8
|
||||||
|
stand2: ant2
|
||||||
|
Start: 8
|
||||||
|
Length: 8
|
||||||
|
run: ant2
|
||||||
|
Start: 8
|
||||||
|
Length: 8
|
||||||
|
Facings: 8
|
||||||
|
bite: ant2
|
||||||
|
Start: 72
|
||||||
|
Length: 4
|
||||||
|
Facings: 8
|
||||||
|
die: ant2
|
||||||
|
Start: 104
|
||||||
|
Length: 8
|
||||||
|
Tick: 300
|
||||||
|
die-crushed: ant2
|
||||||
|
Start: 104
|
||||||
|
Length: 8
|
||||||
|
Tick: 400
|
||||||
|
ZOffset: -511
|
||||||
|
icon: anticon
|
||||||
|
|
||||||
|
scoutant:
|
||||||
|
stand: ant3
|
||||||
|
Facings: 8
|
||||||
|
stand2: ant3
|
||||||
|
Start: 8
|
||||||
|
Length: 8
|
||||||
|
run: ant3
|
||||||
|
Start: 8
|
||||||
|
Length: 8
|
||||||
|
Facings: 8
|
||||||
|
bite: ant3
|
||||||
|
Start: 72
|
||||||
|
Length: 4
|
||||||
|
Facings: 8
|
||||||
|
die: ant3
|
||||||
|
Start: 104
|
||||||
|
Length: 8
|
||||||
|
Tick: 300
|
||||||
|
die-crushed: ant3
|
||||||
|
Start: 104
|
||||||
|
Length: 8
|
||||||
|
Tick: 400
|
||||||
|
ZOffset: -511
|
||||||
|
icon: anticon
|
||||||
|
|||||||
@@ -165,12 +165,49 @@ Claw:
|
|||||||
Mandible:
|
Mandible:
|
||||||
Inherits: Claw
|
Inherits: Claw
|
||||||
ReloadDelay: 10
|
ReloadDelay: 10
|
||||||
|
Burst: 2
|
||||||
|
BurstDelays: 14
|
||||||
|
StartBurstReport: antbite.aud
|
||||||
Warhead@1Dam: SpreadDamage
|
Warhead@1Dam: SpreadDamage
|
||||||
Damage: 6000
|
Damage: 6000
|
||||||
Versus:
|
Versus:
|
||||||
None: 90
|
None: 90
|
||||||
DamageTypes: Prone50Percent, TriggerProne, BulletDeath
|
DamageTypes: Prone50Percent, TriggerProne, BulletDeath
|
||||||
|
|
||||||
|
MandibleHeavy:
|
||||||
|
Inherits: Claw
|
||||||
|
ReloadDelay: 15
|
||||||
|
Burst: 2
|
||||||
|
BurstDelays: 20
|
||||||
|
StartBurstReport: antbite.aud
|
||||||
|
Warhead@1Dam: SpreadDamage
|
||||||
|
Damage: 10000
|
||||||
|
Versus:
|
||||||
|
None: 100
|
||||||
|
Light: 90
|
||||||
|
Heavy: 35
|
||||||
|
Concrete: 20
|
||||||
|
DamageTypes: Prone50Percent, TriggerProne, BulletDeath
|
||||||
|
|
||||||
|
AntFireball:
|
||||||
|
Inherits: FireballLauncher
|
||||||
|
Report: antbite.aud
|
||||||
|
ReloadDelay: 50
|
||||||
|
Burst: 2
|
||||||
|
BurstDelays: 20
|
||||||
|
Range: 4c0
|
||||||
|
Projectile: Bullet
|
||||||
|
Speed: 200
|
||||||
|
Warhead@1Dam: SpreadDamage
|
||||||
|
Spread: 213
|
||||||
|
Damage: 4000
|
||||||
|
Versus:
|
||||||
|
None: 80
|
||||||
|
Wood: 85
|
||||||
|
Light: 45
|
||||||
|
Heavy: 20
|
||||||
|
Concrete: 15
|
||||||
|
|
||||||
MADTankThump:
|
MADTankThump:
|
||||||
InvalidTargets: MADTank, Infantry
|
InvalidTargets: MADTank, Infantry
|
||||||
Warhead@1Dam: HealthPercentageDamage
|
Warhead@1Dam: HealthPercentageDamage
|
||||||
|
|||||||
Reference in New Issue
Block a user