Add funpark01
This commit is contained in:
@@ -39,6 +39,7 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Tiberian Dawn Lua scripts",
|
||||
mods\cnc\maps\nod04a\nod04a.lua = mods\cnc\maps\nod04a\nod04a.lua
|
||||
mods\cnc\maps\nod04b\nod04b.lua = mods\cnc\maps\nod04b\nod04b.lua
|
||||
mods\cnc\maps\nod05\nod05.lua = mods\cnc\maps\nod05\nod05.lua
|
||||
mods\cnc\maps\funpark01\scj01ea.lua = mods\cnc\maps\funpark01\scj01ea.lua
|
||||
mods\cnc\maps\shellmap\shellmap.lua = mods\cnc\maps\shellmap\shellmap.lua
|
||||
EndProjectSection
|
||||
EndProject
|
||||
|
||||
BIN
artsrc/cnc/campaign/funpark.xcf
Normal file
BIN
artsrc/cnc/campaign/funpark.xcf
Normal file
Binary file not shown.
BIN
mods/cnc/maps/funpark01/map.bin
Normal file
BIN
mods/cnc/maps/funpark01/map.bin
Normal file
Binary file not shown.
BIN
mods/cnc/maps/funpark01/map.png
Normal file
BIN
mods/cnc/maps/funpark01/map.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 27 KiB |
533
mods/cnc/maps/funpark01/map.yaml
Normal file
533
mods/cnc/maps/funpark01/map.yaml
Normal file
@@ -0,0 +1,533 @@
|
||||
MapFormat: 7
|
||||
|
||||
RequiresMod: cnc
|
||||
|
||||
Title: Strange Behavior
|
||||
|
||||
Description: There have been some reports of strange animals in this area. \n\nTake your units to investigate, and report back your findings.
|
||||
|
||||
Author: Westwood Studios
|
||||
|
||||
Tileset: JUNGLE
|
||||
|
||||
MapSize: 64,64
|
||||
|
||||
Bounds: 10,5,45,52
|
||||
|
||||
Visibility: MissionSelector
|
||||
|
||||
Type: Campaign
|
||||
|
||||
Videos:
|
||||
Briefing: generic.vqa
|
||||
GameStart: dino.vqa
|
||||
|
||||
Options:
|
||||
Crates: False
|
||||
Creeps: False
|
||||
Fog: True
|
||||
Shroud: True
|
||||
AllyBuildRadius: False
|
||||
FragileAlliances: False
|
||||
StartingCash: 0
|
||||
ConfigurableStartingUnits: False
|
||||
ShortGame: False
|
||||
Difficulties: Easy,Normal
|
||||
|
||||
Players:
|
||||
PlayerReference@Neutral:
|
||||
Name: Neutral
|
||||
OwnsWorld: True
|
||||
NonCombatant: True
|
||||
Race: gdi
|
||||
PlayerReference@Civilian:
|
||||
Name: Civilian
|
||||
NonCombatant: True
|
||||
Race: gdi
|
||||
Enemies: Nod, Dinosaur
|
||||
PlayerReference@Dinosaur:
|
||||
Name: Dinosaur
|
||||
NonCombatant: True
|
||||
Race: gdi
|
||||
ColorRamp: 14,119,96
|
||||
Enemies: Nod, Civilian
|
||||
PlayerReference@Nod:
|
||||
Name: Nod
|
||||
Playable: True
|
||||
AllowBots: False
|
||||
Required: True
|
||||
LockRace: True
|
||||
Race: nod
|
||||
LockColor: True
|
||||
ColorRamp: 3,255,127
|
||||
LockSpawn: True
|
||||
LockTeam: True
|
||||
Allies: Nod
|
||||
Enemies: Dinosaur
|
||||
|
||||
Actors:
|
||||
Actor0: wood
|
||||
Location: 23,18
|
||||
Owner: Neutral
|
||||
Actor1: wood
|
||||
Location: 22,18
|
||||
Owner: Neutral
|
||||
Actor2: wood
|
||||
Location: 21,18
|
||||
Owner: Neutral
|
||||
Actor3: wood
|
||||
Location: 20,18
|
||||
Owner: Neutral
|
||||
Actor4: wood
|
||||
Location: 23,17
|
||||
Owner: Neutral
|
||||
Actor5: v17
|
||||
Location: 22,17
|
||||
Owner: Civilian
|
||||
Actor6: v16
|
||||
Location: 21,17
|
||||
Owner: Civilian
|
||||
Actor7: wood
|
||||
Location: 20,17
|
||||
Owner: Neutral
|
||||
Actor8: wood
|
||||
Location: 17,17
|
||||
Owner: Neutral
|
||||
Actor9: wood
|
||||
Location: 23,16
|
||||
Owner: Neutral
|
||||
Actor10: v14
|
||||
Location: 22,16
|
||||
Owner: Civilian
|
||||
Actor11: v15
|
||||
Location: 21,16
|
||||
Owner: Civilian
|
||||
Actor12: wood
|
||||
Location: 20,16
|
||||
Owner: Neutral
|
||||
Actor13: wood
|
||||
Location: 17,16
|
||||
Owner: Neutral
|
||||
Actor14: wood
|
||||
Location: 16,16
|
||||
Owner: Neutral
|
||||
Actor15: wood
|
||||
Location: 15,16
|
||||
Owner: Neutral
|
||||
Actor16: wood
|
||||
Location: 14,16
|
||||
Owner: Neutral
|
||||
Actor17: wood
|
||||
Location: 13,16
|
||||
Owner: Neutral
|
||||
Actor18: wood
|
||||
Location: 12,16
|
||||
Owner: Neutral
|
||||
Actor19: wood
|
||||
Location: 11,16
|
||||
Owner: Neutral
|
||||
Actor20: wood
|
||||
Location: 23,15
|
||||
Owner: Neutral
|
||||
Actor21: wood
|
||||
Location: 11,15
|
||||
Owner: Neutral
|
||||
Actor22: wood
|
||||
Location: 23,13
|
||||
Owner: Neutral
|
||||
Actor23: wood
|
||||
Location: 23,12
|
||||
Owner: Neutral
|
||||
Actor24: wood
|
||||
Location: 23,11
|
||||
Owner: Neutral
|
||||
Actor25: wood
|
||||
Location: 23,10
|
||||
Owner: Neutral
|
||||
Actor26: v17
|
||||
Location: 22,10
|
||||
Owner: Civilian
|
||||
Actor27: v18
|
||||
Location: 21,10
|
||||
Owner: Civilian
|
||||
Actor28: v12
|
||||
Location: 20,10
|
||||
Owner: Civilian
|
||||
Actor29: wood
|
||||
Location: 23,9
|
||||
Owner: Neutral
|
||||
Actor30: v16
|
||||
Location: 22,9
|
||||
Owner: Civilian
|
||||
Actor31: v15
|
||||
Location: 21,9
|
||||
Owner: Civilian
|
||||
Actor32: v14
|
||||
Location: 20,9
|
||||
Owner: Civilian
|
||||
Actor34: tc04
|
||||
Location: 51,39
|
||||
Owner: Neutral
|
||||
Actor35: tc02
|
||||
Location: 46,40
|
||||
Owner: Neutral
|
||||
Actor36: tc04
|
||||
Location: 51,44
|
||||
Owner: Neutral
|
||||
Actor37: tc01
|
||||
Location: 46,38
|
||||
Owner: Neutral
|
||||
Actor38: tc04
|
||||
Location: 45,42
|
||||
Owner: Neutral
|
||||
Actor39: t01
|
||||
Location: 54,46
|
||||
Owner: Neutral
|
||||
Actor40: t01
|
||||
Location: 51,49
|
||||
Owner: Neutral
|
||||
Actor41: t01
|
||||
Location: 14,47
|
||||
Owner: Neutral
|
||||
Actor42: t02
|
||||
Location: 20,49
|
||||
Owner: Neutral
|
||||
Actor43: t01
|
||||
Location: 25,53
|
||||
Owner: Neutral
|
||||
Actor44: t03
|
||||
Location: 53,47
|
||||
Owner: Neutral
|
||||
Actor45: t05
|
||||
Location: 40,49
|
||||
Owner: Neutral
|
||||
Actor46: t06
|
||||
Location: 43,48
|
||||
Owner: Neutral
|
||||
Actor47: tc04
|
||||
Location: 37,47
|
||||
Owner: Neutral
|
||||
Actor48: tc04
|
||||
Location: 29,51
|
||||
Owner: Neutral
|
||||
Actor49: tc02
|
||||
Location: 22,52
|
||||
Owner: Neutral
|
||||
Actor50: tc01
|
||||
Location: 21,47
|
||||
Owner: Neutral
|
||||
Actor51: tc01
|
||||
Location: 47,44
|
||||
Owner: Neutral
|
||||
Actor52: tc01
|
||||
Location: 47,49
|
||||
Owner: Neutral
|
||||
Actor53: t07
|
||||
Location: 52,42
|
||||
Owner: Neutral
|
||||
Actor54: t07
|
||||
Location: 45,46
|
||||
Owner: Neutral
|
||||
Actor55: t07
|
||||
Location: 41,47
|
||||
Owner: Neutral
|
||||
Actor56: t06
|
||||
Location: 47,46
|
||||
Owner: Neutral
|
||||
Actor57: t01
|
||||
Location: 49,43
|
||||
Owner: Neutral
|
||||
Actor58: t01
|
||||
Location: 52,29
|
||||
Owner: Neutral
|
||||
Actor59: tc04
|
||||
Location: 41,27
|
||||
Owner: Neutral
|
||||
Actor60: t01
|
||||
Location: 13,7
|
||||
Owner: Neutral
|
||||
Actor61: t03
|
||||
Location: 18,10
|
||||
Owner: Neutral
|
||||
Actor62: t03
|
||||
Location: 20,14
|
||||
Owner: Neutral
|
||||
Actor63: tc04
|
||||
Location: 12,9
|
||||
Owner: Neutral
|
||||
Actor64: tc01
|
||||
Location: 15,14
|
||||
Owner: Neutral
|
||||
Actor65: tc02
|
||||
Location: 20,11
|
||||
Owner: Neutral
|
||||
Actor66: t05
|
||||
Location: 12,14
|
||||
Owner: Neutral
|
||||
Actor67: tc01
|
||||
Location: 16,8
|
||||
Owner: Neutral
|
||||
Actor68: t07
|
||||
Location: 18,8
|
||||
Owner: Neutral
|
||||
Actor69: t07
|
||||
Location: 17,12
|
||||
Owner: Neutral
|
||||
Actor70: t07
|
||||
Location: 22,10
|
||||
Owner: Neutral
|
||||
Actor71: t07
|
||||
Location: 29,11
|
||||
Owner: Neutral
|
||||
Actor72: t08
|
||||
Location: 33,14
|
||||
Owner: Neutral
|
||||
Actor73: t02
|
||||
Location: 27,17
|
||||
Owner: Neutral
|
||||
Actor74: t02
|
||||
Location: 47,7
|
||||
Owner: Neutral
|
||||
Actor75: t01
|
||||
Location: 44,6
|
||||
Owner: Neutral
|
||||
Actor76: t01
|
||||
Location: 40,10
|
||||
Owner: Neutral
|
||||
Actor77: t03
|
||||
Location: 37,8
|
||||
Owner: Neutral
|
||||
Actor78: t05
|
||||
Location: 46,12
|
||||
Owner: Neutral
|
||||
Actor79: tc01
|
||||
Location: 33,20
|
||||
Owner: Neutral
|
||||
Actor80: tc01
|
||||
Location: 50,21
|
||||
Owner: Neutral
|
||||
Actor81: tc01
|
||||
Location: 28,16
|
||||
Owner: Neutral
|
||||
Actor82: tc01
|
||||
Location: 48,14
|
||||
Owner: Neutral
|
||||
Actor83: tc01
|
||||
Location: 42,10
|
||||
Owner: Neutral
|
||||
Actor84: tc02
|
||||
Location: 33,18
|
||||
Owner: Neutral
|
||||
Actor85: tc02
|
||||
Location: 39,13
|
||||
Owner: Neutral
|
||||
Actor86: tc02
|
||||
Location: 36,5
|
||||
Owner: Neutral
|
||||
Actor87: tc02
|
||||
Location: 50,9
|
||||
Owner: Neutral
|
||||
Actor88: tc02
|
||||
Location: 52,16
|
||||
Owner: Neutral
|
||||
Actor89: tc04
|
||||
Location: 38,18
|
||||
Owner: Neutral
|
||||
Actor90: tc04
|
||||
Location: 31,12
|
||||
Owner: Neutral
|
||||
Actor91: tc04
|
||||
Location: 45,9
|
||||
Owner: Neutral
|
||||
Actor92: tc04
|
||||
Location: 43,16
|
||||
Owner: Neutral
|
||||
Actor93: v01
|
||||
Location: 16,10
|
||||
Owner: Civilian
|
||||
Actor94: v02
|
||||
Location: 21,12
|
||||
Owner: Civilian
|
||||
Actor95: v03
|
||||
Location: 13,8
|
||||
Owner: Civilian
|
||||
Actor96: v04
|
||||
Location: 19,10
|
||||
Owner: Civilian
|
||||
Actor97: v05
|
||||
Location: 12,14
|
||||
Owner: Civilian
|
||||
Actor98: v06
|
||||
Location: 21,15
|
||||
Owner: Civilian
|
||||
Actor117: v06
|
||||
Owner: Neutral # TREX can't attack it
|
||||
Location: 21,8
|
||||
Actor100: v07
|
||||
Location: 12,12
|
||||
Owner: Civilian
|
||||
Actor101: v07
|
||||
Location: 17,14
|
||||
Owner: Civilian
|
||||
Vil04: c4
|
||||
Location: 16,14
|
||||
Owner: Civilian
|
||||
SubCell: 2
|
||||
Vil03: c3
|
||||
Location: 15,11
|
||||
Owner: Civilian
|
||||
SubCell: 1
|
||||
Vil01: c2
|
||||
Location: 14,12
|
||||
Owner: Civilian
|
||||
SubCell: 4
|
||||
Vil02: c1
|
||||
Location: 18,13
|
||||
Owner: Civilian
|
||||
SubCell: 2
|
||||
WP4: waypoint
|
||||
Location: 13,13
|
||||
Owner: Neutral
|
||||
WP3: waypoint
|
||||
Location: 17,12
|
||||
Owner: Neutral
|
||||
WP2: waypoint
|
||||
Location: 22,14
|
||||
Owner: Neutral
|
||||
WP1: waypoint
|
||||
Location: 42,29
|
||||
Owner: Neutral
|
||||
WP0: waypoint
|
||||
Location: 52,29
|
||||
Owner: Neutral
|
||||
BeachReinforceA: waypoint
|
||||
Location: 17,52
|
||||
Owner: Neutral
|
||||
BeachReinforceB: waypoint
|
||||
Location: 15,52
|
||||
Owner: Neutral
|
||||
SeaEntryB: waypoint
|
||||
Location: 15,56
|
||||
Owner: Neutral
|
||||
SeaEntryA: waypoint
|
||||
Location: 17,56
|
||||
Owner: Neutral
|
||||
DinoTrex: trex
|
||||
Location: 52,12
|
||||
Owner: Dinosaur
|
||||
DinoSteg: steg
|
||||
Location: 49,22
|
||||
Owner: Dinosaur
|
||||
DinoTric: tric
|
||||
Location: 53,29
|
||||
Owner: Dinosaur
|
||||
CameraStart: waypoint
|
||||
Location: 16,50
|
||||
Owner: Neutral
|
||||
|
||||
Smudges:
|
||||
|
||||
Rules:
|
||||
Player:
|
||||
-ConquestVictoryConditions:
|
||||
MissionObjectives:
|
||||
EarlyGameOver: true
|
||||
EnemyWatcher:
|
||||
World:
|
||||
-CrateSpawner:
|
||||
-SpawnMPUnits:
|
||||
-MPStartLocations:
|
||||
LuaScript:
|
||||
Scripts: scj01ea.lua
|
||||
ObjectivesPanel:
|
||||
PanelName: MISSION_OBJECTIVES
|
||||
^Vehicle:
|
||||
Tooltip:
|
||||
GenericVisibility: Enemy
|
||||
ShowOwnerRow: false
|
||||
^Tank:
|
||||
Tooltip:
|
||||
GenericVisibility: Enemy
|
||||
ShowOwnerRow: false
|
||||
^Helicopter:
|
||||
Tooltip:
|
||||
GenericVisibility: Enemy
|
||||
ShowOwnerRow: false
|
||||
^Infantry:
|
||||
Tooltip:
|
||||
GenericVisibility: Enemy
|
||||
ShowOwnerRow: false
|
||||
^Plane:
|
||||
Tooltip:
|
||||
GenericVisibility: Enemy
|
||||
ShowOwnerRow: false
|
||||
^Ship:
|
||||
Tooltip:
|
||||
GenericVisibility: Enemy
|
||||
ShowOwnerRow: false
|
||||
^Building:
|
||||
Tooltip:
|
||||
GenericVisibility: Enemy
|
||||
ShowOwnerRow: false
|
||||
^Wall:
|
||||
Tooltip:
|
||||
ShowOwnerRow: false
|
||||
^Husk:
|
||||
Tooltip:
|
||||
GenericVisibility: Enemy, Ally, Neutral
|
||||
GenericStancePrefix: false
|
||||
ShowOwnerRow: false
|
||||
^CivInfantry:
|
||||
-ActorLostNotification:
|
||||
^CivBuilding:
|
||||
AnnounceOnSeen:
|
||||
OLDLST:
|
||||
Inherits: LST
|
||||
-WithRoof:
|
||||
-Selectable:
|
||||
RejectsOrders:
|
||||
TREX:
|
||||
Health:
|
||||
HP: 750
|
||||
Mobile:
|
||||
Speed: 34
|
||||
AutoTarget:
|
||||
ScanRadius: 5
|
||||
TRIC:
|
||||
Health:
|
||||
HP: 700
|
||||
Mobile:
|
||||
Speed: 18
|
||||
AutoTarget:
|
||||
ScanRadius: 5
|
||||
STEG:
|
||||
Health:
|
||||
HP: 600
|
||||
Mobile:
|
||||
Speed: 32
|
||||
^DINO:
|
||||
Tooltip:
|
||||
ShowOwnerRow: false
|
||||
MustBeDestroyed:
|
||||
|
||||
Sequences:
|
||||
oldlst:
|
||||
idle: lst
|
||||
Start: 0
|
||||
Facings: 1
|
||||
ZOffset: -1024
|
||||
|
||||
VoxelSequences:
|
||||
|
||||
Weapons:
|
||||
Teeth:
|
||||
Range: 1c900
|
||||
Warhead@1Dam: SpreadDamage
|
||||
Versus:
|
||||
Wood: 35
|
||||
|
||||
Voices:
|
||||
|
||||
Notifications:
|
||||
|
||||
Translations:
|
||||
107
mods/cnc/maps/funpark01/scj01ea.lua
Normal file
107
mods/cnc/maps/funpark01/scj01ea.lua
Normal file
@@ -0,0 +1,107 @@
|
||||
RifleReinforcments = { "e1", "e1", "e1", "bike" }
|
||||
BazookaReinforcments = { "e3", "e3", "e3", "bike" }
|
||||
BikeReinforcments = { "bike" }
|
||||
|
||||
|
||||
ReinforceWithLandingCraft = function(units, transportStart, transportUnload, rallypoint)
|
||||
local transport = Actor.Create("oldlst", true, { Owner = nod, Facing = 0, Location = transportStart })
|
||||
local subcell = 0
|
||||
Utils.Do(units, function(a)
|
||||
transport.LoadPassenger(Actor.Create(a, false, { Owner = transport.Owner, Facing = transport.Facing, Location = transportUnload, SubCell = subcell }))
|
||||
subcell = subcell + 1
|
||||
end)
|
||||
|
||||
transport.ScriptedMove(transportUnload)
|
||||
|
||||
transport.CallFunc(function()
|
||||
Utils.Do(units, function()
|
||||
local a = transport.UnloadPassenger()
|
||||
a.IsInWorld = true
|
||||
a.MoveIntoWorld(transport.Location - CVec.New(0, 1))
|
||||
|
||||
if rallypoint ~= nil then
|
||||
a.Move(rallypoint)
|
||||
end
|
||||
end)
|
||||
end)
|
||||
|
||||
transport.Wait(5)
|
||||
transport.ScriptedMove(transportStart)
|
||||
transport.Destroy()
|
||||
|
||||
Media.PlaySpeechNotification(player, "Reinforce")
|
||||
end
|
||||
|
||||
initialSong = "j1"
|
||||
PlayMusic = function()
|
||||
Media.PlayMusic(initialSong, PlayMusic)
|
||||
initialSong = nil
|
||||
end
|
||||
|
||||
WorldLoaded = function()
|
||||
nod = Player.GetPlayer("Nod")
|
||||
dinosaur = Player.GetPlayer("Dinosaur")
|
||||
civilian = Player.GetPlayer("Civilian")
|
||||
|
||||
InvestigateObj = nod.AddPrimaryObjective("Investigate the nearby village for reports of \nstrange activity")
|
||||
|
||||
Trigger.OnObjectiveAdded(nod, function(p, id)
|
||||
Media.DisplayMessage(p.GetObjectiveDescription(id), "New " .. string.lower(p.GetObjectiveType(id)) .. " objective")
|
||||
end)
|
||||
|
||||
Trigger.OnObjectiveCompleted(nod, function(p, id)
|
||||
Media.DisplayMessage(p.GetObjectiveDescription(id), "Objective completed")
|
||||
end)
|
||||
|
||||
Trigger.OnObjectiveFailed(nod, function(p, id)
|
||||
Media.DisplayMessage(p.GetObjectiveDescription(id), "Objective failed")
|
||||
end)
|
||||
|
||||
Trigger.OnPlayerWon(nod, function()
|
||||
Media.PlaySpeechNotification(nod, "Win")
|
||||
end)
|
||||
|
||||
Trigger.OnPlayerLost(nod, function()
|
||||
Media.PlaySpeechNotification(nod, "Lose")
|
||||
end)
|
||||
|
||||
ReachVillageObj = nod.AddPrimaryObjective("Reach the village.")
|
||||
|
||||
Trigger.OnPlayerDiscovered(civilian, function(_, discoverer)
|
||||
if discoverer == nod and not nod.IsObjectiveCompleted(ReachVillageObj) then
|
||||
if not dinosaur.HasNoRequiredUnits() then
|
||||
KillDinos = nod.AddPrimaryObjective("Kill all creatures in the area.")
|
||||
end
|
||||
|
||||
nod.MarkCompletedObjective(ReachVillageObj)
|
||||
end
|
||||
end)
|
||||
|
||||
DinoTric.Patrol({WP0.Location, WP1.Location}, true, 3)
|
||||
DinoTrex.Patrol({WP2.Location, WP3.Location}, false)
|
||||
Trigger.OnIdle(DinoTrex, DinoTrex.Hunt)
|
||||
|
||||
ReinforceWithLandingCraft(RifleReinforcments, SeaEntryA.Location, BeachReinforceA.Location, BeachReinforceA.Location)
|
||||
Trigger.AfterDelay(DateTime.Seconds(1), function() InitialUnitsArrived = true end)
|
||||
|
||||
Trigger.AfterDelay(DateTime.Seconds(15), function() ReinforceWithLandingCraft(BazookaReinforcments, SeaEntryB.Location, BeachReinforceB.Location, BeachReinforceB.Location) end)
|
||||
if Map.Difficulty == "Easy" then
|
||||
Trigger.AfterDelay(DateTime.Seconds(25), function() ReinforceWithLandingCraft(BikeReinforcments, SeaEntryA.Location, BeachReinforceA.Location, BeachReinforceA.Location) end)
|
||||
Trigger.AfterDelay(DateTime.Seconds(30), function() ReinforceWithLandingCraft(BikeReinforcments, SeaEntryB.Location, BeachReinforceB.Location, BeachReinforceB.Location) end)
|
||||
end
|
||||
|
||||
Camera.Position = CameraStart.CenterPosition
|
||||
PlayMusic()
|
||||
end
|
||||
|
||||
Tick = function()
|
||||
if InitialUnitsArrived then
|
||||
if nod.HasNoRequiredUnits() then
|
||||
nod.MarkFailedObjective(InvestigateObj)
|
||||
end
|
||||
if dinosaur.HasNoRequiredUnits() then
|
||||
if KillDinos then nod.MarkCompletedObjective(KillDinos) end
|
||||
nod.MarkCompletedObjective(InvestigateObj)
|
||||
end
|
||||
end
|
||||
end
|
||||
@@ -17,3 +17,6 @@ Nod Campaign:
|
||||
./mods/cnc/maps/nod04a
|
||||
./mods/cnc/maps/nod04b
|
||||
./mods/cnc/maps/nod05
|
||||
|
||||
Funpark Campaign:
|
||||
./mods/cnc/maps/funpark01
|
||||
|
||||
Reference in New Issue
Block a user