Add soviet-02b
This commit is contained in:
@@ -57,6 +57,7 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Red Alert Lua scripts", "Re
|
||||
mods\ra\maps\allies-05a\allies05a-AI.lua = mods\ra\maps\allies-05a\allies05a-AI.lua
|
||||
mods\ra\maps\soviet-01\soviet01.lua = mods\ra\maps\soviet-01\soviet01.lua
|
||||
mods\ra\maps\soviet-02a\soviet02a.lua = mods\ra\maps\soviet-02a\soviet02a.lua
|
||||
mods\ra\maps\soviet-02b\soviet02b.lua = mods\ra\maps\soviet-02b\soviet02b.lua
|
||||
mods\ra\maps\soviet-03\soviet03.lua = mods\ra\maps\soviet-03\soviet03.lua
|
||||
mods\ra\maps\soviet-04a\soviet04a.lua = mods\ra\maps\soviet-04a\soviet04a.lua
|
||||
mods\ra\maps\soviet-04a\soviet04a-AI.lua = mods\ra\maps\soviet-04a\soviet04a-AI.lua
|
||||
|
||||
BIN
mods/ra/maps/soviet-02b/map.bin
Normal file
BIN
mods/ra/maps/soviet-02b/map.bin
Normal file
Binary file not shown.
BIN
mods/ra/maps/soviet-02b/map.png
Normal file
BIN
mods/ra/maps/soviet-02b/map.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 28 KiB |
681
mods/ra/maps/soviet-02b/map.yaml
Normal file
681
mods/ra/maps/soviet-02b/map.yaml
Normal file
@@ -0,0 +1,681 @@
|
||||
MapFormat: 7
|
||||
|
||||
RequiresMod: ra
|
||||
|
||||
Title: Soviet 02b: The thin red line
|
||||
|
||||
Description: Tomorrow, the attack on Germany begins, but today, we must protect our facility from Allied attacks.\n\nKeep the Command Center intact at all costs, and destroy any Allied fortification you might find.
|
||||
|
||||
Author: Westwood Studios
|
||||
|
||||
Tileset: TEMPERAT
|
||||
|
||||
MapSize: 128,128
|
||||
|
||||
Bounds: 36,52,54,35
|
||||
|
||||
Visibility: MissionSelector
|
||||
|
||||
Type: Campaign
|
||||
|
||||
Videos:
|
||||
Briefing: soviet2.vqa
|
||||
GameStart: spotter.vqa
|
||||
GameWon: sovtstar.vqa
|
||||
GameLost: sovcemet.vqa
|
||||
|
||||
Options:
|
||||
Crates: False
|
||||
Fog: True
|
||||
Shroud: True
|
||||
AllyBuildRadius: False
|
||||
FragileAlliances: False
|
||||
StartingCash: 5000
|
||||
ConfigurableStartingUnits: False
|
||||
ShortGame: False
|
||||
|
||||
Players:
|
||||
PlayerReference@Neutral:
|
||||
Name: Neutral
|
||||
OwnsWorld: True
|
||||
NonCombatant: True
|
||||
Faction: allies
|
||||
PlayerReference@Creeps:
|
||||
Name: Creeps
|
||||
NonCombatant: True
|
||||
PlayerReference@Germany:
|
||||
Name: Germany
|
||||
Faction: allies
|
||||
ColorRamp: 161,134,236
|
||||
Enemies: USSR
|
||||
PlayerReference@USSR:
|
||||
Name: USSR
|
||||
AllowBots: False
|
||||
Playable: True
|
||||
Required: True
|
||||
LockFaction: True
|
||||
Faction: soviet
|
||||
LockColor: True
|
||||
ColorRamp: 3,255,127
|
||||
LockSpawn: True
|
||||
LockTeam: True
|
||||
Enemies: Germany, Creeps
|
||||
|
||||
Actors:
|
||||
Actor0: sbag
|
||||
Location: 53,52
|
||||
Owner: Germany
|
||||
Actor1: sbag
|
||||
Location: 54,52
|
||||
Owner: Germany
|
||||
Actor2: sbag
|
||||
Location: 53,53
|
||||
Owner: Neutral
|
||||
Actor3: sbag
|
||||
Location: 54,53
|
||||
Owner: Germany
|
||||
Actor4: sbag
|
||||
Location: 53,56
|
||||
Owner: Germany
|
||||
Actor5: sbag
|
||||
Location: 54,56
|
||||
Owner: Germany
|
||||
Actor6: sbag
|
||||
Location: 53,57
|
||||
Owner: Germany
|
||||
Actor7: sbag
|
||||
Location: 54,57
|
||||
Owner: Germany
|
||||
Actor8: sbag
|
||||
Location: 81,68
|
||||
Owner: Germany
|
||||
Actor9: sbag
|
||||
Location: 83,68
|
||||
Owner: Germany
|
||||
Actor10: sbag
|
||||
Location: 87,68
|
||||
Owner: Germany
|
||||
Actor11: sbag
|
||||
Location: 89,68
|
||||
Owner: Germany
|
||||
Actor12: sbag
|
||||
Location: 81,69
|
||||
Owner: Germany
|
||||
Actor13: sbag
|
||||
Location: 82,69
|
||||
Owner: Germany
|
||||
Actor14: sbag
|
||||
Location: 83,69
|
||||
Owner: Germany
|
||||
Actor15: sbag
|
||||
Location: 87,69
|
||||
Owner: Germany
|
||||
Actor16: sbag
|
||||
Location: 88,69
|
||||
Owner: Germany
|
||||
Actor17: sbag
|
||||
Location: 89,69
|
||||
Owner: Germany
|
||||
Actor18: v14
|
||||
Location: 87,84
|
||||
Owner: Neutral
|
||||
Actor19: v15
|
||||
Location: 88,84
|
||||
Owner: Neutral
|
||||
Actor20: v16
|
||||
Location: 86,85
|
||||
Owner: Neutral
|
||||
Actor21: v17
|
||||
Location: 87,85
|
||||
Owner: Neutral
|
||||
Actor22: v18
|
||||
Location: 88,85
|
||||
Owner: Neutral
|
||||
Actor23: tc05
|
||||
Location: 75,63
|
||||
Owner: Neutral
|
||||
Actor24: tc02
|
||||
Location: 82,58
|
||||
Owner: Neutral
|
||||
Actor25: tc01
|
||||
Location: 85,57
|
||||
Owner: Neutral
|
||||
Actor26: t07
|
||||
Location: 83,60
|
||||
Owner: Neutral
|
||||
Actor27: tc04
|
||||
Location: 36,55
|
||||
Owner: Neutral
|
||||
Actor28: tc05
|
||||
Location: 41,52
|
||||
Owner: Neutral
|
||||
Actor29: t01
|
||||
Location: 73,62
|
||||
Owner: Neutral
|
||||
Actor30: tc01
|
||||
Location: 64,63
|
||||
Owner: Neutral
|
||||
Actor31: t06
|
||||
Location: 69,62
|
||||
Owner: Neutral
|
||||
Actor32: t07
|
||||
Location: 67,63
|
||||
Owner: Neutral
|
||||
Actor33: tc02
|
||||
Location: 73,57
|
||||
Owner: Neutral
|
||||
Actor34: t07
|
||||
Location: 74,55
|
||||
Owner: Neutral
|
||||
Actor35: tc05
|
||||
Location: 61,60
|
||||
Owner: Neutral
|
||||
Actor36: tc01
|
||||
Location: 69,72
|
||||
Owner: Neutral
|
||||
Actor37: tc05
|
||||
Location: 36,81
|
||||
Owner: Neutral
|
||||
Actor38: tc02
|
||||
Location: 43,85
|
||||
Owner: Neutral
|
||||
Actor39: tc01
|
||||
Location: 47,85
|
||||
Owner: Neutral
|
||||
Actor40: tc01
|
||||
Location: 39,84
|
||||
Owner: Neutral
|
||||
Actor41: tc04
|
||||
Location: 51,65
|
||||
Owner: Neutral
|
||||
Actor42: tc05
|
||||
Location: 47,66
|
||||
Owner: Neutral
|
||||
Actor43: tc02
|
||||
Location: 88,65
|
||||
Owner: Neutral
|
||||
Actor44: tc04
|
||||
Location: 79,84
|
||||
Owner: Neutral
|
||||
Actor45: tc04
|
||||
Location: 66,72
|
||||
Owner: Neutral
|
||||
Actor46: weap
|
||||
Location: 84,59
|
||||
Owner: Germany
|
||||
Actor47: dome
|
||||
Location: 72,55
|
||||
Owner: Germany
|
||||
Actor50: fact
|
||||
Location: 75,55
|
||||
Owner: Germany
|
||||
Actor51: proc
|
||||
Location: 80,59
|
||||
Owner: Germany
|
||||
FreeActor: False
|
||||
Actor52: powr
|
||||
Location: 83,55
|
||||
Owner: Germany
|
||||
Actor53: powr
|
||||
Location: 85,55
|
||||
Owner: Germany
|
||||
Actor54: brl3
|
||||
Location: 69,64
|
||||
Owner: Creeps
|
||||
Actor55: brl3
|
||||
Location: 68,65
|
||||
Owner: Creeps
|
||||
Actor57: barl
|
||||
Location: 73,64
|
||||
Owner: Creeps
|
||||
Actor58: barl
|
||||
Location: 72,63
|
||||
Owner: Creeps
|
||||
Actor59: barl
|
||||
Location: 70,63
|
||||
Owner: Creeps
|
||||
Actor61: brl3
|
||||
Location: 70,56
|
||||
Owner: Creeps
|
||||
Actor62: brl3
|
||||
Location: 71,56
|
||||
Owner: Creeps
|
||||
Actor63: brl3
|
||||
Location: 70,55
|
||||
Owner: Creeps
|
||||
Actor64: barl
|
||||
Location: 69,54
|
||||
Owner: Creeps
|
||||
Actor65: brl3
|
||||
Location: 68,54
|
||||
Owner: Creeps
|
||||
Actor66: barl
|
||||
Location: 67,53
|
||||
Owner: Creeps
|
||||
Actor68: v03
|
||||
Location: 81,85
|
||||
Owner: Creeps
|
||||
Actor69: v06
|
||||
Location: 87,83
|
||||
Owner: Creeps
|
||||
Actor70: fact
|
||||
Location: 41,76
|
||||
Owner: USSR
|
||||
Actor71: powr
|
||||
Location: 46,80
|
||||
Owner: USSR
|
||||
Actor72: powr
|
||||
Location: 49,80
|
||||
Owner: USSR
|
||||
Actor73: powr
|
||||
Location: 43,80
|
||||
Owner: USSR
|
||||
Actor75: afld
|
||||
Location: 45,77
|
||||
Owner: USSR
|
||||
Actor76: afld
|
||||
Location: 49,77
|
||||
Owner: USSR
|
||||
Actor78: brl3
|
||||
Location: 82,70
|
||||
Owner: Germany
|
||||
Actor79: brl3
|
||||
Location: 83,70
|
||||
Owner: Germany
|
||||
Actor80: brl3
|
||||
Location: 88,70
|
||||
Owner: Germany
|
||||
Actor81: barl
|
||||
Location: 87,70
|
||||
Owner: Germany
|
||||
Actor82: barl
|
||||
Location: 84,69
|
||||
Owner: Germany
|
||||
Actor83: tent
|
||||
Location: 70,57
|
||||
Owner: Germany
|
||||
Actor84: barl
|
||||
Location: 74,55
|
||||
Owner: Creeps
|
||||
Actor85: powr
|
||||
Location: 52,80
|
||||
Owner: USSR
|
||||
Actor86: jeep
|
||||
Location: 85,66
|
||||
Owner: Germany
|
||||
Health: 55
|
||||
Facing: 128
|
||||
Actor89: jeep
|
||||
Location: 55,56
|
||||
Owner: Germany
|
||||
Health: 59
|
||||
Facing: 224
|
||||
Actor90: jeep
|
||||
Location: 79,54
|
||||
Owner: Germany
|
||||
Facing: 128
|
||||
Actor92: e1
|
||||
Location: 47,75
|
||||
Owner: USSR
|
||||
Facing: 64
|
||||
SubCell: 4
|
||||
Actor93: e1
|
||||
Location: 48,75
|
||||
Owner: USSR
|
||||
Facing: 64
|
||||
SubCell: 3
|
||||
Actor94: e1
|
||||
Location: 47,76
|
||||
Owner: USSR
|
||||
Facing: 64
|
||||
SubCell: 2
|
||||
Actor95: e1
|
||||
Location: 48,76
|
||||
Owner: USSR
|
||||
Facing: 64
|
||||
SubCell: 1
|
||||
Actor96: dog
|
||||
Location: 49,73
|
||||
Owner: USSR
|
||||
Facing: 64
|
||||
SubCell: 3
|
||||
Actor97: dog
|
||||
Location: 49,76
|
||||
Owner: USSR
|
||||
Facing: 64
|
||||
SubCell: 1
|
||||
Actor98: dog
|
||||
Location: 49,75
|
||||
Owner: USSR
|
||||
Facing: 64
|
||||
SubCell: 3
|
||||
Actor99: dog
|
||||
Location: 49,74
|
||||
Owner: USSR
|
||||
Facing: 64
|
||||
SubCell: 1
|
||||
Actor100: e3
|
||||
Location: 88,68
|
||||
Owner: Germany
|
||||
Facing: 160
|
||||
SubCell: 3
|
||||
Actor103: e1
|
||||
Location: 79,64
|
||||
Owner: Germany
|
||||
Facing: 96
|
||||
SubCell: 3
|
||||
Actor104: e1
|
||||
Location: 79,64
|
||||
Owner: Germany
|
||||
Facing: 96
|
||||
SubCell: 4
|
||||
Actor105: e3
|
||||
Location: 78,57
|
||||
Owner: Germany
|
||||
Facing: 160
|
||||
SubCell: 4
|
||||
Actor106: e2
|
||||
Location: 47,73
|
||||
Owner: USSR
|
||||
Facing: 64
|
||||
SubCell: 4
|
||||
Actor107: e2
|
||||
Location: 47,74
|
||||
Owner: USSR
|
||||
Facing: 64
|
||||
SubCell: 2
|
||||
Actor108: e2
|
||||
Location: 48,74
|
||||
Owner: USSR
|
||||
Facing: 64
|
||||
SubCell: 1
|
||||
Actor109: e2
|
||||
Location: 48,73
|
||||
Owner: USSR
|
||||
Facing: 64
|
||||
SubCell: 3
|
||||
Actor110: e1
|
||||
Location: 72,61
|
||||
Owner: Germany
|
||||
Facing: 160
|
||||
SubCell: 0
|
||||
Actor111: e1
|
||||
Location: 40,54
|
||||
Owner: Germany
|
||||
Facing: 96
|
||||
SubCell: 0
|
||||
Actor112: e1
|
||||
Location: 83,85
|
||||
Owner: Germany
|
||||
Facing: 224
|
||||
SubCell: 3
|
||||
Actor113: e1
|
||||
Location: 82,68
|
||||
Owner: Germany
|
||||
Facing: 96
|
||||
SubCell: 4
|
||||
Actor114: e1
|
||||
Location: 69,55
|
||||
Owner: Germany
|
||||
Facing: 160
|
||||
SubCell: 0
|
||||
BarrelBase: brl3
|
||||
Location: 71,55
|
||||
Owner: Creeps
|
||||
BarrelBridge: brl3
|
||||
Location: 72,65
|
||||
Owner: Creeps
|
||||
BridgeCheck1: waypoint
|
||||
Owner: Neutral
|
||||
Location: 60,60
|
||||
BridgeCheck2: waypoint
|
||||
Owner: Neutral
|
||||
Location: 80,75
|
||||
CameraStart: Camera
|
||||
Location: 60,77
|
||||
Owner: Neutral
|
||||
CameraBridge: Camera
|
||||
Location: 69,67
|
||||
Owner: Neutral
|
||||
CameraBase1: Camera
|
||||
Location: 70,56
|
||||
Owner: Neutral
|
||||
CameraBase2: Camera
|
||||
Location: 82,58
|
||||
Owner: Neutral
|
||||
CameraBaseEntrance: Camera
|
||||
Location: 85,67
|
||||
Owner: Neutral
|
||||
Church1: v01
|
||||
Location: 67,73
|
||||
Owner: Creeps
|
||||
Church2: v01
|
||||
Location: 86,81
|
||||
Owner: Creeps
|
||||
ForwardCommand: fcom
|
||||
Location: 45,73
|
||||
Owner: USSR
|
||||
BridgeGun1: gun
|
||||
Location: 68,64
|
||||
Owner: Germany
|
||||
Health: 56
|
||||
Facing: 160
|
||||
BridgeGun2: gun
|
||||
Location: 74,64
|
||||
Owner: Germany
|
||||
Health: 53
|
||||
Facing: 160
|
||||
IntroSoldier1: e1
|
||||
Location: 71,65
|
||||
Owner: Germany
|
||||
Facing: 160
|
||||
SubCell: 3
|
||||
IntroSoldier2: e1
|
||||
Location: 71,60
|
||||
Owner: Germany
|
||||
Facing: 128
|
||||
SubCell: 3
|
||||
IntroSoldier3: e1
|
||||
Location: 70,60
|
||||
Owner: Germany
|
||||
Facing: 128
|
||||
SubCell: 4
|
||||
ParachuteBase1: waypoint
|
||||
Location: 66,54
|
||||
Owner: Neutral
|
||||
ParachuteBase2: waypoint
|
||||
Location: 66,56
|
||||
Owner: Neutral
|
||||
ParachuteBaseEntrance: waypoint
|
||||
Location: 85,68
|
||||
Owner: Neutral
|
||||
TransportTruck: truk
|
||||
Location: 75,58
|
||||
Owner: Germany
|
||||
Facing: 192
|
||||
TransportWaypoint1: waypoint
|
||||
Location: 75,58
|
||||
Owner: Neutral
|
||||
TransportWaypoint2: waypoint
|
||||
Location: 86,83
|
||||
Owner: Neutral
|
||||
TransportWaypoint3: waypoint
|
||||
Location: 67,75
|
||||
Owner: Neutral
|
||||
|
||||
Smudges:
|
||||
|
||||
Rules:
|
||||
Player:
|
||||
-ConquestVictoryConditions:
|
||||
MissionObjectives:
|
||||
EarlyGameOver: true
|
||||
-EnemyWatcher:
|
||||
World:
|
||||
-CrateSpawner:
|
||||
-SpawnMPUnits:
|
||||
-MPStartLocations:
|
||||
LuaScript:
|
||||
Scripts: soviet02b.lua
|
||||
ObjectivesPanel:
|
||||
PanelName: MISSION_OBJECTIVES
|
||||
^Building:
|
||||
Tooltip:
|
||||
GenericVisibility: Enemy
|
||||
ShowOwnerRow: false
|
||||
^Infantry:
|
||||
Tooltip:
|
||||
GenericVisibility: Enemy
|
||||
ShowOwnerRow: false
|
||||
^Vehicle:
|
||||
Tooltip:
|
||||
GenericVisibility: Enemy
|
||||
ShowOwnerRow: false
|
||||
^Plane:
|
||||
Tooltip:
|
||||
GenericVisibility: Enemy
|
||||
ShowOwnerRow: false
|
||||
^Wall:
|
||||
Tooltip:
|
||||
ShowOwnerRow: false
|
||||
^Crate:
|
||||
Tooltip:
|
||||
ShowOwnerRow: false
|
||||
^Husk:
|
||||
Tooltip:
|
||||
GenericVisibility: Enemy, Ally, Neutral
|
||||
GenericStancePrefix: false
|
||||
ShowOwnerRow: false
|
||||
SPEN:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
DOME:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
WEAP:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
FIX:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
APWR:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
STEK:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
BRIK:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
TSLA:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
SAM:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
IRON:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
MSLO:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
E3:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
E4:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
E6:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
SHOK:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
SNIPER:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
HIJACKER:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
MIG:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
GUN:
|
||||
-RepairableBuilding:
|
||||
FCOM:
|
||||
RepairableBuilding:
|
||||
Tooltip:
|
||||
ShowOwnerRow: false
|
||||
AFLD:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
AirstrikePower@spyplane:
|
||||
Prerequisites: ~disabled
|
||||
ParatroopersPower@paratroopers:
|
||||
Prerequisites: ~disabled
|
||||
DOG:
|
||||
Health:
|
||||
HP: 25
|
||||
AutoTarget:
|
||||
ScanRadius: 5
|
||||
HARV:
|
||||
Harvester:
|
||||
SearchFromProcRadius: 50
|
||||
SearchFromOrderRadius: 50
|
||||
BARL:
|
||||
Health:
|
||||
HP: 1
|
||||
Explodes:
|
||||
Weapon: MissionBarrelExplode
|
||||
BRL3:
|
||||
Health:
|
||||
HP: 1
|
||||
Explodes:
|
||||
Weapon: MissionBarrelExplode
|
||||
MONEYCRATE:
|
||||
GiveCashCrateAction:
|
||||
Amount: 2000
|
||||
powerproxy.paratroopers:
|
||||
ParatroopersPower:
|
||||
DropItems: E1,E1,E2,E2,E2
|
||||
powerproxy.paratroopers2:
|
||||
Inherits: powerproxy.paratroopers
|
||||
ParatroopersPower:
|
||||
DropItems: E2,E2,E2,E2,E2
|
||||
powerproxy.paratroopers3:
|
||||
Inherits: powerproxy.paratroopers
|
||||
ParatroopersPower:
|
||||
DropItems: E1,E1,E1,E1,E1
|
||||
|
||||
Sequences:
|
||||
|
||||
VoxelSequences:
|
||||
|
||||
Weapons:
|
||||
MissionBarrelExplode:
|
||||
Warhead@1Dam: SpreadDamage
|
||||
Spread: 600
|
||||
Damage: 100
|
||||
Falloff: 1000, 368, 135, 50, 18, 7, 0
|
||||
Delay: 5
|
||||
Versus:
|
||||
None: 120
|
||||
Wood: 200
|
||||
Light: 50
|
||||
Heavy: 25
|
||||
Concrete: 10
|
||||
DamageTypes: Prone50Percent, TriggerProne, ExplosionDeath
|
||||
Warhead@2Smu: LeaveSmudge
|
||||
SmudgeType: Scorch
|
||||
Size: 2,1
|
||||
Delay: 5
|
||||
Warhead@3Eff: CreateEffect
|
||||
Explosion: napalm
|
||||
ImpactSound: firebl3.aud
|
||||
Delay: 5
|
||||
|
||||
Voices:
|
||||
|
||||
Notifications:
|
||||
|
||||
Translations:
|
||||
174
mods/ra/maps/soviet-02b/soviet02b.lua
Normal file
174
mods/ra/maps/soviet-02b/soviet02b.lua
Normal file
@@ -0,0 +1,174 @@
|
||||
IntroAttackers = { IntroSoldier1, IntroSoldier2, IntroSoldier3 }
|
||||
|
||||
BridgeShroudTrigger = { CPos.New(63, 71), CPos.New(64, 71), CPos.New(65, 71), CPos.New(69, 65), CPos.New(70, 65), CPos.New(71, 65) }
|
||||
BridgeExplosionTrigger = { CPos.New(66, 69), CPos.New(67, 69), CPos.New(68, 69) }
|
||||
TransportTrigger = { CPos.New(75, 58) }
|
||||
EnemyBaseShroudTrigger = { CPos.New(64, 52), CPos.New(64, 53), CPos.New(64, 54), CPos.New(64, 55), CPos.New(64, 56), CPos.New(64, 57), CPos.New(64, 58), CPos.New(64, 59), CPos.New(64, 60), CPos.New(64, 61), CPos.New(64, 62), CPos.New(64, 63), CPos.New(64, 64) }
|
||||
ParachuteTrigger = { CPos.New(80, 66), CPos.New(81, 66), CPos.New(82, 66), CPos.New(83, 66), CPos.New(84, 66), CPos.New(85, 66),CPos.New(86, 66), CPos.New(87, 66), CPos.New(88, 66), CPos.New(89, 66) }
|
||||
EnemyBaseEntranceShroudTrigger = { CPos.New(80, 73), CPos.New(81, 73), CPos.New(82, 73), CPos.New(83, 73), CPos.New(84, 73), CPos.New(85, 73),CPos.New(86, 73), CPos.New(87, 73), CPos.New(88, 73), CPos.New(89, 73) }
|
||||
|
||||
SendUSSRParadrops = function()
|
||||
paraproxy1 = Actor.Create("powerproxy.paratroopers", false, { Owner = player })
|
||||
paraproxy1.SendParatroopers(ParachuteBaseEntrance.CenterPosition, false, Facing.North)
|
||||
paraproxy1.Destroy()
|
||||
end
|
||||
|
||||
SendUSSRParadropsBase = function()
|
||||
paraproxy2 = Actor.Create("powerproxy.paratroopers2", false, { Owner = player })
|
||||
paraproxy2.SendParatroopers(ParachuteBase1.CenterPosition, false, Facing.East)
|
||||
paraproxy2.Destroy()
|
||||
paraproxy3 = Actor.Create("powerproxy.paratroopers3", false, { Owner = player })
|
||||
paraproxy3.SendParatroopers(ParachuteBase2.CenterPosition, false, Facing.East)
|
||||
paraproxy3.Destroy()
|
||||
end
|
||||
|
||||
Trigger.OnEnteredFootprint(BridgeShroudTrigger, function(a, id)
|
||||
if not bridgeShroudTrigger and a.Owner == player then
|
||||
bridgeShroudTrigger = true
|
||||
local cameraBridge = Actor.Create("camera", true, { Owner = player, Location = CameraBridge.Location })
|
||||
Trigger.AfterDelay(DateTime.Seconds(15), function()
|
||||
cameraBridge.Kill()
|
||||
end)
|
||||
end
|
||||
end)
|
||||
|
||||
Trigger.OnEnteredFootprint(BridgeExplosionTrigger, function(a, id)
|
||||
if not bridgeExplosionTrigger and a.Owner == player then
|
||||
bridgeExplosionTrigger = true
|
||||
if not BarrelBridge.IsDead then
|
||||
BarrelBridge.Kill()
|
||||
end
|
||||
end
|
||||
end)
|
||||
|
||||
Trigger.OnEnteredFootprint(EnemyBaseEntranceShroudTrigger, function(a, id)
|
||||
if not enemyBaseEntranceShroudTrigger and a.Owner == player then
|
||||
enemyBaseEntranceShroudTrigger = true
|
||||
local cameraBaseEntrance = Actor.Create("camera", true, { Owner = player, Location = CameraBaseEntrance.Location })
|
||||
Trigger.AfterDelay(DateTime.Seconds(15), function()
|
||||
cameraBaseEntrance.Kill()
|
||||
end)
|
||||
end
|
||||
end)
|
||||
|
||||
Trigger.OnEnteredFootprint(EnemyBaseShroudTrigger, function(a, id)
|
||||
if not enemyBaseShroudTrigger and a.Owner == player then
|
||||
enemyBaseShroudTrigger = true
|
||||
local cameraBase1 = Actor.Create("camera", true, { Owner = player, Location = CameraBase1.Location })
|
||||
local cameraBase2 = Actor.Create("camera", true, { Owner = player, Location = CameraBase2.Location })
|
||||
Trigger.AfterDelay(DateTime.Seconds(15), function()
|
||||
cameraBase1.Kill()
|
||||
cameraBase2.Kill()
|
||||
end)
|
||||
end
|
||||
end)
|
||||
|
||||
Trigger.OnEnteredFootprint(ParachuteTrigger, function(a, id)
|
||||
if not parachuteTrigger and a.Owner == player then
|
||||
parachuteTrigger = true
|
||||
SendUSSRParadrops()
|
||||
Media.PlaySpeechNotification(player, "ReinforcementsArrived")
|
||||
end
|
||||
end)
|
||||
|
||||
Trigger.OnEnteredFootprint(TransportTrigger, function(a, id)
|
||||
if not transportTrigger and a.Type == "truk" then
|
||||
transportTrigger = true
|
||||
if not TransportTruck.IsDead then
|
||||
TransportTruck.Wait(DateTime.Seconds(5))
|
||||
TransportTruck.Move(TransportWaypoint2.Location)
|
||||
TransportTruck.Wait(DateTime.Seconds(5))
|
||||
TransportTruck.Move(TransportWaypoint3.Location)
|
||||
TransportTruck.Wait(DateTime.Seconds(5))
|
||||
TransportTruck.Move(TransportWaypoint1.Location)
|
||||
end
|
||||
Trigger.AfterDelay(DateTime.Seconds(10), function()
|
||||
transportTrigger = false
|
||||
end)
|
||||
end
|
||||
end)
|
||||
|
||||
Trigger.OnKilled(BarrelBase, function()
|
||||
SendUSSRParadropsBase()
|
||||
Media.PlaySpeechNotification(player, "ReinforcementsArrived")
|
||||
end)
|
||||
|
||||
Trigger.OnKilled(BarrelBridge, function()
|
||||
local bridgepart = Map.ActorsInBox(BridgeCheck1.CenterPosition, BridgeCheck2.CenterPosition, function(self) return self.Type == "br1" end)[1]
|
||||
if not bridgepart.IsDead then
|
||||
bridgepart.Kill()
|
||||
end
|
||||
end)
|
||||
|
||||
Trigger.OnKilled(Church1, function()
|
||||
Actor.Create("moneycrate", true, { Owner = player, Location = TransportWaypoint3.Location })
|
||||
end)
|
||||
|
||||
Trigger.OnKilled(Church2, function()
|
||||
Actor.Create("healcrate", true, { Owner = player, Location = Church2.Location })
|
||||
end)
|
||||
|
||||
Trigger.OnKilled(ForwardCommand, function()
|
||||
enemy.MarkCompletedObjective(alliedObjective)
|
||||
end)
|
||||
|
||||
Trigger.OnKilled(IntroSoldier1, function()
|
||||
local cameraIntro = Actor.Create("camera", true, { Owner = player, Location = CameraStart.Location })
|
||||
Trigger.AfterDelay(DateTime.Seconds(15), function()
|
||||
cameraIntro.Kill()
|
||||
end)
|
||||
end)
|
||||
|
||||
WorldLoaded = function()
|
||||
player = Player.GetPlayer("USSR")
|
||||
enemy = Player.GetPlayer("Germany")
|
||||
Utils.Do(IntroAttackers, function(actor)
|
||||
if not actor.IsDead then
|
||||
Trigger.OnIdle(actor, actor.Hunt)
|
||||
end
|
||||
end)
|
||||
Trigger.AfterDelay(0, function()
|
||||
local buildings = Map.ActorsInBox(Map.TopLeft, Map.BottomRight, function(self) return self.Owner == enemy and self.HasProperty("StartBuildingRepairs") end)
|
||||
Utils.Do(buildings, function(actor)
|
||||
Trigger.OnDamaged(actor, function(building, attacker)
|
||||
if building.Owner == enemy and building.Health < building.MaxHealth * 0.8 then
|
||||
building.StartBuildingRepairs()
|
||||
end
|
||||
end)
|
||||
end)
|
||||
end)
|
||||
Trigger.OnObjectiveAdded(player, function(p, id)
|
||||
Media.DisplayMessage(p.GetObjectiveDescription(id), "New " .. string.lower(p.GetObjectiveType(id)) .. " objective")
|
||||
end)
|
||||
Trigger.OnObjectiveCompleted(player, function(p, id)
|
||||
Media.DisplayMessage(p.GetObjectiveDescription(id), "Objective completed")
|
||||
end)
|
||||
Trigger.OnObjectiveFailed(player, function(p, id)
|
||||
Media.DisplayMessage(p.GetObjectiveDescription(id), "Objective failed")
|
||||
end)
|
||||
Trigger.OnPlayerWon(player, function()
|
||||
Media.PlaySpeechNotification(player, "Win")
|
||||
end)
|
||||
Trigger.OnPlayerLost(player, function()
|
||||
Media.PlaySpeechNotification(player, "Lose")
|
||||
end)
|
||||
alliedObjective = enemy.AddPrimaryObjective("Destroy all Soviet troops.")
|
||||
sovietObjective1 = player.AddPrimaryObjective("Protect the Command Center.")
|
||||
sovietObjective2 = player.AddPrimaryObjective("Destroy all Allied units and structures.")
|
||||
end
|
||||
|
||||
Tick = function()
|
||||
if player.HasNoRequiredUnits() then
|
||||
enemy.MarkCompletedObjective(alliedObjective)
|
||||
end
|
||||
|
||||
if enemy.HasNoRequiredUnits() then
|
||||
player.MarkCompletedObjective(sovietObjective1)
|
||||
player.MarkCompletedObjective(sovietObjective2)
|
||||
end
|
||||
|
||||
if enemy.Resources >= enemy.ResourceCapacity * 0.75 then
|
||||
enemy.Cash = enemy.Cash + enemy.Resources - enemy.ResourceCapacity * 0.25
|
||||
enemy.Resources = enemy.ResourceCapacity * 0.25
|
||||
end
|
||||
end
|
||||
@@ -7,6 +7,7 @@ Allied Campaign:
|
||||
Soviet Campaign:
|
||||
./mods/ra/maps/soviet-01
|
||||
./mods/ra/maps/soviet-02a
|
||||
./mods/ra/maps/soviet-02b
|
||||
./mods/ra/maps/soviet-03
|
||||
./mods/ra/maps/soviet-04a
|
||||
./mods/ra/maps/soviet-04b
|
||||
|
||||
Reference in New Issue
Block a user