From 2499302f1de416cc6d202bf8feb1adc48e7e4851 Mon Sep 17 00:00:00 2001 From: deuce <> Date: Sat, 23 Feb 2008 15:52:11 +0000 Subject: [PATCH] Fix up twint500 for new file layout. --- xtrn/tw2/input.js | 10 +++- xtrn/tw2/maint.js | 17 +++++++ xtrn/tw2/messages.js | 26 ++++++++++ xtrn/tw2/planets.js | 12 +++++ xtrn/tw2/players.js | 20 ++++++++ xtrn/tw2/ports.js | 22 ++++++++ xtrn/tw2/sectors.js | 13 +++++ xtrn/tw2/teams.js | 7 +++ xtrn/tw2/tw2.js | 2 - xtrn/tw2/twint500.js | 117 +++++++------------------------------------ 10 files changed, 143 insertions(+), 103 deletions(-) diff --git a/xtrn/tw2/input.js b/xtrn/tw2/input.js index c012f170b6..8640b731c1 100644 --- a/xtrn/tw2/input.js +++ b/xtrn/tw2/input.js @@ -7,8 +7,14 @@ function GetKeyEcho() return(ret); } -var lastmisc=system.node_list[bbs.node_num-1].misc; -var laststatus=system.node_list[bbs.node_num-1].status; +var lastmisc; +var laststatus; +try { + lastmisc=system.node_list[bbs.node_num-1].misc; + laststatus=system.node_list[bbs.node_num-1].status; +} +catch (e) {} + function InputFunc(values) { var str=''; diff --git a/xtrn/tw2/maint.js b/xtrn/tw2/maint.js index 1ed5c62311..e5af6b8526 100644 --- a/xtrn/tw2/maint.js +++ b/xtrn/tw2/maint.js @@ -381,3 +381,20 @@ function CabalAttack(cabal) sector.Put(); } +function InitializeCabal() +{ + var sector=sectors.Get(85); + + uifc.pop("Initializing the Cabal"); + sector_map[85].Fighters=3000; + sector_map[85].FightersOwner=-1; + for(i=1; i<=10; i++) { + var grp=cabals.New(); + if(i==1) { + grp.Size=3000; + grp.Sector=85; + grp.Goal=85; + } + grp.Put(); + } +} diff --git a/xtrn/tw2/messages.js b/xtrn/tw2/messages.js index 0101793219..ea5dc42b2b 100644 --- a/xtrn/tw2/messages.js +++ b/xtrn/tw2/messages.js @@ -54,6 +54,8 @@ var RadioMessageProperties = [ var twpmsg=new RecordFile(fname("twpmesg.dat"), PlayerMessageProperties); var twrmsg=new RecordFile(fname("twrmesg.dat"), RadioMessageProperties); +var twmsg=new File(fname("twmesg.dat")); +twmsg.open("a", true); function ReadPMsg() { @@ -166,3 +168,27 @@ function SendRadioMessage() RadioMessage(player.Record, p.Record, msg); return(true); } + +function ResetAllMessages() +{ + var i; + + uifc.pop("SysOp Messages"); + twmsg.close(); + twmsg.open("w"); + twmsg.writeln(system.timestr()+" TW 500 initialized"); + twmsg.close(); + + uifc.pop("Player Messages"); + for(i=0; i<100; i++) { + msg=twpmsg.New(); + msg.Put(); + } + + uifc.pop("Radio Messages"); + for(i=0; i<2; i++) { + msg=twrmsg.New(); + twrmsg.Read=true; + msg.Put(); + } +} diff --git a/xtrn/tw2/planets.js b/xtrn/tw2/planets.js index c434122015..47d9601d32 100644 --- a/xtrn/tw2/planets.js +++ b/xtrn/tw2/planets.js @@ -322,3 +322,15 @@ function PlanetTakeCommodity(planet, commodity, freeholds) player.Put(); return(freeholds); } + +function ResetAllPlanets() +{ + uifc.pop("Creating Planets"); + var i; + var planet=planets.New(); + planet.Put(); + for(i=0; i<Settings.MaxPlanets; i++) { + planet=planets.New(); + planet.Put(); + } +} diff --git a/xtrn/tw2/players.js b/xtrn/tw2/players.js index 338bf7ec39..92fca76209 100644 --- a/xtrn/tw2/players.js +++ b/xtrn/tw2/players.js @@ -717,3 +717,23 @@ function Dropfighters() } return(false); } + +function ResetAllPlayers() +{ + uifc.pop("Creating Players"); + var player=players.New(); + var loc=playerLocation.New(); + var i; + player.UserNumber=0; + player.Put(); + loc.Put(); + for(i=0; i<Settings.MaxPlayers; i++) { + player=players.New(); + player.UserNumber=0; + player.Sector=0; + player.Put(); + loc=playerLocation.New(); + loc.Sector=0; + loc.Put(); + } +} diff --git a/xtrn/tw2/ports.js b/xtrn/tw2/ports.js index 5cd3202afd..6d09a477cb 100644 --- a/xtrn/tw2/ports.js +++ b/xtrn/tw2/ports.js @@ -320,3 +320,25 @@ function Transact(type, price, vary, avail) return(0); } +function InitializePorts() +{ + uifc.pop("Placing Ports"); + port=ports.New(); + port.Put(); + + /* Place ports */ + for(i=0; i<ports_init.length; i++) { + port=ports.New(); + for(prop in ports_init[i]) + port[prop]=ports_init[i][prop]; + port.Production=[ports_init[i].OreProduction, ports_init[i].OrgProduction, ports_init[i].EquProduction]; + port.PriceVariance=[ports_init[i].OreDeduction,ports_init[i].OrgDeduction,ports_init[i].EquDeduction]; + + var sector=sectors.Get(ports_init[i].Position); + sector.Port=port.Record; + sector.Put(); + ports_init[i].LastUpdate=system.datestr(time()-15*86400); + + port.Put(); + } +} diff --git a/xtrn/tw2/sectors.js b/xtrn/tw2/sectors.js index fed81561fa..98819af269 100644 --- a/xtrn/tw2/sectors.js +++ b/xtrn/tw2/sectors.js @@ -296,3 +296,16 @@ function ShortestPath(start, end) return(ret); } +function InitializeSectors() +{ + uifc.pop("Writing Sectors"); + /* Write sectors.dat */ + sector=sectors.New(); + sector.Put(); + for(i=0; i<sector_map.length; i++) { + sector=sectors.New(); + for(prop in sector_map[i]) + sector[prop]=sector_map[i][prop]; + sector.Put(); + } +} diff --git a/xtrn/tw2/teams.js b/xtrn/tw2/teams.js index bede88fa82..1592b08121 100644 --- a/xtrn/tw2/teams.js +++ b/xtrn/tw2/teams.js @@ -273,3 +273,10 @@ function TeamTransfer(type) console.writeln(type+" Transfered!"); return(true); } + +function InitializeTeams() +{ + uifc.pop("Teams"); + var team=teams.New(); + team.Put(); +} diff --git a/xtrn/tw2/tw2.js b/xtrn/tw2/tw2.js index 2e0da8eff5..7d606a8d4c 100644 --- a/xtrn/tw2/tw2.js +++ b/xtrn/tw2/tw2.js @@ -43,10 +43,8 @@ load(fname("messages.js")); load(fname("computer.js")); load(fname("input.js")); -var twmsg=new File(fname("twmesg.dat")); var twopeng=new File(fname("twopeng.dat")); twopeng.open("a", true); -twmsg.open("a", true); var today=system.datestr(system.datestr()); diff --git a/xtrn/tw2/twint500.js b/xtrn/tw2/twint500.js index be01433488..34650e1288 100644 --- a/xtrn/tw2/twint500.js +++ b/xtrn/tw2/twint500.js @@ -73,8 +73,6 @@ ConfigureSettings(); if(uifc.list(WIN_MID|WIN_SAV, 0, 0, 0, 0, 0, "Reset Game?", ["No", "Yes"])!=1) exit(1); -load(fname("structs.js")); - file_remove(fname("sectors.dat")); file_remove(fname("ports.dat")); file_remove(fname("players.dat")); @@ -86,106 +84,27 @@ file_remove(fname("twrmesg.dat")); file_remove(fname("teams.dat")); file_remove(fname("twopeng.dat")); file_remove(fname("cabals.dat")); -var sectors=new RecordFile(fname("sectors.dat"), SectorProperties); -var ports=new RecordFile(fname("ports.dat"), PortProperties); -var players=new RecordFile(fname("players.dat"), PlayerProperties); -var playerLocation=new RecordFile(fname("player-loc.dat"), PlayerLocation); -var teams=new RecordFile(fname("teams.dat"), TeamProperties); -var planets=new RecordFile(fname("planets.dat"), PlanetProperties); -var twmsg=new File(fname("twmesg.dat")); -var twpmsg=new RecordFile(fname("twpmesg.dat"), PlayerMessageProperties); -var twrmsg=new RecordFile(fname("twrmesg.dat"), RadioMessageProperties); -var cabals=new RecordFile(fname("cabal.dat"), CabalProperties); -var i; - -uifc.pop("Creating Players"); -player=players.New(); -loc=playerLocation.New(); -player.UserNumber=0; -player.Put(); -loc.Put(); -for(i=0; i<Settings.MaxPlayers; i++) { - player=players.New(); - player.UserNumber=0; - player.Sector=0; - player.Put(); - loc=playerLocation.New(); - loc.Sector=0; - loc.Put(); -} - -uifc.pop("Creating Planets"); -planet=planets.New(); -planet.Put(); -for(i=0; i<Settings.MaxPlanets; i++) { - planet=planets.New(); - planet.Put(); -} - -uifc.pop("SysOp Messages"); -twmsg.open("w"); -twmsg.writeln(system.timestr()+" TW 500 initialized"); -twmsg.close(); - -uifc.pop("Player Messages"); -for(i=0; i<100; i++) { - msg=twpmsg.New(); - msg.Put(); -} -uifc.pop("Radio Messages"); -for(i=0; i<2; i++) { - msg=twrmsg.New(); - twrmsg.Read=true; - msg.Put(); -} - -uifc.pop("Teams"); -var team=teams.New(); -team.Put(); +load(fname("ports.js")); +load(fname("planets.js")); +load(fname("teams.js")); +load(fname("sectors.js")); +load(fname("maint.js")); +load(fname("players.js")); +load(fname("messages.js")); +load(fname("computer.js")); +load(fname("input.js")); -uifc.pop("Placing Ports"); -/* Place ports */ -for(i=0; i<ports_init.length; i++) { - sector_map[ports_init[i].Position-1].Port=i+1; - ports_init[i].LastUpdate=system.datestr(time()-15*86400); -} - -uifc.pop("Initializing the Cabal"); -sector_map[85-1].Fighters=3000; -sector_map[85-1].FightersOwner="The Cabal"; -for(i=1; i<=10; i++) { - var grp=cabals.New(); - if(i==1) { - grp.Size=3000; - grp.Sector=85; - grp.Goal=85; - } - grp.Put(); -} +var twmsg=new File(fname("twmesg.dat")); +var i; -uifc.pop("Writing Sectors"); -/* Write sectors.dat */ -sector=sectors.New(); -sector.Put(); -for(i=0; i<sector_map.length; i++) { - sector=sectors.New(); - for(prop in sector_map[i]) - sector[prop]=sector_map[i][prop]; - sector.Put(); -} +ResetAllPlayers(); +ResetAllPlanets(); +ResetAllMessages(); +InitializeTeams(); +InitializeSectors(); +InitializePorts(); +InitializeCabal(); -uifc.pop("Writing Ports"); -/* Write ports.ini */ -port=ports.New(); -port.Put(); -for(i=0; i<ports_init.length; i++) { - port=ports.New(); - for(prop in ports_init[i]) - port[prop]=ports_init[i][prop]; - port.Production=[ports_init[i].OreProduction, ports_init[i].OrgProduction, ports_init[i].EquProduction]; - port.PriceVariance=[ports_init[i].OreDeduction,ports_init[i].OrgDeduction,ports_init[i].EquDeduction]; - port.Put(); -} uifc.pop(); uifc.bail(); -- GitLab