Add funpark01

This commit is contained in:
abcdefg30
2015-05-03 13:36:33 +02:00
parent e338c63203
commit 96767bab5d
7 changed files with 644 additions and 0 deletions

View File

@@ -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

Binary file not shown.

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 27 KiB

View 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:

View 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

View File

@@ -17,3 +17,6 @@ Nod Campaign:
./mods/cnc/maps/nod04a
./mods/cnc/maps/nod04b
./mods/cnc/maps/nod05
Funpark Campaign:
./mods/cnc/maps/funpark01