diff --git a/examples/README.md b/examples/README.md index 94728b8..88902ea 100644 --- a/examples/README.md +++ b/examples/README.md @@ -1,5 +1,7 @@ # Script examples +See [Examples](https://noxworld-dev.github.io/opennox-docs/noxscript/examples/index.html) in documentation. + ## Campaign -- [con01a](./con01a) \ No newline at end of file +Moved [here](https://github.com/noxworld-dev/legacy-maps). \ No newline at end of file diff --git a/examples/con01a/README.md b/examples/con01a/README.md deleted file mode 100644 index e7e363e..0000000 --- a/examples/con01a/README.md +++ /dev/null @@ -1,18 +0,0 @@ -# Conjurer campaign map `con01a` script - -This script was produced by following the [NS3 migration guide](../../docs/ns3_to_go.md). - -Most of the code was produced by `noxtools ns decomp`. - -It was additionally refactored: -- Cleaned local variables and `goto`s. -- Variables were renamed to make sense. -- Functions and variables grouped to separate files. -- Common function bodies moved to helper functions. -- Code related to shaking was moved to its own struct/class. - -This script is a proof-of-concept. It was not yet tested and may work incorrectly. - -Specifically, integration between map triggers was not done yet. - -However, it is still useful as an example, because all the logic still will work and makes sense. \ No newline at end of file diff --git a/examples/con01a/barells.go b/examples/con01a/barells.go deleted file mode 100644 index a5fd042..0000000 --- a/examples/con01a/barells.go +++ /dev/null @@ -1,46 +0,0 @@ -package con01a - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - barrelAudioWP ns.WaypointID -) - -func initBarrels() { - barrelAudioWP = ns.Waypoint("BarrelAudioOrigin") -} - -func BarrelCaveIn() { - x := ns.GetObjectX(ns.GetHost()) - y := ns.GetObjectY(ns.GetHost()) - g := ns.ObjectGroup("BarrelExplosionTriggers") - ns.Effect(ns.JIGGLE, x, y, 10, 0) - ns.AudioEvent(ns.WallDestroyed, barrelAudioWP) - ns.AudioEvent(ns.FireballExplode, barrelAudioWP) - ns.ObjectGroupOff(g) -} - -func BarrelsExplode() { - u := ns.Object("PowderBarrel") - ns.Damage(u, 0, 30, 1) -} - -func EndExplodingBarrelSetPiece() { - ns.WideScreen(false) - ns.Frozen(ns.GetHost(), false) -} - -var barrelsStarted = false - -func BeginExplodingBarrelSetPiece() { - if barrelsStarted || !ns.IsCaller(ns.GetHost()) { - return - } - x := ns.GetObjectX(ns.GetHost()) - y := ns.GetObjectY(ns.GetHost()) - ns.Effect(ns.JIGGLE, x, y, 10, 0) - ns.AudioEvent(ns.EarthRumbleMajor, barrelAudioWP) - barrelsStarted = true - ns.Frozen(ns.GetHost(), true) - ns.WideScreen(true) -} diff --git a/examples/con01a/bear.go b/examples/con01a/bear.go deleted file mode 100644 index 284767b..0000000 --- a/examples/con01a/bear.go +++ /dev/null @@ -1,57 +0,0 @@ -package con01a - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var caveBoulder ns.ObjectID - -func getBear() ns.ObjectID { - return ns.Object("BigSpider") -} - -func KillBear() { - ns.AudioEvent(ns.BearHurt, tunnelAudioWP) - ns.Damage(getBear(), 0, 200, 0) -} - -func DropCrushingRock() { - caveBoulder = ns.CreateObject("CaveBoulders", ns.Waypoint("SpiderWP")) - ns.Raise(caveBoulder, 100) -} - -func BearDie() { - ns.AudioEvent(ns.FistHit, tunnelAudioWP) - ns.Effect(ns.JIGGLE, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 10, 0) -} - -func SquashSpider() { - x := ns.GetObjectX(caveBoulder) - y := ns.GetObjectY(caveBoulder) - ns.MoveObject(caveBoulder, x, y+15) - ns.WallGroupOpen(ns.WallGroup("BearCageWalls")) - ns.Frozen(ns.GetHost(), false) - ns.WideScreen(false) - ns.NoWallSound(false) -} - -func ReleaseStun() { - x := ns.GetObjectX(ns.GetHost()) - y := ns.GetObjectY(ns.GetHost()) - _ = ns.Waypoint("BoulderWP2") // unused - _ = ns.Waypoint("BoulderWP3") // unused - ns.AudioEvent(ns.FistHit, tunnelAudioWP) - ns.Effect(ns.JIGGLE, x, y, 10, 0) -} - -func GoBigSpider() { - u := getBear() - wp := ns.Waypoint("SpiderWP") - ns.AudioEvent(ns.BearRecognize, tunnelAudioWP) - ns.SetCallback(u, 11, func() { - ns.SetCallback(u, 11, func() {}) - ns.LookAtObject(u, ns.Object("BearFaceLocation")) - ns.HitLocation(u, ns.GetObjectX(u)-1, ns.GetObjectY(u)+1) - ns.AudioEvent(ns.BearAttackInit, tunnelAudioWP) - ns.WallGroupClose(ns.WallGroup("BearCageWalls")) - }) - ns.Move(u, wp) -} diff --git a/examples/con01a/dialogs.go b/examples/con01a/dialogs.go deleted file mode 100644 index da70a89..0000000 --- a/examples/con01a/dialogs.go +++ /dev/null @@ -1,76 +0,0 @@ -package con01a - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - gvar8 int - gvar9 = 1 - captainState int - captain ns.ObjectID - gatekeep2 ns.ObjectID - gatekeep3 ns.ObjectID -) - -func InitializeDialogs() { - initDialogs() -} - -func initDialogs() { - captain = ns.Object("Airship_Captain") - gatekeep2 = ns.Object("Ryan") - gatekeep3 = ns.Object("Ed") - - ns.StoryPic(captain, "AirshipCaptainPic") - ns.StoryPic(gatekeep2, "IxGuard2Pic") - ns.StoryPic(gatekeep3, "IxGuard1Pic") - ns.SetDialog(gatekeep2, ns.NORMAL, Gatekeeper2DialogStart, Gatekeeper2DialogEnd) - ns.SetDialog(gatekeep3, ns.NORMAL, Gatekeeper3DialogStart, Gatekeeper3DialogEnd) -} - -func OwnObjects() { - ns.SetOwner(ns.GetHost(), captain) - ns.SetOwner(ns.GetHost(), gatekeep2) - ns.SetOwner(ns.GetHost(), gatekeep3) -} - -func StartCaptainConversation() { - ns.SetDialog(captain, ns.NORMAL, CaptainDialogStart, CaptainDialogEnd) - ns.StartDialog(captain, ns.GetHost()) -} - -func CaptainDialogStart() { - ns.LookAtObject(captain, ns.GetHost()) - switch captainState { - case 0: - ns.TellStory(ns.SwordsmanHurt, "Con01a:CaptainGreet") - case 1: - ns.TellStory(ns.SwordsmanHurt, "Con01a:CaptainProd") - } -} - -func CaptainDialogEnd() { - switch captainState { - case 0: - ns.JournalEntry(ns.GetHost(), "LocateAldwyn", 2) - ns.PrintToAll("Con01a:NewJournalEntry") - captainState = 1 - case 1: - // nop - } -} - -func Gatekeeper2DialogStart() { - ns.LookAtObject(ns.GetTrigger(), ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "Con02a:Gatekeeper2Greet") -} - -func Gatekeeper2DialogEnd() { -} - -func Gatekeeper3DialogStart() { - ns.LookAtObject(ns.GetTrigger(), ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "Con02a:Gatekeeper3Greet") -} - -func Gatekeeper3DialogEnd() { -} diff --git a/examples/con01a/dummy_test.go b/examples/con01a/dummy_test.go deleted file mode 100644 index 35f6842..0000000 --- a/examples/con01a/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package con01a - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/con01a/elevators.go b/examples/con01a/elevators.go deleted file mode 100644 index f05748c..0000000 --- a/examples/con01a/elevators.go +++ /dev/null @@ -1,73 +0,0 @@ -package con01a - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - entranceLiftAudioWP1 ns.WaypointID - entranceLiftAudioWP2 ns.WaypointID - entranceLiftAndGears ns.ObjectGroupID - - exitLiftAudioWP1 ns.WaypointID - exitLiftAudioWP2 ns.WaypointID - exitLiftAudioWP3 ns.WaypointID - exitLiftAndGears ns.ObjectGroupID - - secretElevGroup ns.ObjectGroupID - secretElevWalls ns.WallGroupID - secretElevAudioWP ns.WaypointID -) - -func initElevators() { - entranceLiftAudioWP1 = ns.Waypoint("EntranceLiftAudioOrigin1") - entranceLiftAudioWP2 = ns.Waypoint("EntranceLiftAudioOrigin2") - entranceLiftAndGears = ns.ObjectGroup("EntranceLiftAndGears") - - exitLiftAudioWP1 = ns.Waypoint("ExitLiftAudioOrigin1") - exitLiftAudioWP2 = ns.Waypoint("ExitLiftAudioOrigin2") - exitLiftAudioWP3 = ns.Waypoint("ExitLiftAudioOrigin3") - exitLiftAndGears = ns.ObjectGroup("ExitLiftAndGears") - - secretElevGroup = ns.ObjectGroup("SecretElevatorGroup") - secretElevWalls = ns.WallGroup("SecretElevatorWalls") - secretElevAudioWP = ns.Waypoint("SecretElevatorAudioOrigin") -} - -func PlayEntranceLiftSounds() { - ns.AudioEvent(ns.ChangeSpellbar, entranceLiftAudioWP1) - ns.AudioEvent(ns.ChangeSpellbar, entranceLiftAudioWP2) -} - -func PlayExitLiftSounds() { - ns.AudioEvent(ns.ChangeSpellbar, exitLiftAudioWP1) - ns.AudioEvent(ns.ChangeSpellbar, exitLiftAudioWP2) - ns.AudioEvent(ns.ChangeSpellbar, exitLiftAudioWP3) -} - -func ActivateEntranceElevator() { - ns.GiveXp(ns.GetHost(), 100) - ns.ObjectOff(ns.Object("EntranceSwitch")) - ns.AudioEvent(ns.CreatureCageAppears, entranceLiftAudioWP1) - ns.AudioEvent(ns.ChangeSpellbar, entranceLiftAudioWP1) - ns.ObjectGroupOn(entranceLiftAndGears) -} - -func ActivateExitElevator() { - ns.GiveXp(ns.GetHost(), 100) - ns.ObjectOff(ns.Object("ExitSwitch")) - ns.AudioEvent(ns.CreatureCageAppears, exitLiftAudioWP1) - ns.AudioEvent(ns.ChangeSpellbar, exitLiftAudioWP1) - ns.ObjectGroupOn(exitLiftAndGears) - MineShake4() -} - -func ActivateSecretElevator() { - ns.ObjectOff(ns.GetTrigger()) - ns.AudioEvent(ns.CreatureCageAppears, secretElevAudioWP) - ns.AudioEvent(ns.ChangeSpellbar, secretElevAudioWP) - ns.WallGroupOpen(secretElevWalls) - ns.ObjectGroupOn(secretElevGroup) -} - -func DisableEntranceLift() { - ns.ObjectGroupOff(entranceLiftAndGears) -} diff --git a/examples/con01a/exit.go b/examples/con01a/exit.go deleted file mode 100644 index aecd6e1..0000000 --- a/examples/con01a/exit.go +++ /dev/null @@ -1,72 +0,0 @@ -package con01a - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - exitAudioWP ns.WaypointID -) - -func initExit() { - exitAudioWP = ns.Waypoint("ExitAudioOrigin") -} - -func AwardExitExperience() { - ns.MoveWaypoint(exitAudioWP, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.FlagDrop, exitAudioWP) - ns.GiveXp(ns.GetHost(), 200) -} - -func CaveExitCollapseSEG2() { - x := ns.GetObjectX(ns.GetHost()) - y := ns.GetObjectY(ns.GetHost()) - _ = ns.Waypoint("ExitBoulderWP") // unused - ns.NoWallSound(false) - ns.Effect(ns.JIGGLE, x, y, 10, 0) - ns.AudioEvent(ns.FistHit, exitAudioWP) -} - -var caveExitCollapsed = false - -func CaveExitCollapse() { - wg := ns.WallGroup("CaveExitWalls") - trig := ns.ObjectGroup("CaveExitTriggers") - x := ns.GetObjectX(ns.GetHost()) - y := ns.GetObjectY(ns.GetHost()) - ns.ObjectGroupOff(trig) - caveExitCollapsed = true - ns.Effect(ns.JIGGLE, x, y, 10, 0) - ns.AudioEvent(ns.EarthRumbleMajor, exitAudioWP) - ns.NoWallSound(true) - ns.WallGroupClose(wg) - shake.Enabled = false -} - -func EnterExitPolygon() { - if caveExitCollapsed || !ns.IsCaller(ns.GetHost()) { - return - } - CaveExitCollapse() - PlayOutdoorMusic() -} - -var collapseBegan = false - -func BeginCollapseSetPiece() { - if collapseBegan || !ns.IsCaller(ns.GetHost()) { - return - } - PlayUndergroundMusic() - collapseBegan = true - ns.WideScreen(true) - ns.Frozen(ns.GetHost(), true) - ns.Effect(ns.JIGGLE, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 10, 0) - ns.AudioEvent(ns.EarthRumbleMajor, tunnelAudioWP) -} - -func PlayOutdoorMusic() { - ns.Music(21, 100) -} - -func PlayUndergroundMusic() { - ns.Music(18, 100) -} diff --git a/examples/con01a/map.go b/examples/con01a/map.go deleted file mode 100644 index cdf7f24..0000000 --- a/examples/con01a/map.go +++ /dev/null @@ -1,54 +0,0 @@ -package con01a - -import ( - "github.com/noxworld-dev/noxscript/ns/v3" -) - -var ( - playerStart ns.ObjectID - mapSwitchTriggers ns.ObjectGroupID -) - -func MapInitialize() { - playerStart = ns.Object("PlayerStart") - mapSwitchTriggers = ns.ObjectGroup("MapSwitchTriggers") - - tunnelEntranceTriggers = ns.ObjectGroup("TunnelEntranceTriggers") - tunnelTriggers = ns.ObjectGroup("TunnelTriggers") - npcsGroup = ns.ObjectGroup("NPCs") - theStaff = ns.Object("Staff") - tunnelAudioWP = ns.Waypoint("TunnelAudioOrigin") - - initExit() - initSecrets() - initElevators() - initBarrels() - initWaypoints() - initShaker() - initDialogs() - ns.StartupScreen(1) -} - -func MapEntry() { - ns.ObjectGroupOn(mapSwitchTriggers) -} - -var mapDidSwitch = false - -func MapSwitch() { - if mapDidSwitch || !ns.IsCaller(ns.GetHost()) { - return - } - ns.Frozen(ns.GetHost(), true) - mapDidSwitch = true - ns.ObjectGroupOff(mapSwitchTriggers) - ns.Blind() -} - -func EnableTeleporter() { - ns.ObjectOn(playerStart) -} - -func PlayerDeath() { - ns.DeathScreen(1) -} diff --git a/examples/con01a/other.go b/examples/con01a/other.go deleted file mode 100644 index 65ed7ad..0000000 --- a/examples/con01a/other.go +++ /dev/null @@ -1,99 +0,0 @@ -package con01a - -import ( - "github.com/noxworld-dev/noxscript/ns/v3" -) - -var ( - theStaff ns.ObjectID - tunnelEntranceTriggers ns.ObjectGroupID - tunnelTriggers ns.ObjectGroupID - npcsGroup ns.ObjectGroupID - tunnelAudioWP ns.WaypointID -) - -func MovePlayerToExit() { - exit := ns.Waypoint("Exit") - x := ns.GetWaypointX(exit) - y := ns.GetWaypointY(exit) - ns.Frozen(ns.GetHost(), false) - ns.MoveObject(ns.GetHost(), x, y) -} - -func NoMonsters() { - if !ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) { - return - } - ns.GoBackHome(ns.GetCaller()) -} - -func TunnelCollapse() { - x := ns.GetObjectX(ns.GetHost()) - y := ns.GetObjectY(ns.GetHost()) - ns.Effect(ns.JIGGLE, x, y, 10, 0) - ns.AudioEvent(ns.GolemMove, tunnelAudioWP) -} - -func FallingRocksSEG1() { - _ = ns.GetObjectX(ns.GetHost()) - _ = ns.GetObjectY(ns.GetHost()) - ns.AudioEvent(ns.EarthRumbleMajor, tunnelAudioWP) -} - -func SetpieceShake1() { - x := ns.GetObjectX(ns.GetHost()) - y := ns.GetObjectY(ns.GetHost()) - ns.Effect(ns.JIGGLE, x, y, 10, 0) - ns.AudioEvent(ns.EarthRumbleMinor, tunnelAudioWP) -} - -func FallingRocksSEG5() { - x := ns.GetObjectX(ns.GetHost()) - y := ns.GetObjectY(ns.GetHost()) - ns.Effect(ns.JIGGLE, x, y, 10, 0) - treasure := ns.Object("Treasure") - walls := ns.WallGroup("TunnelWalls") - dwalls1 := ns.WallGroup("TunnelDestructableWalls2") - dwalls2 := ns.WallGroup("TunnelDestructableWalls3") - _ = ns.Waypoint("BoulderWP1") // unused - _ = ns.Waypoint("BoulderWP4") // unused - _ = ns.Waypoint("BoulderWP5") // unused - ns.WallGroupOpen(dwalls1) - ns.WallGroupBreak(dwalls2) - ns.NoWallSound(false) - ns.AudioEvent(ns.EarthRumbleMajor, tunnelAudioWP) - ns.NoWallSound(true) - ns.WallGroupClose(walls) - ns.Delete(treasure) -} - -func FallingRocksSEG4() { - x := ns.GetObjectX(ns.GetHost()) - y := ns.GetObjectY(ns.GetHost()) - g := ns.WallGroup("TunnelDestructableWalls1") - ns.Effect(ns.JIGGLE, x, y, 15, 0) - ns.NoWallSound(true) - ns.WallGroupOpen(g) - ns.AudioEvent(ns.FistHit, tunnelAudioWP) -} - -func FallingRocksSEG3() { - x := ns.GetObjectX(ns.GetHost()) - y := ns.GetObjectY(ns.GetHost()) - ns.Effect(ns.JIGGLE, x, y, 10, 0) - ns.AudioEvent(ns.EarthRumbleMajor, tunnelAudioWP) -} - -func FallingRocksSEG2() { - x := ns.GetObjectX(ns.GetHost()) - y := ns.GetObjectY(ns.GetHost()) - ns.Effect(ns.JIGGLE, x, y, 15, 0) - ns.AudioEvent(ns.GolemMove, tunnelAudioWP) -} - -func LittleSpiderRecognize() { - u := ns.Object("LittleSpider") - ns.CreatureIdle(u) - ns.AggressionLevel(u, 0.83) - ns.SetCallback(u, 3, func() {}) -} diff --git a/examples/con01a/secrets.go b/examples/con01a/secrets.go deleted file mode 100644 index 65007c1..0000000 --- a/examples/con01a/secrets.go +++ /dev/null @@ -1,36 +0,0 @@ -package con01a - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var secretAudioWP ns.WaypointID - -func initSecrets() { - secretAudioWP = ns.Waypoint("SecretAudioWP") -} - -func secretEffect() { - ns.MoveWaypoint(secretAudioWP, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretFound, secretAudioWP) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 50) -} - -func Secret01Found() { - ns.ObjectGroupOff(ns.ObjectGroup("Secret01Triggers")) - secretEffect() -} - -func Secret02Found() { - ns.ObjectGroupOff(ns.ObjectGroup("Secret02Triggers")) - secretEffect() -} - -func SecretElevatorFound() { - ns.ObjectOff(ns.GetTrigger()) - secretEffect() -} - -func Secret03Found() { - ns.ObjectOff(ns.GetTrigger()) - secretEffect() -} diff --git a/examples/con01a/shake.go b/examples/con01a/shake.go deleted file mode 100644 index f3bae6b..0000000 --- a/examples/con01a/shake.go +++ /dev/null @@ -1,218 +0,0 @@ -package con01a - -import ( - "fmt" - - "github.com/noxworld-dev/noxscript/ns/v3" -) - -const ( - rocksZMin = 75 - rocksZMax = 150 - rocksSpreadMin = 30 - rocksSpreadMax = 70 -) - -var ( - rocks [50]ns.ObjectID - rockInd int - shake *Shaker - entranceShakeTriggers ns.ObjectGroupID - entranceExitTriggers ns.ObjectGroupID -) - -func initShaker() { - shake = NewShaker() - entranceShakeTriggers = ns.ObjectGroup("EntranceShakeTriggers") - entranceExitTriggers = ns.ObjectGroup("EntranceExitTriggers") -} - -func NewShaker() *Shaker { - return &Shaker{ - NumMax: 5, - NumMin: 2, - RepeatMax: 600, - Var55: 5, - JiggleForce: 7.0, - AudioWP: ns.Waypoint("QuakeAudioOrigin"), - CreationWP: ns.Waypoint("CreationWP"), - Enabled: true, - } -} - -type Shaker struct { - AudioWP ns.WaypointID - CreationWP ns.WaypointID - NumMax int - NumMin int - RepeatMax int - Var55 int - JiggleForce float32 - Enabled bool - Debug bool -} - -func (s *Shaker) Start() { - shake.Enabled = true - shake.RepeatMax = 600 - Quake() -} - -func (s *Shaker) Quake() { - if s.Debug { - ns.PrintToAll("Quake initiated") - } - if !s.Enabled { - return - } - x := ns.GetObjectX(ns.GetHost()) - y := ns.GetObjectY(ns.GetHost()) - n := ns.Random(s.NumMin, s.NumMax) - ns.MoveWaypoint(s.AudioWP, x, y) - ns.AudioEvent(ns.EarthRumbleMinor, s.AudioWP) - ns.AudioEvent(ns.BoulderMove, s.AudioWP) - ns.Effect(ns.JIGGLE, x, y, s.JiggleForce, 0) - - for i := 0; i <= n; i++ { - if s.Debug { - ns.PrintToAll("''For'' loop") - } - dx := ns.RandomFloat(rocksSpreadMin, rocksSpreadMax) - dy := ns.RandomFloat(rocksSpreadMin, rocksSpreadMax) - dir := ns.Random(0, 3) - if s.Debug { - ns.PrintToAll("Attempting switch") - } - switch dir { - case 0: - ns.MoveWaypoint(s.CreationWP, x+dx, y+dy) - case 1: - ns.MoveWaypoint(s.CreationWP, x+dx, y-dy) - case 2: - ns.MoveWaypoint(s.CreationWP, x-dx, y+dy) - case 3: - ns.MoveWaypoint(s.CreationWP, x-dx, y-dy) - } - ns.Delete(rocks[rockInd]) - rock := ns.CreateObject("CaveRocksTiny", s.CreationWP) - rocks[rockInd] = rock - rockInd++ - if rockInd >= len(rocks) { - rockInd = 0 - } - z := ns.RandomFloat(rocksZMin, rocksZMax) - ns.Raise(rock, z) - } - dt := ns.Random(5, s.RepeatMax) - ns.FrameTimer(dt, s.Quake) -} - -func DebugOn() { - shake.Debug = true -} - -func DebugOff() { - shake.Debug = false -} - -func Quake() { - shake.Quake() -} - -func EntranceShake() { - ns.ObjectGroupOff(entranceShakeTriggers) - ns.ObjectGroupOn(entranceExitTriggers) - shake.Start() -} - -func StopShakes() { - ns.ObjectGroupOff(entranceExitTriggers) - shake.Enabled = false - ns.ObjectGroupOn(entranceShakeTriggers) -} - -func mineShakeSeg(i int) { - x := ns.GetObjectX(ns.GetHost()) - y := ns.GetObjectY(ns.GetHost()) - wp := ns.Waypoint(fmt.Sprintf("MineShake%dAudioOrigin", i)) - ns.Effect(ns.JIGGLE, x, y, 5, 0) - ns.AudioEvent(ns.EarthRumbleMinor, wp) -} - -func MineShake1SEG2() { - mineShakeSeg(1) - shake.RepeatMax = 500 - shake.Var55 = 200 -} - -func MineShake2SEG2() { - mineShakeSeg(2) - shake.JiggleForce = 8 - shake.RepeatMax = 120 -} - -func MineShake3SEG2() { - mineShakeSeg(3) -} - -func MineShake4SEG2() { - mineShakeSeg(4) - shake.JiggleForce = 8 - shake.RepeatMax = 120 -} - -func MineShake5SEG2() { - mineShakeSeg(5) - shake.JiggleForce = 9 - shake.NumMax = 2 - shake.NumMin = 1 - shake.RepeatMax = 20 -} - -func mineShake(i int) { - wp := ns.Waypoint(fmt.Sprintf("MineShake%dAudioOrigin", 1)) - g := ns.ObjectGroup(fmt.Sprintf("MineShake%dTriggers", 1)) - ns.AudioEvent(ns.EarthRumbleMajor, wp) - x := ns.GetObjectX(ns.GetHost()) - y := ns.GetObjectY(ns.GetHost()) - ns.ObjectGroupOff(g) - ns.Effect(ns.JIGGLE, x, y, 5, 0) -} - -var mineDidShake1 = false - -func MineShake1() { - if mineDidShake1 || !ns.IsCaller(ns.GetHost()) { - return - } - mineDidShake1 = true - mineShake(1) -} - -var mineDidShake2 = false - -func MineShake2() { - if mineDidShake2 || !ns.IsCaller(ns.GetHost()) { - return - } - mineDidShake2 = true - mineShake(2) -} - -var mineDidShake3 = false - -func MineShake3() { - if mineDidShake3 || !ns.IsCaller(ns.GetHost()) { - return - } - mineDidShake3 = true - mineShake(3) -} - -func MineShake4() { - mineShake(4) -} - -func MineShake5() { - mineShake(5) -} diff --git a/examples/con01a/waypoints.go b/examples/con01a/waypoints.go deleted file mode 100644 index f19db17..0000000 --- a/examples/con01a/waypoints.go +++ /dev/null @@ -1,53 +0,0 @@ -package con01a - -import ( - "fmt" - - "github.com/noxworld-dev/noxscript/ns/v3" -) - -var ( - tunnelPitWPs [16]ns.WaypointID - exitPitWPs [6]ns.WaypointID - entranceShakeWPs [4]ns.WaypointID - mineShake1WPs [8]ns.WaypointID - mineShake2WPs [4]ns.WaypointID - mineShake3WPs [4]ns.WaypointID - mineShake4WPs [4]ns.WaypointID - mineShake5WPs [4]ns.WaypointID - cavePitWPs [4]ns.WaypointID - flameWPs [20]ns.WaypointID -) - -func initWaypoints() { - for i := range tunnelPitWPs { - tunnelPitWPs[i] = ns.Waypoint(fmt.Sprintf("TunnelPitWP%d", i)) - } - for i := range exitPitWPs { - exitPitWPs[i] = ns.Waypoint(fmt.Sprintf("ExitPitWP%d", i)) - } - for i := range entranceShakeWPs { - entranceShakeWPs[i] = ns.Waypoint(fmt.Sprintf("EntranceShakePit%d", i)) - } - for i := range mineShake1WPs { - mineShake1WPs[i] = ns.Waypoint(fmt.Sprintf("MineShake1Pit%d", i+1)) - } - for i := range mineShake2WPs { - mineShake2WPs[i] = ns.Waypoint(fmt.Sprintf("MineShake2Pit%d", i+1)) - } - for i := range mineShake3WPs { - mineShake3WPs[i] = ns.Waypoint(fmt.Sprintf("MineShake3Pit%d", i+1)) - } - for i := range mineShake4WPs { - mineShake4WPs[i] = ns.Waypoint(fmt.Sprintf("MineShake4Pit%d", i+1)) - } - for i := range mineShake5WPs { - mineShake5WPs[i] = ns.Waypoint(fmt.Sprintf("MineShake5Pit%d", i+1)) - } - for i := range cavePitWPs { - cavePitWPs[i] = ns.Waypoint(fmt.Sprintf("CavePit%d", i+1)) - } - for i := range flameWPs { - flameWPs[i] = ns.Waypoint(fmt.Sprintf("FlameWP%d", i+1)) - } -} diff --git a/examples/con02a/con02a.go b/examples/con02a/con02a.go deleted file mode 100644 index be850b5..0000000 --- a/examples/con02a/con02a.go +++ /dev/null @@ -1,2446 +0,0 @@ -package con02a - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - flag4 bool - obj5 ns.ObjectID - ivar6 int - ivar7 int - ivar8 int - ivar9 int - ivar10 int - obj11 ns.ObjectID - obj12 ns.ObjectID - wp13 ns.WaypointID - wp14 ns.WaypointID - wp15 ns.WaypointID - wp16 ns.WaypointID - gvar17 int - gvar18 int - gvar19 int - gvar20 int - gvar21 int - gvar22 int - gvar23 int - gvar24 int - gvar25 int - gvar26 int - gvar27 int - gvar28 int - gvar29 int - gvar30 int - gvar31 int - gvar32 int - gvar33 int - gvar34 int - gvar35 int - gvar36 int - gvar37 int - gvar38 int - gvar39 int - gvar40 int - gvar41 int - gvar42 int - gvar43 int - gvar44 int - flag45 bool - flag46 bool - flag47 bool - flag48 bool - flag49 bool - gvar50 int - gvar51 int - gvar52 int - gvar53 int - gvar54 int - gvar55 int - gvar56 int - gvar57 int - ivar58 int - ivar59 int - ivar60 int - ivar61 int - obj62 ns.ObjectID - flag63 bool - flag64 bool - flag65 bool - obj66 ns.ObjectID - obj67 ns.ObjectID - obj68 ns.ObjectID - obj69 ns.ObjectID - obj70 ns.ObjectID - obj71 ns.ObjectID - obj72 ns.ObjectID - obj73 ns.ObjectID - obj74 ns.ObjectID - obj75 ns.ObjectID - obj76 ns.ObjectID - obj77 ns.ObjectID - obj78 ns.ObjectID - obj79 ns.ObjectID - obj80 ns.ObjectID - obj81 ns.ObjectID - obj82 ns.ObjectID - obj83 ns.ObjectID - obj84 ns.ObjectID - obj85 ns.ObjectID - obj86 ns.ObjectID - obj87 ns.ObjectID - obj88 ns.ObjectID - obj89 ns.ObjectID - obj90 ns.ObjectID - obj91 ns.ObjectID - obj92 ns.ObjectID - obj93 ns.ObjectID - obj94 ns.ObjectID - obj95 ns.ObjectID - obj96 ns.ObjectID - obj97 ns.ObjectID - obj98 ns.ObjectID - obj99 ns.ObjectID - obj100 ns.ObjectID - obj101 ns.ObjectID - obj102 ns.ObjectID - gvar103 ns.ObjectGroupID - wp104 ns.WaypointID - wp105 ns.WaypointID - wp106 ns.WaypointID - wp107 ns.WaypointID - wp108 ns.WaypointID - wp109 ns.WaypointID - wp110 ns.WaypointID - wp111 ns.WaypointID - wp112 ns.WaypointID - wp113 ns.WaypointID - gvar114 ns.WaypointGroupID - gvar115 ns.WaypointGroupID - gvar116 ns.WaypointGroupID - flag117 bool - flag118 bool - obj119 ns.ObjectID - obj120 ns.ObjectID - obj121 ns.ObjectID - obj122 ns.ObjectID - obj123 ns.ObjectID - obj124 ns.ObjectID - obj125 ns.ObjectID - obj126 ns.ObjectID - obj127 ns.ObjectID - obj128 ns.ObjectID - obj129 ns.ObjectID - obj130 ns.ObjectID - obj131 ns.ObjectID - obj132 ns.ObjectID - obj133 ns.ObjectID - gvar134 ns.ObjectGroupID - gvar135 ns.ObjectGroupID - wp136 ns.WaypointID - wp137 ns.WaypointID - wp138 ns.WaypointID - wp139 ns.WaypointID - wp140 ns.WaypointID - wp141 ns.WaypointID - wp142 ns.WaypointID - wp143 ns.WaypointID - wp144 ns.WaypointID - ivar145 int - flag146 bool - flag147 bool - flag148 bool - flag149 bool - gvar150 int - gvar151 int - gvar152 int - gvar153 int - gvar154 int - fvar155 float32 - fvar156 float32 - obj157 ns.ObjectID - flag158 bool - flag159 bool - ivar160 int - wp161 ns.WaypointID - wp162 ns.WaypointID - wp163 ns.WaypointID - wp164 ns.WaypointID - obj165 ns.ObjectID - gvar166 ns.ObjectGroupID - gvar167 ns.ObjectGroupID - gvar168 ns.WallGroupID - obj169 ns.ObjectID - gvar170 int - obj171 ns.ObjectID - gvar172 int - obj173 ns.ObjectID - obj174 ns.ObjectID - obj175 ns.ObjectID - obj176 ns.ObjectID - obj177 ns.ObjectID - obj178 ns.ObjectID - obj179 ns.ObjectID - obj180 [2]ns.ObjectID - gvar181 ns.ObjectGroupID - gvar182 ns.ObjectGroupID - gvar183 ns.ObjectGroupID - gvar184 ns.ObjectGroupID - wp185 ns.WaypointID - wp186 ns.WaypointID - wp187 ns.WaypointID - wp188 ns.WaypointID - wp189 ns.WaypointID - wp190 ns.WaypointID - wp191 ns.WaypointID - wp192 ns.WaypointID - wp193 ns.WaypointID - wp194 ns.WaypointID - wp195 ns.WaypointID - wp196 ns.WaypointID - wp197 ns.WaypointID - wp198 ns.WaypointID - wp199 ns.WaypointID - wp200 [2]ns.WaypointID - obj201 ns.ObjectID - gvar202 int - gvar203 int - gvar204 int - gvar205 int - gvar206 int - gvar207 int - gvar208 int - gvar209 int - gvar210 int - gvar211 int - gvar212 int - gvar213 int - obj214 ns.ObjectID - obj215 ns.ObjectID - obj216 ns.ObjectID - obj217 ns.ObjectID - gvar218 ns.ObjectGroupID - wp219 ns.WaypointID - flag220 bool - ivar221 int -) - -func init() { - flag4 = true - ivar6 = 1 - ivar7 = 0 - ivar8 = 0 - ivar9 = 85 - ivar10 = 2 - gvar17 = 0 - gvar18 = 1 - gvar19 = 2 - gvar20 = 3 - gvar21 = 4 - gvar22 = 5 - gvar23 = 6 - gvar24 = 7 - gvar25 = 8 - gvar26 = 9 - gvar27 = 10 - gvar28 = 11 - gvar29 = 12 - gvar30 = 13 - gvar31 = 14 - gvar32 = 15 - gvar33 = 16 - gvar34 = 17 - gvar35 = 18 - gvar36 = 19 - gvar37 = 20 - gvar38 = 21 - gvar39 = 22 - gvar40 = 23 - gvar41 = 24 - gvar42 = 25 - gvar43 = 26 - gvar44 = 27 - flag45 = false - flag46 = false - flag47 = false - flag48 = true - flag49 = true - gvar50 = gvar25 - gvar51 = gvar22 - gvar52 = gvar17 - gvar53 = gvar28 - gvar54 = gvar32 - gvar55 = gvar36 - gvar56 = gvar40 - gvar57 = gvar42 - ivar58 = 20 - ivar59 = 30 - ivar60 = 100 - ivar61 = 0 - flag63 = false - flag64 = false - flag65 = false - ivar145 = 0 - flag146 = false - flag147 = false - flag148 = false - flag149 = false - gvar150 = 0 - gvar151 = 1 - gvar152 = gvar150 - gvar153 = 0 - gvar154 = 1 - fvar155 = 1650 - fvar156 = 3055 - flag117 = false - flag158 = false - flag159 = true - ivar160 = 30 - flag118 = false - gvar202 = 0 - gvar203 = 1 - gvar204 = 2 - gvar205 = 3 - gvar206 = 4 - gvar207 = 5 - gvar208 = gvar202 - gvar209 = gvar202 - gvar210 = gvar202 - gvar211 = gvar202 - gvar212 = gvar202 - gvar213 = gvar202 - flag220 = false - ivar221 = 0 -} -func ContestWon(a1 int) { - ns.LookAtObject(obj11, ns.GetHost()) - flag64 = true - gvar54 = gvar34 - ns.StartDialog(obj11, ns.GetHost()) - ns.UnlockDoor(obj77) - ns.UnlockDoor(obj78) -} -func ContestLost(a1 int) { - var v0 int - ns.DestroyEveryChat() - ivar61 += 1 - ns.LookAtObject(obj11, ns.GetHost()) - if ivar61 != 1 { - goto LABEL1 - } - gvar54 = gvar32 -LABEL1: - if !(ivar61 > 1) { - goto LABEL2 - } - ns.SetDialog(obj11, ns.NORMAL, ContestOfficialDialogStart, ContestOfficialDialogEnd) - ns.SetShopkeeperText(obj67, "Con02:BarkeeperDefault") - gvar54 = gvar35 -LABEL2: - v0 = a1 - if v0 == 8 { - goto LABEL3 - } - if v0 == 7 { - goto LABEL4 - } - if v0 == 6 { - goto LABEL5 - } - if v0 == 5 { - goto LABEL6 - } - if v0 == 4 { - goto LABEL7 - } - if v0 == 3 { - goto LABEL8 - } - if v0 == 2 { - goto LABEL9 - } - if v0 == 1 { - goto LABEL10 - } - if v0 == 0 { - goto LABEL11 - } - goto LABEL12 -LABEL3: - ns.Chat(obj102, "Con02a:Contest8of10") - goto LABEL12 -LABEL4: - ns.Chat(obj102, "Con02a:Contest7of10") - goto LABEL12 -LABEL5: - ns.Chat(obj102, "Con02a:Contest6of10") - goto LABEL12 -LABEL6: - ns.Chat(obj102, "Con02a:Contest5of10") - goto LABEL12 -LABEL7: - ns.Chat(obj102, "Con02a:Contest4of10") - goto LABEL12 -LABEL8: - ns.Chat(obj102, "Con02a:Contest3of10") - goto LABEL12 -LABEL9: - ns.Chat(obj102, "Con02a:Contest2of10") - goto LABEL12 -LABEL10: - ns.Chat(obj102, "Con02a:Contest1of10") - goto LABEL12 -LABEL11: - ns.Chat(obj102, "Con02a:Contest0of10") - goto LABEL12 -LABEL12: - ns.UnlockDoor(obj77) - ns.UnlockDoor(obj78) -} -func WinContest() { - gvar210 = gvar207 -} -func ContestEngine() { - var ( - v0 int - v1 int - v2 float32 - v3 float32 - v4 int - ) - v1 = ns.CurrentHealth(obj5) - if flag4 { - goto LABEL1 - } - v0 = ns.Random(0, 2) - for { - if v0 != ivar6 { - goto LABEL2 - } - v0 = ns.Random(0, 2) - } -LABEL2: - ivar6 = v0 - if !(v1 > 0) { - goto LABEL4 - } - ns.Delete(obj5) - ivar8 += 1 - goto LABEL5 -LABEL4: - ivar7 += 1 - ivar9 = ivar9 - ivar10 -LABEL5: - goto LABEL6 -LABEL1: - v0 = 1 - flag4 = false -LABEL6: - if !(ivar8+ivar7 < 10) { - goto LABEL7 - } - v4 = v0 - if v4 == 0 { - goto LABEL8 - } - if v4 == 1 { - goto LABEL9 - } - if v4 == 2 { - goto LABEL10 - } - goto LABEL11 -LABEL8: - v2 = ns.GetWaypointX(wp13) - v3 = ns.GetWaypointY(wp13) - ns.Effect(ns.SMOKE_BLAST, v2, v3, 0, 0) - obj5 = ns.CreateObject("TargetBarrel1", wp13) - ns.AudioEvent(ns.BlinkCast, wp16) - goto LABEL11 -LABEL9: - v2 = ns.GetWaypointX(wp14) - v3 = ns.GetWaypointY(wp14) - ns.Effect(ns.SMOKE_BLAST, v2, v3, 0, 0) - obj5 = ns.CreateObject("TargetBarrel1", wp14) - ns.AudioEvent(ns.BlinkCast, wp16) - goto LABEL11 -LABEL10: - v2 = ns.GetWaypointX(wp15) - v3 = ns.GetWaypointY(wp15) - ns.Effect(ns.SMOKE_BLAST, v2, v3, 0, 0) - obj5 = ns.CreateObject("TargetBarrel1", wp15) - ns.AudioEvent(ns.BlinkCast, wp16) - goto LABEL11 -LABEL11: - ns.LookAtObject(obj11, obj5) - ns.FrameTimer(ivar9, ContestEngine) - goto LABEL12 -LABEL7: - if !(ivar7 >= 9 && ivar8 <= 1) { - goto LABEL13 - } - ContestWon(ivar7) - WinContest() - ivar7 = 0 - ivar8 = 0 - ivar6 = 1 - ivar9 = 60 - flag4 = true - goto LABEL12 -LABEL13: - ContestLost(ivar7) - ivar7 = 0 - ivar8 = 0 - ivar6 = 1 - ivar9 = 85 - flag4 = true -LABEL12: - return -} -func OfficialSEG4() { - ns.LookAtObject(obj11, ns.GetHost()) - ns.Chat(obj11, "Con02a:OfficialSEG4") - ContestEngine() -} -func OfficialSEG3() { - ns.LookAtObject(obj11, ns.GetHost()) - ns.Chat(obj11, "Con02a:OfficialSEG3") - ns.FrameTimer(30, OfficialSEG4) -} -func OfficialSEG2() { - ns.LookAtObject(obj11, ns.GetHost()) - ns.ObjectOff(obj12) - ns.Chat(obj11, "Con02a:OfficialSEG2") - ns.FrameTimer(30, OfficialSEG3) -} -func GatekeeperDialogStart() { - var v0 int - ns.LookAtObject(obj68, ns.GetHost()) - v0 = gvar56 - if v0 == gvar40 { - goto LABEL1 - } - if v0 == gvar41 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.TellStory(ns.SwordsmanHurt, "Con02a:GatekeeperWaiting") - goto LABEL3 -LABEL2: - ns.TellStory(ns.SwordsmanHurt, "Con02a:GatekeeperGuarding") - goto LABEL3 -LABEL3: - return -} -func GatekeeperDialogEnd() { -} -func BarkeeperDialogStart() { - var v0 int - ns.LookAtObject(obj67, ns.GetHost()) - v0 = gvar55 - if v0 == gvar36 { - goto LABEL1 - } - if v0 == gvar37 { - goto LABEL2 - } - if v0 == gvar38 { - goto LABEL3 - } - if v0 == gvar39 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - ns.TellStory(ns.SwordsmanHurt, "Con02a:BarkeeperGreet") - goto LABEL5 -LABEL2: - ns.TellStory(ns.SwordsmanHurt, "Con02a:BarkeeperQuest") - goto LABEL5 -LABEL3: - ns.TellStory(ns.SwordsmanHurt, "Con02a:BarkeeperAfterQuest") - goto LABEL5 -LABEL4: - ns.TellStory(ns.SwordsmanHurt, "Con02a:RandomSay") - goto LABEL5 -LABEL5: - return -} -func BarkeeperDialogEnd() { - if gvar55 != gvar38 { - goto LABEL1 - } - gvar55 = gvar39 -LABEL1: - return -} -func ContestGuardDialogStart() { - var v0 int - v0 = gvar51 - if v0 == gvar22 { - goto LABEL1 - } - if v0 == gvar23 { - goto LABEL2 - } - if v0 == gvar24 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - ns.LookAtObject(obj69, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "Con02a:ContestGuard") - goto LABEL4 -LABEL2: - ns.LookAtObject(obj69, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "Con02a:EnterContest") - flag63 = true - ns.UnlockDoor(obj77) - ns.UnlockDoor(obj78) - goto LABEL4 -LABEL3: - ns.LookAtObject(obj69, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "Con02a:RandomSay") - goto LABEL4 -LABEL4: - return -} -func ContestGuardDialogEnd() { - var ( - v0 int - v1 int - v2 int - v3 int - v4 int - v5 bool - v6 ns.ObjectID - v7 int - v8 int - ) - v0 = 0 - v1 = 0 - v2 = 1 - v3 = 2 - v4 = 0 - v5 = false - v6 = ns.GetLastItem(ns.GetHost()) - for { - if v6 == 0 { - goto LABEL1 - } - if !(ns.HasClass(v6, ns.WEAPON) && ns.HasSubclass(v6, "BOW")) { - goto LABEL2 - } - v5 = true - goto LABEL1 - LABEL2: - v6 = ns.GetPreviousItem(v6) - } -LABEL1: - v8 = gvar51 - if v8 == gvar22 { - goto LABEL4 - } - if v8 == gvar23 { - goto LABEL5 - } - if v8 == gvar24 { - goto LABEL6 - } - goto LABEL7 -LABEL4: - v1 = ns.GetAnswer(obj69) - v7 = v1 - if v7 == v2 { - goto LABEL8 - } - if v7 == v3 { - goto LABEL9 - } - if v7 == v4 { - goto LABEL10 - } - goto LABEL11 -LABEL8: - v0 = ns.GetGold(ns.GetHost()) - if !(v0 < ivar58) { - goto LABEL12 - } - ns.SetDialog(obj69, ns.NORMAL, NullDialogStart, ResetContestGuardDialogChoice) - ns.TellStory(ns.SwordsmanHurt, "Con02a:NotEnoughGold") - goto LABEL13 -LABEL12: - if v5 { - goto LABEL14 - } - ns.SetDialog(obj69, ns.NORMAL, NullDialogStart, ResetContestGuardDialogChoice) - ns.TellStory(ns.SwordsmanHurt, "Con02a:NoBow") - goto LABEL13 -LABEL14: - ns.ChangeGold(ns.GetHost(), -ivar58) - gvar51 = gvar23 - ns.SetDialog(obj69, ns.NORMAL, ContestGuardDialogStart, ContestGuardDialogEnd) - ContestGuardDialogStart() -LABEL13: - goto LABEL11 -LABEL9: - goto LABEL11 -LABEL10: - goto LABEL11 -LABEL11: - goto LABEL7 -LABEL5: - ns.CancelDialog(obj69) - goto LABEL7 -LABEL6: - goto LABEL7 -LABEL7: - return -} -func MayorsGuardDialogStart() { - var v0 int - v0 = gvar50 - if v0 == gvar25 { - goto LABEL1 - } - if v0 == gvar26 { - goto LABEL2 - } - if v0 == gvar27 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - ns.LookAtObject(obj70, ns.GetHost()) - gvar55 = gvar37 - ns.TellStory(ns.SwordsmanHurt, "Con02a:MayorsGuard") - goto LABEL4 -LABEL2: - ns.DestroyEveryChat() - ns.LookAtObject(obj70, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "Con02a:MeetTheMayor") - if !ns.IsLocked(obj75) { - goto LABEL5 - } - ns.UnlockDoor(obj75) - ns.UnlockDoor(obj76) -LABEL5: - goto LABEL4 -LABEL3: - ns.LookAtObject(obj70, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War03b:MayorsGuardIntro") -LABEL4: - return -} -func MayorsGuardDialogEnd() { -} -func MayorDialogStart() { - var v0 int - ns.DestroyEveryChat() - v0 = gvar53 - if v0 == gvar28 { - goto LABEL1 - } - if v0 == gvar29 { - goto LABEL2 - } - if v0 == gvar30 { - goto LABEL3 - } - if v0 == gvar31 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - ns.LookAtObject(obj72, ns.GetHost()) - ns.DestroyEveryChat() - ns.TellStory(ns.SwordsmanHurt, "Con02a:MayorGreeting") - goto LABEL5 -LABEL2: - ns.LookAtObject(obj72, ns.GetHost()) - if flag117 { - goto LABEL6 - } - ns.TellStory(ns.SwordsmanHurt, "Con02a:MayorProd") - goto LABEL7 -LABEL6: - ns.TellStory(ns.SwordsmanHurt, "Con02a:MayorFree") -LABEL7: - goto LABEL5 -LABEL3: - ns.Frozen(obj72, true) - ns.LookAtObject(obj72, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "Con02a:MayorsReward") - ns.SetShopkeeperText(obj67, "Con02a:BarkeeperAfterQuest") - goto LABEL5 -LABEL4: - ns.LookAtObject(obj72, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "Con02a:MayorsGuardIdle") - goto LABEL5 -LABEL5: - return -} -func MayorDialogEnd() { - var v0 int - v0 = gvar53 - if v0 == gvar28 { - goto LABEL1 - } - if v0 == gvar29 { - goto LABEL2 - } - if v0 == gvar30 { - goto LABEL3 - } - if v0 == gvar31 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - gvar53 = gvar29 - goto LABEL5 -LABEL2: - if !flag117 { - goto LABEL6 - } - ns.WayPointGroupOff(gvar116) - ns.WayPointGroupOn(gvar115) - ns.UnlockDoor(obj88) - ns.CreatureGuard(obj72, ns.GetWaypointX(wp110), ns.GetWaypointY(wp110), ns.GetWaypointX(ns.Waypoint("MayorRewardLookWP")), ns.GetWaypointY(ns.Waypoint("MayorRewardLookWP")), 150) - gvar53 = gvar30 - ns.CancelDialog(obj66) - ns.FrameTimer(15, AwardMayorExperience) -LABEL6: - goto LABEL5 -LABEL3: - ns.Frozen(obj72, false) - ns.JournalEdit(ns.GetHost(), "BanishSpiders", 4) - ns.PrintToAll("Con02a:ObjectiveComplete") - ns.CancelDialog(obj68) - gvar55 = gvar38 - SaveMayor() - HelpMayor() - ns.CancelDialog(obj72) - gvar50 = gvar27 - ns.Pickup(ns.GetHost(), obj89) - ns.Move(obj72, wp111) - ns.ObjectGroupOn(gvar103) - if !flag118 { - goto LABEL7 - } - ns.PrintToAll("Gate triggers are enabled.") -LABEL7: - goto LABEL5 -LABEL4: - goto LABEL5 -LABEL5: - return -} -func AldwinDialogStart() { - var v0 int - v0 = gvar52 - if v0 == gvar17 { - goto LABEL1 - } - if v0 == gvar18 { - goto LABEL2 - } - if v0 == gvar19 { - goto LABEL3 - } - if v0 == gvar20 { - goto LABEL4 - } - if v0 == gvar21 { - goto LABEL5 - } - goto LABEL6 -LABEL1: - ns.LookAtObject(obj71, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "Con02a:AldwinGreeting") - goto LABEL6 -LABEL2: - ns.LookAtObject(obj71, ns.GetHost()) - gvar52 = gvar19 - ns.TellStory(ns.SwordsmanHurt, "Con02a:BecomeConjurer2") - goto LABEL6 -LABEL3: - ns.LookAtObject(obj71, ns.GetHost()) - gvar52 = gvar20 - ns.TellStory(ns.SwordsmanHurt, "Con02a:BecomeConjurer3") - goto LABEL6 -LABEL4: - ns.LookAtObject(obj71, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "Con02a:AldwinProd") - goto LABEL6 -LABEL5: - ns.LookAtObject(obj71, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "Con02a:AldwinImp") - goto LABEL6 -LABEL6: - return -} -func AldwinDialogEnd() { - var ( - v0 int - v1 int - v2 int - v3 int - v4 int - v5 int - v6 int - ) - v0 = 0 - v1 = 0 - v2 = 1 - v3 = 2 - v4 = 0 - v6 = gvar52 - if v6 == gvar17 { - goto LABEL1 - } - if v6 == gvar18 { - goto LABEL2 - } - if v6 == gvar19 { - goto LABEL3 - } - if v6 == gvar20 { - goto LABEL4 - } - if v6 == gvar21 { - goto LABEL5 - } - goto LABEL6 -LABEL1: - v1 = ns.GetAnswer(obj71) - v5 = v1 - if v5 == v2 { - goto LABEL7 - } - if v5 == v3 { - goto LABEL8 - } - if v5 == v4 { - goto LABEL9 - } - goto LABEL10 -LABEL7: - v0 = ns.GetGold(ns.GetHost()) - if !(v0 < ivar59) { - goto LABEL11 - } - ns.SetDialog(obj71, ns.NORMAL, NullDialogStart, ResetAldwinDialogChoice) - ns.TellStory(ns.SwordsmanHurt, "Con02a:AldwinPoor") - goto LABEL12 -LABEL11: - if !flag48 { - goto LABEL13 - } - flag48 = false - ns.JournalEdit(ns.GetHost(), "LocateAldwyn", 4) - ns.PrintToAll("Con02a:ObjectiveComplete") -LABEL13: - ns.ChangeGold(ns.GetHost(), -ivar59) - ns.SetDialog(obj71, ns.NEXT, AldwinDialogStart, AldwinDialogEnd) - gvar52 = gvar18 - flag45 = true - gvar50 = gvar26 - ns.Pickup(ns.GetHost(), obj80) - ns.ObjectOn(obj84) - ns.ObjectOn(obj98) - ns.TellStory(ns.SwordsmanHurt, "Con02a:BecomeConjurer1") - ns.JournalEntry(ns.GetHost(), "BanishSpiders", 2) - ns.PrintToAll("Con01a:NewJournalEntry") -LABEL12: - goto LABEL10 -LABEL8: - goto LABEL10 -LABEL9: - goto LABEL10 -LABEL10: - goto LABEL6 -LABEL2: - gvar52 = gvar18 - AldwinDialogStart() - ns.Pickup(ns.GetHost(), obj82) - goto LABEL6 -LABEL3: - ns.SetDialog(obj71, ns.NORMAL, AldwinDialogStart, AldwinDialogEnd) - ns.GiveXp(ns.GetHost(), 200) - AldwinDialogStart() - goto LABEL6 -LABEL4: - ns.CreatureGuard(obj71, ns.GetWaypointX(wp104), ns.GetWaypointY(wp104), ns.GetObjectX(ns.Object("AldwynBookcase")), ns.GetObjectY(ns.Object("AldwynBookcase")), 0) - goto LABEL6 -LABEL5: - ns.JournalEntry(ns.GetHost(), "LocateMineForeman", 2) - ns.PrintToAll("Con01a:NewJournalEntry") - ns.SetDialog(obj68, ns.NORMAL, GatekeeperDialogStart, GatekeeperDialogEnd) - ns.Frozen(ns.GetHost(), false) - ns.UnlockDoor(obj90) - ns.UnlockDoor(obj91) - ns.CancelDialog(obj71) - ns.FrameTimer(30, ImpExit) - goto LABEL6 -LABEL6: - return -} -func CheckForAldwyn() { - if !ns.IsCaller(obj71) { - goto LABEL1 - } - ns.CreatureGuard(obj71, ns.GetWaypointX(wp104), ns.GetWaypointY(wp104), 5117, 1091, 0) -LABEL1: - return -} -func ContestOfficialDialogStart() { - var v0 int - ns.DestroyEveryChat() - v0 = gvar54 - if v0 == gvar32 { - goto LABEL1 - } - if v0 == gvar33 { - goto LABEL2 - } - if v0 == gvar34 { - goto LABEL3 - } - if v0 == gvar35 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - ns.LookAtObject(obj11, ns.GetHost()) - if !(ivar61 > 0) { - goto LABEL6 - } - ns.SetDialog(obj11, ns.YESNO, NullDialogStart, ContestOfficialDialogEnd) - ns.TellStory(ns.SwordsmanHurt, "Con02a:RetryContestChoice") - goto LABEL7 -LABEL6: - ns.TellStory(ns.SwordsmanHurt, "Con02a:ContestGreeting") -LABEL7: - goto LABEL5 -LABEL2: - ns.LookAtObject(obj11, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "Con02a:ContestOfficialWaiting") - goto LABEL5 -LABEL3: - ns.LookAtObject(obj11, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "Con02a:AwardContestPrize") - ns.SetShopkeeperText(obj67, "Con02:BarkeeperDefault") - goto LABEL5 -LABEL4: - ns.LookAtObject(obj11, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "Con02a:NoMoreContestTries") - goto LABEL5 -LABEL5: - return -} -func ContestOfficialDialogEnd() { - var ( - v0 int - v1 int - v2 int - v3 int - ) - v0 = 0 - v1 = 0 - v2 = 1 - v0 = ns.GetAnswer(obj11) - v1 = ns.GetGold(ns.GetHost()) - v3 = gvar54 - if v3 == gvar32 { - goto LABEL1 - } - if v3 == gvar33 { - goto LABEL2 - } - if v3 == gvar34 { - goto LABEL3 - } - if v3 == gvar35 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - if !(ivar61 > 0) { - goto LABEL6 - } - if v0 != v2 { - goto LABEL7 - } - if !(v1 >= ivar58) { - goto LABEL8 - } - ns.ChangeGold(ns.GetHost(), -ivar58) - ns.SetDialog(obj11, ns.NORMAL, ContestOfficialDialogStart, EnableFiringLineTrigger) - ns.TellStory(ns.SwordsmanHurt, "Con02a:RetryContest") - ns.Pickup(ns.GetHost(), obj86) - ns.PrintToAll("Con02a:QuiverAddedToInventory") - ns.LockDoor(obj77) - ns.LockDoor(obj78) - gvar54 = gvar33 - goto LABEL9 -LABEL8: - ns.SetDialog(obj11, ns.NORMAL, NullDialogStart, ResetContestOfficialDialogChoice) - ns.TellStory(ns.SwordsmanHurt, "Con02a:NotEnoughGold") -LABEL9: - goto LABEL10 -LABEL7: - ns.SetDialog(obj11, "FALSE", ContestOfficialDialogStart, ContestOfficialDialogEnd) -LABEL10: - goto LABEL11 -LABEL6: - ns.Pickup(ns.GetHost(), obj85) - ns.PrintToAll("Con02a:QuiverAddedToInventory") - EnableFiringLineTrigger() - ns.LockDoor(obj77) - ns.LockDoor(obj78) - gvar54 = gvar33 -LABEL11: - goto LABEL5 -LABEL2: - goto LABEL5 -LABEL3: - ns.Pickup(ns.GetHost(), obj87) - gvar54 = gvar35 - ns.FrameTimer(15, AwardContestExperience) - goto LABEL5 -LABEL4: - goto LABEL5 -LABEL5: - return -} -func BridgeGuardDialogStart() { - var ( - v0 ns.ObjectID - v1 int - ) - v0 = ns.GetLastItem(ns.GetHost()) - for { - if v0 == 0 { - goto LABEL1 - } - if v0 != obj94 { - goto LABEL2 - } - ns.Delete(v0) - flag65 = true - goto LABEL1 - LABEL2: - v0 = ns.GetPreviousItem(v0) - } -LABEL1: - if !(flag65 == true && flag47 == false) { - goto LABEL4 - } - gvar57 = gvar43 -LABEL4: - v1 = gvar57 - if v1 == gvar42 { - goto LABEL5 - } - if v1 == gvar43 { - goto LABEL6 - } - if v1 == gvar44 { - goto LABEL7 - } - goto LABEL8 -LABEL5: - ns.LookAtObject(obj92, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "Con02a:BridgeGuardGuarding") - goto LABEL8 -LABEL6: - ns.LookAtObject(obj92, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "Con02a:BridgeGuardReward") - ns.Drop(ns.GetHost(), obj94) - ns.FrameTimer(1, PickupBoots) - flag47 = true - goto LABEL8 -LABEL7: - ns.LookAtObject(obj92, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "Con02a:RandomSay") - goto LABEL8 -LABEL8: - return -} -func BridgeGuardDialogEnd() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 int - ) - v4 = gvar57 - if v4 == gvar42 { - goto LABEL1 - } - if v4 == gvar43 { - goto LABEL2 - } - if v4 == gvar44 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - if !flag49 { - goto LABEL5 - } - flag49 = false - ns.JournalEntry(ns.GetHost(), "ReturnBridgeGuardsBoots", 2) - ns.PrintToAll("Con01a:NewJournalEntry") -LABEL5: - goto LABEL4 -LABEL2: - ns.CancelDialog(obj92) - v0 = ns.GetObjectX(obj92) - v1 = ns.GetObjectY(obj92) - v2 = 3116 - v3 = 3394 - ns.MoveObject(obj92, v2, v3) - ns.MoveObject(obj93, v0, v1) - ns.CreatureGuard(obj92, v2, v3, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - ns.CreatureGuard(obj93, v0, v1, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - ns.LookAtObject(obj93, ns.GetHost()) - ns.JournalEdit(ns.GetHost(), "ReturnBridgeGuardsBoots", 4) - ns.PrintToAll("Con02a:ObjectiveComplete") - ns.FrameTimer(15, AwardBootQuestExperience) - goto LABEL4 -LABEL3: - goto LABEL4 -LABEL4: - return -} -func ConManDialogStart() { - ns.TellStory(ns.SwordsmanHurt, "Con02a:ConManSalesPitch") -} -func ConManDialogEnd() { - var ( - v0 int - v1 int - v2 int - ) - v0 = 0 - v1 = 1 - v2 = 0 - v0 = ns.GetAnswer(obj96) - v2 = ns.GetGold(ns.GetHost()) - if !ns.HasItem(ns.GetHost(), obj97) { - goto LABEL1 - } - ns.CancelDialog(obj96) - return -LABEL1: - if v0 != v1 { - goto LABEL2 - } - if !(v2 < ivar60) { - goto LABEL3 - } - ns.SetDialog(obj96, ns.NORMAL, NullDialogStart, ResetConManDialogChoice) - ns.TellStory(ns.SwordsmanHurt, "Con02a:ConManNotEnoughGold") - goto LABEL2 -LABEL3: - ns.Pickup(ns.GetHost(), obj97) - ns.PrintToAll("Con02a:BowAddedToInventory") - ns.ChangeGold(ns.GetHost(), -ivar60) - ns.SetDialog(obj96, ns.NORMAL, NullDialogStart, ConManDialogEnd) - ns.TellStory(ns.SwordsmanHurt, "Con02a:ConManSale") - SlipIntoShadows() -LABEL2: - return -} -func Maiden1DialogStart() { - ns.LookAtObject(obj99, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "Con02a:BarMaiden") -} -func Maiden1DialogEnd() { -} -func SpiderEngine() { - var v0 int - if !flag118 { - goto LABEL1 - } - ns.PrintToAll("SpiderEngineRunning") -LABEL1: - v0 = gvar152 - if v0 == gvar150 { - goto LABEL2 - } - if v0 == gvar151 { - goto LABEL3 - } - goto LABEL4 -LABEL2: - if !(ns.IsOwnedBy(obj165, ns.GetHost()) || ns.CurrentHealth(obj165) <= 0) { - goto LABEL5 - } - obj157 = ns.CreateObject("Spider", wp161) - ns.SetCallback(obj157, 5, TransientMonsterDie) - ns.LookAtObject(obj157, ns.GetHost()) - gvar152 = gvar151 - ns.FrameTimerWithArg(1, gvar151, SetToGuard) - ns.FrameTimer(30, SpiderEngine) - goto LABEL6 -LABEL5: - ns.FrameTimer(15, SpiderEngine) -LABEL6: - goto LABEL4 -LABEL3: - if !(ns.CurrentHealth(obj157) > 0 || ns.CurrentHealth(obj165) > 0) { - goto LABEL7 - } - ns.FrameTimer(15, SpiderEngine) - goto LABEL8 -LABEL7: - flag117 = true - SpidersFinishedPatch() -LABEL8: - goto LABEL4 -LABEL4: - return -} -func HelpMayor() { - gvar208 = gvar204 - gvar209 = gvar204 - gvar210 = gvar204 - gvar212 = gvar204 - gvar213 = gvar204 -} -func SaveMayor() { - flag147 = true -} -func ImpEnter() { - if !flag118 { - goto LABEL1 - } - ns.PrintToAll("ImpEnter()") -LABEL1: - ns.ObjectGroupOff(gvar103) - ns.Frozen(ns.GetHost(), true) - ns.CreatureIdle(ns.GetHost()) - obj62 = ns.CreateObject("Imp", wp105) - ns.SetOwner(ns.GetHost(), obj62) - ns.Enchant(obj62, ns.ENCHANT_INVULNERABLE, 0) - ns.FrameTimer(1, ImpEnterSEG2) -} -func AldwinWaiting() { - if !ns.IsTalking() { - goto LABEL1 - } - ns.FrameTimer(1, AldwinWaiting) - goto LABEL2 -LABEL1: - ns.StartDialog(obj71, ns.GetHost()) -LABEL2: - return -} -func InitializeDialogs() { - ns.StoryPic(obj68, "Townsman4Pic") - ns.StoryPic(obj69, "Townsman2Pic") - ns.StoryPic(obj11, "MalePic10") - ns.StoryPic(obj70, "Warrior3Pic") - ns.StoryPic(obj72, "TheogrinPic") - ns.StoryPic(obj71, "AldwynPic") - ns.StoryPic(obj92, "Townsman3Pic") - ns.StoryPic(obj96, "MorganPic") - ns.StoryPic(obj99, "MaidenPic") - ns.SetDialog(obj68, ns.NORMAL, GatekeeperDialogStart, GatekeeperDialogEnd) - ns.SetDialog(obj69, ns.YESNO, ContestGuardDialogStart, ContestGuardDialogEnd) - ns.SetDialog(obj70, ns.NORMAL, MayorsGuardDialogStart, MayorsGuardDialogEnd) - ns.SetDialog(obj72, ns.NORMAL, MayorDialogStart, MayorDialogEnd) - ns.SetDialog(obj71, ns.YESNO, AldwinDialogStart, AldwinDialogEnd) - ns.SetDialog(obj11, ns.NORMAL, ContestOfficialDialogStart, ContestOfficialDialogEnd) - ns.SetDialog(obj92, ns.NORMAL, BridgeGuardDialogStart, BridgeGuardDialogEnd) - ns.SetDialog(obj96, ns.YESNO, ConManDialogStart, ConManDialogEnd) - ns.SetDialog(obj99, ns.NORMAL, Maiden1DialogStart, Maiden1DialogEnd) -} -func NullDialogStart() { -} -func AwardBootQuestExperience() { - ns.MoveWaypoint(wp113, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.FlagDrop, wp113) - ns.GiveXp(ns.GetHost(), 200) -} -func AwardContestExperience() { - ns.GiveXp(ns.GetHost(), 500) -} -func AwardMayorExperience() { - ns.GiveXp(ns.GetHost(), 1500) -} -func PickupBoots() { - ns.Pickup(obj92, obj94) - ns.Pickup(ns.GetHost(), obj95) -} -func ResetContestGuardDialogChoice() { - ns.SetDialog(obj69, ns.YESNO, ContestGuardDialogStart, ContestGuardDialogEnd) -} -func ResetContestOfficialDialogChoice() { - ns.SetDialog(obj11, ns.YESNO, ContestOfficialDialogStart, ContestOfficialDialogEnd) -} -func EnableFiringLineTrigger() { - ns.ObjectOn(obj12) - ns.SetDialog(obj11, ns.NORMAL, ContestOfficialDialogStart, ContestOfficialDialogEnd) -} -func ImpToAldwin() { - var ( - v0 float32 - v1 float32 - ) - v0 = ns.GetWaypointX(wp106) - v1 = ns.GetWaypointY(wp106) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - ns.Delete(obj62) - ns.MoveObject(obj71, v0, v1) - gvar52 = gvar21 - ns.LookAtObject(obj71, ns.GetHost()) - ns.AudioEvent(ns.ImpRecognize, wp106) - ns.CreatureGuard(obj71, ns.GetObjectX(obj71), ns.GetObjectY(obj71), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - AldwinWaiting() -} -func ImpEnterSEG2() { - ns.Move(obj62, wp106) - ns.FrameTimer(75, ImpToAldwin) -} -func DestroyImp() { - var ( - v0 float32 - v1 float32 - ) - v0 = ns.GetObjectX(obj62) - v1 = ns.GetObjectY(obj62) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - ns.Delete(obj62) -} -func ImpExitSEG2() { - ns.Move(obj62, wp107) - ns.FrameTimer(75, DestroyImp) -} -func ImpExit() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - ) - v0 = ns.GetObjectX(obj71) - v1 = ns.GetObjectY(obj71) - v2 = ns.GetWaypointX(wp109) - v3 = ns.GetWaypointY(wp109) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - ns.MoveObject(obj71, v2, v3) - ns.ObjectOff(obj71) - obj62 = ns.CreateObject("Imp", wp106) - ns.AudioEvent(ns.ImpRecognize, wp106) - ns.SetOwner(ns.GetHost(), obj62) - ns.Enchant(obj62, ns.ENCHANT_INVULNERABLE, 0) - ns.WayPointGroupOff(gvar114) - ns.FrameTimer(1, ImpExitSEG2) -} -func ResetAldwinDialogChoice() { - ns.SetDialog(obj71, ns.YESNO, AldwinDialogStart, AldwinDialogEnd) -} -func SpidersFinishedPatch() { - gvar53 = gvar29 -} -func SlipIntoShadows() { - if ns.IsVisibleTo(ns.GetHost(), obj96) { - goto LABEL1 - } - ns.MoveObject(obj96, ns.GetWaypointX(ns.Waypoint("ConManEscapeWP")), ns.GetWaypointY(ns.Waypoint("ConManEscapeWP"))) - ns.ObjectOff(obj96) - goto LABEL2 -LABEL1: - ns.FrameTimer(15, SlipIntoShadows) -LABEL2: - return -} -func ResetConManDialogChoice() { - ns.SetDialog(obj96, ns.YESNO, ConManDialogStart, ConManDialogEnd) -} -func MayorGoHome() { - ns.CreatureGuard(obj72, ns.GetWaypointX(wp112), ns.GetWaypointY(wp112), ns.GetObjectX(obj101), ns.GetObjectY(obj101), 0) -} -func UnlockTownGates() { - gvar56 = gvar41 - ns.FrameTimer(30, MayorGoHome) -} -func PlayerDeath() { - ns.DeathScreen(2) -} -func SwitchMaps() { - ns.MoveObject(ns.GetHost(), ns.GetWaypointX(ns.Waypoint("ExitWP")), ns.GetWaypointY(ns.Waypoint("ExitWP"))) -} -func EndMission() { - ns.Blind() - ns.FrameTimer(60, SwitchMaps) -} -func InitEvilMage() { - obj119 = ns.Object("Necromancer") - obj123 = ns.Object("Wolf1") - obj124 = ns.Object("Wolf2") - obj129 = ns.Object("Julie2") - obj130 = ns.Object("Tanya2") - obj131 = ns.Object("Julie") - obj66 = ns.Object("Tanya") - obj132 = ns.Object("Lydia") - obj121 = ns.Object("SummonTrigger") - gvar134 = ns.ObjectGroup("NecroTriggers") - wp136 = ns.Waypoint("NecroWP") - wp137 = ns.Waypoint("SpiderWP") - wp138 = ns.Waypoint("EscapeWP") - wp139 = ns.Waypoint("T1WP") - wp140 = ns.Waypoint("T2WP") - wp141 = ns.Waypoint("M3WP") - wp142 = ns.Waypoint("M4WP") - wp143 = ns.Waypoint("M3RunWP") - wp144 = ns.Waypoint("M4RunWP") - ns.ObjectOff(obj121) - ns.FrameTimer(1, FunctionSetup) -} -func FunctionSetup() { - ns.SetOwner(ns.GetHost(), obj129) - ns.SetOwner(ns.GetHost(), obj130) - ns.SetOwner(ns.GetHost(), obj131) - ns.SetOwner(ns.GetHost(), obj66) - ns.SetOwner(ns.GetHost(), obj132) - ns.SetOwner(ns.GetHost(), obj123) - ns.SetOwner(ns.GetHost(), obj124) - ns.StoryPic(obj130, "MaidenPic3") - ns.StoryPic(obj132, "SnobbyGirlPic") - ns.SetDialog(obj130, ns.NORMAL, Maiden4TempStart, Maiden4TempEnd) - ns.SetDialog(obj132, ns.NORMAL, Maiden7TempStart, Maiden7TempEnd) -} -func T1Trigger() { - if flag146 { - goto LABEL1 - } - ivar145 += 1 - ns.CreatureGuard(obj125, ns.GetObjectX(obj125), ns.GetObjectY(obj125), ns.GetObjectX(obj119), ns.GetObjectY(obj119), 0) - if !(ivar145 >= 4) { - goto LABEL1 - } - NecromancerSummon() -LABEL1: - return -} -func T2Trigger() { - if flag146 { - goto LABEL1 - } - ivar145 += 1 - ns.CreatureGuard(ns.GetTrigger(), ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger()), ns.GetObjectX(obj119), ns.GetObjectY(obj119), 0) - if !(ivar145 >= 4) { - goto LABEL1 - } - NecromancerSummon() -LABEL1: - return -} -func M3Trigger() { - if flag146 { - goto LABEL1 - } - ivar145 += 1 - ns.CreatureGuard(ns.GetTrigger(), ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger()), ns.GetObjectX(obj119), ns.GetObjectY(obj119), 0) - if !(ivar145 >= 4) { - goto LABEL1 - } - NecromancerSummon() -LABEL1: - return -} -func M4Trigger() { - if flag146 { - goto LABEL1 - } - ivar145 += 1 - ns.CreatureGuard(ns.GetTrigger(), ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger()), ns.GetObjectX(obj119), ns.GetObjectY(obj119), 0) - if !(ivar145 >= 4) { - goto LABEL1 - } - NecromancerSummon() -LABEL1: - return -} -func StartNecroPiece() { - ns.MusicPushEvent() - ns.ObjectGroupOff(gvar134) - ns.WideScreen(true) - ns.Frozen(ns.GetHost(), true) - ns.CancelDialog(obj130) - ns.CreatureIdle(ns.GetHost()) - ns.LookAtObject(ns.GetHost(), ns.ObjectID(wp136)) // FIXME - ns.Move(obj119, wp136) - ns.ObjectOn(obj125) - ns.ObjectOn(obj126) -} -func NecroInPosition() { - ns.CreatureIdle(obj119) - ns.LookAtObject(obj119, ns.GetHost()) - ns.MoveWaypoint(wp113, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.NecromancerRecognize, wp113) - ns.MoveWaypoint(wp113, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.MaleNPC1Talkable, wp113) - ns.AudioEvent(ns.MaleNPC2Talkable, wp113) - ns.Move(obj125, wp139) - ns.Move(obj126, wp140) - ns.Move(obj129, wp141) - ns.Move(obj130, wp142) - ns.FrameTimer(1, NecromancerStart) -} -func NecromancerStart() { - ns.Music(11, 100) - ns.SetDialog(obj119, ns.NORMAL, NecroBegin, NecroDone) - ns.StoryPic(obj119, "NecromancerPic") - ns.StartDialog(obj119, ns.GetHost()) -} -func NecromancerSummon() { - if !flag149 { - goto LABEL1 - } - flag146 = true - ns.ObjectOn(obj121) - ns.LookAtObject(obj119, obj121) - ns.CastSpellObjectLocation(ns.SPELL_SUMMON_SPIDER, obj119, 1374, 3207) - ns.AudioEvent(ns.NecromancerTaunt, wp113) - goto LABEL2 -LABEL1: - ns.FrameTimer(2, NecromancerSummon) -LABEL2: - return -} -func SpiderRun() { - r1 := ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) - if !r1 { - goto LABEL1 - } - if ns.IsCaller(obj119) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.AudioEvent(ns.NecromancerTaunt, wp113) - obj120 = ns.GetCaller() - ns.MoveWaypoint(wp113, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.Maiden1Retreat, wp113) - ns.Move(obj129, wp143) - ns.FrameTimer(1, SpiderActivate) -LABEL1: - return -} -func SpiderActivate() { - ns.AggressionLevel(obj120, 0) - ns.SetOwner(ns.GetHost(), obj120) - ns.Move(obj120, wp137) - ns.AudioEvent(ns.Maiden2Retreat, wp113) - ns.Move(obj130, wp144) - HenrickSayAttack() -} -func HenrickSayAttack() { - ns.FrameTimer(15, PepperAttack) -} -func PepperAttack() { - ns.AudioEvent(ns.SwordsmanRecognize, wp113) - ns.Attack(obj126, obj119) - ns.CreatureGuard(obj119, ns.GetObjectX(obj119), ns.GetObjectY(obj119), ns.GetObjectX(obj126), ns.GetObjectY(obj126), 0) -} -func NecroHit() { - if flag148 { - goto LABEL1 - } - if !ns.IsCaller(obj126) { - goto LABEL1 - } - flag148 = true - ns.Chat(obj119, "Con02A:NecroTalk02") - ns.FrameTimer(60, NecroPoof) -LABEL1: - return -} -func NecroPoof() { - ns.DestroyEveryChat() - ns.CreatureIdle(obj125) - ns.CreatureIdle(obj126) - ns.LookAtObject(obj126, obj119) - ns.LookAtObject(obj125, obj119) - ns.Move(obj119, wp138) - ns.Attack(obj126, obj119) - ns.Attack(obj125, obj119) - ns.Chat(obj119, "Con02A:NecroTalk03") - ns.FrameTimer(120, SetpieceOver) -} -func SetpieceOver() { - ns.DestroyEveryChat() - ns.WideScreen(false) - ns.ObjectGroupOn(gvar135) - ns.Frozen(ns.GetHost(), false) - ns.Delete(obj119) - ns.MoveObject(obj125, 1678, 2623) - ns.MoveObject(obj126, 1708, 2655) - ns.CreatureGuard(obj125, 1678, 2623, 1708, 2655, 0) - ns.CreatureGuard(obj126, 1708, 2655, 1678, 2623, 0) - ns.Wander(obj127) - ns.Wander(obj128) - ns.Wander(obj131) - ns.Wander(obj66) - ns.StoryPic(obj131, "MaidenPic2") - ns.StoryPic(obj66, "MaidenPic3") - ns.SetDialog(obj125, ns.NORMAL, Town1TempStart, Town1TempEnd) - ns.SetDialog(obj126, ns.NORMAL, Town2TempStart, Town2TempEnd) - ns.SetDialog(obj131, ns.NORMAL, Maiden5TempStart, Maiden5TempEnd) - ns.SetDialog(obj66, ns.NORMAL, Maiden6TempStart, Maiden6TempEnd) - ns.MusicPopEvent() -} -func DestroySpider() { - if !ns.IsCaller(obj120) { - goto LABEL1 - } - ns.Delete(ns.GetCaller()) -LABEL1: - return -} -func M3Swap() { - if !ns.IsCaller(obj129) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.MoveObject(obj131, ns.GetObjectX(obj129), ns.GetObjectY(obj129)) - ns.Delete(obj129) -LABEL1: - return -} -func M4Swap() { - if !ns.IsCaller(obj130) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.MoveObject(obj66, ns.GetObjectX(obj130), ns.GetObjectY(obj130)) - ns.Delete(obj130) -LABEL1: - return -} -func NecroBegin() { - ns.TellStory(ns.HumanMaleEatFood, "Con02A:NecroTalk01") -} -func NecroDone() { - ns.CancelDialog(obj119) - ns.CreatureGuard(obj119, ns.GetObjectX(obj119), ns.GetObjectY(obj119), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - flag149 = true -} -func NecroYellStart() { - ns.Frozen(obj125, true) - ns.Frozen(obj126, true) - ns.CreatureIdle(obj125) - ns.CreatureIdle(obj126) - ns.LookAtObject(obj126, obj119) - ns.LookAtObject(obj125, obj119) - ns.TellStory(ns.HumanMaleEatFood, "Con02A:NecroTalk03") -} -func NecroYellEnd() { - ns.CancelDialog(obj119) - ns.Frozen(obj126, false) - ns.Frozen(obj125, false) - ns.Move(obj119, wp138) - ns.Attack(obj126, obj119) - ns.Attack(obj125, obj119) - ns.FrameTimer(120, SetpieceOver) -} -func Town1TempStart() { - ns.TellStory(ns.HumanMaleEatFood, "Con02A:Townsman10Talk03") -} -func Town1TempEnd() { - ns.Wander(obj125) - ns.SetDialog(obj125, ns.NORMAL, Town1TalkStart, Town1TalkEnd) -} -func Town2TempStart() { - ns.TellStory(ns.HumanMaleEatFood, "Con02A:Townsman13Talk02") -} -func Town2TempEnd() { - ns.Wander(obj126) - ns.SetDialog(obj126, ns.NORMAL, Town2TalkStart, Town2TalkEnd) -} -func Maiden5TempStart() { - ns.Frozen(obj131, true) - ns.CreatureIdle(obj131) - ns.LookAtObject(obj131, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "Con02A:Maiden6Talk03") -} -func Maiden5TempEnd() { - ns.Frozen(obj131, false) - ns.Wander(obj131) - ns.SetDialog(obj131, ns.NORMAL, Maiden5TalkStart, Maiden5TalkEnd) -} -func Maiden4TempStart() { - ns.TellStory(ns.HumanMaleEatFood, "Con02A:Maiden3Talk01") -} -func Maiden4TempEnd() { - ns.SetDialog(obj130, ns.NORMAL, Maiden4TempStart, Maiden4TempEnd) -} -func Maiden6TempStart() { - ns.Frozen(obj66, true) - ns.CreatureIdle(obj66) - ns.LookAtObject(obj66, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "Con02A:Maiden6Talk01") -} -func Maiden6TempEnd() { - ns.Frozen(obj66, false) - ns.Wander(obj66) - ns.SetDialog(obj66, ns.NORMAL, Maiden6TempStart, Maiden6TempEnd) -} -func Maiden7TempStart() { - ns.LookAtObject(obj132, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "Con02a:BarMaiden2") -} -func Maiden7TempEnd() { - ns.SetDialog(obj132, ns.NORMAL, Maiden7TempStart, Maiden7TempEnd) -} -func Town1TalkStart() { - var ( - v0 int - v1 int - ) - ns.Frozen(obj125, true) - ns.CreatureIdle(obj125) - ns.LookAtObject(obj125, ns.GetHost()) - if gvar208 != gvar202 { - goto LABEL1 - } - v0 = ns.Random(1, 2) - v1 = v0 - if v1 == 1 { - goto LABEL2 - } - if v1 == 2 { - goto LABEL3 - } - goto LABEL4 -LABEL2: - ns.TellStory(ns.HumanMaleEatFood, "Con02A:Townsman10Talk02") - goto LABEL4 -LABEL3: - ns.TellStory(ns.HumanMaleEatFood, "Con02A:Townsman10Talk03") - goto LABEL4 -LABEL4: - goto LABEL5 -LABEL1: - ns.TellStory(ns.HumanMaleEatFood, "Con02A:Townsman10Talk01") -LABEL5: - return -} -func Town1TalkEnd() { - ns.Frozen(obj125, false) - ns.Wander(obj125) - ns.SetDialog(obj125, ns.NORMAL, Town1TalkStart, Town1TalkEnd) -} -func Town2TalkStart() { - var ( - v0 int - v1 int - ) - ns.Frozen(obj126, true) - ns.CreatureIdle(obj126) - ns.LookAtObject(obj126, ns.GetHost()) - if gvar209 != gvar204 { - goto LABEL1 - } - v0 = ns.Random(1, 2) - v1 = v0 - if v1 == 1 { - goto LABEL2 - } - if v1 == 2 { - goto LABEL3 - } - goto LABEL4 -LABEL2: - ns.TellStory(ns.HumanMaleEatFood, "Con02A:Townsman13Talk01") - goto LABEL4 -LABEL3: - ns.TellStory(ns.HumanMaleEatFood, "Con02A:Townsman13Talk03") - goto LABEL4 -LABEL4: - goto LABEL5 -LABEL1: - ns.TellStory(ns.HumanMaleEatFood, "Con02A:Townsman13Talk02") -LABEL5: - return -} -func Town2TalkEnd() { - ns.Frozen(obj126, false) - ns.Wander(obj126) - ns.SetDialog(obj126, ns.NORMAL, Town2TalkStart, Town2TalkEnd) -} -func Maiden5TalkStart() { - ns.Frozen(obj131, true) - ns.CreatureIdle(obj131) - ns.LookAtObject(obj131, ns.GetHost()) - if flag147 { - goto LABEL1 - } - ns.TellStory(ns.HumanMaleEatFood, "Con02A:Maiden6Talk03") - goto LABEL2 -LABEL1: - ns.TellStory(ns.HumanMaleEatFood, "Con02A:Maiden6Talk02") -LABEL2: - return -} -func Maiden5TalkEnd() { - ns.Frozen(obj131, false) - ns.Wander(obj131) - ns.SetDialog(obj131, ns.NORMAL, Maiden5TalkStart, Maiden5TalkEnd) -} -func EnableRandomBump() { - flag159 = true -} -func RandomBump() { - if !(ns.IsCaller(ns.GetHost()) && flag159) { - goto LABEL1 - } - ns.Chat(ns.GetTrigger(), "Con02a:RandomBump") - flag159 = false - ns.FrameTimer(ivar160, EnableRandomBump) -LABEL1: - return -} -func RestAwhile() { - var v0 int - v0 = ns.Random(60, 120) - ns.PauseObject(ns.GetCaller(), v0) -} -func EnableSpiders() { - ns.ObjectGroupOn(gvar167) -} -func OpenMagicShopElevatorWalls() { - ns.WallGroupOpen(gvar168) -} -func TransientMonsterDie() { - ns.DeleteObjectTimer(ns.GetTrigger(), 120) -} -func SetToGuard(a1 int) { - var ( - v0 float32 - v1 float32 - v2 int - ) - v2 = a1 - if v2 == gvar150 { - goto LABEL1 - } - if v2 == gvar151 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - v0 = ns.GetWaypointX(wp163) - v1 = ns.GetWaypointY(wp163) - ns.MoveObject(obj165, ns.GetWaypointX(wp161), ns.GetWaypointY(wp161)) - ns.CreatureGuard(obj165, v0, v1, fvar155, fvar156, 100) - goto LABEL3 -LABEL2: - v0 = ns.GetWaypointX(wp163) - v1 = ns.GetWaypointY(wp163) - ns.CreatureGuard(obj157, v0, v1, fvar155, fvar156, 100) - goto LABEL3 -LABEL3: - return -} -func CallToConjurer() { - if !(ns.IsCaller(ns.GetHost()) && flag45 == true && flag158 == false) { - goto LABEL1 - } - ns.Chat(ns.GetTrigger(), "Con02a:CallToConjurer") - flag158 = true -LABEL1: - return -} -func MayorCall() { - ns.Chat(obj72, "Con02a:MayorCall") - SpiderEngine() -} -func MayorsGateTriggerFilter() int { - if !ns.IsCaller(obj72) { - goto LABEL1 - } - if !flag118 { - goto LABEL2 - } - ns.PrintToAll("Mayor detected at gown gates.") -LABEL2: - return 1 - goto LABEL3 -LABEL1: - if !flag118 { - goto LABEL4 - } - ns.PrintToAll("Trigger hit by object other than Mayor Theogrin") -LABEL4: - return 0 -LABEL3: - return 0 -} -func UnlockMayorBedroomoor() { - ns.UnlockDoor(obj88) -} -func LockMayorsBedroomDoor() { - ns.LockDoor(obj88) -} -func FoundBoots() { - ns.ObjectOff(ns.GetTrigger()) - ns.PrintToAll("Con02a:FoundBoots") - ns.AudioEvent(ns.JournalEntryAdd, ns.Waypoint("BootsAudioOrigin")) -} -func Secret01Found() { - ns.ObjectGroupOff(gvar166) - ns.MoveWaypoint(wp164, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretFound, wp164) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 50) -} -func Secret02Found() { - ns.ObjectOff(ns.GetTrigger()) - ns.MoveWaypoint(wp164, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretFound, wp164) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 50) -} -func EnemyGoHome() { - r1 := ns.IsAttackedBy(ns.GetHost(), ns.GetCaller()) - if !r1 { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func DebugOn() { - flag118 = true - ns.PrintToAll("Debug mode is enabled.") -} -func OwnObjects() { - ns.GroupSetOwner(ns.GetHost(), gvar135) - ns.SetOwner(ns.GetHost(), obj68) - ns.SetOwner(ns.GetHost(), obj96) - ns.SetOwner(ns.GetHost(), obj99) - ns.SetOwner(ns.GetHost(), obj128) - ns.SetOwner(ns.GetHost(), obj176) - ns.SetOwner(ns.GetHost(), obj177) - ns.SetOwner(ns.GetHost(), obj125) - ns.SetOwner(ns.GetHost(), obj126) - ns.SetOwner(ns.GetHost(), obj127) - ns.SetOwner(ns.GetHost(), obj93) - ns.ObjectGroupOff(gvar135) -} -func InitializePiece() { - obj201 = ns.Object("Jacob") - obj100 = ns.Object("Henrick") - obj122 = ns.Object("Pepper") - obj133 = ns.Object("NecroDoor") - obj214 = ns.Object("TempDoorR") - obj215 = ns.Object("TempDoorL") - obj216 = ns.Object("CemDoorR") - obj217 = ns.Object("CemDoorL") - gvar218 = ns.ObjectGroup("WolfTriggers") - wp113 = ns.Waypoint("PlayerSounds") - wp219 = ns.Waypoint("WolfCreateWP") - ns.FrameTimer(1, SetupCreatures) -} -func DialogSetup() { - ns.StoryPic(obj125, "MalePic4") - ns.StoryPic(obj126, "MalePic11") - ns.StoryPic(obj127, "MalePic12") - ns.StoryPic(obj128, "MaidenPic4") - ns.StoryPic(obj201, "WardenPic") - ns.StoryPic(obj100, "HenrickPic") - ns.SetDialog(obj127, ns.NORMAL, Town3TalkStart, Town3TalkEnd) - ns.SetDialog(obj201, ns.NORMAL, Jail1Start, Jail1End) -} -func PlayIxTownMusic() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Music(15, 40) -LABEL1: - return -} -func DisableElevators() { - PlayIxTownMusic() - ns.JournalEntry(ns.GetHost(), "LocateAldwyn", 2) - ns.PrintToAll("Con01a:NewJournalEntry") - ns.ObjectOff(obj84) - ns.ObjectOff(obj171) - ns.ObjectOff(obj98) -} -func PickupObjects() { - ns.Pickup(obj11, obj87) - ns.Pickup(obj11, obj85) - ns.Pickup(obj11, obj86) - ns.Pickup(obj96, obj97) -} -func MapInitialize() { - obj71 = ns.Object("Aldwyn") - obj68 = ns.Object("Geoff") - obj72 = ns.Object("Mayor_Theogrin") - obj69 = ns.Object("Contest_Guard") - obj70 = ns.Object("Mayor's_Guard") - obj67 = ns.Object("Barkeeper") - obj11 = ns.Object("Contest_Official") - obj92 = ns.Object("Bridge_Guard") - obj93 = ns.Object("Guard2") - obj176 = ns.Object("IxGuard1") - obj177 = ns.Object("IxGuard2") - obj165 = ns.Object("MayorsSpider1") - obj75 = ns.Object("MayorGate1") - obj76 = ns.Object("MayorGate2") - obj77 = ns.Object("ContestGate1") - obj78 = ns.Object("ContestGate2") - obj79 = ns.Object("ContestGate3") - obj169 = ns.Object("BasementDoor") - obj84 = ns.Object("AldwinElevator") - obj171 = ns.Object("MayorElevator") - obj81 = ns.Object("RatFieldGuide") - obj82 = ns.Object("BigSpiderFG") - obj80 = ns.Object("CharmSpell") - obj83 = ns.Object("ElevatorDoor") - obj97 = ns.Object("CheapBow") - obj173 = ns.Object("Quiver") - obj12 = ns.Object("FiringLineTrigger") - obj87 = ns.Object("ContestPrize") - obj85 = ns.Object("ContestQuiver1") - obj86 = ns.Object("ContestQuiver2") - obj73 = ns.Object("LeatherTunic") - obj88 = ns.Object("MayorsBedroomDoor") - obj90 = ns.Object("RightTownGate") - obj91 = ns.Object("LeftTownGate") - obj174 = ns.Object("TownGate01") - obj175 = ns.Object("TownGate02") - obj89 = ns.Object("Gold") - obj125 = ns.Object("Bryan") - obj126 = ns.Object("Clyde") - obj127 = ns.Object("Tommy") - obj74 = ns.Object("Cloak") - obj94 = ns.Object("BridgeGuardsBoots") - obj95 = ns.Object("BootsReward") - obj96 = ns.Object("Morgan") - obj98 = ns.Object("MagicShopElevator") - obj99 = ns.Object("Joyce") - obj128 = ns.Object("Gretchen") - obj101 = ns.Object("MayorsFireplace") - obj178 = ns.Object("CaveDoor") - obj102 = ns.Object("Heckler") - obj179 = ns.Object("WaspNest") - obj180[0] = ns.Object("Wasp1") - obj180[1] = ns.Object("Wasp2") - gvar135 = ns.ObjectGroup("NPCs") - gvar181 = ns.ObjectGroup("SpiderDropTriggers1") - gvar182 = ns.ObjectGroup("SpiderDropTriggers2") - gvar103 = ns.ObjectGroup("GateTriggers") - gvar183 = ns.ObjectGroup("WaspTriggers") - gvar184 = ns.ObjectGroup("Urchins") - gvar167 = ns.ObjectGroup("Spiders") - gvar166 = ns.ObjectGroup("Secret01Triggers") - gvar168 = ns.WallGroup("MagicShopElevatorWalls") - wp193 = ns.Waypoint("WellWP") - wp104 = ns.Waypoint("Study") - wp185 = ns.Waypoint("MayorsGates") - wp13 = ns.Waypoint("TargetWP1") - wp14 = ns.Waypoint("TargetWP2") - wp15 = ns.Waypoint("TargetWP3") - wp186 = ns.Waypoint("OfficialWP") - wp187 = ns.Waypoint("CreationWP") - wp16 = ns.Waypoint("ContestAudioOrigin") - wp188 = ns.Waypoint("UrchinWP") - wp105 = ns.Waypoint("ImpWP1") - wp106 = ns.Waypoint("ImpWP2") - wp107 = ns.Waypoint("ImpWP3") - wp108 = ns.Waypoint("ImpWP4") - wp109 = ns.Waypoint("AldwinExitWP") - wp189 = ns.Waypoint("SpiderDropPoint1") - wp190 = ns.Waypoint("SpiderDropPoint2") - wp110 = ns.Waypoint("MayorRewardPath") - wp111 = ns.Waypoint("TownGatePath") - wp112 = ns.Waypoint("MayorHome") - wp191 = ns.Waypoint("AudioOrigin") - wp162 = ns.Waypoint("StudySpiderWP") - wp161 = ns.Waypoint("BigSpiderWP") - wp163 = ns.Waypoint("SpiderGuardPoint") - wp192 = ns.Waypoint("WaspCreationWP") - wp164 = ns.Waypoint("SecretAudioWP") - wp194 = ns.Waypoint("MayorsGuardWP") - wp199 = ns.Waypoint("BridgeGuardWP") - wp198 = ns.Waypoint("ContestGuardWP") - wp195 = ns.Waypoint("GatekeeperWP") - wp196 = ns.Waypoint("Gatekeeper2WP") - wp197 = ns.Waypoint("Gatekeeper3WP") - wp200[0] = ns.Waypoint("WaspWP1") - wp200[1] = ns.Waypoint("WaspWP2") - gvar114 = ns.WaypointGroup("ImpEntrancePath") - gvar115 = ns.WaypointGroup("MayorsPathToGate") - gvar116 = ns.WaypointGroup("MayorsHomeSpiderPath") - ns.WayPointGroupOff(gvar115) - ns.LockDoor(obj75) - ns.LockDoor(obj76) - ns.LockDoor(obj174) - ns.LockDoor(obj175) - ns.LockDoor(obj77) - ns.LockDoor(obj78) - ns.LockDoor(obj79) - ns.LockDoor(obj169) - ns.LockDoor(obj88) - ns.LockDoor(obj90) - ns.LockDoor(obj91) - ns.LockDoor(obj178) - InitializePiece() - InitEvilMage() - DialogSetup() - InitializeDialogs() - ns.StartupScreen(2) - ns.FrameTimer(1, OwnObjects) - ns.FrameTimer(35, DisableElevators) -} -func DebugOff() { - flag118 = false - ns.PrintToAll("Debug mode has been disabled.") -} -func AldwinCheck() { - if !ns.HasItem(obj71, obj80) { - goto LABEL1 - } - ns.PrintToAll("Spell is in Aldwins inv.") - goto LABEL2 -LABEL1: - ns.PrintToAll("Spell not found in Aldwins inv.") -LABEL2: - if !ns.HasItem(obj71, obj81) { - goto LABEL3 - } - ns.PrintToAll("Field Guide is in Aldwins inv.") - goto LABEL4 -LABEL3: - ns.PrintToAll("Field Guide not found in Aldwins inv.") -LABEL4: - return -} -func PlayUrchinDenMusic() { - ns.Music(17, 100) -} -func PlayTunnelMusic() { - ns.Music(18, 100) -} -func ExitDen() { - gvar211 = gvar205 - ns.SetDialog(obj201, ns.NORMAL, Jail2Start, Jail2End) - ns.MoveObject(obj123, 2969, 2354) - ns.MoveObject(obj124, 3016, 2308) - ns.CreatureGuard(obj123, 2969, 2354, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - ns.CreatureGuard(obj124, 3016, 2308, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - ns.SetOwner(ns.GetHost(), obj123) - ns.SetOwner(ns.GetHost(), obj124) -} -func Town3TalkStart() { - ns.Frozen(obj127, true) - ns.CreatureIdle(obj127) - ns.LookAtObject(obj127, ns.GetHost()) - if gvar210 != gvar202 { - goto LABEL1 - } - ns.TellStory(ns.HumanMaleEatFood, "Con02A:Townsman9Talk01") - goto LABEL2 -LABEL1: - if gvar210 == gvar207 { - goto LABEL3 - } - ns.TellStory(ns.HumanMaleEatFood, "Con02A:Townsman9Talk02") -LABEL3: - if gvar210 != gvar207 { - goto LABEL2 - } - ns.TellStory(ns.HumanMaleEatFood, "Con02A:Townsman9Talk03") -LABEL2: - return -} -func Town3TalkEnd() { - ns.Frozen(obj127, false) - ns.Wander(obj127) - ns.SetDialog(obj127, ns.NORMAL, Town3TalkStart, Town3TalkEnd) -} -func Maiden2TalkStart() { - ns.Frozen(obj128, true) - ns.CreatureIdle(obj128) - ns.LookAtObject(obj128, ns.GetHost()) - if gvar211 == gvar205 { - goto LABEL1 - } - ns.TellStory(ns.HumanMaleEatFood, "Con02A:Townsman2Talk02") - goto LABEL2 -LABEL1: - ns.TellStory(ns.HumanMaleEatFood, "Con02A:Maiden2Talk01") -LABEL2: - return -} -func Maiden2TalkEnd() { - ns.Frozen(obj128, false) - ns.Wander(obj128) - ns.SetDialog(obj128, ns.NORMAL, Maiden2TalkStart, Maiden2TalkEnd) -} -func HenrickGreetStart() { - ns.DestroyEveryChat() - ns.TellStory(ns.HumanMaleEatFood, "Con02A:HenrickTalk03") -} -func HenrickGreetEnd() { - ns.SetDialog(obj100, ns.NORMAL, HenrickStart, HenrickEnd) -} -func HenrickStart() { - var ( - v0 int - v1 int - v2 int - ) - ns.DestroyEveryChat() - if gvar213 != gvar202 { - goto LABEL1 - } - v0 = ns.Random(1, 3) - v1 = v0 - if v1 == 1 { - goto LABEL2 - } - if v1 == 2 { - goto LABEL3 - } - if v1 == 3 { - goto LABEL4 - } - goto LABEL1 -LABEL2: - ns.TellStory(ns.HumanMaleEatFood, "Con02A:HenrickTalk04") - goto LABEL1 -LABEL3: - ns.TellStory(ns.HumanMaleEatFood, "Con02A:HenrickTalk05") - goto LABEL1 -LABEL4: - ns.TellStory(ns.HumanMaleEatFood, "Con02A:HenrickTalk03") - goto LABEL1 -LABEL1: - if gvar213 != gvar204 { - goto LABEL5 - } - v0 = ns.Random(1, 2) - v2 = v0 - if v2 == 1 { - goto LABEL6 - } - if v2 == 2 { - goto LABEL7 - } - goto LABEL5 -LABEL6: - ns.TellStory(ns.HumanMaleEatFood, "Con02A:HenrickTalk04") - goto LABEL5 -LABEL7: - ns.TellStory(ns.HumanMaleEatFood, "Con02A:HenrickTalk06") - goto LABEL5 -LABEL5: - return -} -func HenrickEnd() { - ns.SetDialog(obj100, ns.NORMAL, HenrickStart, HenrickEnd) -} -func Jail1Start() { - ns.TellStory(ns.HumanMaleEatFood, "Con02A:JailerTalk01") -} -func Jail1End() { - ns.SetDialog(obj201, ns.NORMAL, Jail1Start, Jail1End) -} -func Jail2Start() { - ns.TellStory(ns.HumanMaleEatFood, "Con02A:JailerTalk02") -} -func Jail2End() { - ns.SetDialog(obj201, ns.NORMAL, Jail2Start, Jail2End) -} -func MakeAWish() { - var v0 int - v0 = ns.MaxHealth(ns.GetCaller()) - ns.RestoreHealth(ns.GetCaller(), v0-ns.CurrentHealth(ns.GetCaller())) - ns.PrintToAll("GeneralPrint:WellSignRefresh") - ns.AudioEvent(ns.RestoreHealthName, wp193) -} -func SetupCreatures() { - ns.SetOwner(ns.GetHost(), obj100) - ns.SetOwner(ns.GetHost(), obj201) - ns.SetOwner(ns.GetHost(), obj122) - ns.LockDoor(obj133) - ns.LockDoor(obj214) - ns.LockDoor(obj215) - ns.LockDoor(obj216) - ns.LockDoor(obj217) -} -func StartWolfAttack() { - if flag220 { - goto LABEL1 - } - ns.ObjectGroupOff(gvar218) - ns.WideScreen(true) - ns.Frozen(ns.GetHost(), true) - ns.CreatureIdle(ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj100) - ns.MoveObject(obj122, ns.GetWaypointX(wp219), ns.GetWaypointY(wp219)) - ns.FrameTimer(1, ActivateWolf) -LABEL1: - return -} -func ActivateWolf() { - ns.CreatureIdle(obj122) - ns.AggressionLevel(obj122, 0.83) - ns.Attack(obj122, ns.GetHost()) - flag220 = true - ns.FrameTimer(50, HenrickWarning) -} -func HenrickWarning() { - ns.Chat(obj100, "Con02A:HenrickTalk01") - ns.Frozen(obj100, true) - ns.CreatureIdle(obj100) - ns.LookAtObject(obj100, obj122) - ns.Frozen(obj122, true) - ns.LookAtObject(obj122, obj100) - ns.MoveWaypoint(wp113, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.CharmCast, wp113) - ns.FrameTimer(20, CharmPepper) -} -func CharmPepper() { - ns.Effect(ns.CHARM, ns.GetObjectX(obj100), ns.GetObjectY(obj100), ns.GetObjectX(obj122), ns.GetObjectY(obj122)) - ivar221 += 1 - if !(ivar221 < 60) { - goto LABEL1 - } - ns.FrameTimer(1, CharmPepper) - goto LABEL2 -LABEL1: - CharmEnd() -LABEL2: - return -} -func CharmEnd() { - ns.AudioEvent(ns.CharmSuccess, wp113) - ns.WideScreen(false) - ns.Frozen(ns.GetHost(), false) - ns.Frozen(obj100, false) - ns.Frozen(obj122, false) - ns.CreatureGuard(obj100, ns.GetObjectX(obj100), ns.GetObjectY(obj100), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - ns.SetOwner(ns.GetHost(), obj122) - ns.AggressionLevel(obj122, 0.16) - ns.CreatureFollow(obj122, obj100) - ns.Chat(obj100, "Con02A:HenrickTalk02") - ns.SetDialog(obj100, ns.NORMAL, HenrickGreetStart, HenrickGreetEnd) -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapInitialize": - MapInitialize() - } -} diff --git a/examples/con02a/dummy_test.go b/examples/con02a/dummy_test.go deleted file mode 100644 index 6ea0969..0000000 --- a/examples/con02a/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package con02a - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/con03a/con03a.go b/examples/con03a/con03a.go deleted file mode 100644 index a0305ef..0000000 --- a/examples/con03a/con03a.go +++ /dev/null @@ -1,519 +0,0 @@ -package con03a - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - fvar4 float32 - fvar5 float32 - obj6 ns.ObjectID - obj7 ns.ObjectID - obj8 ns.ObjectID - obj9 ns.ObjectID - obj10 ns.ObjectID - obj11 ns.ObjectID - obj12 ns.ObjectID - obj13 ns.ObjectID - obj14 ns.ObjectID - obj15 ns.ObjectID - obj16 ns.ObjectID - obj17 ns.ObjectID - obj18 ns.ObjectID - obj19 ns.ObjectID - obj20 ns.ObjectID - obj21 ns.ObjectID - obj22 ns.ObjectID - obj23 ns.ObjectID - wp24 ns.WaypointID - wp25 ns.WaypointID - obj26 ns.ObjectID - obj27 ns.ObjectID - wp28 ns.WaypointID - wp29 ns.WaypointID - gvar30 int - gvar31 int - gvar32 int - gvar33 int - gvar34 int - gvar35 int - gvar36 int - gvar37 int - gvar38 int - gvar39 int - gvar40 int - gvar41 int - gvar42 int - gvar43 ns.ObjectGroupID - gvar44 ns.ObjectGroupID - gvar45 ns.ObjectGroupID - obj46 ns.ObjectID - gvar47 int - obj48 ns.ObjectID - obj49 ns.ObjectID - gvar50 int - gvar51 int - gvar52 int - gvar53 int - gvar54 int - wp55 ns.WaypointID - wp56 ns.WaypointID - wp57 ns.WaypointID - wp58 ns.WaypointID - obj59 ns.ObjectID - gvar60 ns.ObjectGroupID - obj61 ns.ObjectID - gvar62 ns.ObjectGroupID - flag63 bool - obj64 ns.ObjectID - flag65 bool - flag66 bool -) - -func init() { - fvar4 = 184 - fvar5 = -772 - gvar30 = 1 - gvar31 = 1 - gvar32 = 0 - gvar33 = 0 - gvar34 = 1 - gvar35 = 2 - gvar36 = gvar33 - gvar37 = 0 - gvar38 = 1 - gvar39 = gvar37 - gvar40 = 0 - gvar41 = 1 - gvar42 = gvar40 - gvar50 = 0 - gvar51 = 1 - gvar52 = 2 - gvar53 = 3 - gvar54 = gvar50 - flag63 = true - flag65 = false - flag66 = false -} -func DunMirGuard1TalkStart() { - ns.TellStory(ns.SwordsmanHurt, "Con03A.scr:DunMirGuard1") -} -func DunMirGuard1TalkEnd() { -} -func DunMirGuard2TalkStart() { - ns.TellStory(ns.SwordsmanHurt, "Con03A.scr:DunMirGuard2") -} -func DunMirGuard2TalkEnd() { -} -func MineGuardDialogStart() { - var v0 int - v0 = gvar31 - if v0 == 1 { - goto LABEL1 - } - if v0 == 2 { - goto LABEL2 - } - if v0 == 4 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - ns.TellStory(ns.DemonRecognize, "Con03A.scr:MineGuardA") - goto LABEL5 -LABEL2: - ns.TellStory(ns.DemonRecognize, "Con03A.scr:MineGuardB") - goto LABEL5 -LABEL3: - ns.TellStory(ns.DemonRecognize, "Con03A.scr:MineGuardC") - goto LABEL5 -LABEL4: - goto LABEL5 -LABEL5: - return -} -func MineGuardDialogEnd() { - var v0 int - v0 = gvar31 - if v0 == 1 { - goto LABEL1 - } - goto LABEL2 -LABEL1: - gvar31 = 2 - goto LABEL3 -LABEL2: - goto LABEL3 -LABEL3: - return -} -func GalavaGuard1TalkStart() { - ns.TellStory(ns.SwordsmanHurt, "Con03A.scr:GalavaGuard1") -} -func GalavaGuard1TalkEnd() { -} -func GalavaGuard2TalkStart() { - ns.TellStory(ns.SwordsmanHurt, "Con03A.scr:GalavaGuard2") -} -func GalavaGuard2TalkEnd() { -} -func IxGuard1TalkStart() { - ns.TellStory(ns.SwordsmanHurt, "Con03A.scr:IxGuard1") -} -func IxGuard1TalkEnd() { -} -func IxGuard2TalkStart() { - ns.TellStory(ns.SwordsmanHurt, "Con03A.scr:IxGuard2") -} -func IxGuard2TalkEnd() { -} -func CaptainDialogStart() { - var v0 int - ns.LookAtObject(obj21, ns.GetHost()) - v0 = gvar30 - if v0 == 1 { - goto LABEL1 - } - if v0 == 2 { - goto LABEL2 - } - if v0 == 3 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - ns.TellStory(ns.SwordsmanHurt, "Con03A.scr:JandorA") - goto LABEL5 -LABEL2: - ns.TellStory(ns.SwordsmanHurt, "Con03A.scr:JandorB") - goto LABEL5 -LABEL3: - ns.CancelDialog(obj21) - ChapterEnd() - goto LABEL5 -LABEL4: - goto LABEL5 -LABEL5: - return -} -func CaptainDialogEnd() { - var v0 int - v0 = gvar30 - if v0 == 1 { - goto LABEL1 - } - if v0 == 2 { - goto LABEL2 - } - if v0 == 3 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - ns.JournalEdit(ns.GetHost(), "Con03FindAirshipCap", 4) - ns.SetDialog(obj21, ns.NORMAL, CaptainDialogStart, CaptainDialogEnd) - ns.PrintToAll("Con03C.scr:TaskComplete") - gvar30 = 2 - CaptainDialogStart() - goto LABEL5 -LABEL2: - gvar30 = 3 - goto LABEL5 -LABEL3: - goto LABEL5 -LABEL4: - goto LABEL5 -LABEL5: - return -} -func InitializeRobbery() { - obj61 = ns.Object("Robber") - gvar62 = ns.ObjectGroup("RobberyTriggers") -} -func HermitTalkStart() { - var v0 int - ns.LookAtObject(obj46, ns.GetHost()) - v0 = gvar54 - if v0 == gvar50 { - goto LABEL1 - } - if v0 == gvar51 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - if !ns.HasItem(ns.GetHost(), obj48) { - goto LABEL4 - } - ns.TellStory(ns.SwordsmanHurt, "Con03A.scr:HermitHappy") - gvar54 = gvar52 - goto LABEL5 -LABEL4: - ns.TellStory(ns.SwordsmanHurt, "Con03A.scr:HermitMeet01") -LABEL5: - goto LABEL3 -LABEL2: - if !ns.HasItem(ns.GetHost(), obj48) { - goto LABEL6 - } - ns.TellStory(ns.SwordsmanHurt, "Con03A.scr:HermitHappy") - gvar54 = gvar52 - goto LABEL7 -LABEL6: - ns.TellStory(ns.SwordsmanHurt, "Con03A.scr:HermitMeet02") -LABEL7: - goto LABEL3 -LABEL3: - return -} -func HermitTalkEnd() { - var v0 int - v0 = gvar54 - if v0 == gvar50 { - goto LABEL1 - } - if v0 == gvar52 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - gvar32 = 1 - gvar54 = gvar51 - ns.JournalEntry(ns.GetHost(), "Con03AHermitQuest", 2) - ns.PrintToAll("Con03C.scr:NewTask") - goto LABEL3 -LABEL2: - ns.CancelDialog(obj46) - ns.GiveXp(ns.GetHost(), 500) - ns.Pickup(ns.GetHost(), obj49) - ns.Delete(obj48) - if gvar32 != 1 { - goto LABEL4 - } - ns.JournalEdit(ns.GetHost(), "Con03AHermitQuest", 4) - ns.PrintToAll("Con03C.scr:TaskComplete") -LABEL4: - goto LABEL3 -LABEL3: - return -} -func OwnDudes() { - ns.LockDoor(obj10) - ns.LockDoor(obj11) - ns.LockDoor(obj12) - ns.LockDoor(obj13) -} -func ChapterEnd() { - ns.Blind() - ns.Delete(obj48) - ns.Delete(ns.Object("Con02a:BridgeGuardsBoots")) - ns.FrameTimer(60, ChapterEndB) -} -func ChapterEndB() { - ns.MoveObject(ns.GetHost(), 650, 3421) -} -func InitializeWaspNest() { - obj26 = ns.Object("Wasp01") - obj27 = ns.Object("Wasp02") - obj64 = ns.Object("WaspNest") - wp28 = ns.Waypoint("WaspCreateWP01") - wp29 = ns.Waypoint("WaspCreateWP02") - ns.Wander(obj26) - ns.Wander(obj27) -} -func PlayOutdoorMusic() { - ns.Music(21, 100) -} -func InitializeMusicStuff() { - obj59 = ns.Object("BanditCampEntranceTrigger") - gvar60 = ns.ObjectGroup("BanditCampExitTrigger") -} -func MineJournalEntry() { - ns.JournalEntry(ns.GetHost(), "LocateMineForeman", 2) -} -func MapInitialize() { - obj6 = ns.Object("Kenneth") - obj7 = ns.Object("Lance") - obj8 = ns.Object("Rastur") - obj9 = ns.Object("Kirik") - obj10 = ns.Object("GalavaGate1") - obj11 = ns.Object("GalavaGate2") - obj17 = ns.Object("IxGate1") - obj18 = ns.Object("IxGate2") - obj12 = ns.Object("DunMirDoor1") - obj13 = ns.Object("DunMirDoor2") - obj19 = ns.Object("Loproc") - obj20 = ns.Object("BiffordByzanti") - obj14 = ns.Object("Millard") - obj15 = ns.Object("Janero") - obj16 = ns.Object("Horst") - obj17 = ns.Object("IxGate1") - obj18 = ns.Object("IxGate2") - gvar43 = ns.ObjectGroup("WaspGroup1") - gvar44 = ns.ObjectGroup("WaspGroup2") - gvar45 = ns.ObjectGroup("FishGroup") - obj21 = ns.Object("Captain") - obj22 = ns.Object("AirshipBasket") - obj23 = ns.Object("AirshipShadow") - wp55 = ns.Waypoint("JandorWP") - wp56 = ns.Waypoint("JandorLookWP") - wp57 = ns.Waypoint("BasketWP") - wp58 = ns.Waypoint("BasketShadowWP") - wp24 = ns.Waypoint("JournalAudioOrigin") - wp25 = ns.Waypoint("SecretAudioOrigin") - ns.GroupWander(gvar43) - ns.GroupWander(gvar44) - ns.GroupWander(gvar45) - obj46 = ns.Object("Osborn") - obj48 = ns.Object("Specs") - obj49 = ns.Object("BatGuide") - ns.StoryPic(obj6, "Warrior8Pic") - ns.SetDialog(obj6, ns.NORMAL, DunMirGuard1TalkStart, DunMirGuard1TalkEnd) - ns.StoryPic(obj7, "Warrior9Pic") - ns.SetDialog(obj7, ns.NORMAL, DunMirGuard2TalkStart, DunMirGuard2TalkEnd) - ns.StoryPic(obj8, "WizardGuard1Pic") - ns.SetDialog(obj8, ns.NORMAL, GalavaGuard1TalkStart, GalavaGuard1TalkEnd) - ns.StoryPic(obj9, "WizardGuard2Pic") - ns.SetDialog(obj9, ns.NORMAL, GalavaGuard2TalkStart, GalavaGuard2TalkEnd) - ns.StoryPic(obj14, "Townsman2Pic") - ns.SetDialog(obj14, ns.NORMAL, MineGuardDialogStart, MineGuardDialogEnd) - ns.StoryPic(obj21, "AirshipCaptainPic") - ns.SetDialog(obj21, ns.NEXT, CaptainDialogStart, CaptainDialogEnd) - ns.StoryPic(obj46, "OsbornPic") - ns.SetDialog(obj46, ns.NORMAL, HermitTalkStart, HermitTalkEnd) - ns.StoryPic(obj15, "Townsman2Pic") - ns.SetDialog(obj15, ns.NORMAL, IxGuard1TalkStart, IxGuard1TalkEnd) - ns.StoryPic(obj16, "IxGuard2Pic") - ns.SetDialog(obj16, ns.NORMAL, IxGuard2TalkStart, IxGuard2TalkEnd) - InitializeRobbery() - ns.FrameTimer(2, OwnDudes) - InitializeWaspNest() - InitializeMusicStuff() - PlayOutdoorMusic() - ns.StartupScreen(3) - ns.FrameTimer(15, MineJournalEntry) -} -func SpecsFound() { - ns.MoveWaypoint(wp24, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.JournalEntryAdd, wp24) - ns.PrintToAll("thing.db:SpectaclesDescription") -} -func WaspIdle() { - ns.CreatureGroupIdle(gvar44) -} -func SecretArea1() { - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 20) -} -func MapEntry() { - ns.UnBlind() - if ns.GetQuestStatus("Con03B:BeatMine") != 1 { - goto LABEL1 - } - gvar31 = 4 - ns.MoveObject(obj21, ns.GetWaypointX(wp55), ns.GetWaypointY(wp55)) - ns.ObjectOn(obj21) - ns.CreatureGuard(obj21, ns.GetWaypointX(wp55), ns.GetWaypointY(wp55), ns.GetWaypointX(wp56), ns.GetWaypointY(wp56), 10) - ns.MoveObject(obj22, ns.GetWaypointX(wp57), ns.GetWaypointY(wp57)) - ns.MoveObject(obj23, ns.GetWaypointX(wp58), ns.GetWaypointY(wp58)) - ns.CancelDialog(obj8) - ns.CancelDialog(obj9) - ns.CancelDialog(obj15) - ns.CancelDialog(obj16) - ns.CancelDialog(obj7) -LABEL1: - return -} -func CheckForBoots() { - if !ns.HasItem(ns.GetHost(), ns.Object("Con02a:BridgeGuardsBoots")) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.JournalEntry(ns.GetHost(), "ReturnBridgeGuardsBoots", 2) -LABEL1: - return -} -func yobutt() { - gvar31 = 4 - ns.MoveObject(obj21, 1851, 3388) - ns.ObjectOn(obj21) - ns.CreatureGuard(obj21, 1851, 3388, 1700, 3600, 10) - ns.MoveObject(obj22, ns.GetObjectX(obj22)+fvar4, ns.GetObjectY(obj22)+fvar5) - ns.MoveObject(obj23, ns.GetObjectX(obj23)+fvar4, ns.GetObjectY(obj23)+fvar5) -} -func PlayerDeath() { - ns.DeathScreen(3) -} -func MonsterGoHome() { - r1 := ns.IsAttackedBy(ns.GetHost(), ns.GetCaller()) - if !r1 { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func ToggleBanditMusic() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - if !ns.IsObjectOn(obj59) { - goto LABEL2 - } - ns.ObjectOff(obj59) - ns.ObjectGroupOn(gvar60) - ns.Music(5, 100) - goto LABEL1 -LABEL2: - ns.ObjectOn(obj59) - ns.ObjectGroupOff(gvar60) - ns.Music(21, 100) -LABEL1: - return -} -func RobberRecognize() { - if !(ns.IsCaller(ns.GetHost()) && flag63) { - goto LABEL1 - } - flag63 = false - ns.Attack(ns.GetTrigger(), ns.GetHost()) - ns.Chat(ns.GetTrigger(), "War01A.scr:Bully1") -LABEL1: - return -} -func RobberDie() { - ns.DestroyEveryChat() - ns.ObjectGroupOff(gvar62) -} -func CancelRobbery() { - flag63 = false - ns.ObjectGroupOff(gvar62) -} -func SecretSFX() { - ns.MoveWaypoint(wp25, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretFound, wp25) -} -func Secret01Found() { - ns.ObjectOff(ns.GetTrigger()) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 100) - SecretSFX() -} -func Secret02Found() { - ns.ObjectOff(ns.GetTrigger()) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 100) - SecretSFX() -} -func Wasp01FollowPath() { - ns.Move(obj26, wp28) - ns.AggressionLevel(obj26, 0.83) -} -func OnEvent(typ string) { - switch typ { - case "MapInitialize": - MapInitialize() - case "MapEntry": - MapEntry() - case "PlayerDeath": - PlayerDeath() - } -} diff --git a/examples/con03a/dummy_test.go b/examples/con03a/dummy_test.go deleted file mode 100644 index 81fd891..0000000 --- a/examples/con03a/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package con03a - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/con03b/con03b.go b/examples/con03b/con03b.go deleted file mode 100644 index 3c10b56..0000000 --- a/examples/con03b/con03b.go +++ /dev/null @@ -1,1574 +0,0 @@ -package con03b - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 ns.ObjectID - obj5 ns.ObjectID - obj6 ns.ObjectID - obj7 ns.ObjectID - obj8 ns.ObjectID - obj9 ns.ObjectID - obj10 ns.ObjectID - obj11 ns.ObjectID - obj12 ns.ObjectID - obj13 ns.ObjectID - obj14 ns.ObjectID - ivar15 int - gvar16 int - gvar17 int - gvar18 int - gvar19 int - gvar20 int - ivar21 int - ivar22 int - wp23 ns.WaypointID - wp24 ns.WaypointID - wp25 ns.WaypointID - wp26 ns.WaypointID - wp27 ns.WaypointID - wp28 ns.WaypointID - obj29 ns.ObjectID - gvar30 ns.WallGroupID - gvar31 ns.WallGroupID - gvar32 ns.WallGroupID - gvar33 ns.WallID - gvar34 ns.WallID - gvar35 ns.WallID - gvar36 ns.WallID - gvar37 ns.WallID - gvar38 ns.WallID - gvar39 ns.WallID - gvar40 ns.WallID - gvar41 ns.WallID - gvar42 ns.WallID - gvar43 ns.WallID - gvar44 ns.WallID - obj45 ns.ObjectID - obj46 ns.ObjectID - obj47 ns.ObjectID - obj48 ns.ObjectID - obj49 ns.ObjectID - obj50 ns.ObjectID - obj51 ns.ObjectID - obj52 ns.ObjectID - obj53 ns.ObjectID - obj54 ns.ObjectID - obj55 ns.ObjectID - obj56 ns.ObjectID - obj57 ns.ObjectID - obj58 ns.ObjectID - obj59 ns.ObjectID - obj60 ns.ObjectID - obj61 ns.ObjectID - obj62 ns.ObjectID - obj63 ns.ObjectID - obj64 ns.ObjectID - obj65 ns.ObjectID - obj66 ns.ObjectID - obj67 ns.ObjectID - obj68 ns.ObjectID - obj69 ns.ObjectID - obj70 ns.ObjectID - obj71 ns.ObjectID - obj72 ns.ObjectID - obj73 ns.ObjectID - gvar74 int - obj75 ns.ObjectID - gvar76 int - obj77 ns.ObjectID - obj78 ns.ObjectID - obj79 ns.ObjectID - obj80 ns.ObjectID - gvar81 int - gvar82 int - gvar83 int - wp84 ns.WaypointID - wp85 [24]ns.WaypointID - wp86 [7]ns.WaypointID - wp87 [4]ns.WaypointID - wp88 ns.WaypointID - wp89 ns.WaypointID - wp90 ns.WaypointID - wp91 ns.WaypointID - wp92 ns.WaypointID - wp93 ns.WaypointID - wp94 ns.WaypointID - wp95 ns.WaypointID - wp96 ns.WaypointID - wp97 ns.WaypointID - wp98 ns.WaypointID - obj99 ns.ObjectID - obj100 ns.ObjectID - obj101 ns.ObjectID - obj102 ns.ObjectID - obj103 ns.ObjectID - obj104 ns.ObjectID - obj105 ns.ObjectID - obj106 ns.ObjectID - obj107 ns.ObjectID - obj108 ns.ObjectID - obj109 ns.ObjectID - obj110 ns.ObjectID - obj111 ns.ObjectID - gvar112 ns.ObjectGroupID - gvar113 ns.ObjectGroupID - gvar114 ns.ObjectGroupID - gvar115 ns.ObjectGroupID - gvar116 ns.ObjectGroupID - obj117 ns.ObjectID - obj118 ns.ObjectID - obj119 ns.ObjectID - obj120 ns.ObjectID - wp121 ns.WaypointID - obj122 ns.ObjectID - obj123 ns.ObjectID - obj124 ns.ObjectID - obj125 ns.ObjectID - gvar126 int - gvar127 int - gvar128 int - gvar129 int - gvar130 int -) - -func init() { - ivar22 = 0 - gvar81 = 1 - ivar21 = 0 - ivar15 = 1 - gvar16 = 0 - gvar17 = 0 - gvar18 = 0 - gvar19 = 0 - gvar20 = 0 - gvar83 = 0 - gvar127 = 0 - gvar128 = 0 - gvar129 = 0 - gvar130 = 0 -} -func Worker1Start() { - ns.ObjectOn(obj99) - ns.Move(obj4, wp94) - ns.Chat(obj4, "Con03B.scr:Worker1ChatA") -} -func TopFloorCleared() { - ns.ObjectOn(ns.Object("Worker1Unlock")) - ns.Chat(obj4, "Con03B.scr:Worker1ChatE") - ns.Move(obj4, wp97) - ivar15 = 6 -} -func GiveHint1() { - ns.PrintToAll("Con03.scr:Hint1") - ns.JournalEntry(ns.GetHost(), "Con03Hint1", 8) -} -func Worker1DialogStart() { - var v0 int - ns.LookAtObject(obj4, ns.GetHost()) - ns.DestroyEveryChat() - v0 = ivar15 - if v0 == 1 { - goto LABEL1 - } - if v0 == 2 { - goto LABEL2 - } - if v0 == 3 { - goto LABEL3 - } - if v0 == 4 { - goto LABEL4 - } - if v0 == 5 { - goto LABEL5 - } - if v0 == 6 { - goto LABEL6 - } - if v0 == 7 { - goto LABEL7 - } - goto LABEL8 -LABEL1: - ns.TellStory(ns.DemonRecognize, "Con03B.scr:Worker1B") - goto LABEL9 -LABEL2: - ns.TellStory(ns.DemonRecognize, "Con03B.scr:Worker1C") - goto LABEL9 -LABEL3: - ns.TellStory(ns.DemonRecognize, "Con03B.scr:Worker1D") - goto LABEL9 -LABEL4: - if ivar21 != 0 { - goto LABEL10 - } - ns.TellStory(ns.DemonRecognize, "Con03B.scr:Worker1Gi") -LABEL10: - if ivar21 != 1 { - goto LABEL11 - } - ns.TellStory(ns.DemonRecognize, "Con03B.scr:Worker1Gii") -LABEL11: - if ivar21 != 2 { - goto LABEL12 - } - ns.TellStory(ns.DemonRecognize, "Con03B.scr:Worker1Giii") -LABEL12: - goto LABEL9 -LABEL5: - ns.TellStory(ns.DemonRecognize, "Con03B.scr:Worker1Hi") - goto LABEL9 -LABEL6: - if ivar21 != 3 { - goto LABEL13 - } - ns.TellStory(ns.DemonRecognize, "Con03B.scr:Worker1Ii") -LABEL13: - if ivar21 != 4 { - goto LABEL14 - } - ns.TellStory(ns.DemonRecognize, "Con03B.scr:Worker1Iii") -LABEL14: - goto LABEL9 -LABEL7: - ns.TellStory(ns.DemonRecognize, "Con03B.scr:Worker1Ji") - goto LABEL9 -LABEL8: - goto LABEL9 -LABEL9: - return -} -func Worker1DialogEnd() { - var v0 int - v0 = ivar15 - if v0 == 1 { - goto LABEL1 - } - if v0 == 5 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.Frozen(ns.GetHost(), false) - ns.FrameTimer(2, Worker1Start) - ns.Pickup(ns.GetHost(), obj10) - ns.PrintToAll("Con03B.scr:GotKey") - ivar22 += 1 - ns.CancelDialog(obj4) - goto LABEL4 -LABEL2: - ns.FrameTimer(2, TopFloorCleared) - ns.Pickup(ns.GetHost(), obj14) - ns.PrintToAll("Con03B.scr:GotKey") - goto LABEL4 -LABEL3: - goto LABEL4 -LABEL4: - return -} -func Worker2DialogStart() { - var v0 int - ns.LookAtObject(obj5, ns.GetHost()) - ns.DestroyEveryChat() - v0 = gvar16 - if v0 == 0 { - goto LABEL1 - } - if v0 == 1 { - goto LABEL2 - } - if v0 == 2 { - goto LABEL3 - } - if v0 == 3 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - if !(ivar22 <= 2) { - goto LABEL6 - } - ns.TellStory(ns.DemonRecognize, "Con03B.scr:WorkersTalkAKey") - goto LABEL7 -LABEL6: - ns.TellStory(ns.DemonRecognize, "Con03B.scr:WorkersTalkA") -LABEL7: - goto LABEL8 -LABEL2: - ns.TellStory(ns.DemonRecognize, "Con03B.scr:WorkersTalkA") - goto LABEL8 -LABEL3: - ns.TellStory(ns.DemonRecognize, "Con03B.scr:WorkersTalkB") - goto LABEL8 -LABEL4: - ns.TellStory(ns.DemonRecognize, "Con03B.scr:WorkersTalkC") - goto LABEL8 -LABEL5: - goto LABEL8 -LABEL8: - return -} -func Worker2DialogEnd() { - var v0 int - v0 = gvar16 - if v0 == 0 { - goto LABEL1 - } - if v0 == 1 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.Frozen(ns.GetHost(), false) - ns.CreatureFollow(obj5, ns.GetHost()) - if !(ivar22 <= 2) { - goto LABEL4 - } - ns.Pickup(ns.GetHost(), obj11) - ns.PrintToAll("Con03B.scr:GotKey") - ivar22 += 1 -LABEL4: - gvar16 = 1 - if ivar21 != 0 { - goto LABEL5 - } - ns.FrameTimer(300, GiveHint1) -LABEL5: - ns.CancelDialog(obj5) - goto LABEL6 -LABEL2: - ns.CreatureFollow(obj5, ns.GetHost()) - goto LABEL6 -LABEL3: - goto LABEL6 -LABEL6: - return -} -func Worker3DialogStart() { - var v0 int - ns.LookAtObject(obj6, ns.GetHost()) - ns.DestroyEveryChat() - v0 = gvar17 - if v0 == 0 { - goto LABEL1 - } - if v0 == 1 { - goto LABEL2 - } - if v0 == 2 { - goto LABEL3 - } - if v0 == 3 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - if !(ivar22 <= 2) { - goto LABEL6 - } - ns.TellStory(ns.DemonRecognize, "Con03B.scr:WorkersTalkAKey") - goto LABEL7 -LABEL6: - ns.TellStory(ns.DemonRecognize, "Con03B.scr:WorkersTalkA") -LABEL7: - goto LABEL8 -LABEL2: - ns.TellStory(ns.DemonRecognize, "Con03B.scr:WorkersTalkA") - goto LABEL8 -LABEL3: - ns.TellStory(ns.DemonRecognize, "Con03B.scr:WorkersTalkB") - goto LABEL8 -LABEL4: - ns.TellStory(ns.DemonRecognize, "Con03B.scr:WorkersTalkC") - goto LABEL8 -LABEL5: - goto LABEL8 -LABEL8: - return -} -func Worker3DialogEnd() { - var v0 int - v0 = gvar17 - if v0 == 0 { - goto LABEL1 - } - if v0 == 1 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.Frozen(ns.GetHost(), false) - ns.CreatureFollow(obj6, ns.GetHost()) - if !(ivar22 <= 2) { - goto LABEL4 - } - ns.Pickup(ns.GetHost(), obj12) - ns.PrintToAll("Con03B.scr:GotKey") - ivar22 += 1 -LABEL4: - gvar17 = 1 - if ivar21 != 0 { - goto LABEL5 - } - ns.FrameTimer(300, GiveHint1) -LABEL5: - ns.CancelDialog(obj6) - goto LABEL6 -LABEL2: - ns.CreatureFollow(obj6, ns.GetHost()) - goto LABEL6 -LABEL3: - goto LABEL6 -LABEL6: - return -} -func Worker4DialogStart() { - var v0 int - ns.LookAtObject(obj7, ns.GetHost()) - ns.DestroyEveryChat() - v0 = gvar18 - if v0 == 0 { - goto LABEL1 - } - if v0 == 1 { - goto LABEL2 - } - if v0 == 2 { - goto LABEL3 - } - if v0 == 3 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - ns.TellStory(ns.DemonRecognize, "Con03B.scr:WorkersTalkA") - goto LABEL6 -LABEL2: - ns.TellStory(ns.DemonRecognize, "Con03B.scr:WorkersTalkA") - goto LABEL6 -LABEL3: - ns.TellStory(ns.DemonRecognize, "Con03B.scr:WorkersTalkB") - goto LABEL6 -LABEL4: - ns.TellStory(ns.DemonRecognize, "Con03B.scr:WorkersTalkC") - goto LABEL6 -LABEL5: - goto LABEL6 -LABEL6: - return -} -func Worker4DialogEnd() { - var v0 int - v0 = gvar18 - if v0 == 0 { - goto LABEL1 - } - if v0 == 1 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.Frozen(ns.GetHost(), false) - ns.CreatureFollow(obj7, ns.GetHost()) - gvar18 = 1 - ns.CancelDialog(obj7) - goto LABEL4 -LABEL2: - ns.CreatureFollow(obj7, ns.GetHost()) - goto LABEL4 -LABEL3: - goto LABEL4 -LABEL4: - return -} -func Worker5DialogStart() { - var v0 int - ns.LookAtObject(obj8, ns.GetHost()) - ns.DestroyEveryChat() - v0 = gvar19 - if v0 == 0 { - goto LABEL1 - } - if v0 == 1 { - goto LABEL2 - } - if v0 == 2 { - goto LABEL3 - } - if v0 == 3 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - ns.TellStory(ns.DemonRecognize, "Con03B.scr:WorkersTalkA") - goto LABEL6 -LABEL2: - ns.TellStory(ns.DemonRecognize, "Con03B.scr:WorkersTalkA") - goto LABEL6 -LABEL3: - ns.TellStory(ns.DemonRecognize, "Con03B.scr:WorkersTalkB") - goto LABEL6 -LABEL4: - ns.TellStory(ns.DemonRecognize, "Con03B.scr:WorkersTalkC") - goto LABEL6 -LABEL5: - goto LABEL6 -LABEL6: - return -} -func Worker5DialogEnd() { - var v0 int - v0 = gvar19 - if v0 == 0 { - goto LABEL1 - } - if v0 == 1 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.Frozen(ns.GetHost(), false) - ns.CreatureFollow(obj8, ns.GetHost()) - gvar19 = 1 - ns.CancelDialog(obj8) - goto LABEL4 -LABEL2: - ns.CreatureFollow(obj8, ns.GetHost()) - goto LABEL4 -LABEL3: - goto LABEL4 -LABEL4: - return -} -func Worker6DialogStart() { - var v0 int - ns.LookAtObject(obj9, ns.GetHost()) - ns.DestroyEveryChat() - v0 = gvar20 - if v0 == 0 { - goto LABEL1 - } - if v0 == 1 { - goto LABEL2 - } - if v0 == 2 { - goto LABEL3 - } - if v0 == 3 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - if !(ivar22 <= 2) { - goto LABEL6 - } - ns.TellStory(ns.DemonRecognize, "Con03B.scr:WorkersTalkAKey") - goto LABEL7 -LABEL6: - ns.TellStory(ns.DemonRecognize, "Con03B.scr:WorkersTalkA") -LABEL7: - goto LABEL8 -LABEL2: - ns.TellStory(ns.DemonRecognize, "Con03B.scr:WorkersTalkA") - goto LABEL8 -LABEL3: - ns.TellStory(ns.DemonRecognize, "Con03B.scr:WorkersTalkB") - goto LABEL8 -LABEL4: - ns.TellStory(ns.DemonRecognize, "Con03B.scr:WorkersTalkC") - goto LABEL8 -LABEL5: - goto LABEL8 -LABEL8: - return -} -func Worker6DialogEnd() { - var v0 int - v0 = gvar20 - if v0 == 0 { - goto LABEL1 - } - if v0 == 1 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.Frozen(ns.GetHost(), false) - ns.CreatureFollow(obj9, ns.GetHost()) - if !(ivar22 <= 2) { - goto LABEL4 - } - ns.Pickup(ns.GetHost(), obj13) - ns.PrintToAll("Con03B.scr:GotKey") - ivar22 += 1 -LABEL4: - gvar20 = 1 - if ivar21 != 0 { - goto LABEL5 - } - ns.FrameTimer(300, GiveHint1) -LABEL5: - ns.CancelDialog(obj9) - goto LABEL6 -LABEL2: - ns.CreatureFollow(obj9, ns.GetHost()) - goto LABEL6 -LABEL3: - goto LABEL6 -LABEL6: - return -} -func WallOpen2() { - ns.ObjectGroupOn(ns.ObjectGroup("Walls2Spiders")) - ns.ObjectGroupOff(ns.ObjectGroup("Walls2Triggers")) - ns.WallGroupOpen(gvar31) - ns.WallBreak(gvar35) - ns.WallBreak(gvar36) - ns.WallBreak(gvar37) - ns.WallBreak(gvar38) - ns.WallBreak(gvar39) - ns.WallBreak(gvar40) - ns.WallBreak(gvar41) - ns.WallBreak(gvar42) - ns.WallBreak(gvar43) - ns.WallBreak(gvar44) -} -func WallOpen3() { - ns.WallGroupOpen(gvar32) -} -func WallClose3() { - ns.WallGroupClose(gvar32) -} -func ToggleElevator1() { - ns.ObjectToggle(obj46) - ns.ObjectToggle(obj47) - ns.ObjectToggle(obj48) - ns.ObjectToggle(obj49) - ns.ObjectToggle(obj50) - ns.ObjectToggle(obj51) - ns.ObjectToggle(obj52) - ns.ObjectToggle(obj53) - ns.ObjectToggle(obj54) - if !ns.IsObjectOn(obj46) { - goto LABEL1 - } - ns.AudioEvent(ns.Gear3, ns.Waypoint("ElevatorSFX")) -LABEL1: - return -} -func ToggleElevator2() { - ns.ObjectToggle(obj55) - ns.ObjectToggle(obj56) - ns.ObjectToggle(obj57) - ns.ObjectToggle(obj58) - ns.ObjectToggle(obj59) - ns.ObjectToggle(obj60) - ns.ObjectToggle(obj61) -} -func ToggleElevator3() { - ns.ObjectToggle(obj62) - ns.ObjectToggle(obj63) - ns.ObjectToggle(obj64) - ns.ObjectToggle(obj65) - ns.ObjectToggle(obj66) - ns.ObjectToggle(obj67) - ns.ObjectToggle(obj68) -} -func SetupElevators() { - if ns.GetElevatorStatus(obj47) != 2 { - goto LABEL1 - } - ns.ObjectOff(obj46) - ns.ObjectOff(obj47) - ns.ObjectOff(obj55) - ns.ObjectOff(obj56) - ns.ObjectOff(obj62) - ns.ObjectOff(obj63) - goto LABEL2 -LABEL1: - ns.FrameTimer(5, SetupElevators) -LABEL2: - return -} -func RunAway1() { - if !ns.HasClass(ns.GetCaller(), ns.MONSTER) { - goto LABEL1 - } - if !ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) { - goto LABEL1 - } - ns.Move(ns.GetCaller(), wp23) -LABEL1: - return -} -func RunAway2() { - if !ns.HasClass(ns.GetCaller(), ns.MONSTER) { - goto LABEL1 - } - if ns.IsOwnedBy(ns.GetCaller(), ns.GetHost()) { - goto LABEL1 - } - ns.Move(ns.GetCaller(), wp24) -LABEL1: - return -} -func RunAway3() { - if !ns.HasClass(ns.GetCaller(), ns.MONSTER) { - goto LABEL1 - } - if ns.IsOwnedBy(ns.GetCaller(), ns.GetHost()) { - goto LABEL1 - } - ns.Move(ns.GetCaller(), wp25) -LABEL1: - return -} -func RunAway4() { - if !ns.HasClass(ns.GetCaller(), ns.MONSTER) { - goto LABEL1 - } - if ns.IsOwnedBy(ns.GetCaller(), ns.GetHost()) { - goto LABEL1 - } - ns.Move(ns.GetCaller(), wp26) -LABEL1: - return -} -func RunAway5() { - if !ns.HasClass(ns.GetCaller(), ns.MONSTER) { - goto LABEL1 - } - if ns.IsOwnedBy(ns.GetCaller(), ns.GetHost()) { - goto LABEL1 - } - ns.Move(ns.GetCaller(), wp27) -LABEL1: - return -} -func RunAway6() { - if !ns.HasClass(ns.GetCaller(), ns.MONSTER) { - goto LABEL1 - } - if ns.IsOwnedBy(ns.GetCaller(), ns.GetHost()) { - goto LABEL1 - } - ns.Move(ns.GetCaller(), wp28) -LABEL1: - return -} -func ForemanDialogStart() { - var v0 int - v0 = gvar81 - if v0 == 1 { - goto LABEL1 - } - if v0 == 2 { - goto LABEL2 - } - if v0 == 3 { - goto LABEL3 - } - if v0 == 4 { - goto LABEL4 - } - if v0 == 5 { - goto LABEL5 - } - if v0 == 6 { - goto LABEL6 - } - goto LABEL7 -LABEL1: - ns.TellStory(ns.DemonRecognize, "Con03C.scr:ForemanA") - goto LABEL8 -LABEL2: - ns.TellStory(ns.DemonRecognize, "Con03C.scr:ForemanB") - goto LABEL8 -LABEL3: - ns.TellStory(ns.DemonRecognize, "Con03C.scr:ForemanC") - goto LABEL8 -LABEL4: - ns.TellStory(ns.DemonRecognize, "Con03C.scr:ForemanD") - goto LABEL8 -LABEL5: - ns.TellStory(ns.DemonRecognize, "Con03C.scr:ForemanE") - goto LABEL8 -LABEL6: - ns.TellStory(ns.DemonRecognize, "Con03C.scr:ForemanF") - goto LABEL8 -LABEL7: - goto LABEL8 -LABEL8: - return -} -func ForemanDialogEnd() { - var v0 int - v0 = gvar81 - if v0 == 1 { - goto LABEL1 - } - if v0 == 2 { - goto LABEL2 - } - if v0 == 3 { - goto LABEL3 - } - if v0 == 4 { - goto LABEL4 - } - if v0 == 5 { - goto LABEL5 - } - if v0 == 6 { - goto LABEL6 - } - goto LABEL7 -LABEL1: - ns.JournalEdit(ns.GetHost(), "LocateMineForeman", 4) - ns.PrintToAll("Con03C.scr:TaskComplete") - ns.JournalEntry(ns.GetHost(), "Con03RescueMineWorkers", 2) - ns.PrintToAll("Con03C.scr:NewTask") - ns.Pickup(ns.GetHost(), obj78) - ns.Pickup(ns.GetHost(), obj79) - ns.Pickup(ns.GetHost(), obj80) - ns.PrintToAll("GeneralPrint:GainedKey") - gvar81 = 2 - goto LABEL8 -LABEL2: - gvar81 = 3 - goto LABEL8 -LABEL3: - gvar81 = 2 - goto LABEL8 -LABEL4: - ns.JournalEntry(ns.GetHost(), "Con03FindAirshipCap", 2) - ns.PrintToAll("Con03C.scr:NewTask") - ns.Pickup(ns.GetHost(), obj77) - gvar81 = 5 - goto LABEL8 -LABEL5: - gvar81 = 6 - goto LABEL8 -LABEL6: - gvar81 = 5 - goto LABEL8 -LABEL7: - goto LABEL8 -LABEL8: - return -} -func InitializeForeman() { - obj75 = ns.Object("Foreman") - obj77 = ns.Object("Gold500") - obj78 = ns.Object("BlueKey") - obj79 = ns.Object("EntranceKey") - obj80 = ns.Object("ImpBeast") - ns.SetOwner(ns.GetHost(), obj75) - ns.StoryPic(obj75, "Townsman4Pic") - ns.SetDialog(obj75, ns.NORMAL, ForemanDialogStart, ForemanDialogEnd) -} -func PlayOutdoorMusic() { - ns.Music(21, 100) -} -func SetupWorkers() { - ns.SetOwner(ns.GetHost(), obj4) - ns.SetOwner(ns.GetHost(), obj5) - ns.SetOwner(ns.GetHost(), obj6) - ns.SetOwner(ns.GetHost(), obj7) - ns.SetOwner(ns.GetHost(), obj8) - ns.SetOwner(ns.GetHost(), obj9) - ns.LockDoor(obj100) - ns.LockDoor(obj101) - ns.Damage(obj102, 0, 1000, 0) - ns.Damage(obj103, 0, 1000, 0) - ns.Damage(obj104, 0, 1000, 0) -} -func MapInitialize() { - wp84 = ns.Waypoint("SecretAudioOrigin") - wp23 = ns.Waypoint("RunAwayTo1") - wp24 = ns.Waypoint("RunAwayTo2") - wp25 = ns.Waypoint("RunAwayTo3") - wp26 = ns.Waypoint("RunAwayTo4") - wp27 = ns.Waypoint("RunAwayTo5") - wp28 = ns.Waypoint("RunAwayTo6") - wp86[0] = ns.Waypoint("CreateBat1") - wp86[1] = ns.Waypoint("CreateBat2") - wp86[2] = ns.Waypoint("CreateBat3") - wp86[3] = ns.Waypoint("CreateBat4") - wp86[4] = ns.Waypoint("CreateBat5") - wp86[5] = ns.Waypoint("CreateBat6") - wp86[6] = ns.Waypoint("CreateBat7") - wp87[0] = ns.Waypoint("CreateImp1") - wp87[1] = ns.Waypoint("CreateImp2") - wp87[2] = ns.Waypoint("CreateImp3") - wp87[3] = ns.Waypoint("CreateImp4") - wp85[0] = ns.Waypoint("CreateSmSpider1") - wp85[1] = ns.Waypoint("CreateSmSpider2") - wp85[2] = ns.Waypoint("CreateSmSpider3") - wp85[3] = ns.Waypoint("CreateSmSpider4") - wp85[4] = ns.Waypoint("CreateSmSpider5") - wp85[5] = ns.Waypoint("CreateSmSpider6") - wp85[6] = ns.Waypoint("CreateSmSpider7") - wp85[7] = ns.Waypoint("CreateSmSpider8") - wp85[8] = ns.Waypoint("CreateSmSpider9") - wp85[9] = ns.Waypoint("CreateSmSpider10") - wp85[10] = ns.Waypoint("CreateSmSpider11") - wp85[11] = ns.Waypoint("CreateSmSpider12") - wp85[12] = ns.Waypoint("CreateSmSpider13") - wp85[13] = ns.Waypoint("CreateSmSpider14") - wp85[14] = ns.Waypoint("CreateSmSpider15") - wp85[15] = ns.Waypoint("CreateSmSpider16") - wp85[16] = ns.Waypoint("CreateSmSpider17") - wp85[17] = ns.Waypoint("CreateSmSpider18") - wp85[18] = ns.Waypoint("CreateSmSpider19") - wp85[19] = ns.Waypoint("CreateSmSpider20") - wp85[20] = ns.Waypoint("CreateSmSpider21") - wp85[21] = ns.Waypoint("CreateSmSpider22") - wp85[22] = ns.Waypoint("CreateSmSpider23") - wp85[23] = ns.Waypoint("CreateSmSpider24") - wp88 = ns.Waypoint("WorkerEnd1") - wp89 = ns.Waypoint("WorkerEnd2") - wp90 = ns.Waypoint("WorkerEnd3") - wp91 = ns.Waypoint("WorkerEnd4") - wp92 = ns.Waypoint("WorkerEnd5") - wp93 = ns.Waypoint("WorkerEnd6") - obj102 = ns.Object("DeadGuy1") - obj103 = ns.Object("DeadGuy2") - obj104 = ns.Object("DeadGuy3") - obj105 = ns.Object("StubbornDeadGuy") - ns.Damage(obj105, 0, 1000, 0) - wp94 = ns.Waypoint("Button2Push") - wp95 = ns.Waypoint("Elevator2Down") - wp96 = ns.Waypoint("Worker1Wait") - wp97 = ns.Waypoint("LevelGateUnlock") - wp98 = ns.Waypoint("Worker1Elevator3") - obj99 = ns.Object("ToggleElevator2Button") - obj100 = ns.Object("LevelGateA") - obj101 = ns.Object("LevelGateB") - obj106 = ns.Object("Worker1Down") - gvar30 = ns.WallGroup("Walls1") - gvar31 = ns.WallGroup("Walls2") - gvar32 = ns.WallGroup("Walls3") - gvar33 = ns.Wall(164, 92) - gvar34 = ns.Wall(165, 93) - gvar35 = ns.Wall(19, 111) - gvar36 = ns.Wall(20, 112) - gvar37 = ns.Wall(28, 110) - gvar38 = ns.Wall(29, 111) - gvar39 = ns.Wall(31, 111) - gvar40 = ns.Wall(33, 109) - gvar41 = ns.Wall(34, 108) - gvar42 = ns.Wall(36, 106) - gvar43 = ns.Wall(37, 105) - gvar44 = ns.Wall(38, 104) - obj45 = ns.Object("WallOpen1") - obj110 = ns.Object("WallOpen2A") - obj111 = ns.Object("WallOpen2B") - obj4 = ns.Object("Alex") - obj5 = ns.Object("Logan") - obj6 = ns.Object("Naldo") - obj7 = ns.Object("Garrit") - obj8 = ns.Object("Dudley") - obj9 = ns.Object("Claude") - obj10 = ns.Object("RedKey1") - obj11 = ns.Object("RedKey2") - obj12 = ns.Object("RedKey3") - obj13 = ns.Object("RedKey4") - obj14 = ns.Object("GoldKey") - gvar112 = ns.ObjectGroup("Worker1Rec") - gvar113 = ns.ObjectGroup("Worker2Rec") - gvar114 = ns.ObjectGroup("Worker3Rec") - gvar115 = ns.ObjectGroup("Worker5Rec") - gvar116 = ns.ObjectGroup("Worker6Rec") - obj117 = ns.Object("InitialDoor") - obj118 = ns.Object("FinalDoor") - obj119 = ns.Object("FinalDoor2A") - obj120 = ns.Object("FinalDoor2B") - wp121 = ns.Waypoint("FinalPosition") - obj122 = ns.Object("HuntImp1") - obj123 = ns.Object("HuntImp2") - obj124 = ns.Object("HuntImp3") - obj125 = ns.Object("HuntImp4") - obj29 = ns.Object("Scorpion1") - obj46 = ns.Object("Elevator1a") - obj47 = ns.Object("Elevator1b") - obj48 = ns.Object("Gear1a") - obj49 = ns.Object("Gear1b") - obj50 = ns.Object("Gear1c") - obj51 = ns.Object("Gear1d") - obj52 = ns.Object("Gear1e") - obj53 = ns.Object("Gear1f") - obj54 = ns.Object("Gear1g") - obj55 = ns.Object("Elevator2a") - obj56 = ns.Object("Elevator2b") - obj57 = ns.Object("Gear2a") - obj58 = ns.Object("Gear2b") - obj59 = ns.Object("Gear2c") - obj60 = ns.Object("Gear2d") - obj61 = ns.Object("Gear2e") - obj62 = ns.Object("Elevator3a") - obj63 = ns.Object("Elevator3b") - obj64 = ns.Object("Gear3a") - obj65 = ns.Object("Gear3b") - obj66 = ns.Object("Gear3c") - obj67 = ns.Object("Gear3d") - obj68 = ns.Object("Gear3e") - obj107 = ns.Object("Secret02Spider01") - obj108 = ns.Object("Secret02Spider02") - obj109 = ns.Object("Secret02Spider03") - obj69 = ns.Object("Urch1") - obj70 = ns.Object("Urch2") - obj71 = ns.Object("Urch3") - obj72 = ns.Object("Urch4") - obj73 = ns.Object("Urch5") - ns.StoryPic(obj4, "Miner1Pic") - ns.StoryPic(obj5, "Miner2Pic") - ns.StoryPic(obj6, "Miner2Pic") - ns.StoryPic(obj7, "Miner2Pic") - ns.StoryPic(obj8, "Miner2Pic") - ns.StoryPic(obj9, "Miner2Pic") - ns.SetDialog(obj4, ns.NORMAL, Worker1DialogStart, Worker1DialogEnd) - PlayOutdoorMusic() - SetupWorkers() - InitializeForeman() - ns.FrameTimer(40, SetupElevators) -} -func MonsterGoHome() { - r1 := ns.IsAttackedBy(ns.GetHost(), ns.GetCaller()) - if !r1 { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func PlayUndergroundMusic() { - ns.Music(18, 100) -} -func SecretSFX() { - ns.MoveWaypoint(wp84, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretFound, wp84) -} -func Secret01Found() { - ns.ObjectOff(ns.GetTrigger()) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 50) - SecretSFX() -} -func Secret02Found() { - ns.ObjectOff(ns.GetTrigger()) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 25) - ns.AggressionLevel(obj107, 0.83) - ns.AggressionLevel(obj108, 0.83) - ns.AggressionLevel(obj109, 0.83) - SecretSFX() -} -func MapShutdown() { - ns.NoWallSound(false) -} -func MapEntry() { - ns.NoWallSound(true) -} -func PlayerDeath() { - ns.DeathScreen(3) -} -func Worker1Rec() { - ns.ObjectGroupOff(gvar112) - ns.PrintToAll("Con03B.scr:Rescued1") - ns.GiveXp(ns.GetHost(), 250) - ns.ObjectOn(obj4) - ns.BecomePet(obj4) - ns.CreatureFollow(obj4, ns.GetHost()) - ns.Frozen(ns.GetHost(), true) - ns.StartDialog(obj4, ns.GetHost()) -} -func WorkerRescued() { - var v0 int - v0 = ivar21 - if v0 == 0 { - goto LABEL1 - } - if v0 == 1 { - goto LABEL2 - } - if v0 == 2 { - goto LABEL3 - } - if v0 == 3 { - goto LABEL4 - } - if v0 == 4 { - goto LABEL5 - } - goto LABEL6 -LABEL1: - ns.PrintToAll("Con03B.scr:Rescued2") - goto LABEL7 -LABEL2: - ns.PrintToAll("Con03B.scr:Rescued3") - goto LABEL7 -LABEL3: - ns.PrintToAll("Con03B.scr:Rescued4") - goto LABEL7 -LABEL4: - ns.PrintToAll("Con03D.scr:Rescued5") - goto LABEL7 -LABEL5: - ns.PrintToAll("Con03D.scr:Rescued6") - goto LABEL7 -LABEL6: - goto LABEL7 -LABEL7: - return -} -func Worker2MoveIt() { - if gvar128 != 0 { - goto LABEL1 - } - ns.Move(obj5, wp89) - ns.FrameTimer(30, Worker2MoveIt) -LABEL1: - return -} -func Worker3MoveIt() { - if gvar129 != 0 { - goto LABEL1 - } - ns.Move(obj6, wp90) - ns.FrameTimer(30, Worker3MoveIt) -LABEL1: - return -} -func Worker6MoveIt() { - if gvar130 != 0 { - goto LABEL1 - } - ns.Move(obj9, wp93) - ns.FrameTimer(30, Worker6MoveIt) -LABEL1: - return -} -func AllFound() { - ns.JournalEdit(ns.GetHost(), "Con03RescueMineWorkers", 4) - ns.MoveWaypoint(wp84, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.FlagDrop, wp84) - ns.PrintToAll("Con03C.scr:TaskComplete") - ns.GiveXp(ns.GetHost(), 500) - ns.SetQuestStatus(1, "BeatMine") - gvar81 = 4 - ivar15 = 7 - gvar16 = 3 - gvar17 = 3 - gvar18 = 3 - gvar19 = 3 - gvar20 = 3 -} -func Worker1Reminder() { - if gvar127 != 1 { - goto LABEL1 - } - ns.Move(obj4, wp95) -LABEL1: - return -} -func Worker1Movement() { - var v0 int - if !ns.IsCaller(obj4) { - goto LABEL1 - } - v0 = gvar127 - if v0 == 0 { - goto LABEL2 - } - if v0 == 1 { - goto LABEL3 - } - if v0 == 2 { - goto LABEL4 - } - goto LABEL5 -LABEL2: - ns.Move(obj4, wp95) - ns.Chat(obj4, "Con03B.scr:Worker1ChatB") - gvar127 = 1 - goto LABEL1 -LABEL3: - if gvar83 != 0 { - goto LABEL6 - } - ns.Move(obj4, wp96) - ns.ObjectOff(obj106) - gvar127 = 2 - goto LABEL7 -LABEL6: - ns.Chat(obj4, "Con03B.scr:Worker1ChatC") - ivar15 = 2 - ns.CreatureGuard(obj4, ns.GetWaypointX(wp88), ns.GetWaypointY(wp88), ns.GetWaypointX(wp92), ns.GetWaypointY(wp92), 0) -LABEL7: - goto LABEL1 -LABEL4: - goto LABEL1 -LABEL5: - goto LABEL1 -LABEL1: - return -} -func BobDown() { - gvar83 = 1 - if gvar127 != 2 { - goto LABEL1 - } - ns.Chat(obj4, "Con03B.scr:Worker1ChatC") - ivar15 = 2 - ns.CreatureGuard(obj4, ns.GetWaypointX(wp88), ns.GetWaypointY(wp88), ns.GetWaypointX(wp92), ns.GetWaypointY(wp92), 0) -LABEL1: - return -} -func BobUp() { - gvar83 = 0 -} -func Worker1Stop() { - if !ns.IsCaller(obj4) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.Chat(obj4, "Con03B.scr:Worker1ChatD") - if !(ivar15 < 5) { - goto LABEL2 - } - ivar15 = 3 -LABEL2: - ns.SetDialog(obj4, ns.NORMAL, Worker1DialogStart, Worker1DialogEnd) -LABEL1: - return -} -func Worker1Unlock() { - if !ns.IsCaller(obj4) { - goto LABEL1 - } - ns.UnlockDoor(obj100) - ns.UnlockDoor(obj101) - ns.Move(obj4, wp98) -LABEL1: - return -} -func Worker1Elevator3() { - ns.CreatureGuard(obj4, ns.GetWaypointX(wp88), ns.GetWaypointY(wp88), ns.GetWaypointX(wp92), ns.GetWaypointY(wp92), 0) -} -func Worker1Filter() int { - if !ns.IsCaller(obj4) { - goto LABEL1 - } - return 1 - goto LABEL2 -LABEL1: - return 0 -LABEL2: - return 0 -} -func Worker2Rec() { - ns.ObjectGroupOff(gvar113) - ns.GiveXp(ns.GetHost(), 100) - ns.ObjectOn(obj5) - ns.BecomePet(obj5) - ns.CreatureFollow(obj5, ns.GetHost()) - ns.CreateObject("SmallAlbinoSpider", wp85[0]) - ns.CreateObject("SmallAlbinoSpider", wp85[1]) - ns.CreateObject("SmallAlbinoSpider", wp85[2]) - ns.CreateObject("SmallAlbinoSpider", wp85[3]) - ns.CreateObject("SmallAlbinoSpider", wp85[4]) - ns.CreateObject("SmallAlbinoSpider", wp85[5]) - ns.CreateObject("SmallAlbinoSpider", wp85[6]) - ns.CreateObject("SmallAlbinoSpider", wp85[7]) - ns.CreateObject("SmallAlbinoSpider", wp85[8]) - ns.CreateObject("SmallAlbinoSpider", wp85[9]) - ns.CreateObject("SmallAlbinoSpider", wp85[10]) - ns.CreateObject("SmallAlbinoSpider", wp85[11]) - ns.CreateObject("SmallAlbinoSpider", wp85[12]) - ns.CreateObject("Imp", wp87[3]) - ns.Frozen(ns.GetHost(), true) - ns.SetDialog(obj5, ns.NORMAL, Worker2DialogStart, Worker2DialogEnd) - ns.StartDialog(obj5, ns.GetHost()) -} -func Worker2Return() { - if !ns.IsCaller(obj5) { - goto LABEL1 - } - ns.CreatureGuard(obj5, ns.GetWaypointX(wp89), ns.GetWaypointY(wp89), ns.GetWaypointX(wp90), ns.GetWaypointY(wp90), 0) - if gvar16 != 1 { - goto LABEL2 - } - ns.SetDialog(obj5, ns.NORMAL, Worker2DialogStart, Worker2DialogEnd) - WorkerRescued() - ns.GiveXp(ns.GetHost(), 250) - ns.Chat(obj5, "Con03B.scr:WorkersReturn") - ivar15 = 4 - ivar21 += 1 - if ivar21 != 3 { - goto LABEL2 - } - ivar15 = 5 -LABEL2: - gvar16 = 2 -LABEL1: - return -} -func Worker2Stop() { - if !ns.IsCaller(obj5) { - goto LABEL1 - } - gvar128 = 1 - ns.Chat(obj5, "Con03B.scr:WorkersStop") - ns.CreatureGuard(obj5, 1779, 2501, 1763, 2508, 60) -LABEL1: - return -} -func Worker2Filter() int { - if !ns.IsCaller(obj5) { - goto LABEL1 - } - return 1 - goto LABEL2 -LABEL1: - return 0 -LABEL2: - return 0 -} -func Worker3Rec() { - ns.ObjectGroupOff(gvar114) - ns.GiveXp(ns.GetHost(), 100) - ns.ObjectOn(obj6) - ns.BecomePet(obj6) - ns.CreatureFollow(obj6, ns.GetHost()) - ns.ObjectOn(obj110) - ns.ObjectOn(obj111) - ns.CreateObject("SmallAlbinoSpider", wp85[13]) - ns.CreateObject("SmallAlbinoSpider", wp85[14]) - ns.CreateObject("SmallAlbinoSpider", wp85[15]) - ns.CreateObject("SmallAlbinoSpider", wp85[16]) - ns.CreateObject("SmallAlbinoSpider", wp85[17]) - ns.CreateObject("SmallAlbinoSpider", wp85[18]) - ns.CreateObject("SmallAlbinoSpider", wp85[19]) - ns.CreateObject("SmallAlbinoSpider", wp85[20]) - ns.CreateObject("SmallAlbinoSpider", wp85[21]) - ns.CreateObject("SmallAlbinoSpider", wp85[22]) - ns.CreateObject("SmallAlbinoSpider", wp85[23]) - ns.CreateObject("Imp", wp87[0]) - ns.CreateObject("Imp", wp87[1]) - ns.CreateObject("Imp", wp87[2]) - ns.Frozen(ns.GetHost(), true) - ns.SetDialog(obj6, ns.NORMAL, Worker3DialogStart, Worker3DialogEnd) - ns.StartDialog(obj6, ns.GetHost()) -} -func Worker3Return() { - if !ns.IsCaller(obj6) { - goto LABEL1 - } - ns.CreatureGuard(obj6, ns.GetWaypointX(wp90), ns.GetWaypointY(wp90), ns.GetWaypointX(wp92), ns.GetWaypointY(wp92), 0) - if gvar17 != 1 { - goto LABEL2 - } - ns.SetDialog(obj6, ns.NORMAL, Worker3DialogStart, Worker3DialogEnd) - WorkerRescued() - ns.Chat(obj6, "Con03B.scr:WorkersReturn") - ns.GiveXp(ns.GetHost(), 250) - ivar15 = 4 - ivar21 += 1 - if ivar21 != 3 { - goto LABEL2 - } - ivar15 = 5 -LABEL2: - gvar17 = 2 -LABEL1: - return -} -func Worker3Stop() { - if !ns.IsCaller(obj6) { - goto LABEL1 - } - gvar129 = 1 - ns.Chat(obj6, "Con03B.scr:WorkersStop") - ns.CreatureGuard(obj6, 1790, 2347, 1788, 2330, 60) -LABEL1: - return -} -func Worker3Filter() int { - if !ns.IsCaller(obj6) { - goto LABEL1 - } - return 1 - goto LABEL2 -LABEL1: - return 0 -LABEL2: - return 0 -} -func Worker4Return() { - if !ns.IsCaller(obj7) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - if gvar18 != 1 { - goto LABEL1 - } - ns.SetDialog(obj7, ns.NORMAL, Worker4DialogStart, Worker4DialogEnd) - ns.CreatureGuard(obj7, ns.GetWaypointX(wp91), ns.GetWaypointY(wp91), ns.GetWaypointX(wp90), ns.GetWaypointY(wp90), 0) - WorkerRescued() - ns.GiveXp(ns.GetHost(), 250) - ns.Chat(obj7, "Con03B.scr:WorkersReturn") - ivar21 += 1 - if ivar21 != 5 { - goto LABEL2 - } - AllFound() - goto LABEL1 -LABEL2: - gvar18 = 2 -LABEL1: - return -} -func Worker5Return() { - if !ns.IsCaller(obj8) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - if gvar19 != 1 { - goto LABEL1 - } - ns.SetDialog(obj8, ns.NORMAL, Worker5DialogStart, Worker5DialogEnd) - ns.CreatureGuard(obj8, ns.GetWaypointX(wp92), ns.GetWaypointY(wp92), ns.GetWaypointX(wp90), ns.GetWaypointY(wp90), 0) - WorkerRescued() - ns.GiveXp(ns.GetHost(), 250) - ns.Chat(obj8, "Con03B.scr:WorkersReturn") - ivar21 += 1 - if ivar21 != 5 { - goto LABEL2 - } - AllFound() - goto LABEL1 -LABEL2: - gvar19 = 2 -LABEL1: - return -} -func Worker5Rec() { - var v0 ns.ObjectID - ns.ObjectGroupOff(gvar115) - ns.GiveXp(ns.GetHost(), 100) - ns.ObjectOn(obj8) - ns.BecomePet(obj8) - ns.CreatureFollow(obj8, ns.GetHost()) - ns.ObjectOn(obj7) - ns.BecomePet(obj7) - ns.CreatureFollow(obj7, ns.GetHost()) - v0 = ns.CreateObject("Imp", ns.Waypoint("CreateImp01")) - ns.LookAtObject(v0, ns.ObjectID(ns.Waypoint("Imp01Face"))) // FIXME - v0 = ns.CreateObject("Imp", ns.Waypoint("CreateImp02")) - ns.LookAtObject(v0, ns.ObjectID(ns.Waypoint("Imp02Face"))) // FIXME - v0 = ns.CreateObject("Imp", ns.Waypoint("CreateImp03")) - ns.LookAtObject(v0, ns.ObjectID(ns.Waypoint("Imp03Face"))) // FIXME - v0 = ns.CreateObject("Imp", ns.Waypoint("CreateImp04")) - ns.LookAtObject(v0, ns.ObjectID(ns.Waypoint("Imp04Face"))) // FIXME - v0 = ns.CreateObject("Imp", ns.Waypoint("CreateImp05")) - ns.LookAtObject(v0, ns.ObjectID(ns.Waypoint("Imp05Face"))) // FIXME - v0 = ns.CreateObject("Imp", ns.Waypoint("CreateImp06")) - ns.LookAtObject(v0, ns.ObjectID(ns.Waypoint("Imp06Face"))) // FIXME - v0 = ns.CreateObject("Imp", ns.Waypoint("CreateImp07")) - ns.LookAtObject(v0, ns.ObjectID(ns.Waypoint("Imp07Face"))) // FIXME - v0 = ns.CreateObject("Scorpion", ns.Waypoint("CreateScorpion01")) - ns.LookAtObject(v0, ns.ObjectID(ns.Waypoint("Scorpion01Face"))) // FIXME - ns.Frozen(ns.GetHost(), true) - ns.SetDialog(obj8, ns.NORMAL, Worker5DialogStart, Worker5DialogEnd) - gvar18 = 1 - ns.StartDialog(obj8, ns.GetHost()) -} -func Worker6Rec() { - ns.ObjectGroupOff(gvar116) - ns.GiveXp(ns.GetHost(), 100) - ns.ObjectOn(obj9) - ns.BecomePet(obj9) - ns.CreatureFollow(obj9, ns.GetHost()) - ns.CreateObject("Bat", wp86[0]) - ns.CreateObject("Bat", wp86[1]) - ns.CreateObject("Bat", wp86[2]) - ns.CreateObject("Bat", wp86[3]) - ns.CreateObject("Bat", wp86[4]) - ns.CreateObject("Bat", wp86[5]) - ns.CreateObject("Bat", wp86[6]) - ns.Frozen(ns.GetHost(), true) - ns.SetDialog(obj9, ns.NORMAL, Worker6DialogStart, Worker6DialogEnd) - ns.StartDialog(obj9, ns.GetHost()) -} -func Worker6Return() { - if !ns.IsCaller(obj9) { - goto LABEL1 - } - ns.CreatureGuard(obj9, ns.GetWaypointX(wp93), ns.GetWaypointY(wp93), ns.GetWaypointX(wp89), ns.GetWaypointY(wp89), 0) - if gvar20 != 1 { - goto LABEL2 - } - ns.SetDialog(obj9, ns.NORMAL, Worker6DialogStart, Worker6DialogEnd) - WorkerRescued() - ns.Chat(obj9, "Con03B.scr:WorkersReturn") - ns.GiveXp(ns.GetHost(), 250) - ivar21 += 1 - ivar15 = 4 - if ivar21 != 3 { - goto LABEL2 - } - ivar15 = 5 -LABEL2: - gvar20 = 2 -LABEL1: - return -} -func Worker6Stop() { - if !ns.IsCaller(obj9) { - goto LABEL1 - } - gvar130 = 1 - ns.Chat(obj9, "Con03B.scr:WorkersStop") - ns.CreatureGuard(obj9, 1906, 2465, 1907, 2447, 60) -LABEL1: - return -} -func Worker6Filter() int { - if !ns.IsCaller(obj9) { - goto LABEL1 - } - return 1 - goto LABEL2 -LABEL1: - return 0 -LABEL2: - return 0 -} -func WorkerDie() { - ns.DeathScreen(3) -} -func WorkerHurt() { - r0 := ns.Random(1, 2) - if r0 != 1 { - goto LABEL1 - } - ns.Chat(ns.GetTrigger(), "Con03B.scr:WorkerHurt") -LABEL1: - return -} -func WorkerEngage() { -} -func OnEvent(typ string) { - switch typ { - case "MapInitialize": - MapInitialize() - case "MapShutdown": - MapShutdown() - case "MapEntry": - MapEntry() - case "PlayerDeath": - PlayerDeath() - } -} diff --git a/examples/con03b/dummy_test.go b/examples/con03b/dummy_test.go deleted file mode 100644 index ea00744..0000000 --- a/examples/con03b/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package con03b - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/con04a/con04a.go b/examples/con04a/con04a.go deleted file mode 100644 index d7d51f8..0000000 --- a/examples/con04a/con04a.go +++ /dev/null @@ -1,230 +0,0 @@ -package con04a - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - ivar4 int - ivar5 int - gvar6 int - fvar7 float32 - obj8 ns.ObjectID - obj9 ns.ObjectID - obj10 ns.ObjectID - obj11 ns.ObjectID - obj12 ns.ObjectID - obj13 ns.ObjectID - wp14 ns.WaypointID - wp15 ns.WaypointID - wp16 ns.WaypointID - wp17 ns.WaypointID - gvar18 int - gvar19 int - gvar20 int - gvar21 ns.ObjectGroupID - gvar22 ns.ObjectGroupID - obj23 ns.ObjectID - wp24 ns.WaypointID -) - -func init() { - ivar4 = 50 - ivar5 = 20 - gvar6 = 1 - fvar7 = 5 - gvar18 = 0 - gvar19 = 1 - gvar20 = gvar18 -} -func CloseBlockTrap01() { - ns.ObjectOff(obj12) - ns.Move(obj8, wp14) - ns.Move(obj9, wp15) - ns.FrameTimerWithArg(ivar5, 1, BlockTrapBoom) - ns.FrameTimerWithArg(ivar4, 1, ResetBlockTrap) -} -func CloseBlockTrap02() { - ns.ObjectOff(obj13) - ns.Move(obj10, wp16) - ns.Move(obj11, wp17) - ns.FrameTimerWithArg(ivar5, 2, BlockTrapBoom) - ns.FrameTimerWithArg(ivar4, 2, ResetBlockTrap) -} -func BlockTrapLoop() { - var v0 int - v0 = gvar6 - if v0 == 1 { - goto LABEL1 - } - if v0 == 2 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - CloseBlockTrap01() - gvar6 = 2 - goto LABEL3 -LABEL2: - CloseBlockTrap02() - gvar6 = 1 - goto LABEL3 -LABEL3: - ns.FrameTimer(30, BlockTrapLoop) -} -func InitializeBlockTrap() { - obj8 = ns.Object("SpikeBlock01") - obj9 = ns.Object("SpikeBlock02") - obj10 = ns.Object("SpikeBlock03") - obj11 = ns.Object("SpikeBlock04") - wp14 = ns.Waypoint("BlockWP01") - wp15 = ns.Waypoint("BlockWP02") - wp16 = ns.Waypoint("BlockWP03") - wp17 = ns.Waypoint("BlockWP04") - obj12 = ns.Object("BlockTrap01Trigger") - obj13 = ns.Object("BlockTrap02Trigger") - BlockTrapLoop() -} -func BlockTrapBoom(a1 int) { - var v0 int - v0 = a1 - if v0 == 1 { - goto LABEL1 - } - if v0 == 2 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.AudioEvent(ns.HammerMissing, wp14) - ns.Effect(ns.JIGGLE, ns.GetWaypointX(wp14), ns.GetWaypointY(wp14), fvar7, 0) - goto LABEL3 -LABEL2: - ns.AudioEvent(ns.HammerMissing, wp16) - ns.Effect(ns.JIGGLE, ns.GetWaypointX(wp16), ns.GetWaypointY(wp16), fvar7, 0) - goto LABEL3 -LABEL3: - return -} -func ResetBlockTrap(a1 int) { - var v0 int - v0 = a1 - if v0 == 1 { - goto LABEL1 - } - if v0 == 2 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.ObjectOn(obj12) - ns.AudioEvent(ns.TriggerReleased, wp14) - goto LABEL3 -LABEL2: - ns.ObjectOn(obj13) - ns.AudioEvent(ns.TriggerReleased, wp16) - goto LABEL3 -LABEL3: - return -} -func PlayerDeath() { - ns.DeathScreen(4) -} -func CaptainDialogStart() { - var v0 int - v0 = gvar20 - if v0 == gvar18 { - goto LABEL1 - } - if v0 == gvar19 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.TellStory(ns.SwordsmanHurt, "Con04a:CaptainGreet") - goto LABEL3 -LABEL2: - ns.TellStory(ns.SwordsmanHurt, "Con04a:CaptainIdle") - goto LABEL3 -LABEL3: - return -} -func CaptainDialogEnd() { - var v0 int - v0 = gvar20 - if v0 == gvar18 { - goto LABEL1 - } - if v0 == gvar19 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.JournalEntry(ns.GetHost(), "Chapter4SearchCrypts", 2) - ns.PrintToAll("Con01a:NewJournalEntry") - ns.AwardSpell(ns.GetHost(), ns.SPELL_GLYPH) - ns.PrintToAll("GeneralPrint:Bomber") - ns.JournalEntry(ns.GetHost(), "BomberHint", 8) - gvar20 = gvar19 - goto LABEL3 -LABEL2: - goto LABEL3 -LABEL3: - return -} -func StartCaptainConversation() { - ns.SetDialog(obj23, ns.NORMAL, CaptainDialogStart, CaptainDialogEnd) - ns.StartDialog(obj23, ns.GetHost()) -} -func PlayOutdoorMusic() { - ns.Music(22, 100) -} -func MapInitialize() { - gvar21 = ns.ObjectGroup("Secret2Triggers") - gvar22 = ns.ObjectGroup("Fish") - obj23 = ns.Object("Airship_Captain") - wp24 = ns.Waypoint("SecretAudioOrigin") - ns.StoryPic(obj23, "AirshipCaptainPic") - ns.SetOwner(ns.GetHost(), obj23) - ns.GroupWander(gvar22) - InitializeBlockTrap() - PlayOutdoorMusic() - ns.StartupScreen(4) - ns.FrameTimer(5, StartCaptainConversation) -} -func OpenSecretPassageWalls() { - ns.WallOpen(ns.Wall(129, 137)) -} -func ExitMessage() { - ns.PrintToAll("War04a:ExitMessage") -} -func PlayUndergroundMusic() { - ns.Music(20, 100) -} -func SecretSFX() { - ns.MoveWaypoint(wp24, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretFound, wp24) -} -func FoundSecret1() { - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 25) - SecretSFX() -} -func FoundSecret2() { - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 100) - ns.ObjectGroupOff(gvar21) - SecretSFX() -} -func FoundSecret3() { - ns.ObjectOff(ns.GetTrigger()) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 100) - SecretSFX() -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapInitialize": - MapInitialize() - } -} diff --git a/examples/con04a/dummy_test.go b/examples/con04a/dummy_test.go deleted file mode 100644 index 9167dfe..0000000 --- a/examples/con04a/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package con04a - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/con04b/con04b.go b/examples/con04b/con04b.go deleted file mode 100644 index 98fc6db..0000000 --- a/examples/con04b/con04b.go +++ /dev/null @@ -1,768 +0,0 @@ -package con04b - -import ( - "strconv" - - "github.com/noxworld-dev/noxscript/ns/v3" -) - -var ( - gvar4 int - gvar5 int - gvar6 int - gvar7 int - gvar8 int - gvar9 int - gvar10 int - gvar11 int - gvar12 int - gvar13 int - gvar14 int - gvar15 int - flag16 bool - flag17 bool - flag18 bool - flag19 bool - flag20 bool - ivar21 int - ivar22 int - gvar23 int - gvar24 int - gvar25 int - obj26 [13]ns.ObjectID - obj27 [13]ns.ObjectID - ivar28 int - obj29 [56]ns.ObjectID - obj30 ns.ObjectID - obj31 ns.ObjectID - obj32 ns.ObjectID - obj33 ns.ObjectID - obj34 ns.ObjectID - obj35 ns.ObjectID - obj36 ns.ObjectID - obj37 ns.ObjectID - obj38 ns.ObjectID - obj39 ns.ObjectID - obj40 ns.ObjectID - gvar41 int - gvar42 int - gvar43 int - obj44 ns.ObjectID - obj45 ns.ObjectID - gvar46 ns.ObjectGroupID - gvar47 ns.WallGroupID - wp48 ns.WaypointID - wp49 ns.WaypointID - wp50 ns.WaypointID - wp51 ns.WaypointID - wp52 ns.WaypointID - wp53 [56]ns.WaypointID - wp54 ns.WaypointID - gvar55 ns.WaypointGroupID - gvar56 ns.WaypointGroupID - gvar57 ns.WaypointGroupID -) - -func init() { - gvar4 = 0 - gvar5 = 1 - gvar6 = 2 - gvar7 = 3 - gvar8 = 0 - gvar9 = 1 - gvar10 = 2 - gvar11 = 3 - gvar12 = 4 - gvar13 = 5 - gvar14 = 6 - gvar15 = 7 - flag16 = false - flag17 = true - flag18 = false - flag19 = false - flag20 = false - ivar21 = 0 - ivar22 = 0 - gvar23 = gvar9 - gvar24 = 0 - gvar25 = gvar4 - ivar28 = 120 -} -func setUpFlameLever() { - if !flag16 { - goto LABEL1 - } - return -LABEL1: - flag16 = true - gvar23 = gvar9 - ivar22 = 2 - ivar21 = 0 - for { - if !(ivar21 < 56) { - goto LABEL2 - } - obj29[ivar21] = 0 - ivar21 += 1 - } -LABEL2: - ns.FrameTimer(3, flameLever) -} -func flameLever() { - var v0 int - if !flag16 { - goto LABEL1 - } - v0 = gvar23 - if v0 == gvar9 { - goto LABEL2 - } - if v0 == gvar10 { - goto LABEL3 - } - if v0 == gvar11 { - goto LABEL4 - } - if v0 == gvar12 { - goto LABEL5 - } - if v0 == gvar13 { - goto LABEL6 - } - if v0 == gvar14 { - goto LABEL7 - } - if v0 == gvar15 { - goto LABEL8 - } - if v0 == gvar8 { - goto LABEL9 - } - goto LABEL10 -LABEL2: - ivar21 = 0 - for { - if !(ivar21 < 56) { - goto LABEL11 - } - ns.Delete(obj29[ivar21]) - obj29[ivar21] = ns.CreateObject("SmallFlame", wp53[ivar21]) - ivar21 += 1 - } -LABEL11: - gvar23 = gvar10 - ns.AudioEvent(ns.FireballCast, wp51) - ns.AudioEvent(ns.FireballCast, wp52) - ivar22 = 2 - goto LABEL10 -LABEL3: - ivar21 = 0 - for { - if !(ivar21 < 56) { - goto LABEL13 - } - ns.Delete(obj29[ivar21]) - obj29[ivar21] = ns.CreateObject("MediumFlame", wp53[ivar21]) - ivar21 += 1 - } -LABEL13: - gvar23 = gvar11 - ns.AudioEvent(ns.DemonBreath, wp51) - ns.AudioEvent(ns.DemonBreath, wp52) - ivar22 = 2 - goto LABEL10 -LABEL4: - ivar21 = 0 - for { - if !(ivar21 < 56) { - goto LABEL15 - } - ns.Delete(obj29[ivar21]) - obj29[ivar21] = ns.CreateObject("Flame", wp53[ivar21]) - ivar21 += 1 - } -LABEL15: - gvar23 = gvar12 - ivar22 = 2 - goto LABEL10 -LABEL5: - ivar21 = 0 - for { - if !(ivar21 < 56) { - goto LABEL17 - } - ns.Delete(obj29[ivar21]) - obj29[ivar21] = ns.CreateObject("LargeFlame", wp53[ivar21]) - ivar21 += 1 - } -LABEL17: - gvar23 = gvar13 - ivar22 = 150 - goto LABEL10 -LABEL6: - ivar21 = 0 - for { - if !(ivar21 < 56) { - goto LABEL19 - } - ns.Delete(obj29[ivar21]) - obj29[ivar21] = ns.CreateObject("Flame", wp53[ivar21]) - ivar21 += 1 - } -LABEL19: - gvar23 = gvar14 - ivar22 = 2 - goto LABEL10 -LABEL7: - ivar21 = 0 - for { - if !(ivar21 < 56) { - goto LABEL21 - } - ns.Delete(obj29[ivar21]) - obj29[ivar21] = ns.CreateObject("MediumFlame", wp53[ivar21]) - ivar21 += 1 - } -LABEL21: - gvar23 = gvar15 - ns.AudioEvent(ns.FireExtinguish, wp51) - ns.AudioEvent(ns.FireExtinguish, wp52) - ivar22 = 2 - goto LABEL10 -LABEL8: - ivar21 = 0 - for { - if !(ivar21 < 56) { - goto LABEL23 - } - ns.Delete(obj29[ivar21]) - obj29[ivar21] = ns.CreateObject("SmallFlame", wp53[ivar21]) - ivar21 += 1 - } -LABEL23: - gvar23 = gvar8 - ivar22 = 2 - goto LABEL10 -LABEL9: - ivar21 = 0 - for { - if !(ivar21 < 56) { - goto LABEL25 - } - ns.Delete(obj29[ivar21]) - obj29[ivar21] = 0 - ivar21 += 1 - } -LABEL25: - gvar23 = gvar9 - flag16 = false - goto LABEL10 -LABEL10: - ns.FrameTimer(ivar22, flameLever) -LABEL1: - return -} -func skullHallOn() { - if !flag17 { - goto LABEL1 - } - ns.CastSpellLocationLocation(ns.SPELL_FIREBALL, 3012, 2229, 3185, 2403) - ns.CastSpellLocationLocation(ns.SPELL_FIREBALL, 2896, 2346, 3070, 2517) - ns.FrameTimer(60, skullHallOn) -LABEL1: - return -} -func skullHallOff() { - flag17 = false -} -func Zombie1Rise() { - var ( - v0 float32 - v1 float32 - ) - _ = v1 - _ = v0 - v0 = ns.GetObjectX(obj38) - v1 = ns.GetObjectY(obj38) - ns.RaiseZombie(obj38) - ns.AudioEvent(ns.ZombieRecognize, ns.Waypoint("ZombieAttackWP")) - ns.LookAtObject(obj30, obj38) -} -func Zombie2Rise() { - var ( - v0 float32 - v1 float32 - ) - _ = v1 - _ = v0 - v0 = ns.GetObjectX(obj39) - v1 = ns.GetObjectY(obj39) - ns.RaiseZombie(obj39) - ns.AudioEvent(ns.ZombieRecognize, ns.Waypoint("ZombieAttackWP")) - ns.LookAtObject(obj30, obj39) -} -func Zombie3Rise() { - var ( - v0 float32 - v1 float32 - ) - _ = v1 - _ = v0 - v0 = ns.GetObjectX(obj40) - v1 = ns.GetObjectY(obj40) - ns.RaiseZombie(obj40) - ns.AudioEvent(ns.ZombieRecognize, ns.Waypoint("ZombieAttackWP")) - ns.LookAtObject(obj30, obj40) -} -func ZombieAttackHecubah() { - ns.WayPointGroupOn(gvar56) - ns.WayPointGroupOff(gvar55) - ns.HitLocation(obj38, ns.GetWaypointX(ns.Waypoint("ZombieAttackWP")), ns.GetWaypointY(ns.Waypoint("ZombieAttackWP"))) - ns.HitLocation(obj39, ns.GetWaypointX(ns.Waypoint("ZombieAttackWP")), ns.GetWaypointY(ns.Waypoint("ZombieAttackWP"))) - ns.HitLocation(obj40, ns.GetWaypointX(ns.Waypoint("ZombieAttackWP")), ns.GetWaypointY(ns.Waypoint("ZombieAttackWP"))) -} -func HecubahShootZombie1() { - ns.LookAtObject(obj30, obj38) - ns.CastSpellObjectObject(ns.SPELL_FIREBALL, obj30, obj38) - ns.FrameTimer(30, HecubahShootZombie2) -} -func HecubahShootZombie2() { - ns.LookAtObject(obj30, obj39) - ns.CastSpellObjectObject(ns.SPELL_FIREBALL, obj30, obj39) - ns.FrameTimer(30, HecubahShootZombie3) -} -func HecubahShootZombie3() { - ns.LookAtObject(obj30, obj40) - ns.CastSpellObjectObject(ns.SPELL_FIREBALL, obj30, obj40) - ns.FrameTimer(30, HecubahEncounterSEG3) -} -func HecubahEncounterSEG4() { - ns.SetDialog(obj30, ns.NORMAL, HecubahDialogStart, HecubahDialogEnd) - gvar25 = gvar7 - ns.StartDialog(obj30, ns.GetHost()) -} -func HecubahEncounterSEG3() { - ns.SetDialog(obj31, ns.NEXT, HecubahDialogStart, HecubahDialogEnd) - gvar25 = gvar6 - ns.StartDialog(obj31, ns.GetHost()) -} -func hecGone() { - if !ns.IsCaller(obj30) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.MoveObject(obj30, ns.GetWaypointX(wp50), ns.GetWaypointY(wp50)) - ns.ObjectOff(obj30) -LABEL1: - return -} -func ReleasePlayer() { - if !ns.IsCaller(obj30) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.LockDoor(obj36) - ns.LockDoor(obj37) - ns.NoWallSound(true) - ns.WallGroupOpen(gvar47) - ns.NoWallSound(false) - ns.WideScreen(false) - ns.Frozen(ns.GetHost(), false) - ns.SetDialog(obj31, ns.NORMAL, necroTalkStart, necroTalkEnd) - gvar24 = 5 - ns.StartDialog(obj31, ns.GetHost()) -LABEL1: - return -} -func necroDies() { - ns.UnlockDoor(obj36) - ns.UnlockDoor(obj37) - ns.CancelDialog(obj31) - ns.SetDialog(obj31, ns.NORMAL, necroTalkStart, necroTalkEnd) - gvar24 = 4 - ns.StartDialog(obj31, ns.GetHost()) -} -func necroTalkStart() { - var v0 int - v0 = gvar24 - if v0 == 1 { - goto LABEL1 - } - if v0 == 2 { - goto LABEL2 - } - if v0 == 3 { - goto LABEL3 - } - if v0 == 4 { - goto LABEL4 - } - if v0 == 5 { - goto LABEL5 - } - goto LABEL6 -LABEL1: - ns.TellStory(ns.DemonRecognize, "Con04a:NecroTaunts") - ns.Frozen(obj31, true) - ns.Frozen(obj38, true) - ns.Frozen(obj40, true) - goto LABEL6 -LABEL2: - ns.TellStory(ns.DemonRecognize, "Con04a:NecroGloats") - ns.Frozen(obj31, true) - ns.Frozen(obj38, true) - ns.Frozen(obj40, true) - goto LABEL6 -LABEL3: - ns.TellStory(ns.DemonRecognize, "Con04a:NecroThreatens2") - ns.Frozen(obj31, true) - ns.Frozen(obj38, true) - ns.Frozen(obj40, true) - goto LABEL6 -LABEL4: - ns.WayPointGroupOff(gvar56) - ns.WayPointGroupOn(gvar57) - ns.LookAtObject(obj31, ns.GetHost()) - ns.TellStory(ns.DemonRecognize, "Con04a:NecroDies") - ns.Frozen(obj31, true) - ns.Frozen(obj38, true) - ns.Frozen(obj40, true) - goto LABEL6 -LABEL5: - ns.AggressionLevel(obj31, 0.83) - ns.TellStory(ns.DemonRecognize, "Con04a:NecroThreatens") - ns.LookAtObject(obj31, ns.GetHost()) - ns.Frozen(obj31, true) - ns.Frozen(obj38, true) - ns.Frozen(obj40, true) - goto LABEL6 -LABEL6: - return -} -func necroTalkEnd() { - ns.CancelDialog(obj31) - ns.Frozen(obj31, false) - ns.Frozen(obj38, false) - ns.Frozen(obj40, false) - if gvar24 != 4 { - goto LABEL1 - } - ns.JournalEdit(ns.GetHost(), "Chapter4SearchCrypts", 4) - ns.JournalEntry(ns.GetHost(), "Chapter4Escape", 2) - ns.PrintToAll("Con02a:ObjectiveComplete") - ns.PrintToAll("Con01a:NewJournalEntry") -LABEL1: - return -} -func KillZombie1() { - ns.Damage(obj38, 0, 30, 0) - ns.FrameTimer(5, KillZombie2) -} -func KillZombie2() { - ns.Damage(obj39, 0, 30, 0) - ns.FrameTimer(5, KillZombie3) -} -func KillZombie3() { - ns.Damage(obj40, 0, 30, 0) - ns.FrameTimer(5, KeepZombiesDead) -} -func KeepZombiesDead() { - ns.ZombieStayDown(obj38) - ns.ZombieStayDown(obj39) - ns.ZombieStayDown(obj40) -} -func ZombieInjured() { - ns.Damage(ns.GetTrigger(), 0, 100, 1) -} -func InitializeFistTraps() { - obj27[0] = ns.Object("FistTrap01") - obj27[1] = ns.Object("FistTrap02") - obj27[2] = ns.Object("FistTrap03") - obj27[3] = ns.Object("FistTrap04") - obj27[4] = ns.Object("FistTrap05") - obj27[5] = ns.Object("FistTrap06") - obj27[6] = ns.Object("FistTrap07") - obj27[7] = ns.Object("FistTrap08") - obj27[8] = ns.Object("FistTrap09") - obj27[9] = ns.Object("FistTrap10") - obj27[10] = ns.Object("FistTrap11") - obj27[11] = ns.Object("FistTrap12") - obj27[12] = ns.Object("FistTrap13") - obj26[0] = ns.Object("FistTrapLight01") - obj26[1] = ns.Object("FistTrapLight02") - obj26[2] = ns.Object("FistTrapLight03") - obj26[3] = ns.Object("FistTrapLight04") - obj26[4] = ns.Object("FistTrapLight05") - obj26[5] = ns.Object("FistTrapLight06") - obj26[6] = ns.Object("FistTrapLight07") - obj26[7] = ns.Object("FistTrapLight08") - obj26[8] = ns.Object("FistTrapLight09") - obj26[9] = ns.Object("FistTrapLight10") - obj26[10] = ns.Object("FistTrapLight11") - obj26[11] = ns.Object("FistTrapLight12") - obj26[12] = ns.Object("FistTrapLight13") -} -func MapInitialize() { - ivar21 = 0 - for { - if !(ivar21 < 56) { - goto LABEL1 - } - wp53[ivar21] = ns.Waypoint("FlameWay" + strconv.Itoa(ivar21+1)) - ivar21 += 1 - } -LABEL1: - obj30 = ns.Object("Hecubah") - obj31 = ns.Object("Necromancer") - obj32 = ns.Object("EntranceGate1") - obj33 = ns.Object("EntranceGate2") - obj34 = ns.Object("EntranceGate3") - obj35 = ns.Object("EntranceGate4") - obj36 = ns.Object("PitGate1") - obj37 = ns.Object("PitGate2") - obj38 = ns.Object("DeadZombie1") - obj39 = ns.Object("DeadZombie2") - obj40 = ns.Object("DeadZombie3") - obj44 = ns.Object("FlameLever1") - obj45 = ns.Object("FlameLever2") - gvar46 = ns.ObjectGroup("Zombies") - gvar47 = ns.WallGroup("InvisibleBlockWall") - wp48 = ns.Waypoint("SecretAudioOrigin") - wp51 = ns.Waypoint("FlameSound1") - wp52 = ns.Waypoint("FlameSound2") - wp49 = ns.Waypoint("AudioOrigin") - wp54 = ns.Waypoint("WP") - wp50 = ns.Waypoint("HecubahStorage") - gvar55 = ns.WaypointGroup("BeforeSetpieceWay") - gvar56 = ns.WaypointGroup("SetpieceWay") - gvar57 = ns.WaypointGroup("AfterSetpieceWay") - ns.WayPointGroupOff(gvar56) - ns.WayPointGroupOff(gvar57) - ns.StoryPic(obj31, "NecromancerPic") - InitializeFistTraps() - ns.FrameTimer(1, KillZombie1) -} -func PlayerDeath() { - ns.DeathScreen(4) -} -func ToggleSkullHall() { - if !flag17 { - goto LABEL1 - } - flag17 = false - goto LABEL2 -LABEL1: - flag17 = true - skullHallOn() -LABEL2: - return -} -func HecubahDialogStart() { - var v0 int - v0 = gvar25 - if v0 == gvar4 { - goto LABEL1 - } - if v0 == gvar5 { - goto LABEL2 - } - if v0 == gvar6 { - goto LABEL3 - } - if v0 == gvar7 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - ns.TellStory(ns.GhostRecognize, "War04a:Hecubah") - goto LABEL5 -LABEL2: - ns.TellStory(ns.GhostRecognize, "War04a:HecubahSEG2") - goto LABEL5 -LABEL3: - ns.LookAtObject(obj31, ns.GetHost()) - ns.TellStory(ns.DemonRecognize, "Con04a:NecroWarnsHec") - goto LABEL5 -LABEL4: - ns.LookAtObject(obj30, ns.GetHost()) - ns.TellStory(ns.GhostRecognize, "War04a:HecubahSEG3") - goto LABEL5 -LABEL5: - return -} -func HecubahDialogEnd() { - var ( - v0 float32 - v1 float32 - v4 ns.WaypointID - v5 int - ) - _ = v1 - _ = v0 - v5 = gvar25 - if v5 == gvar4 { - goto LABEL1 - } - if v5 == gvar5 { - goto LABEL2 - } - if v5 == gvar6 { - goto LABEL3 - } - if v5 == gvar7 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - ns.FrameTimer(20, Zombie2Rise) - ns.FrameTimer(45, Zombie1Rise) - ns.FrameTimer(60, Zombie3Rise) - ns.FrameTimer(60, ZombieAttackHecubah) - gvar25 = gvar5 - ns.CancelDialog(obj30) - goto LABEL5 -LABEL2: - ns.LookAtObject(obj30, obj39) - gvar25 = gvar6 - ns.CancelDialog(obj30) - ns.AggressionLevel(obj38, 0) - ns.AggressionLevel(obj39, 0) - ns.AggressionLevel(obj40, 0) - ns.PushObject(obj38, 40, ns.GetObjectX(obj30), ns.GetObjectY(obj30)) - ns.PushObject(obj39, 40, ns.GetObjectX(obj30), ns.GetObjectY(obj30)) - ns.PushObject(obj40, 40, ns.GetObjectX(obj30), ns.GetObjectY(obj30)) - ns.SetOwner(obj36, obj38) - ns.SetOwner(obj36, obj39) - ns.SetOwner(obj36, obj40) - ns.SetCallback(obj38, 7, ZombieInjured) - ns.SetCallback(obj39, 7, ZombieInjured) - ns.SetCallback(obj40, 7, ZombieInjured) - ns.FrameTimer(20, HecubahShootZombie1) - goto LABEL5 -LABEL3: - gvar25 = gvar7 - ns.CancelDialog(obj31) - ns.FrameTimer(5, HecubahEncounterSEG4) - goto LABEL5 -LABEL4: - v4 = ns.Waypoint("WP") - v0 = ns.GetObjectX(obj30) - v1 = ns.GetObjectY(obj30) - ns.CreatureIdle(obj31) - ns.UnlockDoor(obj32) - ns.UnlockDoor(obj33) - ns.LockDoor(obj34) - ns.LockDoor(obj35) - ns.ObjectOn(obj30) - ns.Move(obj30, v4) - flag19 = true - ns.CancelDialog(obj30) - goto LABEL5 -LABEL5: - return -} -func AttackSuccessful() { - ns.SetDialog(obj30, ns.NEXT, HecubahDialogStart, HecubahDialogEnd) - ns.StartDialog(obj30, ns.GetHost()) -} -func HecubahEncounterSEG2() { - ns.StoryPic(obj30, "HecubahPic") - ns.SetDialog(obj30, ns.NEXT, HecubahDialogStart, HecubahDialogEnd) - ns.StartDialog(obj30, ns.GetHost()) -} -func HecubahEncounterSEG1() { - if !(!flag18 && ns.IsCaller(ns.GetHost())) { - goto LABEL1 - } - flag18 = true - ns.Frozen(ns.GetHost(), true) - ns.WideScreen(true) - ns.FrameTimer(60, HecubahEncounterSEG2) -LABEL1: - return -} -func ResetFistTrap(a1 int) { - ns.ObjectOn(obj26[a1]) - ns.ObjectOn(obj27[a1]) - ns.MoveWaypoint(wp49, ns.GetObjectX(obj27[a1]), ns.GetObjectY(obj27[a1])) - ns.AudioEvent(ns.TriggerReleased, wp49) -} -func DropFist(a1 int) { - ns.CastSpellObjectLocation(ns.SPELL_FIST, obj27[a1], ns.GetObjectX(obj27[a1]), ns.GetObjectY(obj27[a1])) - ns.ObjectOff(obj27[a1]) - ns.ObjectOff(obj26[a1]) - ns.FrameTimerWithArg(ivar28, a1, ResetFistTrap) -} -func ActivateFistTrap01() { - DropFist(0) -} -func ActivateFistTrap02() { - DropFist(1) -} -func ActivateFistTrap03() { - DropFist(2) -} -func ActivateFistTrap04() { - DropFist(3) -} -func ActivateFistTrap05() { - DropFist(4) -} -func ActivateFistTrap06() { - DropFist(5) -} -func ActivateFistTrap07() { - DropFist(6) -} -func ActivateFistTrap08() { - DropFist(7) -} -func ActivateFistTrap09() { - DropFist(8) -} -func ActivateFistTrap10() { - DropFist(9) -} -func ActivateFistTrap11() { - DropFist(10) -} -func ActivateFistTrap12() { - DropFist(11) -} -func ActivateFistTrap13() { - DropFist(12) -} -func NoEnemys() { - r1 := ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) - if !r1 { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func SecretSFX() { - ns.MoveWaypoint(wp48, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretFound, wp48) -} -func Secret01Found() { - ns.ObjectOff(ns.GetTrigger()) - ns.GiveXp(ns.GetHost(), 100) - ns.PrintToAll("GeneralPrint:SecretFound") - SecretSFX() -} -func Secret02Found() { - ns.ObjectOff(ns.GetTrigger()) - ns.GiveXp(ns.GetHost(), 100) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.ObjectOn(ns.Object("SecretLord")) - SecretSFX() -} -func OnEvent(typ string) { - switch typ { - case "MapInitialize": - MapInitialize() - case "PlayerDeath": - PlayerDeath() - } -} diff --git a/examples/con04b/dummy_test.go b/examples/con04b/dummy_test.go deleted file mode 100644 index c243cba..0000000 --- a/examples/con04b/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package con04b - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/con04c/con04c.go b/examples/con04c/con04c.go deleted file mode 100644 index 3d974a0..0000000 --- a/examples/con04c/con04c.go +++ /dev/null @@ -1,941 +0,0 @@ -package con04c - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - gvar4 ns.WallGroupID - obj5 ns.ObjectID - obj6 ns.ObjectID - ivar7 int - ivar8 int - fvar9 float32 - obj10 ns.ObjectID - obj11 ns.ObjectID - obj12 ns.ObjectID - obj13 ns.ObjectID - obj14 ns.ObjectID - obj15 ns.ObjectID - obj16 ns.ObjectID - obj17 ns.ObjectID - obj18 ns.ObjectID - obj19 ns.ObjectID - obj20 ns.ObjectID - obj21 ns.ObjectID - obj22 ns.ObjectID - obj23 ns.ObjectID - obj24 ns.ObjectID - obj25 ns.ObjectID - wp26 ns.WaypointID - wp27 ns.WaypointID - wp28 ns.WaypointID - wp29 ns.WaypointID - wp30 ns.WaypointID - wp31 ns.WaypointID - wp32 ns.WaypointID - wp33 ns.WaypointID - wp34 ns.WaypointID - wp35 ns.WaypointID - wp36 ns.WaypointID - wp37 ns.WaypointID - wp38 ns.WaypointID - wp39 ns.WaypointID - wp40 ns.WaypointID - wp41 ns.WaypointID - gvar42 ns.ObjectGroupID - gvar43 ns.ObjectGroupID - gvar44 ns.ObjectGroupID - obj45 [13]ns.ObjectID - obj46 [13]ns.ObjectID - ivar47 int - wp48 ns.WaypointID - obj49 ns.ObjectID - obj50 ns.ObjectID - obj51 ns.ObjectID - obj52 ns.ObjectID - obj53 ns.ObjectID - obj54 ns.ObjectID - wp55 ns.WaypointID - wp56 ns.WaypointID - gvar57 ns.WallGroupID - gvar58 ns.WallGroupID - flag59 bool - flag60 bool - gvar61 int - gvar62 int - gvar63 int - obj64 ns.ObjectID - obj65 ns.ObjectID - obj66 ns.ObjectID - obj67 ns.ObjectID - obj68 ns.ObjectID - obj69 ns.ObjectID - gvar70 ns.ObjectGroupID - wp71 [4]ns.WaypointID - wp72 ns.WaypointID - wp73 ns.WaypointID - flag74 bool - flag75 bool - ivar76 int - wp77 ns.WaypointID - gvar78 ns.ObjectGroupID - ivar79 int - ivar80 int - ivar81 int - ivar82 int - ivar83 int - ivar84 int - ivar85 int - ivar86 int - ivar87 int - ivar88 int - ivar89 int - gvar90 int - gvar91 int - obj92 ns.ObjectID - obj93 ns.ObjectID - obj94 ns.ObjectID - obj95 ns.ObjectID - obj96 ns.ObjectID - obj97 ns.ObjectID - obj98 ns.ObjectID - obj99 ns.ObjectID - obj100 ns.ObjectID - obj101 ns.ObjectID - obj102 ns.ObjectID -) - -func init() { - ivar7 = 50 - ivar8 = 20 - fvar9 = 5 - ivar47 = 120 - flag59 = false - flag60 = false - gvar61 = 0 - gvar62 = 1 - gvar63 = gvar62 - flag74 = false - flag75 = false - ivar76 = 0 - ivar79 = 0 - ivar80 = 0 - ivar81 = 0 - ivar82 = 0 - ivar83 = 0 - ivar84 = 0 - ivar85 = 0 - ivar86 = 0 - ivar87 = 0 - ivar88 = 0 - ivar89 = 0 - gvar90 = 0 - gvar91 = 0 -} -func InitializeSkeletonAmbush() { - gvar4 = ns.WallGroup("SkeletonAmbushWalls") -} -func SkeletonAmbush() { - ns.WallGroupBreak(gvar4) -} -func SkeletonAmbushTimer() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.FrameTimer(45, SkeletonAmbush) -LABEL1: - return -} -func EnablePitTrapElevator01() { - ns.ObjectOff(ns.GetTrigger()) - ns.ObjectOn(ns.Object("PitTrapElevator01")) -} -func EnablePitTrapElevator02() { - ns.ObjectOff(ns.GetTrigger()) - ns.ObjectOn(ns.Object("PitTrapElevator02")) -} -func OpenPitElevatorWalls01() { - ns.ObjectOff(ns.GetTrigger()) - ns.WallGroupOpen(ns.WallGroup("PitTrapElevatorWalls01")) -} -func OpenPitElevatorWalls02() { - ns.ObjectOff(ns.GetTrigger()) - ns.WallGroupOpen(ns.WallGroup("PitTrapElevatorWalls02")) -} -func ZombieAmbush() { - ns.ObjectOff(ns.GetTrigger()) - ns.WallGroupBreak(ns.WallGroup("ZombieAmbushWalls")) -} -func InitializeHallwayArrowTraps() { - obj5 = ns.Object("HallwayArrowTrap01") - obj6 = ns.Object("HallwayArrowTrap02") -} -func ResetHallwayArrowTrap01() { - ns.ObjectOff(obj5) -} -func ResetHallwayArrowTrap02() { - ns.ObjectOff(obj6) -} -func ActivateHallwayArrowTrap01() { - ns.ObjectOn(obj5) - ns.FrameTimer(1, ResetHallwayArrowTrap01) -} -func ActivateHallwayArrowTrap02() { - ns.ObjectOn(obj6) - ns.FrameTimer(1, ResetHallwayArrowTrap02) -} -func InitializeBlockTrap() { - obj10 = ns.Object("SpikeBlock01") - obj11 = ns.Object("SpikeBlock02") - obj12 = ns.Object("SpikeBlock03") - obj13 = ns.Object("SpikeBlock04") - obj14 = ns.Object("SpikeBlock05") - obj15 = ns.Object("SpikeBlock06") - obj16 = ns.Object("SpikeBlock07") - obj17 = ns.Object("SpikeBlock08") - obj18 = ns.Object("SpikeBlock09") - obj19 = ns.Object("SpikeBlock10") - obj20 = ns.Object("SpikeBlock11") - obj21 = ns.Object("SpikeBlock12") - obj22 = ns.Object("SpikeBlock13") - obj23 = ns.Object("SpikeBlock14") - obj24 = ns.Object("SpikeBlock15") - obj25 = ns.Object("SpikeBlock16") - wp26 = ns.Waypoint("BlockWP01") - wp27 = ns.Waypoint("BlockWP02") - wp28 = ns.Waypoint("BlockWP03") - wp29 = ns.Waypoint("BlockWP04") - wp30 = ns.Waypoint("BlockWP05") - wp31 = ns.Waypoint("BlockWP06") - wp32 = ns.Waypoint("BlockWP07") - wp33 = ns.Waypoint("BlockWP08") - wp34 = ns.Waypoint("BlockWP09") - wp35 = ns.Waypoint("BlockWP10") - wp36 = ns.Waypoint("BlockWP11") - wp37 = ns.Waypoint("BlockWP12") - wp38 = ns.Waypoint("BlockWP13") - wp39 = ns.Waypoint("BlockWP14") - wp40 = ns.Waypoint("BlockWP15") - wp41 = ns.Waypoint("BlockWP16") - gvar42 = ns.ObjectGroup("BlockTrap01Triggers") - gvar43 = ns.ObjectGroup("BlockTrap02Triggers") - gvar44 = ns.ObjectGroup("BlockTrap03Triggers") -} -func BlockTrapBoom(a1 int) { - var v0 int - v0 = a1 - if v0 == 1 { - goto LABEL1 - } - if v0 == 2 { - goto LABEL2 - } - if v0 == 3 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - ns.AudioEvent(ns.HammerMissing, wp28) - ns.Effect(ns.JIGGLE, ns.GetWaypointX(wp28), ns.GetWaypointY(wp28), fvar9, 0) - goto LABEL4 -LABEL2: - ns.AudioEvent(ns.HammerMissing, wp34) - ns.Effect(ns.JIGGLE, ns.GetWaypointX(wp34), ns.GetWaypointY(wp34), fvar9, 0) - goto LABEL4 -LABEL3: - ns.AudioEvent(ns.HammerMissing, wp38) - ns.Effect(ns.JIGGLE, ns.GetWaypointX(wp38), ns.GetWaypointY(wp38), fvar9, 0) - goto LABEL4 -LABEL4: - return -} -func ResetBlockTrap(a1 int) { - var v0 int - v0 = a1 - if v0 == 1 { - goto LABEL1 - } - if v0 == 2 { - goto LABEL2 - } - if v0 == 3 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - ns.ObjectGroupOn(gvar42) - ns.AudioEvent(ns.TriggerReleased, wp28) - goto LABEL4 -LABEL2: - ns.ObjectGroupOn(gvar43) - ns.AudioEvent(ns.TriggerReleased, wp34) - goto LABEL4 -LABEL3: - ns.ObjectGroupOn(gvar44) - ns.AudioEvent(ns.TriggerReleased, wp38) - goto LABEL4 -LABEL4: - return -} -func CloseBlockTrap01() { - ns.ObjectGroupOff(gvar42) - ns.Move(obj10, wp26) - ns.Move(obj11, wp27) - ns.Move(obj12, wp28) - ns.Move(obj13, wp29) - ns.Move(obj14, wp30) - ns.Move(obj15, wp31) - ns.FrameTimerWithArg(ivar8, 1, BlockTrapBoom) - ns.FrameTimerWithArg(ivar7, 1, ResetBlockTrap) -} -func CloseBlockTrap02() { - ns.ObjectGroupOff(gvar43) - ns.Move(obj16, wp32) - ns.Move(obj17, wp33) - ns.Move(obj18, wp34) - ns.Move(obj19, wp35) - ns.Move(obj20, wp36) - ns.Move(obj21, wp37) - ns.FrameTimerWithArg(ivar8, 2, BlockTrapBoom) - ns.FrameTimerWithArg(ivar7, 2, ResetBlockTrap) -} -func CloseBlockTrap03() { - ns.ObjectGroupOff(gvar44) - ns.Move(obj22, wp38) - ns.Move(obj23, wp39) - ns.Move(obj24, wp40) - ns.Move(obj25, wp41) - ns.FrameTimerWithArg(ivar8, 3, BlockTrapBoom) - ns.FrameTimerWithArg(ivar7, 3, ResetBlockTrap) -} -func InitializeFistTraps() { - obj46[0] = ns.Object("FistTrap01") - obj46[1] = ns.Object("FistTrap02") - obj46[2] = ns.Object("FistTrap03") - obj46[3] = ns.Object("FistTrap04") - obj46[4] = ns.Object("FistTrap05") - obj46[5] = ns.Object("FistTrap06") - obj46[6] = ns.Object("FistTrap07") - obj46[7] = ns.Object("FistTrap08") - obj46[8] = ns.Object("FistTrap09") - obj46[9] = ns.Object("FistTrap10") - obj46[10] = ns.Object("FistTrap11") - obj46[11] = ns.Object("FistTrap12") - obj46[12] = ns.Object("FistTrap13") - obj45[0] = ns.Object("FistTrapLight01") - obj45[1] = ns.Object("FistTrapLight02") - obj45[2] = ns.Object("FistTrapLight03") - obj45[3] = ns.Object("FistTrapLight04") - obj45[4] = ns.Object("FistTrapLight05") - obj45[5] = ns.Object("FistTrapLight06") - obj45[6] = ns.Object("FistTrapLight07") - obj45[7] = ns.Object("FistTrapLight08") - obj45[8] = ns.Object("FistTrapLight09") - obj45[9] = ns.Object("FistTrapLight10") - obj45[10] = ns.Object("FistTrapLight11") - obj45[11] = ns.Object("FistTrapLight12") - obj45[12] = ns.Object("FistTrapLight13") -} -func ResetFistTrap(a1 int) { - ns.ObjectOn(obj45[a1]) - ns.ObjectOn(obj46[a1]) - ns.MoveWaypoint(wp48, ns.GetObjectX(obj46[a1]), ns.GetObjectY(obj46[a1])) - ns.AudioEvent(ns.TriggerReleased, wp48) -} -func DropFist(a1 int) { - ns.CastSpellObjectLocation(ns.SPELL_FIST, obj46[a1], ns.GetObjectX(obj46[a1]), ns.GetObjectY(obj46[a1])) - ns.ObjectOff(obj46[a1]) - ns.ObjectOff(obj45[a1]) - ns.FrameTimerWithArg(ivar47, a1, ResetFistTrap) -} -func ActivateFistTrap01() { - DropFist(0) -} -func ActivateFistTrap02() { - DropFist(1) -} -func ActivateFistTrap03() { - DropFist(2) -} -func ActivateFistTrap04() { - DropFist(3) -} -func ActivateFistTrap05() { - DropFist(4) -} -func ActivateFistTrap06() { - DropFist(5) -} -func ActivateFistTrap07() { - DropFist(6) -} -func ActivateFistTrap08() { - DropFist(7) -} -func ActivateFistTrap09() { - DropFist(8) -} -func ActivateFistTrap10() { - DropFist(9) -} -func ActivateFistTrap11() { - DropFist(10) -} -func ActivateFistTrap12() { - DropFist(11) -} -func ActivateFistTrap13() { - DropFist(12) -} -func EnableGuardian() { - ns.WideScreen(false) - ns.AudioEvent(ns.SwordsmanRecognize, wp48) - ns.Frozen(ns.GetHost(), false) - ns.AggressionLevel(obj53, 0.83) -} -func GuardianEnterFX() { - ns.MoveWaypoint(wp48, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.WallDestroyedStone, wp48) - ns.Effect(ns.JIGGLE, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 10, 0) -} -func GuardianMoveToArena() { - ns.Move(obj53, wp56) -} -func InitializeGuardian() { - obj53 = ns.Object("Guardian") - obj49 = ns.Object("RightGuardianGate") - obj50 = ns.Object("LeftGuardianGate") - obj51 = ns.Object("RightGuardianDoor") - obj52 = ns.Object("LeftGuardianDoor") - wp56 = ns.Waypoint("GuardianArena") - gvar57 = ns.WallGroup("GuardianWalls") - gvar58 = ns.WallGroup("GuardianDestructableWalls") - obj54 = ns.Object("GuardianDoorTrigger") - wp55 = ns.Waypoint("GuardianDoorWP") - ns.LockDoor(obj49) - ns.LockDoor(obj50) -} -func GuardianEnter() { - if !(!flag59 && ns.IsCaller(ns.GetHost())) { - goto LABEL1 - } - ns.MusicPushEvent() - ns.Music(26, 100) - ns.LockDoor(obj51) - ns.LockDoor(obj52) - ns.ObjectOn(obj54) - flag59 = true - ns.WideScreen(true) - ns.Frozen(ns.GetHost(), true) - ns.FrameTimer(60, GuardianMoveToArena) - ns.FrameTimer(30, GuardianEnterFX) -LABEL1: - return -} -func BreakGuardianWalls() { - ns.ObjectOff(ns.GetTrigger()) - ns.AudioEvent(ns.WallDestroyedStone, wp48) - ns.Effect(ns.JIGGLE, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 10, 0) - ns.NoWallSound(true) - ns.WallGroupOpen(gvar57) - ns.NoWallSound(false) - ns.WallGroupBreak(gvar58) -} -func GuardianArrivesInArena() { - if !ns.IsCaller(obj53) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.LookAtObject(obj53, ns.GetHost()) - ns.FrameTimer(30, EnableGuardian) - ns.ObjectOff(obj54) -LABEL1: - return -} -func GuardianDie() { - if flag60 { - goto LABEL1 - } - flag60 = true - ns.UnlockDoor(obj50) - ns.UnlockDoor(obj49) - ns.UnlockDoor(obj52) - ns.UnlockDoor(obj51) - ns.MoveWaypoint(wp48, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.FlagDrop, wp48) - ns.PrintToAll("War04d:WarriorDie") - ns.GiveXp(ns.GetHost(), 700) - ns.MusicPopEvent() -LABEL1: - return -} -func ClearGuardianDoor() { - if ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.MoveObject(ns.GetCaller(), ns.GetWaypointX(wp55), ns.GetWaypointY(wp55)) -LABEL1: - return -} -func EnableKeeper() { - ns.LookAtObject(obj64, ns.GetHost()) - ns.AggressionLevel(obj64, 0.83) -} -func InitializeKeeper() { - obj64 = ns.Object("Keeper") - obj65 = ns.Object("LeftKeeperEntranceDoor") - obj66 = ns.Object("RightKeeperEntranceDoor") - obj67 = ns.Object("LeftKeeperExitDoor") - obj68 = ns.Object("RightKeeperExitDoor") - obj69 = ns.Object("KeeperDoorTrigger") - wp71[0] = ns.Waypoint("BlinkWP1") - wp71[1] = ns.Waypoint("BlinkWP2") - wp71[2] = ns.Waypoint("BlinkWP3") - wp71[3] = ns.Waypoint("BlinkWP4") - wp72 = ns.Waypoint("KeeperEnterWP") - wp73 = ns.Waypoint("KeeperDoorWP") - ns.LockDoor(obj67) - ns.LockDoor(obj68) -} -func EnemyGoHome() { - r1 := ns.IsAttackedBy(ns.GetHost(), ns.GetCaller()) - if !(r1 && ns.GetCaller() != obj64) { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func GoInvisible() { - var ( - v0 int - v1 float32 - v2 float32 - v3 float32 - v4 float32 - v5 [4]float32 - v6 float32 - v7 int - ) - v6 = 0 - v7 = 0 - ivar76 += 1 - if gvar63 != gvar62 { - goto LABEL1 - } - gvar63 = gvar61 - return - goto LABEL2 -LABEL1: - gvar63 = gvar62 -LABEL2: - v3 = ns.GetObjectX(obj64) - v4 = ns.GetObjectY(obj64) - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL3 - } - v5[v0] = ns.Distance(v3, v4, ns.GetWaypointX(wp71[v0]), ns.GetWaypointY(wp71[v0])) - v0 += 1 - } -LABEL3: - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL5 - } - if !(v5[v0] > v6) { - goto LABEL6 - } - v6 = v5[v0] - v7 = v0 - LABEL6: - v0 += 1 - } -LABEL5: - if !(ns.CurrentHealth(obj64) > 0) { - goto LABEL8 - } - v1 = ns.GetWaypointX(wp71[v7]) - v2 = ns.GetWaypointY(wp71[v7]) - if !(ivar76 >= 4) { - goto LABEL9 - } - ivar76 = 0 - ns.Enchant(obj64, ns.ENCHANT_INVISIBLE, 3) -LABEL9: - ns.Effect(ns.TELEPORT, v3, v4, 0, 0) - ns.MoveWaypoint(wp48, v3, v4) - ns.AudioEvent(ns.BlinkCast, wp48) - ns.Effect(ns.SMOKE_BLAST, v1, v2, 0, 0) - ns.MoveObject(obj64, v1, v2) -LABEL8: - return -} -func DisableKeeperDoorTrigger() { - ns.ObjectOff(obj69) -} -func KeeperEnter() { - var ( - v0 float32 - v1 float32 - ) - v0 = ns.GetWaypointX(wp72) - v1 = ns.GetWaypointY(wp72) - if !(ns.IsCaller(ns.GetHost()) && flag75 == false) { - goto LABEL1 - } - ns.ObjectOn(obj69) - ns.MusicPushEvent() - ns.Music(4, 100) - flag75 = true - ns.Effect(ns.TELEPORT, v0, v1, 0, 0) - ns.AudioEvent(ns.TeleportIn, wp72) - ns.MoveObject(obj64, v0, v1) - ns.LockDoor(obj65) - ns.LockDoor(obj66) - ns.FrameTimer(1, EnableKeeper) - ns.FrameTimer(30, DisableKeeperDoorTrigger) -LABEL1: - return -} -func KeeperDie() { - if flag74 { - goto LABEL1 - } - flag74 = true - ns.MoveWaypoint(wp48, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.FlagCapture, wp48) - ns.PrintToAll("War04f:WizardDie") - ns.GiveXp(ns.GetHost(), 1000) - ns.UnlockDoor(obj68) - ns.UnlockDoor(obj67) - ns.UnlockDoor(obj66) - ns.UnlockDoor(obj65) - ns.MusicPopEvent() -LABEL1: - return -} -func ClearKeeperDoor() { - if ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.MoveObject(ns.GetCaller(), ns.GetWaypointX(wp73), ns.GetWaypointY(wp73)) -LABEL1: - return -} -func InitializeFlameGrates() { - gvar70 = ns.ObjectGroup("FlameGrateFlames") -} -func ToggleFlameGrates() { - ns.ObjectGroupToggle(gvar70) -} -func InitializeSkullGuns() { - obj92 = ns.Object("ArrowTrap01") - obj93 = ns.Object("ArrowTrap02") - obj94 = ns.Object("ArrowTrap03") - obj95 = ns.Object("ArrowTrap04") - obj96 = ns.Object("ArrowTrap05") - obj97 = ns.Object("ArrowTrap06") - obj98 = ns.Object("ArrowTrap07") - obj99 = ns.Object("ArrowTrap08") - obj100 = ns.Object("ArrowTrap09") - obj101 = ns.Object("ArrowTrap10") - obj102 = ns.Object("ArrowTrap11") -} -func InitializeMonsterGroups() { - gvar78 = ns.ObjectGroup("MonsterGroup01") -} -func MapInitialize() { - wp48 = ns.Waypoint("AudioOrigin") - wp77 = ns.Waypoint("SecretAudioOrigin") - InitializeSkullGuns() - InitializeSkeletonAmbush() - InitializeGuardian() - InitializeKeeper() - InitializeFistTraps() - InitializeHallwayArrowTraps() - InitializeMonsterGroups() - InitializeBlockTrap() - InitializeFlameGrates() - ns.Music(20, 100) -} -func PlayerDeath() { - ns.DeathScreen(4) -} -func EnableMonsterGroup01() { - ns.ObjectOff(ns.GetTrigger()) - ns.ObjectGroupOn(gvar78) -} -func NoMonsters() { - r1 := ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) - if !r1 { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func SecretSFX() { - ns.MoveWaypoint(wp77, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretFound, wp77) -} -func Secret01Found() { - ns.ObjectOff(ns.GetTrigger()) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 100) - ns.AggressionLevel(ns.Object("Secret01Spider"), 0.83) - SecretSFX() -} -func Secret02Found() { - ns.ObjectOff(ns.GetTrigger()) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 50) - SecretSFX() -} -func CheckRows(a1 int) { - var v0 int - v0 = a1 - if v0 == 1 { - goto LABEL1 - } - if v0 == 2 { - goto LABEL2 - } - if v0 == 3 { - goto LABEL3 - } - if v0 == 4 { - goto LABEL4 - } - if v0 == 5 { - goto LABEL5 - } - if v0 == 6 { - goto LABEL6 - } - if v0 == 7 { - goto LABEL7 - } - if v0 == 8 { - goto LABEL8 - } - if v0 == 9 { - goto LABEL9 - } - if v0 == 10 { - goto LABEL10 - } - if v0 == 11 { - goto LABEL11 - } - goto LABEL12 -LABEL1: - if !(ivar79 > 0) { - goto LABEL13 - } - ns.ObjectOn(obj92) - goto LABEL14 -LABEL13: - ns.ObjectOff(obj92) -LABEL14: - goto LABEL12 -LABEL2: - if !(ivar80 > 0) { - goto LABEL15 - } - ns.ObjectOn(obj93) - goto LABEL16 -LABEL15: - ns.ObjectOff(obj93) -LABEL16: - goto LABEL12 -LABEL3: - if !(ivar81 > 0) { - goto LABEL17 - } - ns.ObjectOn(obj94) - goto LABEL18 -LABEL17: - ns.ObjectOff(obj94) -LABEL18: - goto LABEL12 -LABEL4: - if !(ivar82 > 0) { - goto LABEL19 - } - ns.ObjectOn(obj95) - goto LABEL20 -LABEL19: - ns.ObjectOff(obj95) -LABEL20: - goto LABEL12 -LABEL5: - if !(ivar83 > 0) { - goto LABEL21 - } - ns.ObjectOn(obj96) - goto LABEL22 -LABEL21: - ns.ObjectOff(obj96) -LABEL22: - goto LABEL12 -LABEL6: - if !(ivar84 > 0) { - goto LABEL23 - } - ns.ObjectOn(obj97) - goto LABEL24 -LABEL23: - ns.ObjectOff(obj97) -LABEL24: - goto LABEL12 -LABEL7: - if !(ivar85 > 0) { - goto LABEL25 - } - ns.ObjectOn(obj98) - goto LABEL26 -LABEL25: - ns.ObjectOff(obj98) -LABEL26: - goto LABEL12 -LABEL8: - if !(ivar86 > 0) { - goto LABEL27 - } - ns.ObjectOn(obj99) - goto LABEL28 -LABEL27: - ns.ObjectOff(obj99) -LABEL28: - goto LABEL12 -LABEL9: - if !(ivar87 > 0) { - goto LABEL29 - } - ns.ObjectOn(obj100) - goto LABEL30 -LABEL29: - ns.ObjectOff(obj100) -LABEL30: - goto LABEL12 -LABEL10: - if !(ivar88 > 0) { - goto LABEL31 - } - ns.ObjectOn(obj101) - goto LABEL32 -LABEL31: - ns.ObjectOff(obj101) -LABEL32: - goto LABEL12 -LABEL11: - if !(ivar89 > 0) { - goto LABEL33 - } - ns.ObjectOn(obj102) - goto LABEL34 -LABEL33: - ns.ObjectOff(obj102) -LABEL34: - goto LABEL12 -LABEL12: - return -} -func ActivateRow01() { - ivar79 += 1 - CheckRows(1) -} -func DisableRow01() { - ivar79 -= 1 - CheckRows(1) -} -func ActivateRow02() { - ivar80 += 1 - CheckRows(2) -} -func DisableRow02() { - ivar80 -= 1 - CheckRows(2) -} -func ActivateRow03() { - ivar81 += 1 - CheckRows(3) -} -func DisableRow03() { - ivar81 -= 1 - CheckRows(3) -} -func ActivateRow04() { - ivar82 += 1 - CheckRows(4) -} -func DisableRow04() { - ivar82 -= 1 - CheckRows(4) -} -func ActivateRow05() { - ivar83 += 1 - CheckRows(5) -} -func DisableRow05() { - ivar83 -= 1 - CheckRows(5) -} -func ActivateRow06() { - ivar84 += 1 - CheckRows(6) -} -func DisableRow06() { - ivar84 -= 1 - CheckRows(6) -} -func ActivateRow07() { - ivar85 += 1 - CheckRows(7) -} -func DisableRow07() { - ivar85 -= 1 - CheckRows(7) -} -func ActivateRow08() { - ivar86 += 1 - CheckRows(8) -} -func DisableRow08() { - ivar86 -= 1 - CheckRows(8) -} -func ActivateRow09() { - ivar87 += 1 - CheckRows(9) -} -func DisableRow09() { - ivar87 -= 1 - CheckRows(9) -} -func ActivateRow10() { - ivar88 += 1 - CheckRows(10) -} -func DisableRow10() { - ivar88 -= 1 - CheckRows(10) -} -func ActivateRow11() { - ivar89 += 1 - CheckRows(11) -} -func DisableRow11() { - ivar89 -= 1 - CheckRows(11) -} -func OnEvent(typ string) { - switch typ { - case "MapInitialize": - MapInitialize() - case "PlayerDeath": - PlayerDeath() - } -} diff --git a/examples/con04c/dummy_test.go b/examples/con04c/dummy_test.go deleted file mode 100644 index 1719805..0000000 --- a/examples/con04c/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package con04c - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/con05a/con05a.go b/examples/con05a/con05a.go deleted file mode 100644 index ea6ca24..0000000 --- a/examples/con05a/con05a.go +++ /dev/null @@ -1,1991 +0,0 @@ -package con05a - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - gvar4 int - gvar5 int - gvar6 int - gvar7 int - gvar8 int - gvar9 int - gvar10 int - gvar11 int - gvar12 int - gvar13 int - gvar14 int - gvar15 int - gvar16 int - gvar17 int - gvar18 int - gvar19 int - gvar20 int - gvar21 int - gvar22 int - gvar23 int - gvar24 int - gvar25 int - gvar26 int - gvar27 int - gvar28 int - gvar29 int - wp30 ns.WaypointID - wp31 ns.WaypointID - wp32 ns.WaypointID - wp33 ns.WaypointID - wp34 ns.WaypointID - wp35 ns.WaypointID - wp36 ns.WaypointID - wp37 ns.WaypointID - obj38 ns.ObjectID - obj39 ns.ObjectID - obj40 ns.ObjectID - obj41 ns.ObjectID - obj42 ns.ObjectID - obj43 ns.ObjectID - obj44 ns.ObjectID - obj45 ns.ObjectID - obj46 ns.ObjectID - obj47 ns.ObjectID - obj48 ns.ObjectID - obj49 ns.ObjectID - obj50 ns.ObjectID - obj51 ns.ObjectID - obj52 ns.ObjectID - obj53 ns.ObjectID - obj54 ns.ObjectID - obj55 ns.ObjectID - gvar56 ns.ObjectID - gvar57 ns.ObjectID - obj58 ns.ObjectID - obj59 ns.ObjectID - obj60 ns.ObjectID - obj61 ns.ObjectID - obj62 ns.ObjectID - obj63 ns.ObjectID - gvar64 ns.ObjectGroupID - gvar65 ns.ObjectGroupID - gvar66 ns.ObjectID - ivar67 int - ivar68 int - gvar69 int - gvar70 int - flag71 bool - gvar72 int - gvar73 int - gvar74 int - gvar75 int - gvar76 int - gvar77 int - gvar78 int - gvar79 int - gvar80 int - gvar81 int - gvar82 int - gvar83 int - gvar84 int - gvar85 int - gvar86 int - flag87 bool - obj88 ns.ObjectID - obj89 ns.ObjectID - obj90 ns.ObjectID - obj91 ns.ObjectID - obj92 ns.ObjectID - obj93 ns.ObjectID - obj94 ns.ObjectID - obj95 ns.ObjectID - obj96 ns.ObjectID - obj97 ns.ObjectID - obj98 ns.ObjectID - obj99 ns.ObjectID - obj100 ns.ObjectID - obj101 ns.ObjectID - obj102 ns.ObjectID - obj103 ns.ObjectID - obj104 ns.ObjectID - obj105 ns.ObjectID - obj106 ns.ObjectID - obj107 ns.ObjectID - obj108 ns.ObjectID - obj109 ns.ObjectID - obj110 ns.ObjectID - obj111 ns.ObjectID - obj112 ns.ObjectID - obj113 ns.ObjectID - obj114 ns.ObjectID - obj115 ns.ObjectID - obj116 ns.ObjectID - obj117 ns.ObjectID - obj118 ns.ObjectID - obj119 ns.ObjectID - obj120 ns.ObjectID - obj121 ns.ObjectID - obj122 ns.ObjectID - obj123 ns.ObjectID - obj124 ns.ObjectID - obj125 ns.ObjectID - obj126 ns.ObjectID - obj127 ns.ObjectID - obj128 ns.ObjectID - obj129 ns.ObjectID - obj130 ns.ObjectID - obj131 ns.ObjectID - obj132 ns.ObjectID - obj133 ns.ObjectID - obj134 ns.ObjectID - obj135 ns.ObjectID - obj136 ns.ObjectID - obj137 ns.ObjectID - obj138 ns.ObjectID - obj139 ns.ObjectID - obj140 ns.ObjectID - obj141 ns.ObjectID - wp142 int - wp143 int - obj144 ns.ObjectID - obj145 ns.ObjectID - obj146 ns.ObjectID - obj147 ns.ObjectID - obj148 ns.ObjectID - obj149 ns.ObjectID - obj150 ns.ObjectID - obj151 ns.ObjectID - obj152 ns.ObjectID - obj153 ns.ObjectID - obj154 ns.ObjectID - obj155 ns.ObjectID - obj156 ns.ObjectID - obj157 ns.ObjectID - obj158 ns.ObjectID - obj159 ns.ObjectID - obj160 ns.ObjectID - obj161 ns.ObjectID - obj162 ns.ObjectID - obj163 ns.ObjectID - obj164 ns.ObjectID - obj165 ns.ObjectID - obj166 ns.ObjectID - obj167 ns.ObjectID - obj168 ns.ObjectID - obj169 ns.ObjectID - obj170 ns.ObjectID - gvar171 int - gvar172 int - gvar173 int - gvar174 int - obj175 ns.ObjectID - obj176 ns.ObjectID - obj177 ns.ObjectID - obj178 ns.ObjectID - obj179 ns.ObjectID - obj180 ns.ObjectID - obj181 ns.ObjectID - obj182 ns.ObjectID - obj183 ns.ObjectID - obj184 ns.ObjectID - gvar185 int - wp186 ns.WaypointID - wp187 ns.WaypointID - wp188 ns.WaypointID - wp189 ns.WaypointID - wp190 ns.WaypointID - wp191 ns.WaypointID - wp192 ns.WaypointID - obj193 ns.ObjectID - obj194 ns.ObjectID - obj195 ns.ObjectID - obj196 ns.ObjectID - gvar197 int - gvar198 int - gvar199 int - gvar200 int - wp201 ns.WaypointID - wp202 ns.WaypointID - wp203 ns.WaypointID - wp204 ns.WaypointID - wp205 ns.WaypointID - wp206 ns.WaypointID - wp207 ns.WaypointID - wp208 ns.WaypointID - wp209 ns.WaypointID - wp210 ns.WaypointID - wp211 ns.WaypointID - wp212 ns.WaypointID - wp213 ns.WaypointID - wp214 ns.WaypointID - wp215 ns.WaypointID - wp216 ns.WaypointID - wp217 ns.WaypointID - wp218 ns.WaypointID - wp219 ns.WaypointID - wp220 ns.WaypointID - wp221 ns.WaypointID - ivar222 int -) - -func init() { - gvar4 = 0 - gvar5 = 1 - gvar6 = 2 - gvar7 = 3 - gvar8 = 4 - gvar9 = 5 - gvar10 = 0 - gvar11 = 1 - gvar12 = 0 - gvar13 = 1 - gvar14 = 0 - gvar15 = 1 - gvar16 = 2 - gvar17 = 3 - gvar18 = 4 - gvar19 = 5 - gvar20 = 0 - gvar21 = 1 - gvar22 = 2 - gvar23 = 3 - gvar24 = 0 - gvar25 = 1 - gvar26 = 0 - gvar27 = 1 - gvar28 = 2 - gvar29 = 3 - ivar67 = 0 - ivar68 = 0 - gvar69 = 0 - gvar70 = 0 - flag71 = false - gvar72 = gvar4 - gvar73 = gvar10 - gvar74 = gvar12 - gvar75 = gvar20 - gvar76 = gvar14 - gvar77 = gvar24 - gvar84 = 0 - gvar85 = 0 - gvar86 = 0 - ivar222 = 0 -} -func OgreDeath() { - ivar67 += 1 - if !(ivar67 >= 4) { - goto LABEL1 - } - SetTownDialog() - ns.Music(23, 100) -LABEL1: - return -} -func SetTownDialog() { - ns.SetDialog(obj176, ns.NORMAL, Villager1Start, Villager1End) - ns.StoryPic(obj176, "MalePic8") - ns.SetDialog(obj177, ns.NORMAL, Villager2Start, Villager2End) - ns.StoryPic(obj177, "MalePic3") - ns.SetDialog(obj178, ns.NORMAL, Villager3Start, Villager3End) - ns.StoryPic(obj178, "MalePic2") - ns.SetDialog(obj179, ns.NORMAL, Villager4Start, Villager4End) - ns.StoryPic(obj179, "MalePic14") - ns.SetDialog(obj180, ns.NORMAL, Villager5Start, Villager5End) - ns.StoryPic(obj180, "MalePic9") -} -func BeginMission() { - var ( - v0 float32 - v1 float32 - ) - v0 = ns.GetWaypointX(wp209) - v1 = ns.GetWaypointY(wp209) - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.ObjectOff(obj119) - ns.ObjectOff(obj120) - ns.ObjectOff(obj121) - ns.Frozen(ns.GetHost(), true) - ns.CreatureIdle(ns.GetHost()) - LetterBoxOn() - ns.MoveWaypoint(wp33, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.TeleportIn, wp33) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - ns.Effect(ns.SPARK_EXPLOSION, v0, v1, 0, 0) - ns.MoveObject(obj55, v0, v1) - ns.Frozen(obj55, true) - ns.CreatureIdle(obj55) - ns.LookAtObject(obj55, ns.GetHost()) - ns.FrameTimer(5, BeginMission2) -LABEL1: - return -} -func BeginMission2() { - var ( - v0 float32 - v1 float32 - ) - v0 = ns.GetWaypointX(wp209) - v1 = ns.GetWaypointY(wp209) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - ns.MoveWaypoint(wp207, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.FrameTimer(25, BeginMission3) -} -func BeginMission3() { - ns.StartDialog(obj55, ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj55) - ns.LookAtObject(obj55, ns.GetHost()) -} -func BeginMission4() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - ) - _ = v3 - _ = v2 - v0 = ns.GetWaypointX(wp209) - v1 = ns.GetWaypointY(wp209) - v2 = ns.GetWaypointX(wp207) - v3 = ns.GetWaypointY(wp207) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - ns.Effect(ns.SPARK_EXPLOSION, v0, v1, 0, 0) - ns.DestroyChat(obj55) - ns.AudioEvent(ns.TeleportOut, wp33) - ns.MoveObject(obj55, 816, 1980) - ns.CreatureIdle(obj55) - LetterBoxOff() - ns.FrameTimer(15, BeginMission5) -} -func BeginMission5() { - var ( - v0 float32 - v1 float32 - ) - v0 = ns.GetWaypointX(wp209) - v1 = ns.GetWaypointY(wp209) - ns.Frozen(ns.GetHost(), false) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - ns.Effect(ns.SPARK_EXPLOSION, v0, v1, 0, 0) -} -func HorvathStart() { - var ( - v0 float32 - v1 float32 - v2 int - ) - v2 = gvar69 - if v2 == gvar26 { - goto LABEL1 - } - if v2 == gvar27 { - goto LABEL2 - } - if v2 == gvar28 { - goto LABEL3 - } - if v2 == gvar29 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - ns.TellStory(ns.SwordsmanHurt, "Con05A.scr:HorvathGreeting") - goto LABEL5 -LABEL2: - if gvar70 != 1 { - goto LABEL6 - } - v0 = ns.GetWaypointX(wp207) - v1 = ns.GetWaypointY(wp207) - ns.AudioEvent(ns.CurePoisonCast, wp207) - ns.AudioEvent(ns.CurePoisonEffect, wp207) - ns.Effect(ns.BLUE_SPARKS, v0, v1, 0, 0) - gvar69 = gvar28 - ns.TellStory(ns.SwordsmanHurt, "Con05A.scr:HorvathReturned") - goto LABEL5 - goto LABEL3 -LABEL6: - ns.TellStory(ns.SwordsmanHurt, "Con05A.scr:HorvathWaiting") - goto LABEL5 -LABEL3: - ns.TellStory(ns.SwordsmanHurt, "Con05A.scr:HorvathReturned") - goto LABEL5 -LABEL4: - ns.TellStory(ns.SwordsmanHurt, "Con05A.scr:HorvathIdle") - goto LABEL5 -LABEL5: - return -} -func HorvathEnd() { - var v0 int - v0 = gvar69 - if v0 == gvar26 { - goto LABEL1 - } - if v0 == gvar27 { - goto LABEL2 - } - if v0 == gvar28 { - goto LABEL3 - } - if v0 == gvar29 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - ns.JournalEntry(ns.GetHost(), "Con05Quest1", 2) - ns.PrintToAll("Con01a:NewJournalEntry") - gvar69 = gvar27 - ns.FrameTimer(1, BeginMission4) - goto LABEL5 -LABEL2: - goto LABEL5 -LABEL3: - gvar69 = gvar29 - ns.GiveXp(ns.GetHost(), 250) - ns.JournalEdit(ns.GetHost(), "Con05Quest1", 4) - ns.PrintToAll("Con05A.scr:ObjectiveComplete") - goto LABEL5 -LABEL4: - goto LABEL5 -LABEL5: - return -} -func ThaviusOgreRecognize() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.CancelDialog(obj176) - ns.CancelDialog(obj177) - ns.CancelDialog(obj178) - ns.CancelDialog(obj179) - ns.CancelDialog(obj180) -LABEL1: - return -} -func ThaviusOgreDeath() { - ivar68 += 1 - if !(ivar68 >= 2 && ivar67 >= 4) { - goto LABEL1 - } - SetTownDialog() -LABEL1: - return -} -func ChangeMaps() { - ns.MoveObject(ns.GetHost(), 3402, 513) -} -func GetFarmerStaff() { - ns.SetDialog(obj126, ns.NORMAL, FarmerStart, FarmerEnd) - gvar72 = gvar7 -} -func KillCorpses() { - ns.FrameTimer(30, KillCorpses2) -} -func DisableVillagers() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - ) - v0 = ns.GetWaypointX(wp188) - v1 = ns.GetWaypointY(wp188) - v2 = ns.GetWaypointX(wp189) - v3 = ns.GetWaypointY(wp189) - ns.CreatureGuard(obj126, v0, v1, v2, v3, 0) -} -func LockDoors() { - ns.LockDoor(obj195) - ns.LockDoor(obj196) - ns.LockDoor(obj193) - ns.LockDoor(obj194) -} -func SwordsmanStart() { - var v0 int - ns.Frozen(obj140, true) - ns.CreatureIdle(obj140) - ns.LookAtObject(obj140, ns.GetHost()) - v0 = gvar74 - if v0 == gvar12 { - goto LABEL1 - } - if v0 == gvar13 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.LookAtObject(obj140, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:SwordsmanGreeting") - goto LABEL3 -LABEL2: - ns.LookAtObject(obj140, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:SwordsmanEnd") - goto LABEL3 -LABEL3: - return -} -func SwordsmanEnd() { - var v0 int - ns.Frozen(obj140, false) - ns.CreatureGuard(obj140, ns.GetWaypointX(wp186), ns.GetWaypointY(wp186), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 240) - v0 = gvar74 - if v0 == gvar12 { - goto LABEL1 - } - if v0 == gvar13 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.FrameTimer(1, SwordsmanTriggerC) - gvar74 = gvar13 - goto LABEL3 -LABEL2: - ns.LookAtDirection(obj140, ns.NE) - goto LABEL3 -LABEL3: - return -} -func DrunkStart() { - ns.LookAtObject(ns.GetTrigger(), ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:DrunkGreeting") -} -func DrunkEnd() { - ns.LookAtDirection(ns.GetTrigger(), ns.NW) -} -func FarmerStart() { - var ( - v0 float32 - v1 float32 - v2 int - ) - _ = v1 - _ = v0 - v2 = gvar72 - if v2 == gvar4 { - goto LABEL1 - } - if v2 == gvar5 { - goto LABEL2 - } - if v2 == gvar6 { - goto LABEL3 - } - if v2 == gvar7 { - goto LABEL4 - } - if v2 == gvar8 { - goto LABEL5 - } - if v2 == gvar9 { - goto LABEL6 - } - goto LABEL7 -LABEL1: - if !ns.HasItem(ns.GetHost(), obj125) { - goto LABEL8 - } - gvar72 = gvar7 - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:FarmerReturned") - goto LABEL7 - goto LABEL2 -LABEL8: - ns.CreatureIdle(obj126) - ns.LookAtObject(obj126, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:FarmerGreeting") - goto LABEL7 -LABEL2: - ns.CreatureIdle(obj126) - ns.LookAtObject(obj126, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:FarmerGreeting") - goto LABEL7 -LABEL3: - ns.CreatureIdle(obj126) - ns.LookAtObject(obj126, ns.GetHost()) - if !ns.HasItem(ns.GetHost(), obj125) { - goto LABEL9 - } - v0 = ns.GetWaypointX(wp188) - v1 = ns.GetWaypointY(wp188) - gvar72 = gvar7 - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:FarmerReturned") - goto LABEL7 - goto LABEL4 -LABEL9: - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:FarmerWaiting") - goto LABEL7 -LABEL4: - ns.CreatureIdle(obj126) - ns.LookAtObject(obj126, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:FarmerReturned") - goto LABEL7 -LABEL5: - ns.CreatureIdle(obj126) - ns.LookAtObject(obj126, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:FarmerIdle") - goto LABEL7 -LABEL6: - if !ns.HasItem(ns.GetHost(), obj125) { - goto LABEL10 - } - gvar72 = gvar7 - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:FarmerReturned") - goto LABEL7 - goto LABEL7 -LABEL10: - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:FarmerHuffy") - goto LABEL7 -LABEL7: - return -} -func FarmerEnd() { - var ( - v0 int - v1 int - v2 int - v3 ns.ObjectID - v4 int - ) - v0 = 0 - v1 = 1 - v2 = 2 - v3 = 0 - v0 = ns.GetAnswer(obj126) - v4 = gvar72 - if v4 == gvar4 { - goto LABEL1 - } - if v4 == gvar5 { - goto LABEL2 - } - if v4 == gvar6 { - goto LABEL3 - } - if v4 == gvar7 { - goto LABEL4 - } - if v4 == gvar8 { - goto LABEL5 - } - if v4 == gvar9 { - goto LABEL6 - } - goto LABEL7 -LABEL1: - if v0 != v1 { - goto LABEL8 - } - gvar72 = gvar6 - ns.SetDialog(obj126, ns.NORMAL, FarmerStart, FarmerEnd) - if flag71 { - goto LABEL9 - } - ns.PrintToAll("Con01a:NewJournalEntry") - ns.JournalEntry(ns.GetHost(), "War05Quest8", 2) - flag71 = true -LABEL9: - goto LABEL7 - goto LABEL2 -LABEL8: - if v0 != v2 { - goto LABEL10 - } - ns.SetDialog(obj126, ns.YESNO, FarmerStart, FarmerEnd) - gvar72 = gvar5 - goto LABEL7 - goto LABEL2 -LABEL10: - if obj126 != v3 { - goto LABEL2 - } - gvar72 = gvar4 - ns.SetDialog(obj126, ns.YESNO, FarmerStart, FarmerEnd) - goto LABEL7 -LABEL2: - if v0 != v1 { - goto LABEL11 - } - gvar72 = gvar6 - ns.SetDialog(obj126, ns.NORMAL, FarmerStart, FarmerEnd) - if flag71 { - goto LABEL12 - } - ns.PrintToAll("Con01a:NewJournalEntry") - ns.JournalEntry(ns.GetHost(), "War05Quest8", 2) - flag71 = true -LABEL12: - goto LABEL7 - goto LABEL3 -LABEL11: - if v0 != v2 { - goto LABEL13 - } - ns.SetDialog(obj126, ns.NORMAL, FarmerStart, FarmerEnd) - gvar72 = gvar9 - goto LABEL7 - goto LABEL3 -LABEL13: - if obj126 != v3 { - goto LABEL3 - } - gvar72 = gvar4 - ns.SetDialog(obj126, ns.YESNO, FarmerStart, FarmerEnd) - goto LABEL7 -LABEL3: - goto LABEL7 -LABEL4: - if !flag71 { - goto LABEL14 - } - ns.JournalEdit(ns.GetHost(), "War05Quest8", 4) - ns.PrintToAll("War05A.scr:ObjectiveComplete") -LABEL14: - ns.GiveXp(ns.GetHost(), 250) - ns.Pickup(ns.GetHost(), obj123) - ns.Delete(obj125) - EndCurse() - gvar72 = gvar8 - goto LABEL7 -LABEL5: - goto LABEL7 -LABEL6: - goto LABEL7 -LABEL7: - return -} -func HoundStart() { - ns.CreatureIdle(obj127) - ns.LookAtObject(obj127, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:HoundGreeting") -} -func HoundEnd() { - ns.SetRoamFlag(obj127, 2) - ns.Wander(obj127) -} -func FarmerWifeStart() { - var v0 int - v0 = gvar73 - if v0 == gvar10 { - goto LABEL1 - } - if v0 == gvar11 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.LookAtObject(obj128, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:FarmerWifeGreeting") - goto LABEL3 -LABEL2: - ns.LookAtObject(obj128, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:FarmerWifeIdle") - goto LABEL3 -LABEL3: - return -} -func FarmerWifeEnd() { - var v0 int - v0 = gvar73 - if v0 == gvar10 { - goto LABEL1 - } - if v0 == gvar11 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - gvar73 = gvar11 - LetterBoxOff() - ns.Frozen(ns.GetHost(), false) - goto LABEL3 -LABEL2: - goto LABEL3 -LABEL3: - return -} -func CaptainStart() { - var v2 int - v2 = gvar77 - if v2 == gvar24 { - goto LABEL1 - } - if v2 == gvar25 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:CaptainGreeting") - goto LABEL3 -LABEL2: - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:CaptainWaiting") - goto LABEL3 -LABEL3: - return -} -func CaptainEnd() { - var v0 int - v0 = gvar77 - if v0 == gvar24 { - goto LABEL1 - } - if v0 == gvar25 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - gvar77 = gvar25 - ns.FrameTimer(1, HorvathAppears4) - goto LABEL3 -LABEL2: - goto LABEL3 -LABEL3: - return -} -func BartenderStart() { - ns.Frozen(obj94, true) - ns.LookAtObject(obj94, ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj94) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:BartenderGreeting") -} -func BartenderEnd() { - ns.Frozen(obj94, false) - ns.LookAtDirection(obj94, ns.SE) -} -func EndCurse() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 float32 - v5 float32 - v6 float32 - v7 float32 - v8 float32 - v9 float32 - ) - _ = v7 - _ = v6 - _ = v3 - _ = v2 - _ = v1 - _ = v0 - v8 = ns.GetWaypointX(wp188) - v9 = ns.GetWaypointY(wp188) - v0 = ns.GetWaypointX(wp206) - v1 = ns.GetWaypointY(wp206) - v2 = ns.GetWaypointX(wp204) - v3 = ns.GetWaypointY(wp204) - v6 = ns.GetWaypointX(wp205) - v7 = ns.GetWaypointY(wp205) - v4 = ns.GetObjectX(obj127) - v5 = ns.GetObjectY(obj127) - ns.Frozen(ns.GetHost(), true) - LetterBoxOn() - ns.AudioEvent(ns.CurePoisonCast, wp188) - ns.AudioEvent(ns.CurePoisonEffect, wp188) - ns.Effect(ns.LIGHTNING, v8, v9, v4, v5) - ns.FrameTimer(10, EndCurse2) -} -func EndCurse2() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 float32 - v5 float32 - v6 float32 - v7 float32 - v8 float32 - v9 float32 - ) - _ = v7 - _ = v6 - _ = v3 - _ = v2 - _ = v1 - _ = v0 - v8 = ns.GetWaypointX(wp188) - v9 = ns.GetWaypointY(wp188) - v0 = ns.GetWaypointX(wp206) - v1 = ns.GetWaypointY(wp206) - v2 = ns.GetWaypointX(wp204) - v3 = ns.GetWaypointY(wp204) - v6 = ns.GetWaypointX(wp205) - v7 = ns.GetWaypointY(wp205) - v4 = ns.GetObjectX(obj127) - v5 = ns.GetObjectY(obj127) - ns.Effect(ns.LIGHTNING, v8, v9, v4, v5) - ns.FrameTimer(7, EndCurse3) -} -func EndCurse3() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 float32 - v5 float32 - v6 float32 - v7 float32 - v8 float32 - v9 float32 - ) - _ = v7 - _ = v6 - _ = v3 - _ = v2 - _ = v1 - _ = v0 - v8 = ns.GetWaypointX(wp188) - v9 = ns.GetWaypointY(wp188) - v0 = ns.GetWaypointX(wp206) - v1 = ns.GetWaypointY(wp206) - v2 = ns.GetWaypointX(wp204) - v3 = ns.GetWaypointY(wp204) - v6 = ns.GetWaypointX(wp205) - v7 = ns.GetWaypointY(wp205) - v4 = ns.GetObjectX(obj127) - v5 = ns.GetObjectY(obj127) - ns.Effect(ns.LIGHTNING, v8, v9, v4, v5) - ns.FrameTimer(3, EndCurse4) -} -func EndCurse4() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 float32 - v5 float32 - v6 float32 - v7 float32 - v8 float32 - v9 float32 - ) - v8 = ns.GetWaypointX(wp188) - v9 = ns.GetWaypointY(wp188) - v0 = ns.GetWaypointX(wp206) - v1 = ns.GetWaypointY(wp206) - v2 = ns.GetWaypointX(wp204) - v3 = ns.GetWaypointY(wp204) - v6 = ns.GetWaypointX(wp205) - v7 = ns.GetWaypointY(wp205) - v4 = ns.GetObjectX(obj127) - v5 = ns.GetObjectY(obj127) - ns.Effect(ns.BLUE_SPARKS, v4, v5, 0, 0) - ns.MoveObject(obj127, v0, v1) - ns.MoveObject(obj128, v4, v5) - ns.CreatureGuard(obj128, v2, v3, v6, v7, 0) - ns.CreatureGuard(obj126, v8, v9, v8, v9, 0) -} -func EndCurse5() { - if !ns.IsCaller(obj128) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.LookAtObject(obj128, ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj128) - ns.StartDialog(obj128, ns.GetHost()) -LABEL1: - return -} -func FrogStart() { - var v0 int - v0 = gvar75 - if v0 == gvar20 { - goto LABEL1 - } - if v0 == gvar21 { - goto LABEL2 - } - if v0 == gvar22 { - goto LABEL3 - } - if v0 == gvar23 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - ns.LookAtObject(obj130, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:FrogGreeting") - ns.Frozen(obj130, false) - ns.ObjectOff(obj132) - ns.ObjectOff(obj133) - ns.ObjectOff(obj134) - ns.ObjectOn(obj130) - ns.CreatureFollow(obj130, ns.GetHost()) - goto LABEL5 -LABEL2: - ns.LookAtObject(obj130, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:FrogFollowing") - goto LABEL5 -LABEL3: - ns.LookAtObject(obj130, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:FrogThanks") - goto LABEL5 -LABEL4: - ns.LookAtObject(obj130, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:FrogIdle") - goto LABEL5 -LABEL5: - return -} -func FrogEnd() { - var v0 int - v0 = gvar75 - if v0 == gvar20 { - goto LABEL1 - } - if v0 == gvar21 { - goto LABEL2 - } - if v0 == gvar22 { - goto LABEL3 - } - if v0 == gvar23 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - gvar75 = gvar21 - goto LABEL5 -LABEL2: - goto LABEL5 -LABEL3: - gvar75 = gvar23 - goto LABEL5 -LABEL4: - goto LABEL5 -LABEL5: - return -} -func FrogGuard() { - gvar75 = gvar22 - ns.Enchant(obj130, ns.ENCHANT_INVULNERABLE, 0) - gvar86 = 1 -} -func Villager1Start() { - ns.Frozen(obj176, true) - ns.CreatureIdle(obj176) - ns.LookAtObject(obj176, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "Con05:Townsman9Talk01") -} -func Villager1End() { - ns.Frozen(obj176, false) - ns.SetRoamFlag(obj176, 32) - ns.Wander(obj176) -} -func Villager2Start() { - ns.Frozen(obj177, true) - ns.CreatureIdle(obj177) - ns.LookAtObject(obj177, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "Con05:Townsman10Talk01") -} -func Villager2End() { - ns.Frozen(obj177, false) - ns.SetRoamFlag(obj177, 32) - ns.Wander(obj177) -} -func Villager3Start() { - ns.Frozen(obj178, true) - ns.CreatureIdle(obj178) - ns.LookAtObject(obj178, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "Con05:Townsman11Talk01") -} -func Villager3End() { - ns.Frozen(obj178, false) - ns.SetRoamFlag(obj178, 32) - ns.Wander(obj178) -} -func Villager4Start() { - ns.Frozen(obj179, true) - ns.CreatureIdle(obj179) - ns.LookAtObject(obj179, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "Con05:Townsman11Talk02") -} -func Villager4End() { - ns.Frozen(obj179, false) - ns.SetRoamFlag(obj179, 32) - ns.Wander(obj179) -} -func Villager5Start() { - ns.Frozen(obj180, true) - ns.CreatureIdle(obj180) - ns.LookAtObject(obj180, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:VillagerGreeting") -} -func Villager5End() { - ns.Frozen(obj180, false) - ns.SetRoamFlag(obj180, 32) - ns.Wander(obj180) -} -func SadVillagerStart() { - var ( - v0 float32 - v1 float32 - v2 int - ) - _ = v1 - _ = v0 - v2 = gvar76 - if v2 == gvar14 { - goto LABEL1 - } - if v2 == gvar15 { - goto LABEL2 - } - if v2 == gvar16 { - goto LABEL3 - } - if v2 == gvar17 { - goto LABEL4 - } - if v2 == gvar18 { - goto LABEL5 - } - if v2 == gvar19 { - goto LABEL6 - } - goto LABEL7 -LABEL1: - ns.CreatureIdle(obj129) - ns.LookAtObject(obj129, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:SadVillagerGreeting") - goto LABEL7 -LABEL2: - ns.CreatureIdle(obj129) - ns.LookAtObject(obj129, ns.GetHost()) - if gvar86 != 1 { - goto LABEL8 - } - v0 = ns.GetWaypointX(wp201) - v1 = ns.GetWaypointY(wp201) - ns.AudioEvent(ns.CurePoisonCast, wp201) - ns.AudioEvent(ns.CurePoisonEffect, wp201) - gvar76 = gvar16 - ns.SetDialog(obj129, ns.NEXT, SadVillagerStart, SadVillagerEnd) - ns.CreatureFollow(obj130, obj129) - SadVillagerStart() - goto LABEL3 -LABEL8: - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:SadVillagerWaiting") - goto LABEL7 -LABEL3: - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:SadVillagerReturned") - goto LABEL7 -LABEL4: - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:SadVillagerIdle") - goto LABEL7 -LABEL5: - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:SadVillagerDead") - goto LABEL7 -LABEL6: - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:SadVillagerDeadIdle") - goto LABEL7 -LABEL7: - return -} -func SadVillagerEnd() { - var ( - v0 int - v1 int - v2 int - v3 int - v4 int - ) - _ = v3 - _ = v2 - _ = v1 - _ = v0 - v0 = 0 - v1 = 1 - v2 = 2 - v3 = 0 - v0 = ns.GetAnswer(obj129) - v4 = gvar76 - if v4 == gvar14 { - goto LABEL1 - } - if v4 == gvar15 { - goto LABEL2 - } - if v4 == gvar16 { - goto LABEL3 - } - if v4 == gvar17 { - goto LABEL4 - } - if v4 == gvar18 { - goto LABEL5 - } - if v4 == gvar19 { - goto LABEL6 - } - goto LABEL7 -LABEL1: - v0 = 1 - if 1 == 0 { - goto LABEL8 - } - gvar76 = gvar15 - ns.SetDialog(obj129, ns.NORMAL, SadVillagerStart, SadVillagerEnd) - ns.JournalEntry(ns.GetHost(), "War05Quest9", 2) - ns.PrintToAll("Con01a:NewJournalEntry") - goto LABEL7 -LABEL8: - v0 = 2 - if 2 == 0 { - goto LABEL9 - } - gvar76 = gvar14 - ns.SetDialog(obj129, ns.YESNO, SadVillagerStart, SadVillagerEnd) - goto LABEL7 -LABEL9: - v0 = 0 - if 0 == 0 { - goto LABEL2 - } - gvar76 = gvar14 - ns.SetDialog(obj129, ns.YESNO, SadVillagerStart, SadVillagerEnd) - goto LABEL7 -LABEL2: - ns.SetDialog(obj129, ns.NORMAL, SadVillagerStart, SadVillagerEnd) - goto LABEL7 -LABEL3: - gvar76 = gvar17 - ns.SetDialog(obj129, ns.NORMAL, SadVillagerStart, SadVillagerEnd) - ns.JournalEdit(ns.GetHost(), "War05Quest9", 4) - ns.PrintToAll("War05A.scr:ObjectiveComplete") - ns.GiveXp(ns.GetHost(), 250) - ns.Drop(obj129, obj122) - ns.FrameTimer(1, FrogThanksPlayer) - ns.FrameTimer(1, SadVillagerGuard) - goto LABEL7 -LABEL4: - ns.SetDialog(obj129, ns.NORMAL, SadVillagerStart, SadVillagerEnd) - goto LABEL7 -LABEL5: - gvar76 = gvar19 - ns.Move(obj129, wp201) - ns.SetCallback(obj129, 9, DummyBump) - ns.JournalDelete(ns.GetHost(), "War05Quest9") - ns.PrintToAll("War05A.scr:ObjectiveFailed") - ns.SetDialog(obj129, ns.NORMAL, SadVillagerStart, SadVillagerEnd) - goto LABEL7 -LABEL6: - ns.CancelDialog(obj129) - goto LABEL7 -LABEL7: - return -} -func OwnVillagers() { - ns.FrameTimer(1, OwnVillagers2) -} -func OwnVillagers2() { - ns.SetOwner(ns.GetHost(), obj130) - ns.SetOwner(ns.GetHost(), obj55) - ns.SetOwner(ns.GetHost(), obj127) - ns.SetOwner(ns.GetHost(), obj94) - ns.SetOwner(ns.GetHost(), obj128) - ns.Frozen(obj176, true) - ns.Frozen(obj177, true) - ns.Frozen(obj178, true) - ns.Frozen(obj179, true) - ns.Frozen(obj180, true) - ns.Frozen(obj181, true) - ns.Frozen(obj182, true) - ns.Frozen(obj183, true) - ns.Frozen(obj184, true) - ns.Frozen(obj49, true) - ns.Frozen(obj50, true) - ns.Frozen(obj47, true) - ns.Frozen(obj48, true) - ns.Frozen(obj51, true) - ns.Wander(obj127) - ns.RetreatLevel(obj46, 0) - ns.RetreatLevel(obj47, 0) - ns.RetreatLevel(obj48, 0) - ns.RetreatLevel(obj49, 0) - ns.RetreatLevel(obj50, 0) -} -func KillCorpses2() { - ns.Damage(obj144, 0, 300, 5) - ns.Damage(obj145, 0, 300, 5) - ns.Damage(obj146, 0, 300, 5) - ns.Damage(obj147, 0, 300, 5) - ns.Damage(obj148, 0, 300, 5) - ns.Damage(obj149, 0, 300, 5) - ns.Damage(obj150, 0, 300, 5) - ns.Damage(obj151, 0, 300, 5) - ns.Damage(obj152, 0, 300, 5) - ns.Damage(obj153, 0, 300, 5) - ns.Damage(obj154, 0, 300, 5) - ns.Damage(obj155, 0, 300, 5) - ns.Damage(obj156, 0, 300, 5) - ns.Damage(obj157, 0, 300, 5) - ns.Damage(obj158, 0, 300, 5) - ns.Damage(obj159, 0, 300, 0) - ns.Damage(obj160, 0, 300, 0) - ns.Damage(obj161, 0, 300, 0) - ns.Damage(obj139, 0, 300, 0) - ns.Damage(obj44, 0, 300, 0) - ns.Damage(obj45, 0, 300, 0) - ns.Damage(obj58, 0, 300, 0) - ns.Damage(obj59, 0, 300, 0) - ns.Damage(obj60, 0, 300, 0) - ns.Damage(obj61, 0, 300, 0) - ns.Damage(obj62, 0, 300, 0) - ns.Damage(obj63, 0, 300, 0) -} -func VillagePath() { - ns.SetRoamFlag(obj176, 32) - ns.SetRoamFlag(obj177, 32) - ns.SetRoamFlag(obj178, 32) - ns.SetRoamFlag(obj179, 32) - ns.SetRoamFlag(obj180, 32) - ns.Wander(obj176) - ns.Wander(obj177) - ns.Wander(obj178) - ns.Wander(obj179) - ns.Wander(obj180) -} -func PickUpObjects() { - ns.Pickup(obj129, obj122) - ns.Pickup(obj126, obj123) - ns.Pickup(obj126, obj124) -} -func EnableElevator() { - ns.ObjectOn(obj175) -} -func DisableElevator() { - ns.ObjectOff(obj175) -} -func StartSwordsmanTrigger() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.FrameTimer(1, SwordsmanTrigger) -LABEL1: - return -} -func SwordsmanTrigger() { - ns.AggressionLevel(obj140, 0.83) - ns.AggressionLevel(obj52, 0.83) - ns.AggressionLevel(obj46, 0.83) - ns.Attack(obj46, obj140) - ns.CreatureHunt(obj46) -} -func SwordsmanTriggerB() { - gvar74 = gvar12 - ns.SetDialog(obj140, ns.NORMAL, SwordsmanStart, SwordsmanEnd) - ns.StoryPic(obj140, "Warrior8Pic") - ns.FrameTimer(1, SwordsmanTriggerC) -} -func SwordsmanTriggerC() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - ) - v0 = ns.GetWaypointX(wp186) - v1 = ns.GetWaypointY(wp186) - v2 = ns.GetWaypointX(wp187) - v3 = ns.GetWaypointY(wp187) - ns.CreatureGuard(obj140, v0, v1, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 240) - ns.CreatureGuard(obj52, v2, v3, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 240) -} -func ShopKeeperGuard() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - ) - v0 = ns.GetWaypointX(wp218) - v1 = ns.GetWaypointY(wp218) - v2 = ns.GetWaypointX(wp219) - v3 = ns.GetWaypointY(wp219) - ns.CreatureGuard(obj95, v0, v1, v2, v3, 0) - ns.FrameTimer(1, GypsyGuard) -} -func BartenderGuard() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - ) - v0 = ns.GetWaypointX(wp220) - v1 = ns.GetWaypointY(wp220) - v2 = ns.GetWaypointX(wp221) - v3 = ns.GetWaypointY(wp221) - ns.CreatureGuard(obj94, v0, v1, v2, v3, 0) - ns.FrameTimer(1, SadVillagerGuard) -} -func GypsyGuard() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - ) - v0 = ns.GetWaypointX(wp216) - v1 = ns.GetWaypointY(wp216) - v2 = ns.GetWaypointX(wp217) - v3 = ns.GetWaypointY(wp217) - ns.CreatureGuard(obj93, v0, v1, v2, v3, 0) - ns.FrameTimer(1, BartenderGuard) -} -func SadVillagerGuard() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - ) - v0 = ns.GetWaypointX(wp201) - v1 = ns.GetWaypointY(wp201) - v2 = ns.GetWaypointX(wp202) - v3 = ns.GetWaypointY(wp202) - ns.CreatureGuard(obj129, v0, v1, v2, v3, 0) -} -func OpenGates() { - ns.WallOpen(ns.Wall(88, 34)) - ns.WallOpen(ns.Wall(87, 35)) - ns.WallOpen(ns.Wall(88, 36)) - ns.WallOpen(ns.Wall(89, 35)) - ns.PrintToAll("War05A.scr:CityGatesOpen") -} -func CloseGates() { - ns.WallClose(ns.Wall(88, 34)) - ns.WallClose(ns.Wall(87, 35)) - ns.WallClose(ns.Wall(88, 36)) - ns.WallClose(ns.Wall(89, 35)) - ns.PrintToAll("War05A.scr:CityGatesClosed") -} -func PlayerDeath() { - ns.PrintToAll("War05A.scr:PlayerDeath") - ns.DeathScreen(5) -} -func MapEntry() { - ns.Music(23, 100) - ns.Frozen(ns.GetHost(), false) - LetterBoxOff() - ns.NoWallSound(false) - gvar66 = ns.Object("Con05B:HorvathAmulet") - flag87 = true - if !ns.HasItem(ns.GetHost(), gvar66) { - goto LABEL1 - } - ns.GroupDamage(gvar65, 0, 1000, 0) -LABEL1: - return -} -func NoBump() { - flag87 = false - ns.FrameTimer(90, YesBump) -} -func YesBump() { - flag87 = true -} -func BumpVillager() { -} -func LetterBoxOn() { - ns.WideScreen(true) -} -func LetterBoxOff() { - ns.WideScreen(false) -} -func FrogThanksPlayer() { - ns.StartDialog(obj130, ns.GetHost()) -} -func DummyBump() { -} -func FreePlayer() { - ns.Frozen(ns.GetHost(), false) -} -func HorvathAppears() { - ns.Frozen(ns.GetHost(), true) - LetterBoxOn() - ns.FrameTimer(30, HorvathAppears2) - ns.FrameTimer(1, VillagePath) -} -func HorvathAppears2() { - ns.Move(obj92, wp207) - ns.FrameTimer(45, HorvathAppears3) -} -func HorvathAppears3() { - ns.Frozen(obj92, true) - ns.CreatureIdle(obj92) - ns.CreatureIdle(ns.GetHost()) - ns.LookAtObject(obj92, ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj92) - ns.StartDialog(obj92, ns.GetHost()) -} -func HorvathAppears4() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - ) - v0 = ns.GetWaypointX(wp209) - v1 = ns.GetWaypointY(wp209) - v2 = ns.GetWaypointX(wp207) - v3 = ns.GetWaypointY(wp207) - ns.Frozen(obj92, false) - ns.CreatureGuard(obj92, v0, v1, v2, v3, 0) - LetterBoxOff() - ns.FrameTimer(45, HorvathAppears5) -} -func HorvathAppears5() { - ns.Frozen(ns.GetHost(), false) -} -func AmuletCheck() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - if !ns.HasItem(ns.GetHost(), gvar66) { - goto LABEL1 - } - ns.Frozen(ns.GetHost(), true) - ns.WideScreen(true) - ns.CreatureIdle(ns.GetHost()) - ns.LookAtObject(ns.GetHost(), ns.ObjectID(wp36)) // FIXME - ns.MoveWaypoint(wp33, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.TeleportIn, wp33) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp36), ns.GetWaypointY(wp36), 0, 0) - ns.Effect(ns.SPARK_EXPLOSION, ns.GetWaypointX(wp36), ns.GetWaypointY(wp36), 0, 0) - ns.MoveObject(obj55, ns.GetWaypointX(wp36), ns.GetWaypointY(wp36)) - ns.Frozen(obj55, true) - ns.CreatureIdle(obj55) - ns.LookAtObject(obj55, ns.GetHost()) - ns.SetDialog(obj55, ns.NORMAL, HorvathCongratStart, HorvathCongratEnd) - ns.StartDialog(obj55, ns.GetHost()) -LABEL1: - return -} -func HorvathCongratStart() { - ns.TellStory(ns.HumanMaleEatFood, "Con05A.scr:HorvathReturned") -} -func HorvathCongratEnd() { - ns.CancelDialog(obj55) - gvar56 = ns.GetLastItem(ns.GetHost()) - for { - if gvar56 == 0 { - goto LABEL1 - } - gvar57 = ns.GetPreviousItem(gvar56) - if gvar56 != gvar66 { - goto LABEL2 - } - ns.Delete(gvar56) - LABEL2: - gvar56 = gvar57 - } -LABEL1: - ns.Pickup(ns.GetHost(), obj41) - ns.MoveObject(obj42, ns.GetObjectX(obj55)-15, ns.GetObjectY(obj55)+15) - ns.Effect(ns.SPARK_EXPLOSION, ns.GetObjectX(obj42), ns.GetObjectY(obj42), 0, 0) - ns.MoveObject(obj43, ns.GetObjectX(obj55)-15, ns.GetObjectY(obj55)-15) - ns.Effect(ns.SPARK_EXPLOSION, ns.GetObjectX(obj43), ns.GetObjectY(obj43), 0, 0) - ns.JournalEdit(ns.GetHost(), "Con05Quest1", 4) - ns.GiveXp(ns.GetHost(), 1000) - ns.Blind() - ns.WideScreen(false) - ns.Frozen(ns.GetHost(), false) - ns.FrameTimer(45, ChangeMaps) -} -func MapInitialize() { - gvar65 = ns.ObjectGroup("ExitEnemies") - wp30 = ns.Waypoint("WoundedRefugeeWayPoint") - wp31 = ns.Waypoint("WoundedRefugeeWayPoint2") - wp32 = ns.Waypoint("DeadGuyWP") - wp36 = ns.Waypoint("CongratWP") - wp33 = ns.Waypoint("PlayerSounds") - wp34 = ns.Waypoint("LunchOgre1WP") - wp35 = ns.Waypoint("LunchOgre2WP") - wp37 = ns.Waypoint("WellWP") - obj38 = ns.Object("WoundedRefugee") - obj39 = ns.Object("WoundedRefugee2") - obj40 = ns.Object("Antidote") - obj41 = ns.Object("InfravisionBook") - obj42 = ns.Object("ManaBottle1") - obj43 = ns.Object("ManaBottle2") - obj44 = ns.Object("Kill") - obj45 = ns.Object("Kill2") - obj46 = ns.Object("FirstOgre") - obj47 = ns.Object("LunchOgre1") - obj48 = ns.Object("LunchOgre2") - obj49 = ns.Object("TownOgre1") - obj50 = ns.Object("TownOgre2") - obj51 = ns.Object("DeadGuy") - obj52 = ns.Object("Swordsman2") - obj53 = ns.Object("Archer1") - obj54 = ns.Object("Archer2") - obj55 = ns.Object("Horvath") - obj58 = ns.Object("Bubbles1") - obj59 = ns.Object("Bubbles2") - obj60 = ns.Object("Bubbles3") - obj61 = ns.Object("Bubbles4") - obj62 = ns.Object("Bubbles5") - obj63 = ns.Object("Bubbles6") - gvar64 = ns.ObjectGroup("OgreAttackTriggers") - obj92 = ns.Object("W5Captain") - obj94 = ns.Object("W5Bartender") - obj95 = ns.Object("W5ShopKeeper") - obj93 = ns.Object("W5Gypsy") - obj119 = ns.Object("CaptainTrigger1") - obj120 = ns.Object("CaptainTrigger2") - obj121 = ns.Object("CaptainTrigger3") - obj96 = ns.Object("BartenderTrigger1") - obj97 = ns.Object("BartenderTrigger2") - obj98 = ns.Object("ShopKeeperTrigger1") - obj99 = ns.Object("ShopKeeperTrigger2") - obj100 = ns.Object("GypsyTrigger1") - obj101 = ns.Object("GypsyTrigger2") - obj102 = ns.Object("GypsyTrigger3") - obj103 = ns.Object("GypsyTrigger4") - obj104 = ns.Object("GypsyTrigger5") - obj105 = ns.Object("GypsyTrigger6") - obj106 = ns.Object("GypsyTrigger7") - obj107 = ns.Object("GypsyTrigger8") - obj108 = ns.Object("GypsyTrigger9") - obj109 = ns.Object("GypsyEndTrigger1") - obj110 = ns.Object("GypsyEndTrigger2") - obj111 = ns.Object("GypsyEndTrigger3") - obj112 = ns.Object("GypsyEndTrigger4") - obj113 = ns.Object("GypsyEndTrigger5") - obj114 = ns.Object("GypsyEndTrigger6") - obj115 = ns.Object("GypsyEndTrigger7") - obj116 = ns.Object("GypsyEndTrigger8") - obj117 = ns.Object("GypsyEndTrigger9") - obj140 = ns.Object("W5Swordsman") - obj141 = ns.Object("W5Swordsman2") - wp142 = int(ns.Object("SwordsmanTrigger1")) - wp143 = int(ns.Object("SwordsmanTrigger2")) - obj139 = ns.Object("KeyGuy") - obj136 = ns.Object("W5Drunk1") - obj137 = ns.Object("W5Drunk2") - obj138 = ns.Object("W5Drunk3") - obj122 = ns.Object("SadVillagerReward") - obj123 = ns.Object("FarmerReward1") - obj124 = ns.Object("FarmerReward2") - obj126 = ns.Object("W5Farmer") - obj127 = ns.Object("W5Hound") - obj128 = ns.Object("W5FarmerWife") - obj129 = ns.Object("W5SadVillager") - obj130 = ns.Object("W5Frog") - obj131 = ns.Object("FrogTrigger") - obj132 = ns.Object("FrogTrigger1") - obj133 = ns.Object("FrogTrigger2") - obj134 = ns.Object("FrogTrigger3") - obj135 = ns.Object("FrogTrigger4") - obj125 = ns.Object("FarmerStaff") - obj88 = ns.Object("AutoSave1Trigger") - obj89 = ns.Object("AutoSave2Trigger") - obj90 = ns.Object("AutoSave3Trigger") - obj91 = ns.Object("AutoSave4Trigger") - obj144 = ns.Object("Corpse1") - obj145 = ns.Object("Corpse2") - obj146 = ns.Object("Corpse3") - obj147 = ns.Object("Corpse4") - obj148 = ns.Object("Corpse5") - obj149 = ns.Object("Corpse6") - obj150 = ns.Object("Corpse7") - obj151 = ns.Object("Corpse8") - obj152 = ns.Object("Corpse9") - obj153 = ns.Object("Corpse10") - obj154 = ns.Object("Corpse11") - obj155 = ns.Object("Corpse12") - obj156 = ns.Object("Corpse13") - obj157 = ns.Object("Corpse14") - obj158 = ns.Object("Corpse15") - obj118 = ns.Object("JackLine5Trigger") - obj159 = ns.Object("OgreCorpse1") - obj160 = ns.Object("OgreCorpse2") - obj161 = ns.Object("OgreCorpse3") - obj175 = ns.Object("EntranceElevator") - obj162 = ns.Object("Ogre1") - obj163 = ns.Object("Ogre2") - obj164 = ns.Object("Ogre3") - obj165 = ns.Object("Ogre4") - obj166 = ns.Object("Ogre5") - obj167 = ns.Object("Ogre6") - obj168 = ns.Object("Ogre7") - obj169 = ns.Object("Ogre8") - obj170 = ns.Object("Ogre9") - obj170 = ns.Object("Ogre10") - obj170 = ns.Object("Ogre11") - obj170 = ns.Object("Ogre12") - obj170 = ns.Object("Ogre13") - obj193 = ns.Object("HouseDoor1") - obj194 = ns.Object("HouseDoor1") - obj195 = ns.Object("CryptDoor1") - obj196 = ns.Object("CryptDoor2") - obj176 = ns.Object("W5Villager1") - obj177 = ns.Object("W5Villager2") - obj178 = ns.Object("W5Villager3") - obj179 = ns.Object("W5Villager4") - obj180 = ns.Object("W5Villager5") - obj181 = ns.Object("W5Villager6") - obj182 = ns.Object("W5Villager7") - obj183 = ns.Object("W5Villager8") - obj184 = ns.Object("W5Villager9") - wp187 = ns.Waypoint("Swordsman2WayPoint") - wp186 = ns.Waypoint("SwordsmanWayPoint") - wp142 = int(ns.Waypoint("SwordsmanTrigger1")) - wp143 = int(ns.Waypoint("SwordsmanTrigger2")) - wp207 = ns.Waypoint("HorvathWayPoint") - wp208 = ns.Waypoint("HorvathWayPoint2") - wp209 = ns.Waypoint("HorvathAppears") - wp188 = ns.Waypoint("FarmerWayPoint") - wp189 = ns.Waypoint("Farmer2WayPoint") - wp204 = ns.Waypoint("FarmerWifeWayPoint") - wp205 = ns.Waypoint("FarmerWife2WayPoint") - wp190 = ns.Waypoint("HoundWayPoint") - wp206 = ns.Waypoint("Hound2WayPoint") - wp203 = ns.Waypoint("WoundedVillagerWayPoint") - wp201 = ns.Waypoint("SadVillagerWayPoint") - wp202 = ns.Waypoint("SadVillagerWayPoint2") - wp191 = ns.Waypoint("FrogWayPoint1") - wp192 = ns.Waypoint("FrogWayPoint2") - wp210 = ns.Waypoint("Villager1Goal") - wp211 = ns.Waypoint("Villager2Goal") - wp212 = ns.Waypoint("Villager3Goal") - wp213 = ns.Waypoint("Villager4Goal") - wp214 = ns.Waypoint("Villager5Goal") - wp216 = ns.Waypoint("GypsyWayPoint") - wp217 = ns.Waypoint("GypsyWayPoint2") - wp218 = ns.Waypoint("ShopKeeperWayPoint") - wp219 = ns.Waypoint("ShopKeeperWayPoint2") - wp220 = ns.Waypoint("BartenderWayPoint") - wp221 = ns.Waypoint("BartenderWayPoint2") - wp215 = ns.Waypoint("PlayerStartWayPoint") - ns.SetDialog(obj136, ns.NORMAL, DrunkStart, DrunkEnd) - ns.StoryPic(obj136, "Townsman3Pic") - ns.SetDialog(obj137, ns.NORMAL, DrunkStart, DrunkEnd) - ns.StoryPic(obj137, "Townsman2Pic") - ns.SetDialog(obj138, ns.NORMAL, DrunkStart, DrunkEnd) - ns.StoryPic(obj138, "Townsman1Pic") - ns.SetDialog(obj126, ns.YESNO, FarmerStart, FarmerEnd) - ns.StoryPic(obj126, "ThaviusPic") - ns.SetDialog(obj127, ns.NORMAL, HoundStart, HoundEnd) - ns.StoryPic(obj127, "WolfPic") - ns.SetDialog(obj129, ns.YESNO, SadVillagerStart, SadVillagerEnd) - ns.StoryPic(obj129, "Townsman3Pic") - ns.SetDialog(obj130, ns.NORMAL, FrogStart, FrogEnd) - ns.StoryPic(obj130, "FrogPic") - ns.SetDialog(obj92, ns.NORMAL, CaptainStart, CaptainEnd) - ns.StoryPic(obj92, "AirshipCaptainPic") - ns.SetDialog(obj128, ns.NORMAL, FarmerWifeStart, FarmerWifeEnd) - ns.StoryPic(obj128, "MaidenPic") - ns.SetDialog(obj55, ns.NORMAL, HorvathStart, HorvathEnd) - ns.StoryPic(obj55, "HorvathPic") - ns.Frozen(obj130, true) - DisableVillagers() - KillCorpses() - LockDoors() - OwnVillagers() - HoundEnd() - PickUpObjects() - EnableElevator() - ns.FrameTimer(90, DisableElevator) - ShopKeeperGuard() - ns.StartupScreen(5) -} -func KeepOut() { - r1 := ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) - if !r1 { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func FrogReturned() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - ) - if !ns.IsCaller(obj130) { - goto LABEL1 - } - v0 = ns.GetWaypointX(wp191) - v1 = ns.GetWaypointY(wp191) - v2 = ns.GetWaypointX(wp192) - v3 = ns.GetWaypointY(wp192) - ns.ObjectOff(obj131) - ns.CreatureGuard(obj130, v0, v1, v2, v3, 0) - gvar76 = gvar15 -LABEL1: - return -} -func FrogDeath() { - gvar86 = 2 - gvar76 = gvar18 - ns.CancelDialog(obj130) -} -func AutoSave1() { - ns.AutoSave() - ns.ObjectOff(obj88) -} -func AutoSave2() { - ns.AutoSave() - ns.ObjectOff(obj89) -} -func AutoSave3() { - ns.AutoSave() - ns.FrameTimer(1, VillagePath) - ns.ObjectOff(obj90) -} -func AutoSave4() { - ns.AutoSave() - ns.ObjectOff(obj91) -} -func SecretFound() { - ns.PrintToAll("War05A.scr:Secret") - ns.MoveWaypoint(wp33, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.AudioEvent(ns.SecretFound, wp33) - ns.GiveXp(ns.GetHost(), 250) -} -func Hint() { - ns.PrintToAll("Journal:War05Hint1") - ns.JournalEntry(ns.GetHost(), "War05Hint1", 4) -} -func OgreAttackStart() { - ns.ObjectGroupOff(gvar64) - ns.Music(26, 100) - UnfreezeAll() - ns.Frozen(obj51, false) - ns.Frozen(obj47, false) - ns.Frozen(obj48, false) - ns.Attack(obj51, obj47) - ns.Attack(obj47, obj51) - ns.Attack(obj48, obj51) -} -func DeadGuyArrive() { - if !ns.IsCaller(obj51) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.Frozen(obj51, true) - ns.Frozen(obj47, true) - ns.Frozen(obj48, true) - ns.CreatureIdle(obj51) - ns.CreatureIdle(obj47) - ns.CreatureIdle(obj48) - ns.LookAtObject(obj47, obj51) - ns.LookAtObject(obj51, obj48) - ns.LookAtObject(obj48, obj51) - ns.Chat(obj48, "Con05:OgreKingTalk06") - ns.SecondTimer(2, OgresAttackDeadGuy) -LABEL1: - return -} -func OgresAttackDeadGuy() { - ns.Frozen(obj51, false) - ns.Frozen(obj47, false) - ns.Frozen(obj48, false) - ns.Attack(obj51, obj48) - ns.Attack(obj47, obj51) - ns.Attack(obj48, obj51) -} -func DeadGuyDie() { - ns.AggressionLevel(obj47, 0.83) - ns.AggressionLevel(obj48, 0.83) -} -func LunchOgreReport() { - if !(ns.CurrentHealth(obj51) > 0) { - goto LABEL1 - } - ns.Attack(ns.GetTrigger(), obj51) -LABEL1: - return -} -func LunchOgre1Trigger() { - if !ns.IsCaller(obj47) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ivar222 += 1 - ns.AggressionLevel(obj47, 0.83) -LABEL1: - return -} -func LunchOgre2Trigger() { - if !ns.IsCaller(obj48) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ivar222 += 1 - ns.AggressionLevel(obj48, 0.83) -LABEL1: - return -} -func TownOgre2Die() { - ns.CreatureGuard(obj126, ns.GetObjectX(obj126), ns.GetObjectY(obj126), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) -} -func UnfreezeAll() { - ns.Frozen(ns.GetHost(), false) - ns.Frozen(obj176, false) - ns.Frozen(obj177, false) - ns.Frozen(obj178, false) - ns.Frozen(obj179, false) - ns.Frozen(obj180, false) - ns.Frozen(obj181, false) - ns.Frozen(obj182, false) - ns.Frozen(obj183, false) - ns.Frozen(obj184, false) - ns.Frozen(obj49, false) - ns.Frozen(obj50, false) - ns.Frozen(obj126, false) -} -func GoAway() { - r1 := ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) - if !r1 { - goto LABEL1 - } - if !(ns.CurrentHealth(ns.GetCaller()) > 0) { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func StayAway() { - r1 := ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) - if r1 { - goto LABEL1 - } - if !(ns.CurrentHealth(ns.GetCaller()) > 0) { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func MakeAWish() { - var v0 int - v0 = ns.MaxHealth(ns.GetCaller()) - ns.RestoreHealth(ns.GetCaller(), v0-ns.CurrentHealth(ns.GetCaller())) - ns.PrintToAll("GeneralPrint:WellSignRefresh") - ns.AudioEvent(ns.RestoreHealthName, ns.Waypoint("WellWP")) -} -func CrapFile() { -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapEntry": - MapEntry() - case "MapInitialize": - MapInitialize() - } -} diff --git a/examples/con05a/dummy_test.go b/examples/con05a/dummy_test.go deleted file mode 100644 index d43de5a..0000000 --- a/examples/con05a/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package con05a - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/con05b/con05b.go b/examples/con05b/con05b.go deleted file mode 100644 index 03bab6e..0000000 --- a/examples/con05b/con05b.go +++ /dev/null @@ -1,207 +0,0 @@ -package con05b - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 ns.ObjectID - gvar5 ns.WallGroupID - obj6 ns.ObjectID - obj7 ns.ObjectID - obj8 ns.ObjectID - obj9 ns.ObjectID - obj10 ns.ObjectID - obj11 ns.ObjectID - wp12 ns.WaypointID - wp13 ns.WaypointID - gvar14 int - gvar15 int - gvar16 int - flag17 bool - obj18 ns.ObjectID - obj19 ns.ObjectID - obj20 ns.ObjectID - obj21 ns.ObjectID - obj22 ns.ObjectID - obj23 ns.ObjectID - gvar24 ns.ObjectGroupID - gvar25 ns.WallGroupID - wp26 ns.WaypointID - wp27 ns.WaypointID - wp28 ns.WaypointID -) - -func init() { - gvar14 = 0 - gvar15 = 1 - gvar16 = gvar14 - flag17 = false -} -func StopElevator() { - ns.ObjectOff(obj4) - ns.FrameTimer(60, LowerKeyProtectWalls) -} -func LowerKeyProtectWalls() { - ns.NoWallSound(true) - ns.WallGroupOpen(gvar5) - ns.NoWallSound(false) -} -func RaiseKey() { - ns.ObjectOn(obj4) - ns.FrameTimer(5, StopElevator) -} -func UnlockMainGates() { - ns.ObjectOff(obj10) - ns.UnlockDoor(obj6) - ns.UnlockDoor(obj7) -} -func OpenKingGate() { - ns.ObjectOff(obj11) - ns.UnlockDoor(obj8) - ns.UnlockDoor(obj9) -} -func SecretFound() { - ns.PrintToAll("GeneralPrint:SecretFound") - ns.MoveWaypoint(wp13, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.AudioEvent(ns.SecretFound, wp13) - ns.GiveXp(ns.GetHost(), 40) -} -func PickupAmulet() { - ns.GiveXp(ns.GetHost(), 50) - ns.AudioEvent(ns.JournalEntryAdd, wp12) -} -func CallForGuards() { - ns.Frozen(obj21, true) - ns.CreatureIdle(obj21) - ns.SetDialog(obj21, ns.NEXT, KingStart, KingEnd) - ns.StoryPic(obj21, "OgreWarlordPic") - ns.StartDialog(obj21, ns.GetHost()) -} -func ProtectTheKing() { - LetterBoxOff() - ns.Frozen(ns.GetHost(), false) - ns.EnchantOff(obj21, ns.ENCHANT_INVULNERABLE) - ns.ClearOwner(obj21) - ns.Frozen(obj21, false) - ns.ObjectOn(obj22) - ns.ObjectOn(obj23) - ns.AggressionLevel(obj21, 0.83) - ns.MoveObject(obj22, ns.GetWaypointX(wp27), ns.GetWaypointY(wp27)) - ns.MoveObject(obj23, ns.GetWaypointX(wp28), ns.GetWaypointY(wp28)) - ns.Wander(obj22) - ns.Wander(obj23) -} -func KingStart() { - var v0 int - v0 = gvar16 - if v0 == gvar14 { - goto LABEL1 - } - if v0 == gvar15 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.TellStory(ns.SwordsmanHurt, "Con05:OgreTalk07") - ns.LookAtObject(obj21, ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj21) - goto LABEL3 -LABEL2: - ns.TellStory(ns.SwordsmanHurt, "Con05:OgreTalk08") - goto LABEL3 -LABEL3: - return -} -func KingEnd() { - var v0 int - v0 = gvar16 - if v0 == gvar14 { - goto LABEL1 - } - if v0 == gvar15 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - gvar16 = gvar15 - ns.StartDialog(obj21, ns.GetHost()) - goto LABEL3 -LABEL2: - ns.CancelDialog(obj21) - ns.CreatureGuard(obj21, ns.GetWaypointX(wp26), ns.GetWaypointY(wp26), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 500) - ProtectTheKing() - goto LABEL3 -LABEL3: - return -} -func LetterBoxOn() { - ns.WideScreen(true) -} -func LetterBoxOff() { - ns.WideScreen(false) -} -func PlayerDeath() { - ns.DeathScreen(5) -} -func MapInitialize() { - obj6 = ns.Object("MainGate1") - obj7 = ns.Object("MainGate2") - obj18 = ns.Object("TownGate1") - obj19 = ns.Object("TownGate2") - obj8 = ns.Object("KingDoor1") - obj9 = ns.Object("KingDoor2") - obj10 = ns.Object("MainGateSwitch") - obj11 = ns.Object("KingDoorSwitch") - obj21 = ns.Object("OgreKing") - obj20 = ns.Object("CallForGuardsTrigger") - obj4 = ns.Object("KeyElevator") - obj22 = ns.Object("Guard1") - obj23 = ns.Object("Guard2") - gvar24 = ns.ObjectGroup("KingTriggerGroup") - gvar25 = ns.WallGroup("LordSafetyWalls") - gvar5 = ns.WallGroup("KeyProtectWalls") - wp26 = ns.Waypoint("OgreKingWaypoint") - wp27 = ns.Waypoint("Guard1WP") - wp28 = ns.Waypoint("Guard2WP") - wp12 = ns.Waypoint("AmuletSoundWP") - wp13 = ns.Waypoint("PlayerSounds") - ns.LockDoor(obj8) - ns.LockDoor(obj9) - ns.LockDoor(obj6) - ns.LockDoor(obj7) -} -func Activate() { - var v0 bool - _ = v0 - v0 = true - ns.ObjectGroupOff(gvar24) - ns.NoWallSound(true) - ns.WallGroupOpen(gvar25) - ns.NoWallSound(false) - ns.ObjectOn(obj20) - ns.Frozen(ns.GetHost(), true) - ns.FrameTimer(1, LetterBoxOn) - ns.Move(obj21, wp26) -} -func PummelPlayer() { - ns.HitLocation(ns.GetTrigger(), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) -} -func MapEntry() { - ns.Frozen(ns.GetHost(), false) - ns.WideScreen(false) - ns.Music(7, 100) -} -func FadeOut() { - ns.Frozen(ns.GetHost(), true) - ns.CreatureIdle(ns.GetHost()) - ns.Blind() -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapInitialize": - MapInitialize() - case "MapEntry": - MapEntry() - } -} diff --git a/examples/con05b/dummy_test.go b/examples/con05b/dummy_test.go deleted file mode 100644 index 1f421a6..0000000 --- a/examples/con05b/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package con05b - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/con05c/con05c.go b/examples/con05c/con05c.go deleted file mode 100644 index 96028de..0000000 --- a/examples/con05c/con05c.go +++ /dev/null @@ -1,521 +0,0 @@ -package con05c - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - gvar4 ns.WallGroupID - gvar5 ns.WallGroupID - gvar6 ns.WallGroupID - obj7 ns.ObjectID - obj8 ns.ObjectID - obj9 ns.ObjectID - obj10 ns.ObjectID - obj11 ns.ObjectID - obj12 ns.ObjectID - obj13 ns.ObjectID - obj14 ns.ObjectID - obj15 ns.ObjectID - obj16 ns.ObjectID - obj17 ns.ObjectID - obj18 ns.ObjectID - obj19 ns.ObjectID - obj20 ns.ObjectID - obj21 ns.ObjectID - obj22 ns.ObjectID - obj23 ns.ObjectID - obj24 ns.ObjectID - obj25 ns.ObjectID - obj26 ns.ObjectID - obj27 ns.ObjectID - obj28 ns.ObjectID - obj29 ns.ObjectID - obj30 ns.ObjectID - obj31 ns.ObjectID - obj32 ns.ObjectID - obj33 ns.ObjectID - obj34 ns.ObjectID - obj35 ns.ObjectID - obj36 ns.ObjectID - wp37 ns.WaypointID - wp38 ns.WaypointID - wp39 ns.WaypointID - wp40 ns.WaypointID - wp41 ns.WaypointID - wp42 ns.WaypointID - wp43 ns.WaypointID - wp44 ns.WaypointID - wp45 ns.WaypointID - wp46 ns.WaypointID - wp47 ns.WaypointID - wp48 ns.WaypointID - wp49 ns.WaypointID - wp50 ns.WaypointID - wp51 ns.WaypointID - gvar52 ns.ObjectGroupID - obj53 ns.ObjectID - obj54 ns.ObjectID - obj55 ns.ObjectID - obj56 ns.ObjectID - gvar57 int - gvar58 ns.WallGroupID - obj59 ns.ObjectID - obj60 ns.ObjectID - obj61 ns.ObjectID - obj62 ns.ObjectID - obj63 ns.ObjectID - obj64 ns.ObjectID - obj65 ns.ObjectID - obj66 ns.ObjectID - obj67 ns.ObjectID - obj68 ns.ObjectID - obj69 ns.ObjectID - obj70 ns.ObjectID - obj71 ns.ObjectID - obj72 ns.ObjectID - obj73 ns.ObjectID - obj74 ns.ObjectID - obj75 ns.ObjectID - obj76 ns.ObjectID - obj77 ns.ObjectID - obj78 ns.ObjectID - obj79 ns.ObjectID - obj80 ns.ObjectID - obj81 ns.ObjectID - obj82 ns.ObjectID - obj83 ns.ObjectID - obj84 ns.ObjectID - obj85 ns.ObjectID - obj86 ns.ObjectID - obj87 ns.ObjectID - obj88 ns.ObjectID - obj89 ns.ObjectID - obj90 ns.ObjectID - obj91 ns.ObjectID - obj92 ns.ObjectID - obj93 ns.ObjectID - obj94 ns.ObjectID - gvar95 ns.WallGroupID - wp96 ns.WaypointID - wp97 ns.WaypointID - wp98 ns.WaypointID - wp99 ns.WaypointID - wp100 ns.WaypointID - wp101 ns.WaypointID - wp102 ns.WaypointID - wp103 ns.WaypointID - wp104 ns.WaypointID - wp105 ns.WaypointID - wp106 ns.WaypointID - wp107 ns.WaypointID - wp108 ns.WaypointID - wp109 ns.WaypointID - wp110 ns.WaypointID - wp111 ns.WaypointID - wp112 ns.WaypointID - wp113 ns.WaypointID - wp114 ns.WaypointID - wp115 ns.WaypointID - wp116 ns.WaypointID - wp117 ns.WaypointID - wp118 ns.WaypointID - wp119 ns.WaypointID - gvar120 int - obj121 ns.ObjectID - obj122 ns.ObjectID - obj123 ns.ObjectID - obj124 ns.ObjectID - wp125 ns.WaypointID - wp126 ns.WaypointID - obj127 ns.ObjectID - obj128 ns.ObjectID - obj129 ns.ObjectID - obj130 ns.ObjectID - wp131 ns.WaypointID - wp132 ns.WaypointID -) - -func DisableElevators() { - ns.ObjectOff(obj24) - ns.ObjectOff(obj25) - ns.ObjectOff(obj26) - ns.ObjectOff(obj27) - ns.ObjectOff(obj28) - ns.ObjectOff(obj29) -} -func EnableSkeletons() { - ns.AggressionLevel(obj30, 0.83) - ns.AggressionLevel(obj31, 0.83) - ns.AggressionLevel(obj32, 0.83) - ns.AggressionLevel(obj33, 0.83) - ns.AggressionLevel(obj34, 0.83) - ns.AggressionLevel(obj35, 0.83) -} -func BreakWalls1() { - ns.WallGroupOpen(gvar4) -} -func EnableElevators1() { - ns.ObjectOn(obj24) - ns.ObjectOn(obj25) - ns.ObjectOn(obj26) - ns.ObjectOn(obj27) - ns.ObjectOn(obj28) - ns.ObjectOn(obj29) - ns.FrameTimer(20, SkeletonGoal) - EnableSkeletons() -} -func SkeletonGoal() { - ns.Move(obj30, wp51) - ns.Move(obj31, wp51) - ns.Move(obj32, wp51) - ns.Move(obj33, wp51) - ns.Move(obj34, wp51) - ns.Move(obj35, wp51) -} -func EndTrap1() { - ns.Move(obj9, wp41) - ns.Move(obj10, wp42) - ns.Move(obj11, wp43) - ns.Move(obj12, wp44) - ns.ObjectOff(obj36) - ns.AudioEvent(ns.EarthRumbleMinor, wp37) - ns.AudioEvent(ns.SecretWallSecret, wp37) -} -func OpenGates() { - ns.WallOpen(ns.Wall(96, 208)) - ns.WallOpen(ns.Wall(95, 209)) - ns.WallOpen(ns.Wall(94, 210)) -} -func CloseBlocks() { - ns.Move(obj7, wp45) - ns.Move(obj8, wp46) - ns.AudioEvent(ns.BoulderMove, wp38) - ns.AudioEvent(ns.EarthRumbleMinor, wp38) - ns.AudioEvent(ns.SecretWallOpen, wp38) - ns.AudioEvent(ns.StoneBlockMove, wp38) -} -func OpenBlocks() { - ns.ObjectOff(ns.GetTrigger()) - ns.Move(obj7, wp39) - ns.Move(obj8, wp40) - ns.AudioEvent(ns.BoulderMove, wp38) - ns.AudioEvent(ns.EarthRumbleMinor, wp38) - ns.AudioEvent(ns.SecretWallOpen, wp38) - ns.AudioEvent(ns.StoneBlockMove, wp38) -} -func Trap1() { - ns.ObjectOff(obj13) - ns.ObjectOff(obj14) - ns.ObjectOff(obj15) - ns.ObjectOff(obj16) - ns.ObjectOff(obj17) - ns.Move(obj9, wp47) - ns.Move(obj10, wp48) - ns.Move(obj11, wp49) - ns.Move(obj12, wp50) - ns.AudioEvent(ns.EarthRumbleMajor, wp50) - ns.SecondTimer(1, BreakWalls1) - ns.SecondTimer(2, EnableElevators1) - ns.Music(27, 100) -} -func CloseBlocks2() { - ns.Move(obj7, wp45) - ns.Move(obj8, wp46) - ns.Move(obj9, wp47) - ns.Move(obj10, wp48) -} -func LockCellDoors() { - ns.LockDoor(obj68) - ns.LockDoor(obj69) - ns.LockDoor(obj70) - ns.LockDoor(obj71) - ns.LockDoor(obj72) - ns.LockDoor(obj73) - ns.LockDoor(obj74) - ns.LockDoor(obj75) - ns.LockDoor(obj76) - ns.LockDoor(obj77) - ns.LockDoor(obj78) - ns.LockDoor(obj79) -} -func EnableSpikes() { - ns.Move(obj81, wp108) - ns.Move(obj82, wp109) - ns.Move(obj83, wp110) - ns.Move(obj84, wp111) - ns.Move(obj85, wp112) - ns.Move(obj86, wp113) - ns.Move(obj87, wp114) - ns.Move(obj88, wp115) - ns.Move(obj89, wp116) - ns.Move(obj90, wp117) - ns.Move(obj91, wp118) - ns.Move(obj92, wp119) - ns.FrameTimer(50, DisableSpikes) -} -func DisableSpikes() { - ns.Move(obj81, wp96) - ns.Move(obj82, wp97) - ns.Move(obj83, wp98) - ns.Move(obj84, wp99) - ns.Move(obj85, wp100) - ns.Move(obj86, wp101) - ns.Move(obj87, wp102) - ns.Move(obj88, wp103) - ns.Move(obj89, wp104) - ns.Move(obj90, wp105) - ns.Move(obj91, wp106) - ns.Move(obj92, wp107) - ns.FrameTimer(50, EnableSpikes) -} -func EnableGears() { - ns.ObjectOn(obj59) - ns.ObjectOn(obj60) - ns.SecondTimer(2, DisableGears) -} -func DisableGears() { - ns.ObjectOff(obj59) - ns.ObjectOff(obj60) -} -func KillSkeleton7() { - ns.Damage(obj67, 0, 1000, 0) -} -func LetterBoxOff() { - ns.WideScreen(false) -} -func PlayerDeath() { - ns.Blind() - ns.FrameTimer(30, ChapterFail2) -} -func SpikeNoise1() { - ns.AudioEvent(ns.EarthRumbleMajor, wp117) - ns.AudioEvent(ns.EarthRumbleMajor, wp111) - ns.FrameTimer(60, SpikeNoise1) -} -func MapInitialize() { - wp131 = ns.Waypoint("Secret01WP") - wp132 = ns.Waypoint("Secret02WP") - gvar52 = ns.ObjectGroup("BatEntryGroup") - obj53 = ns.Object("Bear1") - obj93 = ns.Object("Ogre1") - obj94 = ns.Object("Ogre2") - gvar58 = ns.WallGroup("ScorpionWallGroup") - obj7 = ns.Object("Block1") - obj8 = ns.Object("Block2") - obj9 = ns.Object("Block3") - obj10 = ns.Object("Block4") - obj11 = ns.Object("Block5") - obj12 = ns.Object("Block6") - obj18 = ns.Object("BlockMover1") - obj19 = ns.Object("BlockMover2") - obj20 = ns.Object("BlockMover3") - obj21 = ns.Object("BlockMover4") - obj22 = ns.Object("BlockMover5") - obj23 = ns.Object("BlockMover6") - obj127 = ns.Object("SilverKeyTrigger1") - obj128 = ns.Object("SilverKeyTrigger2") - obj129 = ns.Object("SilverKeyTrigger3") - obj130 = ns.Object("SilverKeyTrigger4") - gvar95 = ns.WallGroup("SilverKeyWallGroup") - obj121 = ns.Object("Grunt1") - obj122 = ns.Object("Grunt2") - obj123 = ns.Object("Grunt3") - obj124 = ns.Object("Grunt4") - gvar4 = ns.WallGroup("AmbushWallGroup") - obj61 = ns.Object("Pit1") - obj62 = ns.Object("Pit2") - obj63 = ns.Object("Pit3") - obj64 = ns.Object("Pit4") - obj65 = ns.Object("Pit5") - obj66 = ns.Object("Pit6") - obj24 = ns.Object("Elevator1") - obj25 = ns.Object("Elevator2") - obj26 = ns.Object("Elevator3") - obj27 = ns.Object("Elevator4") - obj28 = ns.Object("Elevator5") - obj29 = ns.Object("Elevator6") - obj30 = ns.Object("Skeleton1") - obj31 = ns.Object("Skeleton2") - obj32 = ns.Object("Skeleton3") - obj33 = ns.Object("Skeleton4") - obj34 = ns.Object("Skeleton5") - obj35 = ns.Object("Skeleton6") - obj67 = ns.Object("Skeleton7") - obj36 = ns.Object("EndTrapTrigger") - obj59 = ns.Object("Gear1") - obj60 = ns.Object("Gear2") - obj13 = ns.Object("Plate1") - obj14 = ns.Object("Plate2") - obj15 = ns.Object("Plate3") - obj16 = ns.Object("Plate4") - obj17 = ns.Object("Plate5") - obj81 = ns.Object("Spike1") - obj82 = ns.Object("Spike2") - obj83 = ns.Object("Spike3") - obj84 = ns.Object("Spike4") - obj85 = ns.Object("Spike5") - obj86 = ns.Object("Spike6") - obj87 = ns.Object("Spike7") - obj88 = ns.Object("Spike8") - obj89 = ns.Object("Spike9") - obj90 = ns.Object("Spike10") - obj91 = ns.Object("Spike11") - obj92 = ns.Object("Spike12") - obj68 = ns.Object("CellDoor1") - obj69 = ns.Object("CellDoor2") - obj70 = ns.Object("CellDoor3") - obj71 = ns.Object("CellDoor4") - obj72 = ns.Object("CellDoor5") - obj73 = ns.Object("CellDoor6") - obj74 = ns.Object("CellDoor7") - obj75 = ns.Object("CellDoor8") - obj76 = ns.Object("CellDoor9") - obj77 = ns.Object("CellDoor10") - obj78 = ns.Object("CellDoor11") - obj79 = ns.Object("CellDoor12") - obj80 = ns.Object("CellLever") - wp39 = ns.Waypoint("BlockOpen1") - wp45 = ns.Waypoint("BlockClosed1") - wp40 = ns.Waypoint("BlockOpen2") - wp46 = ns.Waypoint("BlockClosed2") - wp41 = ns.Waypoint("BlockOpen3") - wp47 = ns.Waypoint("BlockClosed3") - wp42 = ns.Waypoint("BlockOpen4") - wp48 = ns.Waypoint("BlockClosed4") - wp43 = ns.Waypoint("BlockOpen5") - wp49 = ns.Waypoint("BlockClosed5") - wp44 = ns.Waypoint("BlockOpen6") - wp50 = ns.Waypoint("BlockClosed6") - wp125 = ns.Waypoint("Gates1WP") - wp126 = ns.Waypoint("Gates2WP") - gvar5 = ns.WallGroup("Gates1") - gvar6 = ns.WallGroup("Gates2") - wp38 = ns.Waypoint("BlockAudio1WP") - wp96 = ns.Waypoint("Spike1Open") - wp97 = ns.Waypoint("Spike2Open") - wp98 = ns.Waypoint("Spike3Open") - wp99 = ns.Waypoint("Spike4Open") - wp100 = ns.Waypoint("Spike5Open") - wp101 = ns.Waypoint("Spike6Open") - wp102 = ns.Waypoint("Spike7Open") - wp103 = ns.Waypoint("Spike8Open") - wp104 = ns.Waypoint("Spike9Open") - wp105 = ns.Waypoint("Spike10Open") - wp106 = ns.Waypoint("Spike11Open") - wp107 = ns.Waypoint("Spike12Open") - wp108 = ns.Waypoint("Spike1Closed") - wp109 = ns.Waypoint("Spike2Closed") - wp110 = ns.Waypoint("Spike3Closed") - wp111 = ns.Waypoint("Spike4Closed") - wp112 = ns.Waypoint("Spike5Closed") - wp113 = ns.Waypoint("Spike6Closed") - wp114 = ns.Waypoint("Spike7Closed") - wp115 = ns.Waypoint("Spike8Closed") - wp116 = ns.Waypoint("Spike9Closed") - wp117 = ns.Waypoint("Spike10Closed") - wp118 = ns.Waypoint("Spike11Closed") - wp119 = ns.Waypoint("Spike12Closed") - wp51 = ns.Waypoint("SkeletonGoal") - wp37 = ns.Waypoint("EndTrapAudioWP") - OpenGates() - CloseBlocks() - LockCellDoors() - KillSkeleton7() - ns.Move(obj11, wp49) - ns.Move(obj12, wp50) - EnableSpikes() -} -func HostilizeMe() { - ns.AggressionLevel(ns.GetTrigger(), 0.83) -} -func BatsHostilize() { - ns.GroupAggressionLevel(gvar52, 0.83) -} -func BearHostilize() { - ns.AggressionLevel(obj53, 0.83) -} -func OgresHostilize() { - ns.AggressionLevel(obj93, 0.83) - ns.AggressionLevel(obj94, 0.83) -} -func DestroyWalls() { - ns.WallGroupBreak(gvar58) - ns.Attack(obj54, ns.GetHost()) - ns.Attack(obj55, ns.GetHost()) - ns.Attack(obj56, ns.GetHost()) -} -func OpenCellDoors() { - ns.UnlockDoor(obj68) - ns.UnlockDoor(obj69) - ns.UnlockDoor(obj70) - ns.UnlockDoor(obj71) - ns.UnlockDoor(obj72) - ns.UnlockDoor(obj73) - ns.UnlockDoor(obj74) - ns.UnlockDoor(obj75) - ns.UnlockDoor(obj76) - ns.UnlockDoor(obj77) - ns.UnlockDoor(obj78) - ns.UnlockDoor(obj79) - ns.ObjectOff(obj80) - EnableGears() -} -func ToggleGates1() { - ns.AudioEvent(ns.FireBallExplode, wp125) - ns.WallGroupOpen(gvar5) -} -func ToggleGates2() { - ns.AudioEvent(ns.FireBallExplode, wp126) - ns.WallGroupOpen(gvar6) -} -func ChapterFail2() { - ns.EnchantOff(ns.GetHost(), ns.ENCHANT_INVULNERABLE) - ns.DeathScreen(5) -} -func SilverKeyTrap() { - ns.ObjectOff(obj127) - ns.ObjectOff(obj128) - ns.ObjectOff(obj129) - ns.ObjectOff(obj130) - ns.WallGroupBreak(gvar95) - ns.AggressionLevel(obj121, 0.83) - ns.AggressionLevel(obj122, 0.83) - ns.AggressionLevel(obj123, 0.83) - ns.AggressionLevel(obj124, 0.83) -} -func MapEntry() { - ns.UnBlind() - LetterBoxOff() - ns.Frozen(ns.GetHost(), false) -} -func PlaySubMusic() { - ns.Music(20, 100) -} -func MonsterGoHome() { - r1 := ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) - if !r1 { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func Secret01() { - ns.AudioEvent(ns.SecretFound, wp131) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 100) -} -func Secret02() { - ns.AudioEvent(ns.SecretFound, wp132) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 100) -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapInitialize": - MapInitialize() - case "MapEntry": - MapEntry() - } -} diff --git a/examples/con05c/dummy_test.go b/examples/con05c/dummy_test.go deleted file mode 100644 index f8bfe77..0000000 --- a/examples/con05c/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package con05c - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/con06a/con06a.go b/examples/con06a/con06a.go deleted file mode 100644 index ca9f8f0..0000000 --- a/examples/con06a/con06a.go +++ /dev/null @@ -1,601 +0,0 @@ -package con06a - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 ns.ObjectID - obj5 ns.ObjectID - obj6 ns.ObjectID - obj7 ns.ObjectID - obj8 ns.ObjectID - obj9 ns.ObjectID - obj10 ns.ObjectID - wp11 ns.WaypointID - gvar12 ns.ObjectGroupID - gvar13 ns.ObjectGroupID - gvar14 ns.ObjectGroupID - gvar15 ns.ObjectGroupID - flag16 bool - flag17 bool - obj18 ns.ObjectID - obj19 ns.ObjectID - wp20 ns.WaypointID - gvar21 ns.WallGroupID - flag22 bool - ivar23 int - obj24 ns.ObjectID - obj25 ns.ObjectID - obj26 ns.ObjectID - obj27 ns.ObjectID - obj28 ns.ObjectID - obj29 ns.ObjectID - obj30 ns.ObjectID - gvar31 ns.ObjectGroupID - gvar32 ns.ObjectGroupID - gvar33 ns.ObjectGroupID - gvar34 ns.ObjectGroupID - flag35 bool - obj36 ns.ObjectID - obj37 ns.ObjectID - obj38 ns.ObjectID - obj39 ns.ObjectID - obj40 ns.ObjectID - obj41 ns.ObjectID - obj42 ns.ObjectID - obj43 ns.ObjectID - gvar44 ns.ObjectGroupID - wp45 ns.WaypointID - wp46 ns.WaypointID - obj47 ns.ObjectID - ivar48 int - flag49 bool - obj50 ns.ObjectID - obj51 ns.ObjectID - obj52 ns.ObjectID - obj53 ns.ObjectID - obj54 ns.ObjectID - obj55 ns.ObjectID - obj56 ns.ObjectID - obj57 ns.ObjectID - obj58 ns.ObjectID - obj59 ns.ObjectID - obj60 ns.ObjectID - obj61 ns.ObjectID - wp62 ns.WaypointID - gvar63 ns.ObjectGroupID -) - -func init() { - flag16 = false - flag17 = true - flag22 = false - ivar23 = 0 - flag35 = true - flag49 = true -} -func KillTownie() { - ns.AudioEvent(ns.HumanMaleDie, wp11) - ns.MoveObject(obj4, ns.GetWaypointX(wp11), ns.GetWaypointY(wp11)) - ns.MoveObject(obj7, 4071, 1828) - ns.MoveObject(obj6, 3999, 1844) -} -func townieTalk1Start() { - ns.ObjectGroupOff(gvar14) - ns.TellStory(ns.UrchinRecognize, "War06a:TownspeopleSpeak3") -} -func townieTalk1End() { - ns.ObjectGroupOn(gvar14) - ns.CancelDialog(obj4) - ns.Delete(obj5) - ns.FrameTimer(1, KillTownie) -} -func EnableSkeletonGroup() { - ns.ObjectOff(ns.GetTrigger()) - ns.ObjectGroupOn(gvar13) -} -func captainVanishes() { - ns.ObjectOff(ns.GetTrigger()) - ns.Delete(obj10) - ns.Delete(obj8) - ns.Delete(obj9) - ns.ObjectGroupOn(gvar12) - EnableSkeletonGroup() -} -func GuardiansAttack() { - ns.AggressionLevel(obj24, 0.83) - ns.Attack(obj24, obj18) - ns.AggressionLevel(obj25, 0.83) - ns.Attack(obj25, obj18) - ns.AggressionLevel(obj26, 0.83) - ns.Attack(obj26, obj19) - ns.AggressionLevel(obj18, 0.83) - ns.Attack(obj18, obj24) - ns.AggressionLevel(obj19, 0.83) - ns.Attack(obj19, obj26) -} -func Guardian01DialogStart() { - ns.TellStory(ns.SwordsmanHurt, "Con06a:CityGuardSpeak1") -} -func Guardian01DialogEnd() { - ns.CancelDialog(obj18) - ns.NoWallSound(true) - ns.WallGroupOpen(gvar21) - ns.NoWallSound(false) - ns.BecomePet(obj18) - ns.BecomePet(obj19) - ns.CreatureFollow(obj18, ns.GetHost()) - ns.CreatureFollow(obj19, ns.GetHost()) - ns.Frozen(ns.GetHost(), false) - ns.WideScreen(false) - ns.ObjectGroupOn(gvar15) - ns.ObjectGroupOn(gvar13) -} -func Zombie1Rise() { - var ( - v0 float32 - v1 float32 - ) - v0 = ns.GetObjectX(obj24) - v1 = ns.GetObjectY(obj24) - ns.RaiseZombie(obj24) - ns.MoveWaypoint(wp20, v0, v1) - ns.AudioEvent(ns.ZombieRecognize, ns.Waypoint("AudioOrigin")) -} -func Zombie2Rise() { - var ( - v0 float32 - v1 float32 - ) - v0 = ns.GetObjectX(obj25) - v1 = ns.GetObjectY(obj25) - ns.RaiseZombie(obj25) - ns.MoveWaypoint(wp20, v0, v1) - ns.AudioEvent(ns.ZombieRecognize, ns.Waypoint("AudioOrigin")) -} -func Zombie3Rise() { - var ( - v0 float32 - v1 float32 - ) - v0 = ns.GetObjectX(obj26) - v1 = ns.GetObjectY(obj26) - ns.RaiseZombie(obj26) - ns.MoveWaypoint(wp20, v0, v1) - ns.AudioEvent(ns.ZombieRecognize, ns.Waypoint("AudioOrigin")) -} -func SetpieceZombieDie() { - ivar23 += 1 - if !(ivar23 >= 3) { - goto LABEL1 - } - ns.StoryPic(obj18, "WarriorPic") - ns.SetDialog(obj18, ns.NORMAL, Guardian01DialogStart, Guardian01DialogEnd) - ns.LookAtObject(obj18, ns.GetHost()) - ns.LookAtObject(obj19, ns.GetHost()) - ns.StartDialog(obj18, ns.GetHost()) - ns.SetCallback(obj24, 5, NullCallback) - ns.SetCallback(obj25, 5, NullCallback) - ns.SetCallback(obj26, 5, NullCallback) -LABEL1: - return -} -func SetZombieDieCallbacks() { - ns.SetCallback(obj24, 5, SetpieceZombieDie) - ns.SetCallback(obj25, 5, SetpieceZombieDie) - ns.SetCallback(obj26, 5, SetpieceZombieDie) -} -func NullCallback() { -} -func InitializeGuardianSetpiece() { - obj24 = ns.Object("SetpieceZombie01") - obj25 = ns.Object("SetpieceZombie02") - obj26 = ns.Object("SetpieceZombie03") - ns.Damage(obj24, 0, 100, 0) - ns.Damage(obj25, 0, 100, 0) - ns.Damage(obj26, 0, 100, 0) - ns.ZombieStayDown(obj24) - ns.ZombieStayDown(obj25) - ns.ZombieStayDown(obj26) - ns.FrameTimer(30, SetZombieDieCallbacks) -} -func StartGuardianSetpiece() { - if !(ns.IsCaller(ns.GetHost()) && !flag22) { - goto LABEL1 - } - flag22 = true - ns.CreatureIdle(ns.GetHost()) - ns.Frozen(ns.GetHost(), true) - ns.WideScreen(true) - ns.FrameTimer(15, Zombie1Rise) - ns.FrameTimer(25, Zombie2Rise) - ns.FrameTimer(20, Zombie3Rise) - ns.FrameTimer(45, GuardiansAttack) - ns.ObjectGroupOff(gvar13) -LABEL1: - return -} -func TurnOffLights() { - ns.ObjectToggle(obj30) - ns.ObjectGroupToggle(gvar31) - ns.ObjectGroupToggle(gvar32) - ns.ObjectGroupToggle(gvar33) - ns.ObjectGroupToggle(gvar34) - ns.ObjectToggle(obj27) - ns.ObjectToggle(obj28) - ns.ObjectToggle(obj29) -} -func PlayerDeath() { - ns.DeathScreen(6) -} -func captainTalk() { - ns.StartDialog(obj10, ns.GetHost()) -} -func captainTalk1Start() { - ns.Frozen(ns.GetHost(), true) - ns.TellStory(ns.ArcherRecognize, "Con01a:CaptainProd") -} -func captainTalk1End() { - ns.Frozen(ns.GetHost(), false) - ns.SetDialog(obj10, ns.NORMAL, captainTalk1Start, captainTalk1End) -} -func undeadBreakIn() { - ns.WallBreak(ns.Wall(220, 118)) - ns.WallBreak(ns.Wall(219, 119)) - ns.WallBreak(ns.Wall(220, 120)) -} -func KirikEnd1() { - ns.SetDialog(obj43, ns.NORMAL, KirikStart1, KirikEnd1) -} -func KirikStart1() { - ns.TellStory(ns.HumanMaleEatFood, "War01A.scr:Guard1Talk01") -} -func SecretRoom() { - ns.ObjectGroupOff(gvar44) - ns.MoveWaypoint(wp45, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretFound, wp45) - ns.GiveXp(ns.GetHost(), 100) - ns.PrintToAll("GeneralPrint:SecretFound") -} -func InitializeTownspeople() { - obj50 = ns.Object("Townsman1") - obj51 = ns.Object("Townsman2") - obj52 = ns.Object("Townsman3") - obj53 = ns.Object("Townsman4") - obj54 = ns.Object("Townsman5") - obj55 = ns.Object("Townsman6") - obj56 = ns.Object("Townswoman1") - obj57 = ns.Object("Townswoman2") - obj58 = ns.Object("Townswoman3") - obj59 = ns.Object("Townswoman4") - obj60 = ns.Object("Townswoman5") - obj61 = ns.Object("Townswoman6") - wp62 = ns.Waypoint("TownspeopleStorage") - gvar63 = ns.ObjectGroup("Townspeople") - ns.StoryPic(obj18, "WarriorPic") - ns.StoryPic(obj19, "WarriorPic") - ns.StoryPic(obj40, "WarriorPic") - ns.SetDialog(obj40, ns.NORMAL, fireKnightsTalk1Start, fireKnightsTalk1End) - ns.StoryPic(obj41, "Warrior2Pic") - ns.SetDialog(obj41, ns.NORMAL, fireKnightsTalk2Start, fireKnightsTalk2End) - ns.StoryPic(obj42, "Warrior3Pic") - ns.SetDialog(obj42, ns.NORMAL, fireKnightsTalk3Start, fireKnightsTalk3End) - ns.FrameTimer(15, OwnTownspeople) -} -func NewJournalEntry() { - ns.JournalEntry(ns.GetHost(), "War6Fortress", 2) - ns.PrintToAll("Con01a:NewJournalEntry") -} -func MapInitialize() { - obj10 = ns.Object("Captain") - obj8 = ns.Object("Basket") - obj9 = ns.Object("BasketShadow") - obj4 = ns.Object("Townie1") - obj6 = ns.Object("DeadGuyBoots") - obj7 = ns.Object("DeadGuyChain") - obj5 = ns.Object("F6Elite2") - obj36 = ns.Object("GauntletDoorR") - obj37 = ns.Object("GauntletDoorL") - obj38 = ns.Object("IxDoorR") - obj39 = ns.Object("IxDoorL") - obj18 = ns.Object("F6FireGuard10") - obj19 = ns.Object("F6FireGuard7") - obj40 = ns.Object("F6FireGuard9") - obj41 = ns.Object("F2Fire6") - obj42 = ns.Object("F2Fire8") - obj27 = ns.Object("GearLight1") - obj28 = ns.Object("GearLight2") - obj29 = ns.Object("GearLight3") - obj30 = ns.Object("StupidTorch") - obj43 = ns.Object("Kirik") - ns.SetOwner(ns.GetHost(), obj43) - ns.SetOwner(ns.GetHost(), obj5) - gvar12 = ns.ObjectGroup("ZombieGroupA") - gvar13 = ns.ObjectGroup("SkeletonGroup01") - gvar31 = ns.ObjectGroup("StreetLamps") - gvar32 = ns.ObjectGroup("StreetLamps2") - gvar33 = ns.ObjectGroup("LightGears") - gvar34 = ns.ObjectGroup("LightGears2") - gvar44 = ns.ObjectGroup("SecretRoom2Triggers") - gvar15 = ns.ObjectGroup("EveryMonsterOnMap") - gvar14 = ns.ObjectGroup("FleemanMonsters") - wp11 = ns.Waypoint("TownieWP") - wp20 = ns.Waypoint("AudioOrigin") - wp45 = ns.Waypoint("PlayerSounds") - wp46 = ns.Waypoint("WellWP") - gvar21 = ns.WallGroup("GrdnStpcWalls") - ns.StoryPic(obj10, "AirshipCaptainPic") - ns.SetDialog(obj10, ns.NORMAL, captainTalk1Start, captainTalk1End) - ns.StoryPic(obj5, "WoundedWarriorPic") - ns.SetDialog(obj5, ns.NORMAL, townieTalk1Start, townieTalk1End) - ns.StoryPic(obj43, "Warrior4Pic") - ns.SetDialog(obj43, ns.NORMAL, KirikStart1, KirikEnd1) - ns.LockDoor(obj36) - ns.LockDoor(obj37) - ns.LockDoor(obj38) - ns.LockDoor(obj39) - InitializeGuardianSetpiece() - InitializeTownspeople() - ns.StartupScreen(6) - ns.FrameTimer(15, NewJournalEntry) - ns.Music(16, 100) - ns.FrameTimer(1, captainTalk) - ns.Damage(obj4, 0, 100, 0) -} -func NoEnemys() { - r1 := ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) - if !r1 { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func MonstersGoHome() { - r1 := ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) - if !r1 { - goto LABEL1 - } - ns.AggressionLevel(ns.GetCaller(), 0.16) - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func OwnTownspeople() { - ns.GroupSetOwner(ns.GetHost(), gvar63) -} -func fireKnightsRecognize() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ivar48 = ns.Random(1, 3) - if ivar48 != 1 { - goto LABEL2 - } - ns.StoryPic(ns.GetTrigger(), "WarriorPic") - ns.SetDialog(ns.GetTrigger(), ns.NORMAL, fireKnightsTalk1Start, fireKnightsTalk1End) -LABEL2: - if ivar48 != 2 { - goto LABEL3 - } - ns.StoryPic(ns.GetTrigger(), "Warrior2Pic") - ns.SetDialog(ns.GetTrigger(), ns.NORMAL, fireKnightsTalk2Start, fireKnightsTalk2End) -LABEL3: - if ivar48 != 3 { - goto LABEL1 - } - ns.StoryPic(ns.GetTrigger(), "Warrior3Pic") - ns.SetDialog(ns.GetTrigger(), ns.NORMAL, fireKnightsTalk3Start, fireKnightsTalk3End) -LABEL1: - return -} -func fireKnightsTalk1Start() { - ns.Frozen(ns.GetHost(), true) - ns.ObjectGroupOff(gvar15) - ns.TellStory(ns.SwordsmanRecognize, "Con06a:CityGuardSpeak1") -} -func fireKnightsTalk1End() { - ns.Frozen(ns.GetHost(), false) - ns.ObjectGroupOn(gvar15) - ns.SetCallback(ns.GetTrigger(), 3, NullCallback) - ns.CancelDialog(ns.GetTrigger()) - ns.BecomePet(ns.GetTrigger()) - ns.CreatureFollow(ns.GetTrigger(), ns.GetHost()) - ns.AggressionLevel(ns.GetTrigger(), 0.83) -} -func fireKnightsTalk2Start() { - ns.Frozen(ns.GetHost(), true) - ns.ObjectGroupOff(gvar15) - ns.TellStory(ns.SwordsmanRecognize, "Con06a:CityGuardSpeak2") -} -func fireKnightsTalk2End() { - ns.Frozen(ns.GetHost(), false) - ns.ObjectGroupOn(gvar15) - ns.SetCallback(ns.GetTrigger(), 3, NullCallback) - ns.CancelDialog(ns.GetTrigger()) - ns.BecomePet(ns.GetTrigger()) - ns.CreatureFollow(ns.GetTrigger(), ns.GetHost()) - ns.AggressionLevel(ns.GetTrigger(), 0.83) -} -func fireKnightsTalk3Start() { - ns.Frozen(ns.GetHost(), true) - ns.ObjectGroupOff(gvar15) - ns.TellStory(ns.SwordsmanRecognize, "War06a:CityGuardSpeak3") -} -func fireKnightsTalk3End() { - ns.Frozen(ns.GetHost(), false) - ns.ObjectGroupOn(gvar15) - ns.SetCallback(ns.GetTrigger(), 3, NullCallback) - ns.CancelDialog(ns.GetTrigger()) - ns.CreatureFollow(ns.GetTrigger(), ns.GetHost()) - ns.BecomePet(ns.GetTrigger()) - ns.AggressionLevel(ns.GetTrigger(), 0.83) -} -func fireKnightsStayTalkInit() { - if !(ns.IsCaller(obj18) || ns.IsCaller(obj19) || ns.IsCaller(obj40) || ns.IsCaller(obj41) || ns.IsCaller(obj42)) { - goto LABEL1 - } - if !ns.IsVisibleTo(ns.GetCaller(), ns.GetHost()) { - goto LABEL2 - } - ns.CreatureIdle(ns.GetCaller()) - ns.BecomeEnemy(ns.GetCaller()) - ns.CreatureGuard(ns.GetCaller(), ns.GetObjectX(ns.GetCaller()), ns.GetObjectY(ns.GetCaller()), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 150) - ns.AggressionLevel(ns.GetCaller(), 0.5) - ns.Wander(ns.GetCaller()) - if !flag49 { - goto LABEL3 - } - flag49 = false - obj47 = ns.GetCaller() - ns.SetDialog(ns.GetCaller(), ns.NORMAL, fireKnightsStayTalkStart, fireKnightsStayTalkEnd) - ns.StartDialog(ns.GetCaller(), ns.GetHost()) -LABEL3: - goto LABEL4 -LABEL2: - ns.AggressionLevel(ns.GetCaller(), 0.5) - ns.Wander(ns.GetCaller()) -LABEL4: - goto LABEL5 -LABEL1: - ns.AggressionLevel(ns.GetCaller(), 0.5) - ns.Wander(ns.GetCaller()) -LABEL5: - return -} -func fireKnightsStayTalkStart() { - ns.TellStory(ns.SwordsmanRecognize, "Con06:SaveDunMir06Conjurer") -} -func fireKnightsStayTalkEnd() { - ns.CancelDialog(ns.GetTrigger()) -} -func townsMenRecognize() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ivar48 = ns.Random(1, 3) - if ivar48 != 1 { - goto LABEL2 - } - ns.StoryPic(ns.GetTrigger(), "Townsman1Pic") - ns.SetDialog(ns.GetTrigger(), ns.NORMAL, townsmenTalk1Start, townsmenTalk1End) -LABEL2: - if ivar48 != 2 { - goto LABEL3 - } - ns.StoryPic(ns.GetTrigger(), "Townsman2Pic") - ns.SetDialog(ns.GetTrigger(), ns.NORMAL, townsmenTalk2Start, townsmenTalk2End) -LABEL3: - if ivar48 != 3 { - goto LABEL1 - } - ns.StoryPic(ns.GetTrigger(), "Townsman3Pic") - ns.SetDialog(ns.GetTrigger(), ns.NORMAL, townsmenTalk3Start, townsmenTalk3End) -LABEL1: - return -} -func townsmenTalk1Start() { - ns.Frozen(ns.GetHost(), true) - ns.ObjectGroupOff(gvar15) - ns.TellStory(ns.UrchinRecognize, "War06a:TownspeopleSpeak1") -} -func townsmenTalk1End() { - ns.Frozen(ns.GetHost(), false) - ns.ObjectGroupOn(gvar15) -} -func townsmenTalk2Start() { - ns.Frozen(ns.GetHost(), true) - ns.ObjectGroupOff(gvar15) - ns.TellStory(ns.UrchinRecognize, "Con06a:TownspeopleSpeak2") -} -func townsmenTalk2End() { - ns.Frozen(ns.GetHost(), false) - ns.ObjectGroupOn(gvar15) -} -func townsmenTalk3Start() { - ns.Frozen(ns.GetHost(), true) - ns.ObjectGroupOff(gvar15) - ns.TellStory(ns.UrchinRecognize, "War06a:TownspeopleSpeak3") -} -func townsmenTalk3End() { - ns.Frozen(ns.GetHost(), false) - ns.ObjectGroupOn(gvar15) -} -func townsWomenRecognize() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ivar48 = ns.Random(1, 3) - if ivar48 != 1 { - goto LABEL2 - } - ns.StoryPic(ns.GetTrigger(), "MaidenPic") - ns.SetDialog(ns.GetTrigger(), ns.NORMAL, townsWomenTalk1Start, townsWomenTalk1End) -LABEL2: - if ivar48 != 2 { - goto LABEL3 - } - ns.StoryPic(ns.GetTrigger(), "MaidenPic2") - ns.SetDialog(ns.GetTrigger(), ns.NORMAL, townsWomenTalk2Start, townsWomenTalk2End) -LABEL3: - if ivar48 != 3 { - goto LABEL1 - } - ns.StoryPic(ns.GetTrigger(), "MaidenPic3") - ns.SetDialog(ns.GetTrigger(), ns.NORMAL, townsWomenTalk3Start, townsWomenTalk3End) -LABEL1: - return -} -func townsWomenTalk1Start() { - ns.Frozen(ns.GetHost(), true) - ns.ObjectGroupOff(gvar15) - ns.TellStory(ns.GhostRecognize, "War06a:WomenSpeak1") -} -func townsWomenTalk1End() { - ns.Frozen(ns.GetHost(), false) - ns.ObjectGroupOn(gvar15) -} -func townsWomenTalk2Start() { - ns.Frozen(ns.GetHost(), true) - ns.ObjectGroupOff(gvar15) - ns.TellStory(ns.GhostRecognize, "War06a:WomenSpeak1") -} -func townsWomenTalk2End() { - ns.Frozen(ns.GetHost(), false) - ns.ObjectGroupOn(gvar15) -} -func townsWomenTalk3Start() { - ns.Frozen(ns.GetHost(), true) - ns.ObjectGroupOff(gvar15) - ns.TellStory(ns.GhostRecognize, "War06a:WomenSpeak1") -} -func townsWomenTalk3End() { - ns.Frozen(ns.GetHost(), false) - ns.ObjectGroupOn(gvar15) -} -func leavingDunMir() { - if !(ns.IsCaller(obj50) || ns.IsCaller(obj51) || ns.IsCaller(obj52) || ns.IsCaller(obj53) || ns.IsCaller(obj54) || ns.IsCaller(obj55) || ns.IsCaller(obj56) || ns.IsCaller(obj57) || ns.IsCaller(obj58) || ns.IsCaller(obj59) || ns.IsCaller(obj60) || ns.IsCaller(obj61)) { - goto LABEL1 - } - ns.MoveObject(ns.GetCaller(), ns.GetWaypointX(wp62), ns.GetWaypointY(wp62)) - ns.ObjectOff(ns.GetCaller()) -LABEL1: - return -} -func flee() { - ns.Wander(ns.GetTrigger()) -} -func MakeAWish() { - var v0 int - v0 = ns.MaxHealth(ns.GetCaller()) - ns.RestoreHealth(ns.GetCaller(), v0-ns.CurrentHealth(ns.GetCaller())) - ns.PrintToAll("GeneralPrint:WellSignRefresh") - ns.AudioEvent(ns.RestoreHealthName, wp46) -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapInitialize": - MapInitialize() - } -} diff --git a/examples/con06a/dummy_test.go b/examples/con06a/dummy_test.go deleted file mode 100644 index 6ad8905..0000000 --- a/examples/con06a/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package con06a - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/con06b/con06b.go b/examples/con06b/con06b.go deleted file mode 100644 index 3750965..0000000 --- a/examples/con06b/con06b.go +++ /dev/null @@ -1,868 +0,0 @@ -package con06b - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - gvar4 int - gvar5 int - gvar6 int - gvar7 int - gvar8 int - flag9 bool - flag10 bool - flag11 bool - flag12 bool - flag13 bool - flag14 bool - fvar15 float32 - fvar16 float32 - ivar17 int - ivar18 int - gvar19 int - gvar20 int - obj21 ns.ObjectID - obj22 ns.ObjectID - obj23 ns.ObjectID - obj24 ns.ObjectID - obj25 ns.ObjectID - obj26 ns.ObjectID - obj27 ns.ObjectID - obj28 ns.ObjectID - obj29 ns.ObjectID - obj30 ns.ObjectID - obj31 ns.ObjectID - obj32 ns.ObjectID - obj33 ns.ObjectID - obj34 ns.ObjectID - obj35 ns.ObjectID - obj36 ns.ObjectID - obj37 ns.ObjectID - obj38 ns.ObjectID - obj39 ns.ObjectID - obj40 ns.ObjectID - obj41 ns.ObjectID - obj42 ns.ObjectID - obj43 ns.ObjectID - obj44 ns.ObjectID - obj45 ns.ObjectID - obj46 ns.ObjectID - obj47 ns.ObjectID - obj48 ns.ObjectID - obj49 ns.ObjectID - obj50 ns.ObjectID - obj51 ns.ObjectID - obj52 ns.ObjectID - obj53 ns.ObjectID - gvar54 ns.ObjectID - obj55 ns.ObjectID - obj56 ns.ObjectID - obj57 ns.ObjectID - obj58 ns.ObjectID - obj59 ns.ObjectID - obj60 ns.ObjectID - obj61 ns.ObjectID - obj62 ns.ObjectID - obj63 ns.ObjectID - obj64 ns.ObjectID - gvar65 ns.ObjectGroupID - gvar66 ns.ObjectGroupID - gvar67 ns.ObjectGroupID - gvar68 ns.ObjectGroupID - gvar69 ns.ObjectGroupID - gvar70 ns.ObjectGroupID - gvar71 ns.ObjectGroupID - gvar72 ns.WallGroupID - gvar73 ns.WallGroupID - gvar74 ns.WallGroupID - gvar75 ns.WallGroupID - gvar76 ns.WallGroupID - gvar77 ns.WallGroupID - wp78 ns.WaypointID - wp79 ns.WaypointID - wp80 ns.WaypointID - wp81 ns.WaypointID - wp82 ns.WaypointID - wp83 ns.WaypointID - wp84 ns.WaypointID - wp85 ns.WaypointID - wp86 ns.WaypointID - wp87 ns.WaypointID - wp88 ns.WaypointID - wp89 ns.WaypointID - wp90 ns.WaypointID - wp91 ns.WaypointID - flag92 bool - flag93 bool - flag94 bool - flag95 bool - ivar96 int - ivar97 int - obj98 ns.ObjectID - gvar99 int - gvar100 int - gvar101 int - gvar102 int - wp103 ns.WaypointID -) - -func init() { - gvar4 = 0 - gvar5 = 1 - gvar6 = 2 - gvar7 = 3 - gvar8 = 4 - flag9 = true - flag10 = true - flag11 = true - flag12 = true - flag13 = false - flag14 = true - ivar17 = 0 - ivar18 = 0 - gvar19 = 0 - gvar20 = gvar4 - flag92 = true - flag93 = false - flag94 = true - flag95 = false - ivar96 = 76 - ivar97 = 70 -} -func NullCallback() { -} -func fireKnightsRecognize() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ivar17 = ns.Random(1, 3) - if ivar17 != 1 { - goto LABEL2 - } - ns.StoryPic(ns.GetTrigger(), "WarriorPic") - ns.SetDialog(ns.GetTrigger(), ns.NORMAL, fireKnightsTalk1Start, fireKnightsTalk1End) -LABEL2: - if ivar17 != 2 { - goto LABEL3 - } - ns.StoryPic(ns.GetTrigger(), "Warrior2Pic") - ns.SetDialog(ns.GetTrigger(), ns.NORMAL, fireKnightsTalk2Start, fireKnightsTalk2End) -LABEL3: - if ivar17 != 3 { - goto LABEL1 - } - ns.StoryPic(ns.GetTrigger(), "Warrior3Pic") - ns.SetDialog(ns.GetTrigger(), ns.NORMAL, fireKnightsTalk3Start, fireKnightsTalk3End) -LABEL1: - return -} -func fireKnightsTalk1Start() { - ns.Frozen(ns.GetHost(), true) - ns.ObjectGroupOff(gvar67) - ns.TellStory(ns.SwordsmanRecognize, "Con06a:CityGuardSpeak1") -} -func fireKnightsTalk1End() { - ns.Frozen(ns.GetHost(), false) - ns.ObjectGroupOn(gvar67) - ns.SetCallback(ns.GetTrigger(), 3, NullCallback) - ns.CancelDialog(ns.GetTrigger()) - ns.BecomePet(ns.GetTrigger()) - ns.CreatureFollow(ns.GetTrigger(), ns.GetHost()) - ns.AggressionLevel(ns.GetTrigger(), 0.83) -} -func fireKnightsTalk2Start() { - ns.Frozen(ns.GetHost(), true) - ns.ObjectGroupOff(gvar67) - ns.TellStory(ns.SwordsmanRecognize, "Con06a:CityGuardSpeak2") -} -func fireKnightsTalk2End() { - ns.Frozen(ns.GetHost(), false) - ns.ObjectGroupOn(gvar67) - ns.SetCallback(ns.GetTrigger(), 3, NullCallback) - ns.CancelDialog(ns.GetTrigger()) - ns.BecomePet(ns.GetTrigger()) - ns.CreatureFollow(ns.GetTrigger(), ns.GetHost()) - ns.AggressionLevel(ns.GetTrigger(), 0.83) -} -func fireKnightsTalk3Start() { - ns.Frozen(ns.GetHost(), true) - ns.ObjectGroupOff(gvar67) - ns.TellStory(ns.SwordsmanRecognize, "War06a:CityGuardSpeak3") -} -func fireKnightsTalk3End() { - ns.Frozen(ns.GetHost(), false) - ns.ObjectGroupOn(gvar67) - ns.SetCallback(ns.GetTrigger(), 3, NullCallback) - ns.CancelDialog(ns.GetTrigger()) - ns.CreatureFollow(ns.GetTrigger(), ns.GetHost()) - ns.BecomePet(ns.GetTrigger()) - ns.AggressionLevel(ns.GetTrigger(), 0.83) -} -func ownFriends() { - ns.JournalEntry(ns.GetHost(), "War6Horrendous", 2) - ns.JournalEdit(ns.GetHost(), "War6Fortress", 4) - ns.SetOwner(ns.GetHost(), obj21) - ns.SetOwner(ns.GetHost(), obj27) - ns.SetOwner(ns.GetHost(), obj28) - ns.SetOwner(ns.GetHost(), obj29) - ns.SetOwner(ns.GetHost(), obj30) - ns.StoryPic(obj31, "WarriorPic") - ns.SetDialog(obj31, ns.NORMAL, fireKnightsTalk1Start, fireKnightsTalk1End) - ns.StoryPic(obj32, "Warrior2Pic") - ns.SetDialog(obj32, ns.NORMAL, fireKnightsTalk2Start, fireKnightsTalk2End) - ns.StoryPic(obj33, "Warrior3Pic") - ns.SetDialog(obj33, ns.NORMAL, fireKnightsTalk3Start, fireKnightsTalk3End) - ns.StoryPic(obj34, "WarriorPic") - ns.SetDialog(obj34, ns.NORMAL, fireKnightsTalk1Start, fireKnightsTalk1End) -} -func secretArea() { - ns.MoveWaypoint(wp78, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretFound, wp78) - ns.GiveXp(ns.GetHost(), 500) -} -func toggleMainGates() { - if gvar19 != 0 { - goto LABEL1 - } - gvar19 = 1 - openMainGates() - goto LABEL2 -LABEL1: - gvar19 = 0 - closeMainGates() -LABEL2: - ns.AudioEvent(ns.SecretWallStoneClose, wp84) - ns.AudioEvent(ns.BoulderMove, wp84) -} -func openMainGates() { - ns.Move(obj50, wp80) - ns.Move(obj51, wp81) - ns.Move(obj52, wp82) - ns.Move(obj53, wp83) -} -func closeMainGates() { - ns.Move(obj50, wp84) - ns.Move(obj51, wp85) - ns.Move(obj52, wp86) - ns.Move(obj53, wp87) -} -func deathToDoorStops() { - ns.Delete(ns.GetCaller()) -} -func startHorrendousTalk() { - ns.StartDialog(obj21, ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj21) -} -func faceHorrendous() { - ns.LookAtObject(ns.GetTrigger(), obj21) -} -func horrendousDie() { - ns.JournalEntry(ns.GetHost(), "War6Necro", 2) - ns.JournalEdit(ns.GetHost(), "War6Horrendous", 4) - ns.JournalDelete(ns.GetHost(), "War6Fortress") - flag14 = false - ns.MoveObject(obj22, ns.GetObjectX(obj21), ns.GetObjectY(obj21)) - fvar15 = ns.GetObjectX(obj21) - 55 - fvar16 = ns.GetObjectY(obj21) + 20 - ns.MoveObject(obj21, 1161, 2794) - ns.SetDialog(gvar54, ns.NORMAL, hecubahTalk4Start, hecubahTalk4End) - ns.StartDialog(gvar54, ns.GetHost()) - ns.FrameTimer(110, horrendousDying) -} -func horrendousDying() { - ns.MoveObject(obj23, ns.GetObjectX(obj22), ns.GetObjectY(obj22)) - ns.Delete(obj22) - ns.FrameTimer(15, horrendousDropHalberd) -} -func horrendousDropHalberd() { - ns.MoveObject(obj26, ns.GetObjectX(obj23)-10, ns.GetObjectY(obj23)+5) -} -func horrendousDead() { - ns.Music(28, 100) - ns.WideScreen(false) - ns.MoveObject(obj24, ns.GetObjectX(obj23), ns.GetObjectY(obj23)) - ns.Delete(obj23) - ns.AudioEvent(ns.DemonDie, wp90) - if gvar54 == 0 { - goto LABEL1 - } - ns.Delete(gvar54) -LABEL1: - return -} -func horrendousSpeak() { - ns.Music(0, 100) - ns.WideScreen(true) - ns.SetDialog(obj21, ns.NORMAL, horrendousTalk1Start, horrendousTalk1End) - ns.StartDialog(obj21, ns.GetHost()) -} -func horrendousTalk1Start() { - ns.ObjectGroupOn(gvar71) - ns.Frozen(ns.GetHost(), true) - ns.LockDoor(obj35) - ns.LockDoor(obj36) - ns.LockDoor(obj37) - ns.GroupPauseObject(gvar67, 10) - ns.ObjectGroupOff(gvar67) - ns.TellStory(ns.DemonRecognize, "Con06a:BoastfulHorrendous") -} -func horrendousTalk1End() { - ns.CancelDialog(obj21) - ns.SetDialog(gvar54, ns.NEXT, hecubahTalk1Start, hecubahTalk1End) - ns.FrameTimer(30, hecubahBustIn) -} -func horrendousTalk2Start() { - ns.TellStory(ns.DemonRecognize, "War06a:HorrendousVsHec") -} -func horrendousTalk2End() { - ns.SetDialog(obj21, ns.NEXT, horrendousTalk3Start, horrendousTalk3End) - ns.FrameTimer(30, startHorrendousTalk) -} -func horrendousTalk3Start() { - ns.TellStory(ns.DemonRecognize, "War06a:ChallengingHec") -} -func horrendousTalk3End() { - ns.CancelDialog(obj21) - ns.SetDialog(gvar54, ns.NEXT, hecubahTalk2Start, hecubahTalk2End) - ns.FrameTimer(30, startHecubahTalk) -} -func horrendousTalk5Start() { - ns.Music(0, 100) - ns.LookAtObject(ns.GetHost(), obj23) - ns.TellStory(ns.DemonRecognize, "War06a:HecDefeatsHorrendous") -} -func horrendousTalk5End() { - ns.CancelDialog(obj21) - ns.SetDialog(gvar54, ns.NEXT, hecubahTalk5Start, hecubahTalk5End) - ns.FrameTimer(30, startHecubahTalk) -} -func horrendousTalk6Start() { - ns.TellStory(ns.DemonRecognize, "War06a:HorrendousPride") -} -func horrendousTalk6End() { - ns.ObjectGroupOn(gvar67) - ns.EnchantOff(ns.GetHost(), ns.ENCHANT_INVULNERABLE) - ns.CancelDialog(obj21) - horrendousDead() - ns.Frozen(ns.GetHost(), false) - ns.ObjectGroupOn(gvar67) - ns.AggressionLevel(obj56, 0.83) - ns.AggressionLevel(obj57, 0.83) - ns.AggressionLevel(obj58, 0.83) - ns.AggressionLevel(obj59, 0.83) - ns.AggressionLevel(obj60, 0.83) - ns.AggressionLevel(obj61, 0.83) - ns.AggressionLevel(obj62, 0.83) - ns.AggressionLevel(obj63, 0.83) - ns.AggressionLevel(obj64, 0.83) -} -func talkToHorrendous() { - ns.SetDialog(obj21, ns.NORMAL, horrendousTalk6Start, horrendousTalk6End) - ns.StartDialog(obj21, ns.GetHost()) -} -func startHecubahTalk() { - ns.StartDialog(gvar54, ns.GetHost()) - ns.LookAtObject(ns.GetHost(), gvar54) -} -func hecubahBustIn() { - ns.ObjectGroupOff(gvar71) - ns.ObjectGroupOn(gvar66) - ns.NoWallSound(true) - ns.WallGroupOpen(gvar72) - ns.NoWallSound(false) - ns.Delete(obj46) - ns.Delete(obj47) - ns.Delete(obj48) - ns.Delete(obj49) - ns.FrameTimer(10, hecubahBreakIn) -} -func hecubahBreakIn() { - ns.WallGroupBreak(gvar73) - ns.Enchant(obj21, ns.ENCHANT_VILLAIN, 0) - ns.ObjectGroupOn(gvar69) - ns.AggressionLevel(gvar54, 0) - ns.AggressionLevel(obj55, 0) - ns.AggressionLevel(obj56, 0) - ns.AggressionLevel(obj57, 0) - ns.AggressionLevel(obj58, 0) - ns.AggressionLevel(obj59, 0) - ns.AggressionLevel(obj60, 0) - ns.AggressionLevel(obj61, 0) - ns.AggressionLevel(obj62, 0) - ns.AggressionLevel(obj63, 0) - ns.AggressionLevel(obj64, 0) - ns.Wander(gvar54) - ns.StartDialog(gvar54, ns.GetHost()) -} -func hecKillsEveryone() { - if !(ns.IsCaller(gvar54) || ns.IsCaller(obj55)) { - goto LABEL1 - } - ns.FrameTimer(3, hecIsKilling) -LABEL1: - return -} -func isHecKilling() { - if !flag9 { - goto LABEL1 - } - ns.Music(28, 75) - ns.FrameTimer(3, hecIsKilling) -LABEL1: - return -} -func hecIsKilling() { - var v0 int - if !flag10 { - goto LABEL1 - } - flag9 = false - ns.LookAtObject(ns.GetHost(), gvar54) - v0 = gvar20 - if v0 == gvar4 { - goto LABEL2 - } - if v0 == gvar5 { - goto LABEL3 - } - if v0 == gvar6 { - goto LABEL4 - } - if v0 == gvar7 { - goto LABEL5 - } - if v0 == gvar8 { - goto LABEL6 - } - goto LABEL7 -LABEL2: - ns.LookAtObject(gvar54, obj21) - ns.LookAtObject(ns.GetHost(), obj21) - ns.AudioEvent(ns.DeathRayCast, wp90) - ns.Effect(ns.DEATH_RAY, ns.GetObjectX(gvar54), ns.GetObjectY(gvar54), ns.GetObjectX(obj21), ns.GetObjectY(obj21)) - ns.Damage(obj21, 0, 1000, 0) - gvar20 = gvar5 - goto LABEL7 -LABEL3: - ns.LookAtObject(gvar54, obj27) - ns.LookAtObject(ns.GetHost(), obj27) - ns.AudioEvent(ns.DeathRayCast, wp90) - ns.Effect(ns.DEATH_RAY, ns.GetObjectX(gvar54), ns.GetObjectY(gvar54), ns.GetObjectX(obj27), ns.GetObjectY(obj27)) - ns.Damage(obj27, 0, 1000, 0) - gvar20 = gvar6 - goto LABEL7 -LABEL4: - ns.LookAtObject(gvar54, obj28) - ns.LookAtObject(ns.GetHost(), obj28) - ns.AudioEvent(ns.DeathRayCast, wp90) - ns.Effect(ns.DEATH_RAY, ns.GetObjectX(gvar54), ns.GetObjectY(gvar54), ns.GetObjectX(obj28), ns.GetObjectY(obj28)) - ns.Damage(obj28, 0, 1000, 0) - gvar20 = gvar7 - goto LABEL7 -LABEL5: - ns.LookAtObject(gvar54, obj29) - ns.LookAtObject(ns.GetHost(), obj29) - ns.AudioEvent(ns.DeathRayCast, wp90) - ns.Effect(ns.DEATH_RAY, ns.GetObjectX(gvar54), ns.GetObjectY(gvar54), ns.GetObjectX(obj29), ns.GetObjectY(obj29)) - ns.Damage(obj29, 0, 1000, 0) - gvar20 = gvar8 - goto LABEL7 -LABEL6: - ns.LookAtObject(gvar54, obj30) - ns.LookAtObject(ns.GetHost(), obj30) - ns.AudioEvent(ns.DeathRayCast, wp90) - ns.Effect(ns.DEATH_RAY, ns.GetObjectX(gvar54), ns.GetObjectY(gvar54), ns.GetObjectX(obj30), ns.GetObjectY(obj30)) - ns.Damage(obj30, 0, 1000, 0) - flag10 = false - goto LABEL7 -LABEL7: - ns.FrameTimer(15, hecIsKilling) -LABEL1: - ns.LookAtObject(ns.GetHost(), gvar54) -} -func hecubahTalk1Start() { - ns.TellStory(ns.GhostRecognize, "War06a:HecubahThreat") -} -func hecubahTalk1End() { - ns.CancelDialog(gvar54) - ns.SetDialog(obj21, ns.NEXT, horrendousTalk2Start, horrendousTalk2End) - ns.FrameTimer(30, startHorrendousTalk) -} -func hecubahTalk2Start() { - ns.TellStory(ns.GhostRecognize, "War06a:HecubahAccepts") -} -func hecubahTalk2End() { - ns.CancelDialog(gvar54) - ns.Enchant(ns.GetHost(), ns.ENCHANT_INVULNERABLE, 0) - ns.ObjectOn(obj38) - ns.FrameTimer(240, isHecKilling) -} -func hecubahTalk4Start() { - ns.ObjectOff(gvar54) - ns.TellStory(ns.GhostRecognize, "War06a:HecubahWins") -} -func hecubahTalk4End() { - ns.SetDialog(obj21, ns.NEXT, horrendousTalk5Start, horrendousTalk5End) - ns.FrameTimer(30, startHorrendousTalk) - ns.CancelDialog(gvar54) -} -func hecubahTalk5Start() { - ns.TellStory(ns.GhostRecognize, "War06a:HecubahToNecro") -} -func hecubahTalk5End() { - ns.CancelDialog(gvar54) - ns.ObjectOn(obj55) - ns.AggressionLevel(obj55, 0) - ns.Walk(obj55, ns.GetWaypointX(wp79), ns.GetWaypointY(wp79)) - ns.SetDialog(obj55, ns.NEXT, necromancerTalk1Start, necromancerTalk1End) - ns.FrameTimer(90, startNecromancerTalk) -} -func hecubahTalk6Start() { - ns.TellStory(ns.GhostRecognize, "War06a:HecThreatJack") -} -func hecubahTalk6End() { - ns.CancelDialog(gvar54) - ns.ObjectOn(gvar54) - ns.AggressionLevel(gvar54, 0) - ns.Walk(gvar54, 931, 3036) - ns.SetDialog(obj55, ns.NEXT, necromancerTalk2Start, necromancerTalk2End) - ns.FrameTimer(30, startNecromancerTalk) -} -func startNecromancerTalk() { - ns.StartDialog(obj55, ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj55) -} -func necromancerTalk1Start() { - ns.CreatureIdle(obj55) - ns.LookAtObject(obj55, obj26) - ns.TellStory(ns.EmberDemonRecognize, "War06a:NecroMockHorren") -} -func necromancerTalk1End() { - ns.CancelDialog(obj55) - ns.Pickup(obj55, obj26) - ns.SetDialog(gvar54, ns.NEXT, hecubahTalk6Start, hecubahTalk6End) - ns.FrameTimer(30, startHecubahTalk) -} -func necromancerTalk2Start() { - ns.TellStory(ns.EmberDemonRecognize, "War06a:NecroThreatJack") -} -func necromancerTalk2End() { - ns.CancelDialog(obj55) - ns.ObjectOn(obj55) - ns.AggressionLevel(obj55, 0) - ns.Walk(obj55, 931, 3036) - ns.FrameTimer(240, talkToHorrendous) -} -func lowerNecroWall() { - ns.NoWallSound(true) - ns.WallGroupOpen(gvar74) -} -func getHalberd() { - ns.Pickup(ns.GetHost(), obj26) - ns.FrameTimer(3, necroDies2) -} -func exitFade() { - ns.Blind() - ns.FrameTimer(60, exitTile) -} -func exitTile() { - ns.Frozen(ns.GetHost(), false) - ns.MoveObject(ns.GetHost(), 5394, 2955) -} -func FreezePlayer() { - ns.CreatureIdle(obj55) - ns.LookAtObject(ns.GetHost(), obj55) - ns.LookAtObject(obj55, ns.GetHost()) - ns.Frozen(ns.GetHost(), true) - ns.Delete(obj56) - ns.Delete(obj57) - ns.Delete(obj58) - ns.Delete(obj59) - ns.Delete(obj60) - ns.Delete(obj61) - ns.Delete(obj62) - ns.Delete(obj63) - ns.Delete(obj64) - ns.FrameTimer(15, necroSetPiece) -} -func necroSetPiece() { - ns.WideScreen(true) - ns.ObjectOff(obj55) - ns.SetDialog(obj55, ns.NORMAL, necromancerTalk3Start, necromancerTalk3End) - ns.StartDialog(obj55, ns.GetHost()) -} -func wallWalk() { - if ivar17 != 0 { - goto LABEL1 - } - ns.AudioEvent(ns.SpellPhonemeUpLeft, wp103) -LABEL1: - if ivar17 != 1 { - goto LABEL2 - } - ns.AudioEvent(ns.SpellPhonemeUp, wp103) -LABEL2: - if ivar17 != 2 { - goto LABEL3 - } - ns.AudioEvent(ns.SpellPhonemeUpRight, wp103) -LABEL3: - if !(ivar17 < 49) { - goto LABEL4 - } - ns.WallClose(ns.Wall(ivar96, ivar97)) - ivar17 += 1 - ivar96 -= 1 - ivar97 -= 1 - ns.FrameTimer(6, wallWalk) -LABEL4: - return -} -func releasePlayer() { - ns.NoWallSound(false) - ns.CastSpellLocationLocation("SUMMON_SKELETON_LORD", ns.GetObjectX(obj55), ns.GetObjectY(obj55), 1575, 1506) - ns.CastSpellLocationLocation("SUMMON_SKELETON_LORD", ns.GetObjectX(obj55), ns.GetObjectY(obj55), 1702, 1506) - ns.Frozen(ns.GetHost(), false) -} -func endFightMusic() { - ns.Music(27, 100) -} -func necromancerTalk3Start() { - ns.GroupPauseObject(gvar67, 10) - ns.ObjectGroupOff(gvar67) - ns.TellStory(ns.ZombieRecognize, "Con06a:NecroAttackJack") -} -func necromancerTalk3End() { - ns.ObjectGroupOn(gvar67) - ns.CancelDialog(obj55) - ns.WideScreen(false) - ns.ObjectOn(obj55) - ns.Frozen(obj55, false) - ns.Wander(obj55) - ns.FrameTimer(10, wallWalk) - ns.FrameTimer(50, releasePlayer) - ns.FrameTimer(60, lowerNecroWall) -} -func necromancerTalk4Start() { - ns.GroupPauseObject(gvar67, 10) - ns.ObjectGroupOff(gvar67) - ns.TellStory(ns.ZombieRecognize, "Con06a:NecroDies") -} -func necromancerTalk4End() { - ns.ObjectGroupOn(gvar67) - ns.CancelDialog(obj55) - ns.Frozen(obj55, false) - ns.GroupDamage(gvar68, 0, 1000, 0) - ns.FrameTimer(15, getHalberd) -} -func necroDies() { - ivar18 += 1 - flag92 = false - ns.LookAtObject(obj55, ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj55) - ns.Frozen(obj55, true) - ns.MoveObject(obj26, 1310, 2900) - ns.SetDialog(obj55, ns.NORMAL, necromancerTalk4Start, necromancerTalk4End) - ns.StartDialog(obj55, ns.GetHost()) -} -func necroDies2() { - if !(ivar18 > 4) { - goto LABEL1 - } - if !ns.HasItem(ns.GetHost(), obj26) { - goto LABEL2 - } - ns.JournalEdit(ns.GetHost(), "War6Necro", 4) - ns.Frozen(ns.GetHost(), true) - ns.FrameTimer(45, exitFade) - goto LABEL3 -LABEL2: - ns.FrameTimer(3, necroDies2) -LABEL3: - goto LABEL4 -LABEL1: - ns.FrameTimer(3, necroDies2) -LABEL4: - return -} -func MapInitialize() { - obj21 = ns.Object("Horrendous") - obj22 = ns.Object("Horrendous_") - obj23 = ns.Object("Horrendous__") - obj24 = ns.Object("Horrendous___") - obj25 = ns.Object("Horrendous____") - obj26 = ns.Object("OblivionHalberd") - obj27 = ns.Object("EliteGuard1") - obj28 = ns.Object("EliteGuard2") - obj29 = ns.Object("EliteGuard3") - obj30 = ns.Object("EliteGuard4") - obj31 = ns.Object("F2Fire6") - obj32 = ns.Object("F6FireGuard1") - obj33 = ns.Object("F6FireGuard4") - obj34 = ns.Object("F6Guard8") - obj35 = ns.Object("ArenaDoor1") - obj36 = ns.Object("ArenaDoor2") - obj37 = ns.Object("ArenaDoor3") - obj38 = ns.Object("KillTrigger") - ns.ObjectOff(obj38) - obj39 = ns.Object("CellDoor1") - obj40 = ns.Object("CellDoor2") - obj41 = ns.Object("CellDoor3") - obj42 = ns.Object("CellDoor4") - obj43 = ns.Object("CellDoor5") - obj44 = ns.Object("CellDoor6") - obj45 = ns.Object("CellDoor7") - obj46 = ns.Object("BreakInObject1") - obj47 = ns.Object("BreakInObject2") - obj48 = ns.Object("BreakInObject3") - obj49 = ns.Object("BreakInObject4") - gvar54 = ns.Object("Hecubah") - obj55 = ns.Object("Necromancer") - obj56 = ns.Object("UndeadWar1") - obj57 = ns.Object("UndeadWar2") - obj58 = ns.Object("UndeadWar3") - obj59 = ns.Object("UndeadWar4") - obj60 = ns.Object("SkeLord1") - obj61 = ns.Object("SkeLord2") - obj62 = ns.Object("SkeLord3") - obj63 = ns.Object("SkeLord4") - obj64 = ns.Object("SkeLord5") - obj50 = ns.Object("FG1Mover") - obj51 = ns.Object("FG2Mover") - obj52 = ns.Object("FG3Mover") - obj53 = ns.Object("FG4Mover") - gvar65 = ns.ObjectGroup("NecroGuards") - ns.ObjectGroupOff(gvar65) - gvar66 = ns.ObjectGroup("Wolves") - ns.ObjectGroupOff(gvar66) - gvar67 = ns.ObjectGroup("EveryMonsterOnMap") - gvar68 = ns.ObjectGroup("EveryMonsterOnMap2") - gvar69 = ns.ObjectGroup("PartyCrashers") - gvar70 = ns.ObjectGroup("HecBreakInObjects") - gvar71 = ns.ObjectGroup("DoorStopTriggers") - ns.ObjectGroupOff(gvar71) - gvar72 = ns.WallGroup("HecBreakIn") - gvar73 = ns.WallGroup("HecBreakDown") - gvar74 = ns.WallGroup("NecroWall") - gvar75 = ns.WallGroup("NecroExitWall") - gvar76 = ns.WallGroup("WizardCages") - gvar77 = ns.WallGroup("DeathCage") - wp78 = ns.Waypoint("PlayerSounds") - wp79 = ns.Waypoint("NecroSpotWP") - wp80 = ns.Waypoint("FG1Open") - wp81 = ns.Waypoint("FG2Open") - wp82 = ns.Waypoint("FG3Open") - wp83 = ns.Waypoint("FG4Open") - wp84 = ns.Waypoint("FG1Closed") - wp85 = ns.Waypoint("FG2Closed") - wp86 = ns.Waypoint("FG3Closed") - wp87 = ns.Waypoint("FG4Closed") - wp88 = ns.Waypoint("UpStairs") - wp89 = ns.Waypoint("DownStairs") - wp90 = ns.Waypoint("NecroNoise") - wp91 = ns.Waypoint("WellWP") - obj55 = ns.Object("Necromancer") - obj98 = ns.Object("Halberd") - wp103 = ns.Waypoint("SewerChase") - ns.StoryPic(obj55, "BlackWizardPic") - ns.StoryPic(obj21, "HorrendousPic") - ns.StoryPic(gvar54, "HecubahPic") - ns.StoryPic(obj55, "NecromancerPic") - ns.AggressionLevel(obj21, 0) - ns.AggressionLevel(obj27, 0) - ns.AggressionLevel(obj28, 0) - ns.AggressionLevel(obj29, 0) - ns.AggressionLevel(obj30, 0) - ns.ObjectGroupOff(gvar69) - ns.LockDoor(obj39) - ns.LockDoor(obj40) - ns.LockDoor(obj41) - ns.LockDoor(obj42) - ns.LockDoor(obj43) - ns.LockDoor(obj44) - ns.LockDoor(obj45) - ns.FrameTimer(3, ownFriends) - ns.Music(16, 100) -} -func PlayerDeath() { - ns.DeathScreen(6) -} -func unlockCells() { - ns.UnlockDoor(obj39) - ns.UnlockDoor(obj40) - ns.UnlockDoor(obj41) - ns.UnlockDoor(obj42) - ns.UnlockDoor(obj43) - ns.UnlockDoor(obj44) - ns.UnlockDoor(obj45) -} -func lockCells() { - ns.LockDoor(obj39) - ns.LockDoor(obj40) - ns.LockDoor(obj41) - ns.LockDoor(obj42) - ns.LockDoor(obj43) - ns.LockDoor(obj44) - ns.LockDoor(obj45) -} -func setNecroPosition() { - if !ns.IsCaller(obj55) { - goto LABEL1 - } - ns.Frozen(obj55, true) - ns.MoveObject(obj55, 1776, 1502) -LABEL1: - if !ns.IsCaller(gvar54) { - goto LABEL2 - } - if gvar54 == 0 { - goto LABEL2 - } - ns.Delete(gvar54) -LABEL2: - return -} -func setupNecroSetPiece() { - ns.Music(18, 100) - ns.PauseObject(ns.GetTrigger(), 10) - ns.ObjectOff(ns.GetTrigger()) - ns.FrameTimer(1, FreezePlayer) -} -func setNecroPosition2() { - if !ns.IsCaller(obj55) { - goto LABEL1 - } - ns.MoveObject(obj55, 5057, 3809) -LABEL1: - return -} -func necroGuard() { - ns.CreatureGuard(obj55, 5057, 3809, 5232, 3991, 500) - ns.AggressionLevel(obj55, 0.5) - ns.ObjectGroupOn(gvar65) -} -func NecroInjured() { - if ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.RestoreHealth(obj55, 14) -LABEL1: - return -} -func necroGuardDies() { - ivar18 += 1 -} -func MakeAWish() { - var v0 int - v0 = ns.MaxHealth(ns.GetCaller()) - ns.RestoreHealth(ns.GetCaller(), v0-ns.CurrentHealth(ns.GetCaller())) - ns.PrintToAll("GeneralPrint:WellSignRefresh") - ns.AudioEvent(ns.RestoreHealthName, wp91) -} -func OnEvent(typ string) { - switch typ { - case "MapInitialize": - MapInitialize() - case "PlayerDeath": - PlayerDeath() - } -} diff --git a/examples/con06b/dummy_test.go b/examples/con06b/dummy_test.go deleted file mode 100644 index ee570d5..0000000 --- a/examples/con06b/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package con06b - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/con07a/con07a.go b/examples/con07a/con07a.go deleted file mode 100644 index 7a5f783..0000000 --- a/examples/con07a/con07a.go +++ /dev/null @@ -1,58 +0,0 @@ -package con07a - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 ns.ObjectID - obj5 ns.ObjectID - obj6 ns.ObjectID -) - -func MapSetup() { - ns.Frozen(ns.GetHost(), true) - ns.CreatureIdle(ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj4) - ns.SetOwner(ns.GetHost(), obj4) - ns.SetOwner(ns.GetHost(), obj5) - ns.FrameTimer(10, StartJandorTalk) - ns.JournalEntry(ns.GetHost(), "GetHON", 2) - ns.PrintToAll("Con01a:NewJournalEntry") -} -func JandorBriefStart() { - ns.TellStory(ns.HumanMaleEatFood, "Con07A.scr:Jandor01") -} -func JandorBriefEnd() { - ns.CancelDialog(obj4) - ns.Frozen(ns.GetHost(), false) -} -func LanceDialogStart() { - ns.TellStory(ns.SwordsmanHurt, "War01A.scr:Guard1Talk01") -} -func LanceDialogEnd() { -} -func StartJandorTalk() { - ns.StartDialog(obj4, ns.GetHost()) -} -func MapInitialize() { - obj4 = ns.Object("Jandor") - obj5 = ns.Object("Lance") - obj6 = ns.Object("FacadeGate") - ns.SetDialog(obj4, ns.NORMAL, JandorBriefStart, JandorBriefEnd) - ns.StoryPic(obj4, "AirshipCaptainPic") - ns.SetDialog(obj5, ns.NORMAL, LanceDialogStart, LanceDialogEnd) - ns.StoryPic(obj5, "WizardGuard1Pic") - ns.LockDoor(obj6) - ns.StartupScreen(7) - ns.FrameTimer(1, MapSetup) -} -func PlayerDeath() { - ns.DeathScreen(7) -} -func OnEvent(typ string) { - switch typ { - case "MapInitialize": - MapInitialize() - case "PlayerDeath": - PlayerDeath() - } -} diff --git a/examples/con07a/dummy_test.go b/examples/con07a/dummy_test.go deleted file mode 100644 index 7503267..0000000 --- a/examples/con07a/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package con07a - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/con07b/con07b.go b/examples/con07b/con07b.go deleted file mode 100644 index 9c191a8..0000000 --- a/examples/con07b/con07b.go +++ /dev/null @@ -1,659 +0,0 @@ -package con07b - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 ns.ObjectID - obj5 ns.ObjectID - obj6 ns.ObjectID - obj7 ns.ObjectID - obj8 ns.ObjectID - obj9 ns.ObjectID - obj10 ns.ObjectID - obj11 ns.ObjectID - obj12 ns.ObjectID - obj13 ns.ObjectID - obj14 ns.ObjectID - obj15 ns.ObjectID - obj16 ns.ObjectID - obj17 ns.ObjectID - obj18 ns.ObjectID - obj19 ns.ObjectID - obj20 ns.ObjectID - obj21 ns.ObjectID - obj22 ns.ObjectID - obj23 ns.ObjectID - obj24 ns.ObjectID - obj25 ns.ObjectID - obj26 ns.ObjectID - obj27 ns.ObjectID - obj28 ns.ObjectID - obj29 ns.ObjectID - obj30 ns.ObjectID - obj31 ns.ObjectID - obj32 ns.ObjectID - obj33 ns.ObjectID - obj34 ns.ObjectID - obj35 ns.ObjectID - obj36 ns.ObjectID - obj37 ns.ObjectID - obj38 ns.ObjectID - obj39 ns.ObjectID - gvar40 ns.WallGroupID - gvar41 ns.WallGroupID - wp42 ns.WaypointID - wp43 ns.WaypointID - ivar44 int - gvar45 int - flag46 bool - gvar47 int - gvar48 int - gvar49 int - gvar50 int - gvar51 int - gvar52 int - gvar53 int - flag54 bool - flag55 bool - flag56 bool - flag57 bool - flag58 bool - flag59 bool -) - -func init() { - ivar44 = 0 - gvar45 = 25 - flag46 = true - gvar47 = 0 - gvar48 = 1 - gvar49 = 2 - gvar50 = 3 - gvar51 = 4 - gvar52 = 5 - gvar53 = gvar47 - flag54 = false - flag55 = false - flag56 = false - flag57 = false - flag58 = false - flag59 = false -} -func DialogInit() { - obj4 = ns.Object("Albi") - obj5 = ns.Object("Dorian") - obj6 = ns.Object("Grunbar") - obj7 = ns.Object("Jorgan") - obj8 = ns.Object("Civvy3") - obj9 = ns.Object("Civvy4") - obj10 = ns.Object("Eowynn") - obj12 = ns.Object("Shari") - obj11 = ns.Object("Kayla") - ns.StoryPic(obj5, "Townsman2Pic") - ns.StoryPic(obj6, "MalePic7") - ns.StoryPic(obj4, "MalePic1") - ns.StoryPic(obj7, "Townsman3Pic") - ns.StoryPic(obj10, "MaidenPic") - ns.StoryPic(obj11, "MaidenPic2") - ns.StoryPic(obj12, "MaidenPic3") - ns.SetDialog(obj10, ns.NORMAL, EowynnStart, EowynnEnd) - ns.SetDialog(obj11, ns.NORMAL, KaylaStart, KaylaEnd) - ns.SetDialog(obj12, ns.NORMAL, ShariStart, ShariEnd) - ns.SetDialog(obj7, ns.NORMAL, JorganStart, JorganEnd) - ns.SetDialog(obj4, ns.NORMAL, AlbiStart, AlbiEnd) - ns.SetDialog(obj5, ns.NORMAL, DorianStart, DorianEnd) - ns.SetDialog(obj6, ns.NORMAL, GrunbarStart, GrunbarEnd) - ns.FrameTimer(1, OwnTownies) -} -func OwnTownies() { - ns.SetOwner(ns.GetHost(), obj4) - ns.SetOwner(ns.GetHost(), obj6) - ns.SetOwner(ns.GetHost(), obj5) - ns.SetOwner(ns.GetHost(), obj7) - ns.SetOwner(ns.GetHost(), obj8) - ns.SetOwner(ns.GetHost(), obj9) - ns.SetOwner(ns.GetHost(), obj10) - ns.SetOwner(ns.GetHost(), obj12) - ns.SetOwner(ns.GetHost(), obj11) -} -func EowynnStart() { - ns.Frozen(ns.GetHost(), true) - ns.Frozen(obj10, true) - ns.CreatureIdle(ns.GetHost()) - ns.CreatureIdle(obj10) - ns.LookAtObject(obj10, ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj10) - ns.TellStory(ns.HumanMaleEatFood, "Con07B.scr:MaidenTalk03") -} -func EowynnEnd() { - ns.Frozen(ns.GetHost(), false) - ns.Frozen(obj10, false) - ns.Wander(obj10) - ns.SetDialog(obj10, ns.NORMAL, EowynnStart, EowynnEnd) -} -func ShariStart() { - ns.Frozen(ns.GetHost(), true) - ns.Frozen(obj12, true) - ns.CreatureIdle(ns.GetHost()) - ns.CreatureIdle(obj12) - ns.LookAtObject(obj12, ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj12) - ns.TellStory(ns.HumanMaleEatFood, "Con07B.scr:MaidenTalk02") -} -func ShariEnd() { - ns.Frozen(ns.GetHost(), false) - ns.Frozen(obj12, false) - ns.Wander(obj12) - ns.SetDialog(obj12, ns.NORMAL, ShariStart, ShariEnd) -} -func KaylaStart() { - ns.Frozen(ns.GetHost(), true) - ns.Frozen(obj11, true) - ns.CreatureIdle(ns.GetHost()) - ns.CreatureIdle(obj11) - ns.LookAtObject(ns.GetHost(), obj11) - ns.LookAtObject(obj11, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "Con07B.scr:MaidenTalk01") -} -func KaylaEnd() { - ns.Frozen(ns.GetHost(), false) - ns.Frozen(obj11, false) - ns.Wander(obj11) - ns.SetDialog(obj11, ns.NORMAL, KaylaStart, KaylaEnd) -} -func JorganStart() { - ns.Frozen(ns.GetHost(), true) - ns.Frozen(obj7, true) - ns.CreatureIdle(ns.GetHost()) - ns.CreatureIdle(obj7) - ns.LookAtObject(ns.GetHost(), obj7) - ns.LookAtObject(obj7, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "Con07:HecRaisesDead") -} -func JorganEnd() { - ns.Frozen(ns.GetHost(), false) - ns.Frozen(obj7, false) - ns.Wander(obj7) - ns.SetDialog(obj7, ns.NORMAL, JorganStart, JorganEnd) -} -func AlbiStart() { - ns.Frozen(ns.GetHost(), true) - ns.Frozen(obj4, true) - ns.CreatureIdle(ns.GetHost()) - ns.CreatureIdle(obj4) - ns.LookAtObject(ns.GetHost(), obj4) - ns.LookAtObject(obj4, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "Con07:LeavingGalava2") -} -func AlbiEnd() { - ns.Frozen(ns.GetHost(), false) - ns.Frozen(obj4, false) - ns.Wander(obj4) - ns.SetDialog(obj4, ns.NORMAL, AlbiStart, AlbiEnd) -} -func DorianStart() { - ns.Frozen(ns.GetHost(), true) - ns.Frozen(obj5, true) - ns.CreatureIdle(ns.GetHost()) - ns.CreatureIdle(obj5) - ns.LookAtObject(ns.GetHost(), obj5) - ns.LookAtObject(obj5, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "Con07:LeavingGalava1") -} -func DorianEnd() { - ns.Frozen(ns.GetHost(), false) - ns.Frozen(obj5, false) - ns.Wander(obj5) - ns.SetDialog(obj5, ns.NORMAL, DorianStart, DorianEnd) -} -func GrunbarStart() { - ns.Frozen(ns.GetHost(), true) - ns.CreatureIdle(ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "War03b:T4Post") -} -func GrunbarEnd() { - ns.Frozen(ns.GetHost(), false) -} -func CreatureSetup() { - ns.SetOwner(ns.GetHost(), obj20) - ns.SetOwner(ns.GetHost(), obj19) - ns.SetOwner(ns.GetHost(), obj22) - ns.SetOwner(ns.GetHost(), obj21) - ns.SetOwner(ns.GetHost(), obj15) - ns.SetOwner(ns.GetHost(), obj28) - ns.SetOwner(ns.GetHost(), obj25) - ns.SetOwner(ns.GetHost(), obj26) - ns.SetOwner(ns.GetHost(), obj23) - ns.SetOwner(ns.GetHost(), obj27) - ns.SetOwner(ns.GetHost(), obj35) - ns.SetOwner(ns.GetHost(), obj36) - ns.Music(17, 100) -} -func CivvyBump() { - var v0 int - if !flag46 { - goto LABEL1 - } - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ivar44 = ns.Random(1, 4) - v0 = ivar44 - if v0 == 1 { - goto LABEL2 - } - if v0 == 2 { - goto LABEL3 - } - if v0 == 3 { - goto LABEL4 - } - if v0 == 4 { - goto LABEL5 - } - goto LABEL6 -LABEL2: - ns.Chat(ns.GetTrigger(), "Wiz02A.scr:CivvyTalk01") - goto LABEL6 -LABEL3: - ns.Chat(ns.GetTrigger(), "Wiz02A.scr:CivvyTalk02") - goto LABEL6 -LABEL4: - ns.Chat(ns.GetTrigger(), "Wiz02A.scr:CivvyTalk03") - goto LABEL6 -LABEL5: - ns.Chat(ns.GetTrigger(), "Wiz02A.scr:CivvyTalk04") - goto LABEL6 -LABEL6: - flag46 = false - ns.SecondTimer(3, ResetCivvyReady) -LABEL1: - return -} -func ResetCivvyReady() { - flag46 = true -} -func MakeAWish() { - var v0 int - v0 = ns.MaxHealth(ns.GetCaller()) - ns.MoveWaypoint(wp42, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.RestoreHealth(ns.GetCaller(), v0-ns.CurrentHealth(ns.GetCaller())) - ns.AudioEvent(ns.RestoreHealthName, wp42) - ns.PrintToAll("GeneralPrint:WellSignRefresh") - ns.AudioEvent(ns.RestoreHealthName, ns.Waypoint("WellWP")) -} -func MaxDialogStart() { - var v0 int - v0 = gvar53 - if v0 == gvar47 { - goto LABEL1 - } - if v0 == gvar48 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.TellStory(ns.HumanMaleEatFood, "War07A.scr:MaxOffer01") - goto LABEL3 -LABEL2: - ns.TellStory(ns.HumanMaleEatFood, "War07A.scr:MaxWaiting") - goto LABEL3 -LABEL3: - return -} -func MaxDialogEnd() { - var ( - v0 int - v1 int - v2 int - v3 int - v4 int - v5 int - ) - v0 = 0 - v1 = 0 - v2 = 1 - v3 = 2 - v4 = 0 - v0 = ns.GetAnswer(obj28) - v5 = v0 - if v5 == v4 { - goto LABEL1 - } - if v5 == v3 { - goto LABEL2 - } - if v5 == v2 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - gvar53 = gvar48 - ResetMaxDialog() - goto LABEL4 -LABEL2: - ns.SetDialog(obj28, ns.NORMAL, NullFunction, ResetMaxDialog) - ns.TellStory(ns.HumanMaleEatFood, "War07A.scr:TurnMaxDown") - gvar53 = gvar48 - goto LABEL4 -LABEL3: - v1 = ns.GetGold(ns.GetHost()) - if !(v1 >= 50000) { - goto LABEL5 - } - ns.SetDialog(obj28, ns.NORMAL, NullFunction, ResetMaxDialog) - ns.TellStory(ns.HumanMaleEatFood, "War07A.scr:HaveGoldForMax") - ns.ChangeGold(ns.GetHost(), -50000) - gvar53 = gvar52 - ns.UnlockDoor(obj29) - ns.UnlockDoor(obj30) - goto LABEL4 - goto LABEL4 -LABEL5: - ns.SetDialog(obj28, ns.NORMAL, NullFunction, ResetMaxDialog) - ns.TellStory(ns.HumanMaleEatFood, "War07A.scr:NoGoldForMax") - gvar53 = gvar48 - goto LABEL4 -LABEL4: - return -} -func PriestTalkStart() { - ns.Frozen(ns.GetHost(), true) - ns.CreatureIdle(ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj22) - ns.TellStory(ns.HumanMaleEatFood, "Con07B.scr:PriestTalk01") -} -func PriestTalkEnd() { - ns.Frozen(ns.GetHost(), false) - ns.SetDialog(obj22, ns.NORMAL, PriestTalkStart, PriestTalkEnd) -} -func UndertakerTalkStart() { - ns.Frozen(ns.GetHost(), true) - ns.CreatureIdle(ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj21) - ns.TellStory(ns.HumanMaleEatFood, "Con07B.scr:UndertakerTalk01") -} -func UndertakerTalkEnd() { - ns.Frozen(ns.GetHost(), false) - ns.SetDialog(obj21, ns.NORMAL, UndertakerTalkStart, UndertakerTalkEnd) -} -func GrillfTalkStart() { - ns.TellStory(ns.HumanMaleEatFood, "Con07B.scr:GrillfTalk01") -} -func GrillfTalkEnd() { - ns.SetDialog(obj19, ns.NORMAL, GrillfTalkStart, GrillfTalkEnd) -} -func MlurghTalkStart() { - ns.TellStory(ns.HumanMaleEatFood, "Con07B.scr:MlurghTalk01") -} -func MlurghTalkEnd() { - ns.SetDialog(obj20, ns.NORMAL, MlurghTalkStart, MlurghTalkEnd) -} -func WardenTalkStart() { - ns.Frozen(ns.GetHost(), true) - ns.CreatureIdle(ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj23) - ns.TellStory(ns.HumanMaleEatFood, "Con07B.scr:WardenTalk01") -} -func WardenTalkEnd() { - ns.Frozen(ns.GetHost(), false) - ns.SetDialog(obj23, ns.NORMAL, WardenTalkStart, WardenTalkEnd) -} -func GoAway() { - r1 := ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) - if !r1 { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func SpiderTrigger() { - if !ns.IsCaller(obj24) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.UnlockDoor(obj29) - ns.UnlockDoor(obj30) -LABEL1: - return -} -func BoothStart() { - ns.LookAtObject(obj25, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "War03b:T4Post") -} -func BoothEnd() { -} -func Jump() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - if !ns.HasItem(ns.GetHost(), obj38) { - goto LABEL1 - } - if !ns.HasItem(ns.GetHost(), obj39) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.NoWallSound(true) - ns.WallGroupOpen(gvar40) - ns.Chat(obj36, "Con02a:BarMaiden2") - ns.SecondTimer(3, Upset) -LABEL1: - return -} -func Upset() { - ns.DestroyEveryChat() - ns.Chat(obj35, "Wiz02B.scr:LewisTalk06") - ns.SecondTimer(3, StartJump) -} -func StartJump() { - ns.WallGroupOpen(gvar41) - ns.Wander(obj35) -} -func MoveJumper() { - if !ns.IsCaller(obj35) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.CreatureIdle(obj35) - ns.ObjectOn(obj37) - ns.Chat(obj35, "Wiz02B.scr:LewisTalk03") -LABEL1: - return -} -func KillJumper() { - if !ns.IsCaller(obj35) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.DestroyEveryChat() - ns.Damage(obj35, 0, 500, 0) - ns.WallGroupClose(gvar41) - ns.WallGroupClose(gvar40) - ns.NoWallSound(false) -LABEL1: - return -} -func NewMaxStart() { - ns.TellStory(ns.HumanMaleEatFood, "War07A.scr:MaxOffer01") -} -func NewMaxEnd() { -} -func MaxSecret() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 500) -LABEL1: - return -} -func FireballSecret() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.MoveWaypoint(wp43, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretFound, wp43) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 50) -LABEL1: - return -} -func MapInitialize() { - obj35 = ns.Object("TowerNPC") - obj36 = ns.Object("TowerMaiden") - obj37 = ns.Object("NPCMover") - gvar40 = ns.WallGroup("JumpWalls") - gvar41 = ns.WallGroup("FallWalls") - obj38 = ns.Object("SecretShirt") - obj39 = ns.Object("SecretApple") - obj13 = ns.Object("MageVendor") - obj15 = ns.Object("BookVendor") - obj14 = ns.Object("Shopkeeper1") - obj16 = ns.Object("Kincaid") - obj17 = ns.Object("BrightBlades") - obj18 = ns.Object("AppleMan") - obj19 = ns.Object("Grillf") - obj20 = ns.Object("Mlurgh") - obj21 = ns.Object("Undertaker") - obj22 = ns.Object("Priest") - obj23 = ns.Object("Warden") - obj24 = ns.Object("GoodSpider") - obj25 = ns.Object("F6Elite4") - obj26 = ns.Object("Maiden3") - obj27 = ns.Object("TowerNPC2") - obj28 = ns.Object("Max") - obj29 = ns.Object("MaxHomeDoor1") - obj30 = ns.Object("MaxHomeDoor2") - obj31 = ns.Object("GearRoomDoor") - obj32 = ns.Object("MorganCellDoor") - obj33 = ns.Object("FirstJailDoor") - obj34 = ns.Object("GuardDoor1") - wp42 = ns.Waypoint("PlayerSounds") - wp43 = ns.Waypoint("SecretSounds") - ns.SetDialog(obj28, ns.NORMAL, NewMaxStart, NewMaxEnd) - ns.SetDialog(obj22, ns.NORMAL, PriestTalkStart, PriestTalkEnd) - ns.SetDialog(obj21, ns.NORMAL, UndertakerTalkStart, UndertakerTalkEnd) - ns.SetDialog(obj23, ns.NORMAL, WardenTalkStart, WardenTalkEnd) - ns.SetDialog(obj25, ns.NORMAL, BoothStart, BoothEnd) - ns.StoryPic(obj23, "WardenPic") - ns.StoryPic(obj28, "MaxPic") - ns.StoryPic(obj21, "UndertakerPic") - ns.StoryPic(obj22, "GalavaPriestPic") - ns.StoryPic(obj25, "MalePic4") - ns.LockDoor(obj29) - ns.LockDoor(obj30) - ns.LockDoor(obj31) - ns.LockDoor(obj32) - ns.LockDoor(obj33) - ns.LockDoor(obj34) - DialogInit() - ns.FrameTimer(1, CreatureSetup) -} -func PlayerDeath() { - ns.DeathScreen(7) -} -func MaxEnter() { - if flag54 { - goto LABEL1 - } - flag54 = true - ns.Chat(obj28, "War07A.scr:MaxWelcome01") -LABEL1: - return -} -func MaxExit() { - flag54 = false -} -func ResetMaxDialog() { - if gvar53 != gvar52 { - goto LABEL1 - } - ns.CancelDialog(obj28) - goto LABEL2 -LABEL1: - ns.SetDialog(obj28, ns.YESNO, MaxDialogStart, MaxDialogEnd) -LABEL2: - return -} -func NullFunction() { -} -func Shopkeeper1Talk() { - if flag55 { - goto LABEL1 - } - flag55 = true - ns.Chat(obj14, "Con07B.scr:ShopkeeperTalk01") -LABEL1: - return -} -func ResetShopkeeper() { - flag55 = false -} -func BookShopEnter() { - if flag57 { - goto LABEL1 - } - flag57 = true - ns.Chat(obj15, "Con07B.scr:BookVendorTalk01") -LABEL1: - return -} -func BookShopExit() { - flag57 = false -} -func MagicShopEnter() { - if flag56 { - goto LABEL1 - } - flag56 = true - ns.Chat(obj13, "Con07B.scr:MageVendorTalk01") -LABEL1: - return -} -func MagicShopExit() { - flag56 = false -} -func ArmorShopEnter() { - if flag58 { - goto LABEL1 - } - flag58 = true - ns.Chat(obj16, "Con07B.scr:LoremanTalk01") -LABEL1: - return -} -func ArmorShopExit() { - flag58 = false -} -func WeaponShopEnter() { - if flag59 { - goto LABEL1 - } - flag59 = true - ns.Chat(obj17, "Con07B.scr:BrightBladesTalk01") -LABEL1: - return -} -func WeaponShopExit() { - flag59 = false -} -func AppleManRecognize() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Chat(obj18, "Con07B.scr:AppleManTalk01") -LABEL1: - return -} -func OnEvent(typ string) { - switch typ { - case "MapInitialize": - MapInitialize() - case "PlayerDeath": - PlayerDeath() - } -} diff --git a/examples/con07b/dummy_test.go b/examples/con07b/dummy_test.go deleted file mode 100644 index f75c0a3..0000000 --- a/examples/con07b/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package con07b - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/con07c/con07c.go b/examples/con07c/con07c.go deleted file mode 100644 index 9ace924..0000000 --- a/examples/con07c/con07c.go +++ /dev/null @@ -1,253 +0,0 @@ -package con07c - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 ns.ObjectID - obj5 ns.ObjectID - obj6 ns.ObjectID - obj7 ns.ObjectID - obj8 ns.ObjectID - obj9 ns.ObjectID - obj10 ns.ObjectID - obj11 ns.ObjectID - obj12 ns.ObjectID - obj13 ns.ObjectID - obj14 ns.ObjectID - obj15 ns.ObjectID - obj16 ns.ObjectID - obj17 ns.ObjectID - obj18 ns.ObjectID - obj19 ns.ObjectID - obj20 ns.ObjectID - obj21 ns.ObjectID - obj22 ns.ObjectID - gvar23 ns.ObjectGroupID - gvar24 ns.ObjectGroupID - obj25 ns.ObjectID - obj26 ns.ObjectID - gvar27 ns.ObjectGroupID - gvar28 ns.ObjectGroupID - gvar29 ns.ObjectGroupID - wp30 ns.WaypointID -) - -func CreatureSetup() { - if !(ns.CurrentHealth(obj4) > 0) { - goto LABEL1 - } - ns.CreatureHunt(obj4) -LABEL1: - if !(ns.CurrentHealth(obj5) > 0) { - goto LABEL2 - } - ns.CreatureHunt(obj5) -LABEL2: - if !(ns.CurrentHealth(obj6) > 0) { - goto LABEL3 - } - ns.CreatureHunt(obj6) -LABEL3: - if !(ns.CurrentHealth(obj7) > 0) { - goto LABEL4 - } - ns.CreatureHunt(obj7) -LABEL4: - if !(ns.CurrentHealth(obj8) > 0) { - goto LABEL5 - } - ns.CreatureHunt(obj8) -LABEL5: - if !(ns.CurrentHealth(obj9) > 0) { - goto LABEL6 - } - ns.CreatureHunt(obj9) -LABEL6: - if !(ns.CurrentHealth(obj10) > 0) { - goto LABEL7 - } - ns.CreatureHunt(obj10) -LABEL7: - if !(ns.CurrentHealth(obj11) > 0) { - goto LABEL8 - } - ns.CreatureHunt(obj11) -LABEL8: - if !(ns.CurrentHealth(obj12) > 0) { - goto LABEL9 - } - ns.CreatureHunt(obj12) -LABEL9: - if !(ns.CurrentHealth(obj13) > 0) { - goto LABEL10 - } - ns.CreatureHunt(obj13) -LABEL10: - if !(ns.CurrentHealth(obj14) > 0) { - goto LABEL11 - } - ns.CreatureHunt(obj14) -LABEL11: - if !(ns.CurrentHealth(obj15) > 0) { - goto LABEL12 - } - ns.CreatureHunt(obj15) -LABEL12: - if !(ns.CurrentHealth(obj16) > 0) { - goto LABEL13 - } - ns.CreatureHunt(obj16) -LABEL13: - if !(ns.CurrentHealth(obj17) > 0) { - goto LABEL14 - } - ns.CreatureHunt(obj17) -LABEL14: - if !(ns.CurrentHealth(obj18) > 0) { - goto LABEL15 - } - ns.CreatureHunt(obj18) -LABEL15: - if !(ns.CurrentHealth(obj19) > 0) { - goto LABEL16 - } - ns.CreatureHunt(obj19) -LABEL16: - if !(ns.CurrentHealth(obj20) > 0) { - goto LABEL17 - } - ns.CreatureHunt(obj20) -LABEL17: - ns.SetOwner(ns.GetHost(), obj10) - ns.SetOwner(ns.GetHost(), obj11) - ns.SetOwner(ns.GetHost(), obj12) - ns.SetOwner(ns.GetHost(), obj13) - ns.SetOwner(ns.GetHost(), obj14) - ns.SetOwner(ns.GetHost(), obj15) - ns.SetOwner(ns.GetHost(), obj16) - ns.SetOwner(ns.GetHost(), obj17) - ns.SetOwner(ns.GetHost(), obj18) - ns.SetOwner(ns.GetHost(), obj19) - ns.SetOwner(ns.GetHost(), obj20) -} -func FirstSetPiece() { - r1 := ns.IsAttackedBy(ns.GetHost(), ns.GetCaller()) - if r1 { - goto LABEL1 - } - ns.WideScreen(true) - ns.Frozen(ns.GetHost(), true) - ns.AggressionLevel(obj10, 0) - ns.ObjectOn(obj10) - ns.Move(obj10, wp30) - ns.LookAtObject(ns.GetHost(), obj10) -LABEL1: - return -} -func PCMageTalk() { - ns.Frozen(obj10, true) - ns.CreatureIdle(obj10) - ns.LookAtObject(obj10, ns.GetHost()) - ns.SetDialog(obj10, ns.NORMAL, PCMageStart, PCMageEnd) - ns.StoryPic(obj10, "WizardGuard4Pic") - ns.StartDialog(obj10, ns.GetHost()) -} -func EndSetPiece() { - ns.Frozen(ns.GetHost(), false) - ns.Frozen(obj10, false) - ns.ObjectOn(obj10) - ns.ObjectGroupOn(gvar29) - ns.CreatureHunt(obj10) - ns.WideScreen(false) - ns.ObjectGroupOff(gvar28) -} -func StartTrapWiz() { - ns.ObjectGroupOn(gvar27) -} -func StartCenter() { - ns.ObjectGroupOff(gvar24) - ns.ObjectGroupOn(gvar23) - if !(ns.CurrentHealth(obj15) > 0) { - goto LABEL1 - } - ns.CreatureHunt(obj15) -LABEL1: - if !(ns.CurrentHealth(obj16) > 0) { - goto LABEL2 - } - ns.CreatureHunt(obj16) -LABEL2: - if !(ns.CurrentHealth(obj17) > 0) { - goto LABEL3 - } - ns.CreatureHunt(obj17) -LABEL3: - return -} -func FollowPlayer() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - if !(ns.CurrentHealth(ns.GetTrigger()) > 0) { - goto LABEL1 - } - ns.CreatureFollow(ns.GetTrigger(), ns.GetHost()) -LABEL1: - return -} -func PCMageStart() { - ns.TellStory(ns.HumanMaleEatFood, "Con07:MiscMage03") -} -func PCMageEnd() { - ns.CancelDialog(obj10) - EndSetPiece() -} -func MapInitialize() { - obj4 = ns.Object("OgreHunter1") - obj5 = ns.Object("OgreHunter2") - obj6 = ns.Object("OgreHunter3") - obj7 = ns.Object("OgreHunter4") - obj8 = ns.Object("OgreHunter5") - obj9 = ns.Object("OgreHunter6") - obj10 = ns.Object("Ganem") - obj11 = ns.Object("PCMage2") - obj12 = ns.Object("PCMage3") - obj13 = ns.Object("PCMage4") - obj14 = ns.Object("PCMage5") - obj15 = ns.Object("PCMage6") - obj16 = ns.Object("PCMage7") - obj17 = ns.Object("PCMage8") - obj18 = ns.Object("PCMage9") - obj19 = ns.Object("PCMage10") - obj20 = ns.Object("PCMage11") - obj21 = ns.Object("SetOgre1") - obj22 = ns.Object("SetOgre2") - gvar23 = ns.ObjectGroup("CenterSetPiece") - gvar24 = ns.ObjectGroup("CenterTriggers") - obj25 = ns.Object("ArchiveGate1") - obj26 = ns.Object("ArchiveGate2") - gvar27 = ns.ObjectGroup("KeyRoomSetPiece") - gvar28 = ns.ObjectGroup("FirstSetPieceTriggers") - gvar29 = ns.ObjectGroup("AllOgres") - wp30 = ns.Waypoint("PCMage1WP") - ns.ObjectGroupOff(gvar27) - ns.ObjectGroupOff(gvar29) -} -func MapEntry() { - ns.WideScreen(false) - ns.Music(27, 100) - ns.FrameTimer(1, CreatureSetup) -} -func PlayerDeath() { - ns.DeathScreen(7) -} -func OnEvent(typ string) { - switch typ { - case "MapInitialize": - MapInitialize() - case "MapEntry": - MapEntry() - case "PlayerDeath": - PlayerDeath() - } -} diff --git a/examples/con07c/dummy_test.go b/examples/con07c/dummy_test.go deleted file mode 100644 index caa77f5..0000000 --- a/examples/con07c/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package con07c - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/con07d/con07d.go b/examples/con07d/con07d.go deleted file mode 100644 index e84505c..0000000 --- a/examples/con07d/con07d.go +++ /dev/null @@ -1,224 +0,0 @@ -package con07d - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 ns.ObjectID - wp5 ns.WaypointID - obj6 ns.ObjectID - obj7 ns.ObjectID - obj8 ns.ObjectID - obj9 ns.ObjectID - obj10 ns.ObjectID - obj11 ns.ObjectID - obj12 ns.ObjectID - obj13 ns.ObjectID - obj14 ns.ObjectID - obj15 ns.ObjectID - obj16 ns.ObjectID - obj17 ns.ObjectID - gvar18 ns.ObjectGroupID - obj19 ns.ObjectID - obj20 ns.ObjectID - obj21 ns.ObjectID - obj22 ns.ObjectID - obj23 ns.ObjectID - obj24 ns.ObjectID - obj25 ns.ObjectID - obj26 ns.ObjectID - obj27 ns.ObjectID - obj28 ns.ObjectID - obj29 ns.ObjectID - gvar30 ns.ObjectGroupID - gvar31 ns.ObjectGroupID - gvar32 ns.ObjectGroupID - gvar33 ns.ObjectGroupID - gvar34 ns.WallID -) - -func CreatureSetup() { - if !(ns.CurrentHealth(obj6) > 0) { - goto LABEL1 - } - ns.CreatureHunt(obj6) -LABEL1: - if !(ns.CurrentHealth(obj7) > 0) { - goto LABEL2 - } - ns.CreatureHunt(obj7) -LABEL2: - ns.SetOwner(ns.GetHost(), obj10) - ns.SetOwner(ns.GetHost(), obj13) - ns.SetOwner(ns.GetHost(), obj14) - ns.SetOwner(ns.GetHost(), obj8) - ns.SetOwner(ns.GetHost(), obj9) - ns.ObjectOn(obj24) - ns.ObjectOn(obj25) - if !(ns.CurrentHealth(obj8) > 0) { - goto LABEL3 - } - ns.CreatureHunt(obj8) -LABEL3: - if !(ns.CurrentHealth(obj9) > 0) { - goto LABEL4 - } - ns.CreatureHunt(obj9) -LABEL4: - return -} -func StartMageA() { - ns.ObjectGroupOn(gvar18) -} -func OpenBookcase1() { - ns.ObjectOn(obj26) - ns.ObjectOn(obj27) - ns.WallOpen(gvar34) -} -func CornerSetPiece() { - ns.ObjectOn(obj10) - ns.ObjectGroupOn(gvar30) - ns.ObjectOff(obj29) - ns.HitFarLocation(obj11, ns.GetObjectX(obj10), ns.GetObjectY(obj10)) - ns.HitFarLocation(obj12, ns.GetObjectX(obj10), ns.GetObjectY(obj10)) -} -func CorneredWizardDie() { - ns.Chat(obj10, "War04a:GraveRobberDie") -} -func StartGearRoom() { - if !(ns.CurrentHealth(obj13) > 0) { - goto LABEL1 - } - ns.Chat(obj14, "Con07C.scr:OpeningHelp") - ns.ObjectOn(obj14) -LABEL1: - ns.ObjectOn(obj13) - ns.ObjectGroupOn(gvar31) - ns.ObjectGroupOff(gvar33) - CheckGearDemonHealth() -} -func ActivateGears() { - if !ns.IsObjectOn(obj19) { - goto LABEL1 - } - ns.FrameTimer(1, StopGears) - goto LABEL2 -LABEL1: - ns.FrameTimer(1, StartGears) -LABEL2: - return -} -func StartGears() { - ns.ObjectGroupOn(gvar32) - ns.ObjectOn(obj20) - ns.ObjectOn(obj21) -} -func StopGears() { - ns.ObjectGroupOff(gvar32) - ns.ObjectOff(obj20) - ns.ObjectOff(obj21) - ns.ObjectOff(obj22) - ns.ObjectOff(obj23) -} -func CheckGearDemonHealth() { - if !(ns.CurrentHealth(obj15) <= 0 && ns.CurrentHealth(obj16) <= 0 && ns.CurrentHealth(obj17) <= 0) { - goto LABEL1 - } - ns.CreatureGuard(obj13, ns.GetObjectX(obj13), ns.GetObjectY(obj13), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - ns.CreatureGuard(obj14, ns.GetObjectX(obj14), ns.GetObjectY(obj14), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - if !(ns.CurrentHealth(obj13) > 0) { - goto LABEL2 - } - ns.SetDialog(obj13, ns.NORMAL, GearWizStart, GearWizEnd) - ns.StoryPic(obj13, "WizardGuard1Pic") - goto LABEL3 -LABEL2: - if !(ns.CurrentHealth(obj14) > 0) { - goto LABEL3 - } - ns.SetDialog(obj14, ns.NORMAL, GearWizStart, GearWizEnd) - ns.StoryPic(obj14, "WizardGuard2Pic") -LABEL3: - goto LABEL4 -LABEL1: - ns.FrameTimer(15, CheckGearDemonHealth) -LABEL4: - return -} -func GearWizStart() { - ns.TellStory(ns.HumanMaleEatFood, "Con07:MiscMage02") -} -func GearWizEnd() { - ns.CancelDialog(obj13) - ns.CancelDialog(obj14) -} -func FollowPlayer() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - if !(ns.CurrentHealth(ns.GetTrigger()) > 0) { - goto LABEL1 - } - ns.CreatureFollow(ns.GetTrigger(), ns.GetHost()) -LABEL1: - return -} -func CancelBubble() { - ns.DestroyChat(ns.GetTrigger()) -} -func MapInitialize() { - obj8 = ns.Object("PCMageA") - obj9 = ns.Object("PCMageB") - obj10 = ns.Object("CorneredWizard") - obj11 = ns.Object("CDemon1") - obj12 = ns.Object("CDemon2") - obj13 = ns.Object("Ganem") - obj14 = ns.Object("Kelvin") - obj15 = ns.Object("GearDemon1") - obj16 = ns.Object("GearDemon2") - obj17 = ns.Object("GearDemon3") - gvar18 = ns.ObjectGroup("MageAGroup") - obj19 = ns.Object("TestGear") - obj20 = ns.Object("Globe1") - obj21 = ns.Object("Globe2") - obj22 = ns.Object("Globe3") - obj23 = ns.Object("Globe4") - obj24 = ns.Object("Globe1Mover") - obj25 = ns.Object("Globe2Mover") - obj26 = ns.Object("Bookcase1Mover") - obj27 = ns.Object("Bookcase2Mover") - obj4 = ns.Object("ToLevelOneTP") - obj28 = ns.Object("ToThreeTP") - obj29 = ns.Object("CornerTrigger") - gvar30 = ns.ObjectGroup("CornerDemons") - gvar31 = ns.ObjectGroup("GearDemons") - gvar32 = ns.ObjectGroup("Level2Gears") - gvar33 = ns.ObjectGroup("StartGearRoomTriggers") - gvar34 = ns.Wall(142, 54) - wp5 = ns.Waypoint("PlayerSounds") - ns.ObjectOff(obj10) - ns.ObjectOff(obj13) - ns.ObjectOff(obj14) - ns.ObjectGroupOff(gvar31) - ns.ObjectGroupOff(gvar30) - ns.ObjectGroupOff(gvar18) - ns.SetOwner(ns.GetHost(), obj10) - ns.SetOwner(ns.GetHost(), obj13) - ns.SetOwner(ns.GetHost(), obj14) -} -func PlayerDeath() { - ns.DeathScreen(7) -} -func MapEntry() { - ns.Music(27, 100) - ns.FrameTimer(1, CreatureSetup) -} -func OnEvent(typ string) { - switch typ { - case "MapInitialize": - MapInitialize() - case "PlayerDeath": - PlayerDeath() - case "MapEntry": - MapEntry() - } -} diff --git a/examples/con07d/dummy_test.go b/examples/con07d/dummy_test.go deleted file mode 100644 index afc0118..0000000 --- a/examples/con07d/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package con07d - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/con07e/con07e.go b/examples/con07e/con07e.go deleted file mode 100644 index 8ab26e8..0000000 --- a/examples/con07e/con07e.go +++ /dev/null @@ -1,157 +0,0 @@ -package con07e - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 ns.ObjectID - obj5 ns.ObjectID - obj6 ns.ObjectID - obj7 ns.ObjectID - obj8 ns.ObjectID - obj9 ns.ObjectID - obj10 ns.ObjectID - obj11 ns.ObjectID - obj12 ns.ObjectID - obj13 ns.ObjectID - obj14 ns.ObjectID - obj15 ns.ObjectID - obj16 ns.ObjectID - obj17 ns.ObjectID - obj18 ns.ObjectID - gvar19 ns.ObjectGroupID - gvar20 ns.ObjectGroupID - obj21 ns.ObjectID - gvar22 ns.ObjectGroupID - gvar23 ns.ObjectGroupID - gvar24 ns.ObjectGroupID - gvar25 ns.WallGroupID - wp26 ns.WaypointID - wp27 ns.WaypointID -) - -func CreatureSetup() { - if !(ns.CurrentHealth(obj4) > 0) { - goto LABEL1 - } - ns.CreatureHunt(obj4) -LABEL1: - if !(ns.CurrentHealth(obj5) > 0) { - goto LABEL2 - } - ns.CreatureHunt(obj5) -LABEL2: - if !(ns.CurrentHealth(obj6) > 0) { - goto LABEL3 - } - ns.CreatureHunt(obj6) -LABEL3: - if !(ns.CurrentHealth(obj7) > 0) { - goto LABEL4 - } - ns.CreatureHunt(obj7) -LABEL4: - if !(ns.CurrentHealth(obj8) > 0) { - goto LABEL5 - } - ns.CreatureHunt(obj8) -LABEL5: - if !(ns.CurrentHealth(obj9) > 0) { - goto LABEL6 - } - ns.CreatureHunt(obj9) -LABEL6: - if !(ns.CurrentHealth(obj10) > 0) { - goto LABEL7 - } - ns.CreatureHunt(obj10) -LABEL7: - if !(ns.CurrentHealth(obj11) > 0) { - goto LABEL8 - } - ns.CreatureHunt(obj11) -LABEL8: - ns.SetOwner(ns.GetHost(), obj12) - ns.SetOwner(ns.GetHost(), obj13) - ns.SetOwner(ns.GetHost(), obj14) - ns.SetOwner(ns.GetHost(), obj15) - ns.SetOwner(ns.GetHost(), obj16) - ns.SetOwner(ns.GetHost(), obj17) - ns.SetOwner(ns.GetHost(), obj18) -} -func StartImpDemon() { - ns.ObjectGroupOn(gvar23) - ns.ObjectGroupOn(gvar24) - ns.WayPointOn(wp26) - ns.WayPointOn(wp27) - ns.ObjectGroupOff(gvar19) - ns.ObjectGroupOff(gvar20) - ns.ObjectOff(obj21) -} -func FollowPlayer() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - if !(ns.CurrentHealth(ns.GetTrigger()) > 0) { - goto LABEL1 - } - ns.CreatureFollow(ns.GetTrigger(), ns.GetHost()) -LABEL1: - return -} -func EnableMuseum() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.ObjectGroupOn(gvar22) - ns.WallGroupOpen(gvar25) -LABEL1: - return -} -func MapInitialize() { - obj4 = ns.Object("MuseumDemon1") - obj5 = ns.Object("MuseumDemon2") - obj6 = ns.Object("MuseumDemon3") - obj7 = ns.Object("MuseumDemon4") - obj8 = ns.Object("MuseumDemon5") - obj9 = ns.Object("MuseumDemon6") - obj10 = ns.Object("MuseumDemon7") - obj11 = ns.Object("MuseumDemon8") - obj12 = ns.Object("Kheldon") - obj13 = ns.Object("Dalmen") - obj14 = ns.Object("Imp1") - obj15 = ns.Object("Imp2") - obj16 = ns.Object("Imp3") - obj17 = ns.Object("Imp4") - obj18 = ns.Object("Imp5") - gvar22 = ns.ObjectGroup("MuseumDemons") - gvar19 = ns.ObjectGroup("ImpDemonTriggers") - gvar20 = ns.ObjectGroup("ImpDemonTriggers2") - obj21 = ns.Object("ImpDemonTrigger3") - gvar23 = ns.ObjectGroupID(ns.Object("FloorThreeSetPiece")) // FIXME - gvar24 = ns.ObjectGroupID(ns.Object("KheldonGroup")) // FIXME - wp26 = ns.Waypoint("ImpWP1") - wp27 = ns.Waypoint("ImpWP2") - ns.WayPointOff(wp26) - ns.WayPointOff(wp27) - ns.ObjectGroupOff(gvar23) - ns.ObjectGroupOff(gvar24) - ns.ObjectGroupOff(gvar22) - ns.FrameTimer(1, CreatureSetup) -} -func MapEntry() { - ns.Music(27, 100) -} -func PlayerDeath() { - ns.DeathScreen(7) -} -func OnEvent(typ string) { - switch typ { - case "MapInitialize": - MapInitialize() - case "MapEntry": - MapEntry() - case "PlayerDeath": - PlayerDeath() - } -} diff --git a/examples/con07e/dummy_test.go b/examples/con07e/dummy_test.go deleted file mode 100644 index 6421780..0000000 --- a/examples/con07e/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package con07e - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/con07f/con07f.go b/examples/con07f/con07f.go deleted file mode 100644 index 99bebad..0000000 --- a/examples/con07f/con07f.go +++ /dev/null @@ -1,245 +0,0 @@ -package con07f - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 ns.ObjectID - obj5 ns.ObjectID - obj6 ns.ObjectID - obj7 ns.ObjectID - obj8 ns.ObjectID - obj9 ns.ObjectID - obj10 ns.ObjectID - obj11 ns.ObjectID - obj12 ns.ObjectID - obj13 ns.ObjectID - obj14 ns.ObjectID - obj15 ns.ObjectID - obj16 ns.ObjectID - obj17 ns.ObjectID - obj18 ns.ObjectID - obj19 ns.ObjectID - obj20 ns.ObjectID - obj21 ns.ObjectID - obj22 ns.ObjectID - obj23 ns.ObjectID - obj24 ns.ObjectID - obj25 ns.ObjectID - obj26 ns.ObjectID - obj27 ns.ObjectID - obj28 ns.ObjectID - obj29 ns.ObjectID - obj30 ns.ObjectID - obj31 ns.ObjectID - obj32 ns.ObjectID - obj33 ns.ObjectID - obj34 ns.ObjectID - obj35 ns.ObjectID - obj36 ns.ObjectID - gvar37 ns.WallGroupID - gvar38 ns.WallGroupID - gvar39 ns.WallGroupID - gvar40 int - flag41 bool - flag42 bool - flag43 bool - flag44 bool - flag45 bool - wp46 ns.WaypointID - wp47 ns.WaypointID - wp48 ns.WaypointID - wp49 ns.WaypointID - wp50 ns.WaypointID - wp51 ns.WaypointID - wp52 ns.WaypointID - wp53 ns.WaypointID - wp54 ns.WaypointID -) - -func init() { - gvar40 = 0 - flag41 = false - flag42 = false - flag43 = false - flag44 = false - flag45 = false -} -func CreatureSetup() { - ns.SetOwner(obj35, obj4) - ns.SetOwner(obj35, obj5) - ns.SetOwner(obj35, obj6) - ns.SetOwner(obj35, obj7) - ns.SetOwner(obj35, obj8) - ns.SetOwner(obj35, obj9) - ns.SetOwner(obj35, obj10) - ns.SetOwner(obj35, obj11) - ns.SetOwner(obj35, obj12) - ns.SetOwner(obj35, obj13) - ns.SetOwner(obj35, obj14) - ns.SetOwner(obj35, obj15) - ns.SetOwner(obj35, obj16) - ns.SetOwner(obj35, obj17) - ns.SetOwner(obj35, obj18) - ns.SetOwner(obj35, obj19) - ns.SetOwner(obj35, obj20) - ns.SetOwner(obj35, obj21) - ns.SetOwner(obj35, obj22) - ns.SetOwner(obj35, obj23) - ns.SetOwner(obj35, obj24) - ns.SetOwner(obj35, obj25) - ns.SetOwner(obj35, obj26) - ns.SetOwner(ns.GetHost(), obj30) - ns.SetOwner(ns.GetHost(), obj31) - ns.SetOwner(ns.GetHost(), obj32) - if !(ns.CurrentHealth(obj30) > 0) { - goto LABEL1 - } - ns.CreatureHunt(obj30) -LABEL1: - if !(ns.CurrentHealth(obj31) > 0) { - goto LABEL2 - } - ns.CreatureHunt(obj31) -LABEL2: - if !(ns.CurrentHealth(obj32) > 0) { - goto LABEL3 - } - ns.CreatureHunt(obj32) -LABEL3: - return -} -func CreateDemons() { -} -func DemonSpawnCheck() { - flag42 = true -} -func WallSetOneButton() { - if flag43 { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.WallGroupOpen(gvar37) - flag43 = true -LABEL1: - return -} -func WallSetTwoButton() { - if flag44 { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.WallGroupOpen(gvar38) - flag44 = true -LABEL1: - return -} -func WallSetThreeButton() { - if flag45 { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.WallGroupOpen(gvar39) - flag45 = true - ns.ObjectOn(obj36) -LABEL1: - return -} -func BlockTrap() { - if ns.IsObjectOn(obj33) { - goto LABEL1 - } - ns.ObjectOn(obj33) - ns.Move(obj33, wp53) -LABEL1: - return -} -func BlockAtWP1() { - if !ns.IsCaller(obj34) { - goto LABEL1 - } - ns.MoveWaypoint(wp52, ns.GetObjectX(obj34), ns.GetObjectY(obj34)) - ns.AudioEvent(ns.HammerMissing, wp52) - ns.Effect(ns.JIGGLE, ns.GetObjectX(obj34), ns.GetObjectY(obj34), 10, 0) - ns.Move(obj33, wp54) -LABEL1: - return -} -func BlockAtWP2() { -} -func MapInitialize() { - obj4 = ns.Object("EmberDemon1") - obj5 = ns.Object("EmberDemon2") - obj6 = ns.Object("EmberDemon3") - obj7 = ns.Object("EmberDemon4") - obj8 = ns.Object("EmberDemon5") - obj9 = ns.Object("EmberDemon6") - obj10 = ns.Object("EmberDemon7") - obj11 = ns.Object("EmberDemon8") - obj12 = ns.Object("EmberDemon9") - obj13 = ns.Object("EmberDemon10") - obj14 = ns.Object("EmberDemon11") - obj15 = ns.Object("EmberDemon12") - obj16 = ns.Object("EmberDemon13") - obj17 = ns.Object("EmberDemon14") - obj18 = ns.Object("EmberDemon15") - obj19 = ns.Object("EmberDemon16") - obj20 = ns.Object("EmberDemon17") - obj21 = ns.Object("EmberDemon18") - obj22 = ns.Object("EmberDemon19") - obj23 = ns.Object("EmberDemon20") - obj24 = ns.Object("EmberDemon21") - obj25 = ns.Object("EmberDemon22") - obj26 = ns.Object("EmberDemon23") - obj27 = ns.Object("EmberDemon24") - obj28 = ns.Object("EmberDemon25") - obj29 = ns.Object("EmberDemon26") - obj30 = ns.Object("PCMage4A") - obj31 = ns.Object("PCMage4B") - obj32 = ns.Object("PCMage4C") - obj33 = ns.Object("Block1Mover") - obj34 = ns.Object("Block1") - obj35 = ns.Object("StoolOfWonder") - obj36 = ns.Object("MainTeleporter") - gvar37 = ns.WallGroup("WallSetOne") - gvar38 = ns.WallGroup("WallSetTwo") - gvar39 = ns.WallGroup("WallSetThree") - wp46 = ns.Waypoint("DemonSpawn1WP") - wp47 = ns.Waypoint("DemonSpawn2WP") - wp48 = ns.Waypoint("DemonSpawn3WP") - wp49 = ns.Waypoint("DemonSpawn4WP") - wp50 = ns.Waypoint("DemonSpawn5WP") - wp51 = ns.Waypoint("DemonSpawn6WP") - wp52 = ns.Waypoint("PlayerSounds") - wp53 = ns.Waypoint("BlockWP1") - wp54 = ns.Waypoint("BlockWP2") - ns.ObjectOff(obj36) - ns.FrameTimer(1, CreatureSetup) - CreateDemons() -} -func MapEntry() { - ns.Music(28, 100) -} -func FollowPlayer() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - if !(ns.CurrentHealth(ns.GetTrigger()) > 0) { - goto LABEL1 - } - ns.CreatureFollow(ns.GetTrigger(), ns.GetHost()) -LABEL1: - return -} -func PlayerDeath() { - ns.DeathScreen(7) -} -func OnEvent(typ string) { - switch typ { - case "MapInitialize": - MapInitialize() - case "MapEntry": - MapEntry() - case "PlayerDeath": - PlayerDeath() - } -} diff --git a/examples/con07f/dummy_test.go b/examples/con07f/dummy_test.go deleted file mode 100644 index 4cccb27..0000000 --- a/examples/con07f/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package con07f - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/con07g/con07g.go b/examples/con07g/con07g.go deleted file mode 100644 index af9a09f..0000000 --- a/examples/con07g/con07g.go +++ /dev/null @@ -1,22 +0,0 @@ -package con07g - -import "github.com/noxworld-dev/noxscript/ns/v3" - -func MapInitialize() { -} -func MapEntry() { - ns.Music(28, 100) -} -func PlayerDeath() { - ns.DeathScreen(7) -} -func OnEvent(typ string) { - switch typ { - case "MapInitialize": - MapInitialize() - case "MapEntry": - MapEntry() - case "PlayerDeath": - PlayerDeath() - } -} diff --git a/examples/con07g/dummy_test.go b/examples/con07g/dummy_test.go deleted file mode 100644 index e02dbf7..0000000 --- a/examples/con07g/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package con07g - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/con07h/con07h.go b/examples/con07h/con07h.go deleted file mode 100644 index dc1d355..0000000 --- a/examples/con07h/con07h.go +++ /dev/null @@ -1,657 +0,0 @@ -package con07h - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 ns.ObjectID - flag5 bool - wp6 ns.WaypointID - obj7 ns.ObjectID - obj8 ns.ObjectID - obj9 ns.ObjectID - obj10 ns.ObjectID - obj11 ns.ObjectID - obj12 ns.ObjectID - obj13 ns.ObjectID - obj14 ns.ObjectID - obj15 ns.ObjectID - obj16 ns.ObjectID - obj17 ns.ObjectID - obj18 ns.ObjectID - wp19 ns.WaypointID - wp20 ns.WaypointID - wp21 ns.WaypointID - wp22 ns.WaypointID - obj23 ns.ObjectID - obj24 ns.ObjectID - obj25 ns.ObjectID - obj26 ns.ObjectID - obj27 ns.ObjectID - obj28 ns.ObjectID - obj29 ns.ObjectID - obj30 ns.ObjectID - obj31 ns.ObjectID - obj32 ns.ObjectID - obj33 ns.ObjectID - obj34 ns.ObjectID - obj35 ns.ObjectID - obj36 ns.ObjectID - obj37 ns.ObjectID - obj38 ns.ObjectID - obj39 ns.ObjectID - obj40 ns.ObjectID - obj41 ns.ObjectID - obj42 ns.ObjectID - obj43 ns.ObjectID - obj44 ns.ObjectID - obj45 ns.ObjectID - obj46 ns.ObjectID - obj47 ns.ObjectID - obj48 ns.ObjectID - obj49 ns.ObjectID - obj50 ns.ObjectID - obj51 ns.ObjectID - obj52 ns.ObjectID - obj53 ns.ObjectID - gvar54 ns.ObjectGroupID - gvar55 ns.WallGroupID - gvar56 ns.WallGroupID - obj57 ns.ObjectID - obj58 ns.ObjectID - obj59 ns.ObjectID - obj60 ns.ObjectID - obj61 ns.ObjectID - obj62 ns.ObjectID - obj63 ns.ObjectID - obj64 ns.ObjectID - obj65 ns.ObjectID - obj66 ns.ObjectID - obj67 ns.ObjectID - obj68 ns.ObjectID - obj69 ns.ObjectID - obj70 ns.ObjectID - obj71 ns.ObjectID - obj72 ns.ObjectID - obj73 ns.ObjectID - obj74 ns.ObjectID - obj75 ns.ObjectID - obj76 ns.ObjectID - obj77 ns.ObjectID - obj78 ns.ObjectID - obj79 ns.ObjectID - obj80 ns.ObjectID - obj81 ns.ObjectID - gvar82 int - gvar83 ns.ObjectGroupID - gvar84 ns.ObjectGroupID - gvar85 ns.ObjectGroupID - gvar86 ns.ObjectGroupID - gvar87 ns.ObjectGroupID - gvar88 ns.ObjectGroupID - gvar89 ns.ObjectGroupID - gvar90 ns.ObjectGroupID - gvar91 ns.ObjectGroupID - gvar92 ns.ObjectGroupID - flag93 bool - wp94 ns.WaypointID - wp95 ns.WaypointID - wp96 ns.WaypointID - gvar97 ns.TimerID - ivar98 int - ivar99 int - fvar100 float32 - fvar101 float32 - fvar102 float32 - fvar103 float32 - fvar104 float32 - fvar105 float32 - fvar106 float32 - fvar107 float32 - fvar108 float32 - fvar109 float32 - fvar110 float32 - fvar111 float32 - fvar112 float32 - fvar113 float32 - fvar114 float32 - fvar115 float32 - fvar116 float32 - fvar117 float32 - fvar118 float32 - fvar119 float32 - flag120 bool - flag121 bool - flag122 bool - flag123 bool - flag124 bool -) - -func init() { - flag5 = false - flag93 = false - ivar98 = 0 - ivar99 = 0 - flag120 = false - flag121 = false - flag122 = false - flag123 = false - flag124 = false -} -func CreatureSetup() { - ns.SetOwner(obj7, obj12) - ns.SetOwner(obj7, obj13) - fvar100 = ns.GetObjectX(obj33) - fvar101 = ns.GetObjectX(obj34) - fvar102 = ns.GetObjectX(obj35) - fvar103 = ns.GetObjectX(obj36) - fvar104 = ns.GetObjectX(obj37) - fvar105 = ns.GetObjectX(obj38) - fvar106 = ns.GetObjectX(obj39) - fvar107 = ns.GetObjectX(obj40) - fvar108 = ns.GetObjectX(obj41) - fvar109 = ns.GetObjectX(obj42) - fvar110 = ns.GetObjectY(obj33) - fvar111 = ns.GetObjectY(obj34) - fvar112 = ns.GetObjectY(obj35) - fvar113 = ns.GetObjectY(obj36) - fvar114 = ns.GetObjectY(obj37) - fvar115 = ns.GetObjectY(obj38) - fvar116 = ns.GetObjectY(obj39) - fvar117 = ns.GetObjectY(obj40) - fvar118 = ns.GetObjectY(obj41) - fvar119 = ns.GetObjectY(obj42) -} -func StartChamber() { - ns.ObjectGroupOn(gvar84) - ns.ObjectGroupOn(gvar86) - ns.ObjectGroupOff(gvar83) - ns.ObjectGroupOff(gvar85) - flag93 = true - ns.SecondTimer(3, ChamberSpikes) -} -func ChamberSpikes() { - if flag93 { - goto LABEL1 - } - ns.ObjectGroupOff(gvar83) - ns.ObjectGroupOff(gvar85) - ns.FrameTimer(10, EnableSpikes2And4) - goto LABEL2 -LABEL1: - ns.ObjectGroupOff(gvar84) - ns.ObjectGroupOff(gvar86) - ns.FrameTimer(10, EnableSpikes1And3) -LABEL2: - gvar97 = ns.SecondTimer(3, ChamberSpikes) -} -func Block1Jiggle() { - ns.MoveWaypoint(wp6, ns.GetObjectX(obj80), ns.GetObjectY(obj80)) - ns.AudioEvent(ns.HammerMissing, wp6) - ns.Effect(ns.JIGGLE, ns.GetObjectX(obj80), ns.GetObjectY(obj80), 10, 0) -} -func Block2Jiggle() { - ns.AudioEvent(ns.HammerMissing, wp94) - ns.Effect(ns.JIGGLE, ns.GetObjectX(obj81), ns.GetObjectY(obj81), 10, 0) -} -func EnableSpikes2And4() { - ns.ObjectGroupOn(gvar84) - ns.ObjectGroupOn(gvar86) - flag93 = true -} -func EnableSpikes1And3() { - ns.ObjectGroupOn(gvar83) - ns.ObjectGroupOn(gvar85) - flag93 = false -} -func DemonDie() { - ivar99 += 1 - if !(ivar99 >= 3) { - goto LABEL1 - } - ns.GiveXp(ns.GetHost(), 1000) - ns.Music(1, 100) -LABEL1: - return -} -func Horvath1Start() { - ns.TellStory(ns.HumanMaleEatFood, "Con07H.scr:HorvathTalk01") -} -func Horvath1End() { - ns.SetDialog(obj7, ns.NORMAL, Hecubah2Start, Hecubah2End) - ns.StartDialog(obj7, ns.GetHost()) -} -func Hecubah1Start() { - ns.TellStory(ns.HumanMaleEatFood, "Con07H.scr:HecubahTalk01") -} -func Hecubah1End() { - ns.SetDialog(obj7, ns.NEXT, Hecubah2Start, Hecubah2End) - HorvathSpeak() -} -func MapInitialize() { - obj57 = ns.Object("SnakeHead1Mover") - obj58 = ns.Object("SnakeHead2Mover") - obj59 = ns.Object("SnakeHead3Mover") - obj60 = ns.Object("SnakeHead4Mover") - obj61 = ns.Object("SnakeHead5Mover") - obj62 = ns.Object("SnakeHead6Mover") - obj63 = ns.Object("SnakeHead7Mover") - obj64 = ns.Object("SnakeHead8Mover") - obj65 = ns.Object("SnakeHead9Mover") - obj66 = ns.Object("SnakeHead10Mover") - obj67 = ns.Object("SnakeHead11Mover") - obj68 = ns.Object("SnakeHead12Mover") - obj69 = ns.Object("Block1AMover") - obj70 = ns.Object("Block1BMover") - obj71 = ns.Object("Block2AMover") - obj72 = ns.Object("Block2BMover") - obj4 = ns.Object("ToLevelOneTP") - obj79 = ns.Object("ToThreeTP") - obj7 = ns.Object("Hecubah") - obj12 = ns.Object("Lord1") - obj13 = ns.Object("Lord2") - obj17 = ns.Object("DeadGuy1") - obj18 = ns.Object("DeadGuy2") - obj8 = ns.Object("HecDemon1") - obj9 = ns.Object("HecDemon2") - obj10 = ns.Object("HecDemon3") - obj11 = ns.Object("HecDemon4") - obj14 = ns.Object("Horvath") - obj15 = ns.Object("Marik") - obj16 = ns.Object("Mage2") - obj80 = ns.Object("Block1Trigger") - obj81 = ns.Object("Block2Trigger") - obj73 = ns.Object("ChamberDoor1") - obj74 = ns.Object("ChamberDoor2") - obj75 = ns.Object("ChamberDoor2A") - obj76 = ns.Object("ChamberDoor2B") - obj77 = ns.Object("ChamberExitDoor1") - obj78 = ns.Object("ChamberExitDoor2") - gvar83 = ns.ObjectGroup("ChamberSpikes1") - gvar84 = ns.ObjectGroup("ChamberSpikes2") - gvar85 = ns.ObjectGroup("ChamberSpikes3") - gvar86 = ns.ObjectGroup("ChamberSpikes4") - gvar87 = ns.ObjectGroup("SnakeLetterMovers") - gvar88 = ns.ObjectGroup("Snake3Movers") - gvar89 = ns.ObjectGroup("Snake4Movers") - gvar90 = ns.ObjectGroup("ShowdownTriggers") - wp6 = ns.Waypoint("PlayerSounds") - wp94 = ns.Waypoint("Jiggle2WP") - wp95 = ns.Waypoint("Traitor1WP") - wp96 = ns.Waypoint("Traitor2WP") - wp19 = ns.Waypoint("HecDemon1WP") - wp20 = ns.Waypoint("HecDemon2WP") - wp21 = ns.Waypoint("Lord1WP") - wp22 = ns.Waypoint("Lord2WP") - obj23 = ns.Object("HON") - obj24 = ns.Object("HONBase") - obj25 = ns.Object("PowerCell1") - obj26 = ns.Object("PowerCell2") - obj27 = ns.Object("PowerCell3") - obj28 = ns.Object("PowerCell4") - obj29 = ns.Object("PowerCell5") - obj30 = ns.Object("PowerCell6") - obj31 = ns.Object("PowerCell7") - obj32 = ns.Object("PowerCell8") - obj33 = ns.Object("HeartLight1") - obj34 = ns.Object("HeartLight2") - obj35 = ns.Object("HeartLight3") - obj36 = ns.Object("HeartLight4") - obj37 = ns.Object("HeartLight5") - obj38 = ns.Object("HeartLight6") - obj39 = ns.Object("HeartLight7") - obj40 = ns.Object("HeartLight8") - obj41 = ns.Object("HeartLight9") - obj42 = ns.Object("HeartLight10") - obj43 = ns.Object("NewLight1") - obj44 = ns.Object("NewLight2") - obj45 = ns.Object("NewLight3") - obj46 = ns.Object("NewLight4") - obj47 = ns.Object("NewLight5") - obj48 = ns.Object("NewLight6") - obj49 = ns.Object("NewLight7") - obj50 = ns.Object("NewLight8") - obj51 = ns.Object("NewLight9") - obj52 = ns.Object("NewLight10") - obj53 = ns.Object("Rain") - gvar54 = ns.ObjectGroup("PowerCells") - gvar91 = ns.ObjectGroup("TraitorTriggers") - gvar92 = ns.ObjectGroup("NewGroup") - gvar55 = ns.WallGroup("HONWalls") - gvar56 = ns.WallGroup("HONExitWalls") - ns.StoryPic(obj14, "HorvathPic") - ns.StoryPic(obj7, "HecubahPic") - ns.SetDialog(obj7, ns.NEXT, Hecubah1Start, Hecubah1End) - ns.FrameTimer(1, CreatureSetup) -} -func PlayerDeath() { - ns.DeathScreen(7) -} -func LightShow() { - var ( - v0 int - v1 int - ) - ns.MoveWaypoint(wp6, ns.GetObjectX(obj23), ns.GetObjectY(obj23)) - v0 = ns.Random(1, 8) - v1 = v0 - if v1 == 1 { - goto LABEL1 - } - if v1 == 2 { - goto LABEL2 - } - if v1 == 3 { - goto LABEL3 - } - if v1 == 4 { - goto LABEL4 - } - if v1 == 5 { - goto LABEL5 - } - if v1 == 6 { - goto LABEL6 - } - if v1 == 7 { - goto LABEL7 - } - if v1 == 8 { - goto LABEL8 - } - goto LABEL9 -LABEL1: - ns.AudioEvent(ns.LightningBolt, wp6) - ns.Effect(ns.LIGHTNING, ns.GetObjectX(obj25), ns.GetObjectY(obj25), ns.GetObjectX(obj23), ns.GetObjectY(obj23)) - goto LABEL9 -LABEL2: - ns.AudioEvent(ns.LightningBolt, wp6) - ns.Effect(ns.LIGHTNING, ns.GetObjectX(obj26), ns.GetObjectY(obj26), ns.GetObjectX(obj23), ns.GetObjectY(obj23)) - goto LABEL9 -LABEL3: - ns.AudioEvent(ns.LightningBolt, wp6) - ns.Effect(ns.LIGHTNING, ns.GetObjectX(obj27), ns.GetObjectY(obj27), ns.GetObjectX(obj23), ns.GetObjectY(obj23)) - goto LABEL9 -LABEL4: - ns.AudioEvent(ns.LightningBolt, wp6) - ns.Effect(ns.LIGHTNING, ns.GetObjectX(obj28), ns.GetObjectY(obj28), ns.GetObjectX(obj23), ns.GetObjectY(obj23)) - goto LABEL9 -LABEL5: - ns.AudioEvent(ns.LightningBolt, wp6) - ns.Effect(ns.LIGHTNING, ns.GetObjectX(obj29), ns.GetObjectY(obj29), ns.GetObjectX(obj23), ns.GetObjectY(obj23)) - goto LABEL9 -LABEL6: - ns.AudioEvent(ns.LightningBolt, wp6) - ns.Effect(ns.LIGHTNING, ns.GetObjectX(obj30), ns.GetObjectY(obj30), ns.GetObjectX(obj23), ns.GetObjectY(obj23)) - goto LABEL9 -LABEL7: - ns.AudioEvent(ns.LightningBolt, wp6) - ns.Effect(ns.LIGHTNING, ns.GetObjectX(obj31), ns.GetObjectY(obj31), ns.GetObjectX(obj23), ns.GetObjectY(obj23)) - goto LABEL9 -LABEL8: - ns.AudioEvent(ns.LightningBolt, wp6) - ns.Effect(ns.LIGHTNING, ns.GetObjectX(obj32), ns.GetObjectY(obj32), ns.GetObjectX(obj23), ns.GetObjectY(obj23)) - goto LABEL9 -LABEL9: - if flag123 { - goto LABEL10 - } - ns.FrameTimer(30, LightShow) -LABEL10: - return -} -func PlateOneTrigger() { - flag120 = true - if !(flag121 == true && flag122 == true) { - goto LABEL1 - } - ns.WallGroupOpen(gvar55) -LABEL1: - return -} -func PlateTwoTrigger() { - flag121 = true - if !(flag120 == true && flag122 == true) { - goto LABEL1 - } - ns.WallGroupOpen(gvar55) -LABEL1: - return -} -func PlateThreeTrigger() { - flag122 = true - if !(flag120 == true && flag121 == true) { - goto LABEL1 - } - ns.WallGroupOpen(gvar55) -LABEL1: - return -} -func PlateOneRelease() { - flag120 = false -} -func PlateTwoRelease() { - flag121 = false -} -func PlateThreeRelease() { - flag122 = false -} -func HONTrigger() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.ObjectOff(obj33) - ns.ObjectOff(obj34) - ns.ObjectOff(obj35) - ns.ObjectOff(obj36) - ns.ObjectOff(obj37) - ns.ObjectOff(obj38) - ns.ObjectOff(obj39) - ns.ObjectOff(obj40) - ns.ObjectOff(obj41) - ns.ObjectOff(obj42) - ns.MoveObject(obj43, fvar100, fvar110) - ns.MoveObject(obj44, fvar101, fvar111) - ns.MoveObject(obj45, fvar102, fvar112) - ns.MoveObject(obj46, fvar103, fvar113) - ns.MoveObject(obj47, fvar104, fvar114) - ns.MoveObject(obj48, fvar105, fvar115) - ns.MoveObject(obj49, fvar106, fvar116) - ns.MoveObject(obj50, fvar107, fvar117) - ns.MoveObject(obj51, fvar108, fvar118) - ns.MoveObject(obj52, fvar109, fvar119) - ns.ObjectOff(obj23) - ns.ObjectOff(obj24) - flag123 = true - ns.SetHalberd(1) - ns.PrintToAll("Con07H.scr:HONTada") - ns.JournalEdit(ns.GetHost(), "GetHON", 4) - ns.SecondTimer(2, FadeOut) -LABEL1: - return -} -func MakeMapSwitch() { - ns.MoveObject(ns.GetHost(), 2149, 2151) -} -func FadeOut() { - ns.Blind() - ns.Music(0, 100) - ns.FrameTimer(45, MakeMapSwitch) -} -func BeginShowdownPiece() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - if flag5 { - goto LABEL1 - } - flag5 = true - ns.WideScreen(true) - ns.Music(7, 100) - ns.SetDialog(obj14, ns.NEXT, Horvath1Start, Horvath1End) - ns.MoveWaypoint(wp6, 2133, 1410) - ns.AudioEvent(ns.TeleportIn, wp6) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp6), ns.GetWaypointY(wp6), 0, 0) - ns.Effect(ns.SPARK_EXPLOSION, ns.GetWaypointX(wp6), ns.GetWaypointY(wp6), 0, 0) - ns.Effect(ns.LESSER_EXPLOSION, ns.GetWaypointX(wp6), ns.GetWaypointY(wp6), 0, 0) - ns.MoveObject(obj7, ns.GetWaypointX(wp6), ns.GetWaypointY(wp6)) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp21), ns.GetWaypointY(wp21), 0, 0) - ns.Effect(ns.SPARK_EXPLOSION, ns.GetWaypointX(wp21), ns.GetWaypointY(wp21), 0, 0) - ns.Effect(ns.LESSER_EXPLOSION, ns.GetWaypointX(wp21), ns.GetWaypointY(wp21), 0, 0) - ns.MoveObject(obj12, ns.GetWaypointX(wp21), ns.GetWaypointY(wp21)) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp22), ns.GetWaypointY(wp22), 0, 0) - ns.Effect(ns.SPARK_EXPLOSION, ns.GetWaypointX(wp22), ns.GetWaypointY(wp22), 0, 0) - ns.Effect(ns.LESSER_EXPLOSION, ns.GetWaypointX(wp22), ns.GetWaypointY(wp22), 0, 0) - ns.MoveObject(obj13, ns.GetWaypointX(wp22), ns.GetWaypointY(wp22)) - ns.Frozen(ns.GetHost(), true) - ns.CreatureGuard(obj7, ns.GetObjectX(obj7), ns.GetObjectY(obj7), ns.GetObjectX(obj14), ns.GetObjectY(obj14), 0) - ns.Frozen(obj7, true) - ns.Frozen(obj12, true) - ns.Frozen(obj13, true) - ns.LookAtObject(obj7, obj14) - ns.ObjectGroupOff(gvar92) - ns.SecondTimer(1, HorvathSpeak) -LABEL1: - return -} -func HorvathSpeak() { - ns.StartDialog(obj14, ns.GetHost()) -} -func HecubahSpeak() { - ns.StartDialog(obj7, ns.GetHost()) -} -func BeginFireworks() { - ns.ObjectOn(obj7) - ns.ObjectOn(obj14) - ns.ObjectOn(obj15) - ns.ObjectOn(obj16) -} -func HorvathDied() { - ns.Frozen(obj14, true) - ns.SetDialog(obj14, ns.NEXT, Horvath2Start, Horvath2End) - ns.StartDialog(obj14, ns.GetHost()) -} -func Horvath2Start() { - ns.TellStory(ns.HumanMaleEatFood, "Con07H.scr:HorvathTalk02") -} -func Horvath2End() { - ns.Frozen(obj14, false) - ns.CancelDialog(obj14) - ns.CastSpellLocationLocation(ns.SPELL_TURN_UNDEAD, ns.GetObjectX(obj14), ns.GetObjectY(obj14), ns.GetObjectX(obj14), ns.GetObjectY(obj14)) - ns.Frozen(obj12, false) - ns.Frozen(obj13, false) - ns.ObjectOn(obj15) - ns.ObjectOn(obj16) - ns.ObjectOn(obj12) - ns.ObjectOn(obj13) - ns.HitFarLocation(obj12, ns.GetObjectX(obj15), ns.GetObjectY(obj15)) - ns.HitFarLocation(obj13, ns.GetObjectX(obj16), ns.GetObjectY(obj16)) - ns.SecondTimer(2, EraseHorvath) - ns.SecondTimer(1, HecKill1) -} -func Hecubah2Start() { - ns.TellStory(ns.HumanMaleEatFood, "Con07H.scr:HecubahTalk03") -} -func Hecubah2End() { - ns.ObjectOn(obj14) - ns.ObjectOn(obj7) - ns.CastSpellLocationLocation(ns.SPELL_DEATH_RAY, ns.GetObjectX(obj7), ns.GetObjectY(obj7), ns.GetObjectX(obj14), ns.GetObjectY(obj14)) - ns.SecondTimer(1, SecondDeathRay) -} -func Hecubah3Start() { - ns.TellStory(ns.HumanMaleEatFood, "Con07H.scr:HecubahTalk04") -} -func Hecubah3End() { - ns.MoveWaypoint(wp6, ns.GetObjectX(obj7), ns.GetObjectY(obj7)) - ns.AudioEvent(ns.TeleportOut, wp6) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp6), ns.GetWaypointY(wp6), 0, 0) - ns.Effect(ns.SPARK_EXPLOSION, ns.GetWaypointX(wp6), ns.GetWaypointY(wp6), 0, 0) - ns.Effect(ns.LESSER_EXPLOSION, ns.GetWaypointX(wp6), ns.GetWaypointY(wp6), 0, 0) - ns.Delete(obj7) - ns.SetDialog(obj15, ns.NORMAL, TestStart, TestEnd) - ns.WideScreen(false) - ns.Frozen(ns.GetHost(), false) - ns.StoryPic(obj15, "WizardGuard1Pic") - ns.SetDialog(obj15, ns.NORMAL, MarikTalkStart, MarikTalkEnd) - MarikTalk() -} -func HecubahPoof() { - ns.StartDialog(obj7, ns.GetHost()) -} -func TestStart() { - ns.Delete(obj8) -} -func TestEnd() { - ns.CancelDialog(obj15) -} -func MarikTalk() { - if !(ns.Distance(ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), ns.GetObjectX(obj15), ns.GetObjectY(obj15)) < 150) { - goto LABEL1 - } - if flag124 { - goto LABEL2 - } - ns.StartDialog(obj15, ns.GetHost()) - flag124 = true -LABEL2: - goto LABEL3 -LABEL1: - if flag124 { - goto LABEL3 - } - ns.FrameTimer(8, MarikTalk) -LABEL3: - return -} -func MarikTalkStart() { - ns.TellStory(ns.HumanMaleEatFood, "Con07H.scr:MarikTalk02") - flag124 = true -} -func MarikTalkEnd() { - ns.SetDialog(obj15, ns.NORMAL, MarikTalkStart, MarikTalkEnd) -} -func SecondDeathRay() { - ns.CastSpellLocationLocation(ns.SPELL_DEATH_RAY, ns.GetObjectX(obj7), ns.GetObjectY(obj7), ns.GetObjectX(obj14), ns.GetObjectY(obj14)) - ns.SecondTimer(1, ThirdDeathRay) -} -func ThirdDeathRay() { - ns.CastSpellLocationLocation(ns.SPELL_DEATH_RAY, ns.GetObjectX(obj7), ns.GetObjectY(obj7), ns.GetObjectX(obj14), ns.GetObjectY(obj14)) -} -func Lord1Missile() { - ns.HitFarLocation(obj12, ns.GetObjectX(obj15), ns.GetObjectY(obj15)) -} -func Lord2Missile() { - ns.HitFarLocation(obj13, ns.GetObjectX(obj15), ns.GetObjectY(obj15)) -} -func OgreDie() { - ivar98 += 1 - if !(ivar98 >= 2) { - goto LABEL1 - } - ns.AggressionLevel(obj15, 0) - ns.AggressionLevel(obj16, 0) - ns.CreatureGuard(obj15, ns.GetObjectX(obj15), ns.GetObjectY(obj15), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - ns.CreatureGuard(obj16, ns.GetObjectX(obj16), ns.GetObjectY(obj16), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - ns.SetDialog(obj7, ns.NEXT, Hecubah3Start, Hecubah3End) - ns.LookAtObject(obj7, ns.GetHost()) - ns.SecondTimer(1, HecubahPoof) -LABEL1: - return -} -func HecKill1() { - ns.CastSpellLocationLocation(ns.SPELL_DEATH_RAY, ns.GetObjectX(obj7), ns.GetObjectY(obj7), ns.GetObjectX(obj18), ns.GetObjectY(obj18)) - ns.SecondTimer(2, HecKill2) -} -func HecKill2() { - ns.CastSpellLocationLocation(ns.SPELL_DEATH_RAY, ns.GetObjectX(obj7), ns.GetObjectY(obj7), ns.GetObjectX(obj17), ns.GetObjectY(obj17)) -} -func EraseHorvath() { - ns.Delete(obj14) -} -func OnEvent(typ string) { - switch typ { - case "MapInitialize": - MapInitialize() - case "PlayerDeath": - PlayerDeath() - } -} diff --git a/examples/con07h/dummy_test.go b/examples/con07h/dummy_test.go deleted file mode 100644 index 396ec20..0000000 --- a/examples/con07h/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package con07h - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/con08a/con08a.go b/examples/con08a/con08a.go deleted file mode 100644 index 1265879..0000000 --- a/examples/con08a/con08a.go +++ /dev/null @@ -1,1643 +0,0 @@ -package con08a - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - gvar4 int - gvar5 int - gvar6 int - gvar7 int - gvar8 int - gvar9 int - gvar10 int - gvar11 int - gvar12 int - gvar13 int - gvar14 int - gvar15 int - gvar16 int - gvar17 int - gvar18 int - gvar19 int - gvar20 int - gvar21 int - gvar22 int - gvar23 int - gvar24 int - gvar25 int - gvar26 int - gvar27 int - gvar28 int - gvar29 int - gvar30 int - gvar31 int - gvar32 int - gvar33 int - gvar34 int - gvar35 int - gvar36 int - gvar37 int - gvar38 int - gvar39 int - gvar40 int - gvar41 int - ivar42 int - gvar43 int - ivar44 int - ivar45 int - flag46 bool - obj47 ns.ObjectID - obj48 ns.ObjectID - obj49 ns.ObjectID - obj50 ns.ObjectID - obj51 ns.ObjectID - obj52 ns.ObjectID - obj53 ns.ObjectID - obj54 ns.ObjectID - obj55 ns.ObjectID - obj56 ns.ObjectID - obj57 ns.ObjectID - obj58 ns.ObjectID - obj59 ns.ObjectID - obj60 ns.ObjectID - obj61 ns.ObjectID - obj62 ns.ObjectID - obj63 ns.ObjectID - obj64 ns.ObjectID - obj65 ns.ObjectID - obj66 ns.ObjectID - obj67 ns.ObjectID - obj68 ns.ObjectID - obj69 ns.ObjectID - obj70 ns.ObjectID - obj71 ns.ObjectID - obj72 ns.ObjectID - obj73 ns.ObjectID - obj74 ns.ObjectID - obj75 ns.ObjectID - obj76 ns.ObjectID - obj77 ns.ObjectID - obj78 ns.ObjectID - wp79 ns.WaypointID - wp80 ns.WaypointID - wp81 ns.WaypointID - wp82 ns.WaypointID - obj83 ns.ObjectID - obj84 ns.ObjectID - obj85 ns.ObjectID - obj86 ns.ObjectID - obj87 ns.ObjectID - obj88 ns.ObjectID - obj89 [8]ns.ObjectID - wp90 ns.WaypointID - wp91 ns.WaypointID - gvar92 int - gvar93 int - gvar94 int - gvar95 int - gvar96 int - gvar97 int - gvar98 int - gvar99 int - gvar100 int - gvar101 int - gvar102 int - gvar103 int - ivar104 int - gvar105 int - ivar106 int - flag107 bool - flag108 bool - flag109 bool - flag110 bool - flag111 bool - flag112 bool - flag113 bool - flag114 bool - flag115 bool - flag116 bool - gvar117 int - obj118 ns.ObjectID - obj119 ns.ObjectID - obj120 ns.ObjectID - obj121 ns.ObjectID - obj122 ns.ObjectID - obj123 ns.ObjectID - obj124 ns.ObjectID - obj125 ns.ObjectID - obj126 ns.ObjectID - obj127 ns.ObjectID - obj128 [4]ns.ObjectID - gvar129 int - wp130 ns.WaypointID - wp131 ns.WaypointID - wp132 ns.WaypointID - wp133 ns.WaypointID - gvar134 ns.ObjectGroupID - gvar135 ns.ObjectGroupID - gvar136 ns.WallGroupID - ivar137 int - flag138 bool -) - -func init() { - gvar4 = 0 - gvar5 = 1 - gvar6 = 2 - gvar7 = 3 - gvar8 = 4 - gvar9 = 5 - gvar10 = 6 - gvar11 = 7 - gvar12 = 8 - gvar13 = 9 - gvar14 = 10 - gvar15 = 11 - gvar16 = 12 - gvar17 = 13 - gvar18 = 14 - gvar19 = 15 - gvar20 = 16 - gvar21 = 17 - gvar22 = 18 - gvar23 = 19 - gvar24 = 20 - gvar25 = 21 - gvar26 = 22 - gvar27 = 23 - gvar28 = 24 - gvar29 = 25 - gvar30 = 26 - gvar31 = gvar14 - gvar32 = gvar11 - gvar33 = gvar8 - gvar34 = gvar15 - gvar35 = gvar19 - gvar36 = gvar23 - gvar37 = gvar24 - gvar38 = gvar25 - gvar39 = gvar26 - gvar40 = gvar27 - gvar41 = gvar4 - ivar42 = 200 - gvar43 = 4 - ivar44 = 0 - ivar45 = 0 - flag46 = false - gvar92 = 0 - gvar93 = 1 - gvar94 = 2 - gvar95 = 3 - gvar96 = 4 - gvar97 = 5 - gvar98 = 6 - gvar99 = 7 - gvar100 = 8 - gvar101 = 9 - gvar102 = 10 - gvar103 = gvar92 - ivar104 = 0 - gvar105 = gvar99 - ivar106 = 0 - flag107 = false - flag108 = false - flag109 = false - flag110 = false - flag111 = false - flag112 = false - flag113 = true - flag114 = true - flag115 = false - flag116 = false - ivar137 = 60 - flag138 = true -} -func JandorStart() { - var v0 int - v0 = gvar41 - if v0 == gvar4 { - goto LABEL1 - } - if v0 == gvar5 { - goto LABEL2 - } - if v0 == gvar6 { - goto LABEL3 - } - if v0 == gvar7 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - ns.TellStory(ns.HumanMaleEatFood, "War08a:CaptainProd") - goto LABEL5 -LABEL2: - ns.TellStory(ns.HumanMaleEatFood, "War08a:CaptainProd") - goto LABEL5 -LABEL3: - ns.TellStory(ns.SwordsmanHurt, "Con03A.scr:JandorB") - goto LABEL5 -LABEL4: - ns.Frozen(ns.GetHost(), true) - ns.Blind() - ns.FrameTimer(45, ExitToSwamp) - goto LABEL5 -LABEL5: - return -} -func JandorEnd() { - var v0 int - v0 = gvar41 - if v0 == gvar4 { - goto LABEL1 - } - if v0 == gvar5 { - goto LABEL2 - } - if v0 == gvar6 { - goto LABEL3 - } - if v0 == gvar7 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - ns.JournalEntry(ns.GetHost(), "Chapter8LocateAldwyn", 2) - ns.PrintToAll("Con01a:NewJournalEntry") - ns.AwardSpell(ns.GetHost(), ns.SPELL_SUMMON_CREATURE) - ns.PrintToAll("GeneralPrint:Summon") - ns.JournalEntry(ns.GetHost(), "SummonHint", 8) - gvar41 = gvar5 - goto LABEL5 -LABEL2: - goto LABEL5 -LABEL3: - gvar41 = gvar7 - goto LABEL5 -LABEL4: - ns.Frozen(ns.GetHost(), true) - ns.Blind() - ns.FrameTimer(45, ExitToSwamp) - goto LABEL5 -LABEL5: - return -} -func JacobDialogStart() { - var ( - v0 int - v1 int - v2 int - ) - v2 = gvar40 - if v2 == gvar27 { - goto LABEL1 - } - if v2 == gvar28 { - goto LABEL2 - } - if v2 == gvar29 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - v0 = ns.Random(1, 3) - v1 = v0 - if v1 == 1 { - goto LABEL5 - } - if v1 == 2 { - goto LABEL6 - } - if v1 == 3 { - goto LABEL7 - } - goto LABEL8 -LABEL5: - ns.TellStory(ns.HumanMaleEatFood, "Con02A:JailerTalk01") - goto LABEL8 -LABEL6: - ns.TellStory(ns.HumanMaleEatFood, "Con02A:JailerTalk02") - goto LABEL8 -LABEL7: - ns.TellStory(ns.HumanMaleEatFood, "Con02A:JailerTalk03") - goto LABEL8 -LABEL8: - goto LABEL4 -LABEL2: - ns.TellStory(ns.HumanMaleEatFood, "Con02A:JailerTalk04") - goto LABEL4 -LABEL3: - ns.TellStory(ns.HumanMaleEatFood, "Con02A:JailerTalk05") - goto LABEL4 -LABEL4: - return -} -func JacobDialogEnd() { - var v0 int - v0 = gvar40 - if v0 == gvar28 { - goto LABEL1 - } - if v0 == gvar29 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - flag46 = false - ns.Frozen(ns.GetHost(), false) - goto LABEL3 -LABEL2: - flag46 = false - ns.Frozen(ns.GetHost(), false) - goto LABEL3 -LABEL3: - return -} -func ResetJacobDialog() { - if !ns.IsCaller(obj75) { - goto LABEL1 - } - if gvar40 != gvar30 { - goto LABEL1 - } - flag46 = false - gvar40 = gvar27 - ns.SetDialog(obj75, ns.NORMAL, JacobDialogStart, JacobDialogEnd) - ivar45 = 0 - ns.ObjectOff(obj78) -LABEL1: - return -} -func ContestGuardStart() { - ns.TellStory(ns.HumanMaleEatFood, "War02a:NewTownsman2") -} -func ContestGuardEnd() { - ns.SetDialog(obj77, ns.NORMAL, ContestGuardStart, ContestGuardEnd) -} -func MorganInjured() { - var v0 int - if flag46 { - goto LABEL1 - } - flag46 = true - ivar45 += 1 - v0 = ivar45 - if v0 == 1 { - goto LABEL2 - } - if v0 == 2 { - goto LABEL3 - } - if v0 == 3 { - goto LABEL4 - } - goto LABEL1 -LABEL2: - gvar40 = gvar28 - ns.Frozen(ns.GetHost(), true) - ns.CreatureIdle(ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj75) - ns.LookAtObject(obj75, ns.GetHost()) - ns.StartDialog(obj75, ns.GetHost()) - goto LABEL1 -LABEL3: - gvar40 = gvar29 - ns.Frozen(ns.GetHost(), true) - ns.CreatureIdle(ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj75) - ns.LookAtObject(obj75, ns.GetHost()) - ns.StartDialog(obj75, ns.GetHost()) - goto LABEL1 -LABEL4: - gvar40 = gvar30 - ns.CancelDialog(obj75) - ns.ClearOwner(obj75) - ns.AggressionLevel(obj75, 0.83) - ns.Attack(obj75, ns.GetHost()) - goto LABEL1 -LABEL1: - return -} -func PlayerFlee() { - if gvar40 != gvar30 { - goto LABEL1 - } - ns.ObjectOn(obj78) - ns.SetOwner(ns.GetHost(), obj75) - ns.AggressionLevel(obj75, 0) - ns.CreatureGuard(obj75, ns.GetWaypointX(wp79), ns.GetWaypointY(wp79), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) -LABEL1: - return -} -func HenrickDialogStart() { - var v0 int - v0 = gvar32 - if v0 == gvar11 { - goto LABEL1 - } - if v0 == gvar12 { - goto LABEL2 - } - if v0 == gvar13 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - ns.LookAtObject(obj48, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War08b:HenrickSalesPitchA") - goto LABEL4 -LABEL2: - ns.LookAtObject(obj48, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War08b:HenrickSalesPitchB") - goto LABEL4 -LABEL3: - ns.LookAtObject(obj48, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War08b:HenrickNoMoreWolves") - goto LABEL4 -LABEL4: - return -} -func HenrickDialogEnd() { - var ( - v0 int - v1 int - v2 int - v3 int - v4 int - v5 int - v6 int - v7 int - ) - v0 = 0 - v1 = 0 - v2 = 1 - v3 = 2 - v4 = 0 - v7 = gvar32 - if v7 == gvar11 { - goto LABEL1 - } - if v7 == gvar12 { - goto LABEL2 - } - if v7 == gvar13 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - v1 = ns.GetAnswer(obj48) - v5 = v1 - if v5 == v2 { - goto LABEL5 - } - if v5 == v3 { - goto LABEL6 - } - if v5 == v4 { - goto LABEL7 - } - goto LABEL8 -LABEL5: - v0 = ns.GetGold(ns.GetHost()) - if !(v0 < ivar42) { - goto LABEL9 - } - ns.SetDialog(obj48, ns.NORMAL, NullDialogStart, ResetHenrickDialogChoice) - ns.TellStory(ns.SwordsmanHurt, "War08b:HenrickNotEnoughGold") - goto LABEL10 -LABEL9: - ns.ChangeGold(ns.GetHost(), -ivar42) - gvar32 = gvar12 - ReleaseCharmedWolf(ivar44) - ivar44 += 1 - ns.SetDialog(obj48, ns.NORMAL, NullDialogStart, ResetHenrickDialogChoice) - ns.TellStory(ns.SwordsmanHurt, "War08b:HenrickSaleSuccessful") -LABEL10: - goto LABEL8 -LABEL6: - goto LABEL8 -LABEL7: - goto LABEL8 -LABEL8: - goto LABEL4 -LABEL2: - v1 = ns.GetAnswer(obj48) - v6 = v1 - if v6 == v2 { - goto LABEL11 - } - if v6 == v3 { - goto LABEL12 - } - if v6 == v4 { - goto LABEL13 - } - goto LABEL14 -LABEL11: - v0 = ns.GetGold(ns.GetHost()) - if !(v0 < ivar42) { - goto LABEL15 - } - ns.SetDialog(obj48, ns.NORMAL, NullDialogStart, ResetHenrickDialogChoice) - ns.TellStory(ns.SwordsmanHurt, "War08b:HenrickNotEnoughGold") - goto LABEL16 -LABEL15: - ns.ChangeGold(ns.GetHost(), -ivar42) - ReleaseCharmedWolf(ivar44) - ivar44 += 1 - ns.SetDialog(obj48, ns.NORMAL, NullDialogStart, ResetHenrickDialogChoice) - ns.TellStory(ns.SwordsmanHurt, "War08b:HenrickSaleSuccessful") - if !(ivar44 >= 4) { - goto LABEL16 - } - gvar32 = gvar13 - ns.SetDialog(obj48, ns.NORMAL, HenrickDialogStart, HenrickDialogEnd) -LABEL16: - goto LABEL14 -LABEL12: - goto LABEL14 -LABEL13: - goto LABEL14 -LABEL14: - goto LABEL4 -LABEL3: - goto LABEL4 -LABEL4: - return -} -func DrunkDialogStart() { - ns.LookAtObject(obj49, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:DrunkGreeting") -} -func DrunkDialogEnd() { -} -func GatekeeperDialogStart() { - var v0 int - ns.LookAtObject(obj52, ns.GetHost()) - v0 = gvar36 - if v0 == gvar23 { - goto LABEL1 - } - goto LABEL2 -LABEL1: - ns.TellStory(ns.SwordsmanHurt, "Con02a:GatekeeperWaiting") - goto LABEL2 -LABEL2: - return -} -func GatekeeperDialogEnd() { -} -func Gatekeeper2DialogStart() { - var v0 int - ns.LookAtObject(obj63, ns.GetHost()) - v0 = gvar37 - if v0 == gvar24 { - goto LABEL1 - } - goto LABEL2 -LABEL1: - ns.TellStory(ns.SwordsmanHurt, "Con08a:GuardGreet") - goto LABEL2 -LABEL2: - return -} -func Gatekeeper2DialogEnd() { -} -func Gatekeeper3DialogStart() { - var v0 int - ns.LookAtObject(obj64, ns.GetHost()) - v0 = gvar38 - if v0 == gvar25 { - goto LABEL1 - } - goto LABEL2 -LABEL1: - ns.TellStory(ns.SwordsmanHurt, "War08a:Guard02Greet") - goto LABEL2 -LABEL2: - return -} -func Gatekeeper3DialogEnd() { -} -func MayorDialogStart() { - var ( - v0 int - v1 int - ) - ns.Frozen(ns.GetHost(), true) - ns.CreatureIdle(ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj55) - v0 = ns.Random(1, 2) - v1 = v0 - if v1 == 1 { - goto LABEL1 - } - if v1 == 2 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.TellStory(ns.SwordsmanHurt, "War03b:MayorPre") - goto LABEL3 -LABEL2: - ns.TellStory(ns.SwordsmanHurt, "War03b:MayorBye") - goto LABEL3 -LABEL3: - return -} -func MayorDialogEnd() { - ns.Frozen(ns.GetHost(), false) -} -func MayorsGuardDialogStart() { - var v0 int - v0 = gvar31 - if v0 == gvar14 { - goto LABEL1 - } - goto LABEL2 -LABEL1: - ns.LookAtObject(obj53, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War03b:MayorsGuardPre") - goto LABEL2 -LABEL2: - return -} -func MayorsGuardDialogEnd() { -} -func AldwinDialogStart() { - var v0 int - v0 = gvar33 - if v0 == gvar8 { - goto LABEL1 - } - if v0 == gvar9 { - goto LABEL2 - } - if v0 == gvar10 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - ns.LookAtObject(obj54, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "Con08a:AldwynGreet") - goto LABEL4 -LABEL2: - ns.LookAtObject(obj54, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "Con08:AldwynProd2") - goto LABEL4 -LABEL3: - ns.LookAtObject(obj54, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "Con08:AldwynProd") - goto LABEL4 -LABEL4: - return -} -func AldwinDialogEnd() { - var v0 int - v0 = gvar33 - if v0 == gvar8 { - goto LABEL1 - } - if v0 == gvar9 { - goto LABEL2 - } - if v0 == gvar10 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - ns.Pickup(ns.GetHost(), obj50) - ns.PrintToAll("GeneralPrint:GainedKey") - gvar33 = gvar9 - ns.JournalEdit(ns.GetHost(), "Chapter8LocateAldwyn", 4) - ns.PrintToAll("Con02a:ObjectiveComplete") - ns.JournalEntry(ns.GetHost(), "Chapter8IxPriest", 2) - ns.PrintToAll("Con01a:NewJournalEntry") - goto LABEL4 -LABEL2: - gvar33 = gvar10 - goto LABEL4 -LABEL3: - goto LABEL4 -LABEL4: - return -} -func BridgeGuardDialogStart() { - var v0 int - v0 = gvar39 - if v0 == gvar26 { - goto LABEL1 - } - goto LABEL2 -LABEL1: - ns.LookAtObject(obj65, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "Con02a:RandomSay") - goto LABEL2 -LABEL2: - return -} -func BridgeGuardDialogEnd() { - var v0 int - v0 = gvar39 - if v0 == gvar26 { - goto LABEL1 - } - goto LABEL2 -LABEL1: - goto LABEL2 -LABEL2: - return -} -func Maiden1DialogStart() { - ns.LookAtObject(obj67, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "Con02a:BarMaiden") -} -func Maiden1DialogEnd() { -} -func Maiden2DialogStart() { - ns.Frozen(ns.GetHost(), true) - ns.Frozen(obj68, true) - ns.CreatureIdle(ns.GetHost()) - ns.CreatureIdle(obj68) - ns.LookAtObject(ns.GetHost(), obj68) - ns.LookAtObject(obj68, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "Con07B.scr:MaidenTalk01") -} -func Maiden2DialogEnd() { - ns.Frozen(ns.GetHost(), false) - ns.Frozen(obj68, false) - ns.Wander(obj68) -} -func Maiden3DialogStart() { - ns.Frozen(ns.GetHost(), true) - ns.Frozen(obj69, true) - ns.CreatureIdle(ns.GetHost()) - ns.CreatureIdle(obj69) - ns.LookAtObject(ns.GetHost(), obj69) - ns.LookAtObject(obj69, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "Wiz02A.scr:MaidenTalk05") -} -func Maiden3DialogEnd() { - ns.Frozen(ns.GetHost(), false) - ns.Frozen(obj69, false) - ns.Wander(obj69) -} -func Maiden4DialogStart() { - var ( - v0 int - v1 int - ) - ns.Frozen(ns.GetHost(), true) - ns.Frozen(obj70, true) - ns.CreatureIdle(ns.GetHost()) - ns.CreatureIdle(obj70) - ns.LookAtObject(ns.GetHost(), obj70) - ns.LookAtObject(obj70, ns.GetHost()) - v0 = ns.Random(1, 2) - v1 = v0 - if v1 == 1 { - goto LABEL1 - } - if v1 == 2 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.TellStory(ns.HumanMaleEatFood, "War02a:NewTownswoman1") - goto LABEL3 -LABEL2: - ns.TellStory(ns.HumanMaleEatFood, "War02a:NewTownswoman3") - goto LABEL3 -LABEL3: - return -} -func Maiden4DialogEnd() { - ns.Frozen(ns.GetHost(), false) - ns.Frozen(obj70, false) - ns.Wander(obj70) -} -func Townsman1DialogStart() { - ns.Frozen(ns.GetHost(), true) - ns.Frozen(obj72, true) - ns.CreatureIdle(ns.GetHost()) - ns.CreatureIdle(obj72) - ns.LookAtObject(ns.GetHost(), obj72) - ns.LookAtObject(obj72, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "War02a:NewTownsman3") -} -func Townsman1DialogEnd() { - ns.Frozen(ns.GetHost(), false) - ns.Frozen(obj72, false) - ns.Wander(obj72) -} -func Townsman2DialogStart() { - ns.Frozen(ns.GetHost(), true) - ns.Frozen(obj73, true) - ns.CreatureIdle(ns.GetHost()) - ns.CreatureIdle(obj73) - ns.LookAtObject(ns.GetHost(), obj73) - ns.LookAtObject(obj73, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "Wiz02A.scr:AlbiTalk01") -} -func Townsman2DialogEnd() { - ns.Frozen(ns.GetHost(), false) - ns.Frozen(obj73, false) - ns.Wander(obj73) -} -func Townsman3DialogStart() { - ns.Frozen(ns.GetHost(), true) - ns.Frozen(obj74, true) - ns.CreatureIdle(ns.GetHost()) - ns.CreatureIdle(obj74) - ns.LookAtObject(ns.GetHost(), obj74) - ns.LookAtObject(obj74, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "Wiz02A.scr:MaxRumor03") -} -func Townsman3DialogEnd() { - ns.Frozen(ns.GetHost(), false) - ns.Frozen(obj74, false) - ns.Wander(obj74) -} -func ReleaseCharmedWolf(a1 int) { - var v0 int - v0 = a1 - if v0 == 0 { - goto LABEL1 - } - if v0 == 1 { - goto LABEL2 - } - if v0 == 2 { - goto LABEL3 - } - if v0 == 3 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - ns.WallOpen(ns.Wall(59, 113)) - ns.EnchantOff(obj128[a1], ns.ENCHANT_INVULNERABLE) - ns.CreatureFollow(obj128[a1], ns.GetHost()) - ns.PauseObject(obj128[a1], 30) - ns.AggressionLevel(obj128[a1], 0.83) - ns.MakeFriendly(obj128[a1]) - ns.BecomePet(obj128[a1]) - goto LABEL5 -LABEL2: - ns.WallOpen(ns.Wall(57, 111)) - ns.EnchantOff(obj128[a1], ns.ENCHANT_INVULNERABLE) - ns.CreatureFollow(obj128[a1], ns.GetHost()) - ns.PauseObject(obj128[a1], 30) - ns.AggressionLevel(obj128[a1], 0.83) - ns.MakeFriendly(obj128[a1]) - ns.BecomePet(obj128[a1]) - goto LABEL5 -LABEL3: - ns.WallOpen(ns.Wall(55, 109)) - ns.EnchantOff(obj128[a1], ns.ENCHANT_INVULNERABLE) - ns.CreatureFollow(obj128[a1], ns.GetHost()) - ns.PauseObject(obj128[a1], 30) - ns.AggressionLevel(obj128[a1], 0.83) - ns.MakeFriendly(obj128[a1]) - ns.BecomePet(obj128[a1]) - goto LABEL5 -LABEL4: - ns.WallOpen(ns.Wall(53, 107)) - ns.EnchantOff(obj128[a1], ns.ENCHANT_INVULNERABLE) - ns.CreatureFollow(obj128[a1], ns.GetHost()) - ns.PauseObject(obj128[a1], 30) - ns.AggressionLevel(obj128[a1], 0.83) - ns.MakeFriendly(obj128[a1]) - ns.BecomePet(obj128[a1]) - goto LABEL5 -LABEL5: - return -} -func InitializeDialogs() { - ns.StoryPic(obj48, "Townsman2Pic") - ns.StoryPic(obj49, "DrunkPic") - ns.StoryPic(obj51, "Townsman1Pic") - ns.StoryPic(obj52, "IxGuard2Pic") - ns.StoryPic(obj53, "Warrior3Pic") - ns.StoryPic(obj55, "TheogrinPic") - ns.StoryPic(obj54, "AldwynPic") - ns.StoryPic(obj63, "IxGuard2Pic") - ns.StoryPic(obj64, "IxGuard1Pic") - ns.StoryPic(obj67, "MaidenPic") - ns.StoryPic(obj68, "MaidenPic2") - ns.StoryPic(obj69, "MaidenPic3") - ns.StoryPic(obj70, "MaidenPic4") - ns.StoryPic(obj72, "MalePic4") - ns.StoryPic(obj73, "MalePic11") - ns.StoryPic(obj74, "MalePic12") - ns.StoryPic(obj47, "AirshipCaptainPic") - ns.StoryPic(obj75, "WardenPic") - ns.SetDialog(obj75, ns.NORMAL, JacobDialogStart, JacobDialogEnd) - ns.SetDialog(obj49, ns.NORMAL, DrunkDialogStart, DrunkDialogEnd) - ns.SetDialog(obj63, ns.NORMAL, Gatekeeper2DialogStart, Gatekeeper2DialogEnd) - ns.SetDialog(obj64, ns.NORMAL, Gatekeeper3DialogStart, Gatekeeper3DialogEnd) - ns.SetDialog(obj53, ns.NORMAL, MayorsGuardDialogStart, MayorsGuardDialogEnd) - ns.SetDialog(obj54, ns.NORMAL, AldwinDialogStart, AldwinDialogEnd) - ns.SetDialog(obj67, ns.NORMAL, Maiden1DialogStart, Maiden1DialogEnd) - ns.SetDialog(obj68, ns.NORMAL, Maiden2DialogStart, Maiden2DialogEnd) - ns.SetDialog(obj69, ns.NORMAL, Maiden3DialogStart, Maiden3DialogEnd) - ns.SetDialog(obj70, ns.NORMAL, Maiden4DialogStart, Maiden4DialogEnd) - ns.SetDialog(obj72, ns.NORMAL, Townsman1DialogStart, Townsman1DialogEnd) - ns.SetDialog(obj73, ns.NORMAL, Townsman2DialogStart, Townsman2DialogEnd) - ns.SetDialog(obj74, ns.NORMAL, Townsman3DialogStart, Townsman3DialogEnd) -} -func InitializeSecondaryDialogs() { - gvar41 = gvar6 -} -func NullDialogStart() { -} -func ExitToSwamp() { - ns.Frozen(ns.GetHost(), false) - ns.MoveObject(ns.GetHost(), ns.GetWaypointX(ns.Waypoint("SwampExitWP")), ns.GetWaypointY(ns.Waypoint("SwampExitWP"))) -} -func StartCaptainConversation() { - ns.SetDialog(obj47, ns.NORMAL, JandorStart, JandorEnd) - ns.StartDialog(obj47, ns.GetHost()) -} -func ResetHenrickDialogChoice() { - ns.SetDialog(obj48, ns.YESNO, HenrickDialogStart, HenrickDialogEnd) -} -func PlayerDeath() { - ns.DeathScreen(8) -} -func GoToMineSEG2() { - ns.MoveObject(ns.GetHost(), ns.GetWaypointX(wp81), ns.GetWaypointY(wp81)) -} -func GoToMine() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Blind() - ns.FrameTimer(60, GoToMineSEG2) -LABEL1: - return -} -func GoToCaveSEG2() { - ns.MoveObject(ns.GetHost(), ns.GetWaypointX(wp82), ns.GetWaypointY(wp82)) -} -func GoToCave() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Blind() - ns.FrameTimer(60, GoToCaveSEG2) -LABEL1: - return -} -func InversionInit() { - obj83 = ns.Object("Teacher") - obj84 = ns.Object("Apprentice") - obj85 = ns.Object("InvertSpell") - obj86 = ns.Object("LessonGate1") - obj87 = ns.Object("LessonGate2") - obj88 = ns.Object("ApprenticeTrigger") - wp90 = ns.Waypoint("PlayerSounds") - wp91 = ns.Waypoint("ApprenticeWP") - ns.StoryPic(obj83, "WizardGuard1Pic") - ns.SetDialog(obj83, ns.YESNO, TeacherStart, TeacherEnd) - ns.LockDoor(obj86) - ns.LockDoor(obj87) - ns.ObjectOff(obj88) - ns.FrameTimer(1, InversionOwnObject) -} -func InversionOwnObject() { - ns.SetOwner(ns.GetHost(), obj83) - ns.SetOwner(ns.GetHost(), obj84) - ns.Enchant(obj84, ns.ENCHANT_INVULNERABLE, 0) - ns.Enchant(obj83, ns.ENCHANT_ANCHORED, 0) - ns.Enchant(obj84, ns.ENCHANT_ANCHORED, 0) -} -func TeacherStart() { - var v0 int - v0 = gvar103 - if v0 == gvar92 { - goto LABEL1 - } - if v0 == gvar93 { - goto LABEL2 - } - if v0 == gvar94 { - goto LABEL3 - } - if v0 == gvar95 { - goto LABEL4 - } - if v0 == gvar96 { - goto LABEL5 - } - if v0 == gvar97 { - goto LABEL6 - } - if v0 == gvar98 { - goto LABEL7 - } - goto LABEL8 -LABEL1: - ns.Frozen(ns.GetHost(), true) - ns.CreatureIdle(ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj83) - ns.TellStory(ns.HumanMaleEatFood, "Wiz02B.scr:InversionBoyTalk01") - goto LABEL8 -LABEL2: - ns.TellStory(ns.HumanMaleEatFood, "Wiz02B.scr:InversionBoyTalk04") - goto LABEL8 -LABEL3: - ns.TellStory(ns.HumanMaleEatFood, "Wiz02B.scr:InversionBoyTalk02") - goto LABEL8 -LABEL4: - ns.TellStory(ns.HumanMaleEatFood, "Wiz02B.scr:InversionBoyTalk03") - goto LABEL8 -LABEL5: - ns.TellStory(ns.HumanMaleEatFood, "Wiz02B.scr:InversionBoyTalk05") - goto LABEL8 -LABEL6: - ns.TellStory(ns.HumanMaleEatFood, "Wiz02B.scr:InversionBoyTalk04a") - goto LABEL8 -LABEL7: - ns.TellStory(ns.HumanMaleEatFood, "Wiz02B.scr:InversionBoyTalk06") - goto LABEL8 -LABEL8: - return -} -func TeacherEnd() { - var ( - v0 int - v1 int - v2 int - v3 int - v4 int - v5 int - v6 int - ) - v0 = 0 - v1 = 0 - v2 = 1 - v3 = 2 - v4 = 0 - v6 = gvar103 - if v6 == gvar92 { - goto LABEL1 - } - if v6 == gvar93 { - goto LABEL2 - } - if v6 == gvar94 { - goto LABEL3 - } - if v6 == gvar95 { - goto LABEL4 - } - if v6 == gvar96 { - goto LABEL5 - } - if v6 == gvar97 { - goto LABEL6 - } - if v6 == gvar98 { - goto LABEL7 - } - goto LABEL8 -LABEL1: - v1 = ns.GetAnswer(obj83) - v5 = v1 - if v5 == v2 { - goto LABEL9 - } - if v5 == v3 { - goto LABEL10 - } - if v5 == v4 { - goto LABEL11 - } - goto LABEL12 -LABEL9: - v0 = ns.GetGold(ns.GetHost()) - if !(v0 < 100) { - goto LABEL13 - } - ns.SetDialog(obj83, ns.NORMAL, TeacherStart, TeacherEnd) - gvar103 = gvar93 - ns.StartDialog(obj83, ns.GetHost()) - goto LABEL12 - goto LABEL10 -LABEL13: - ns.ChangeGold(ns.GetHost(), -100) - ns.UnlockDoor(obj86) - ns.UnlockDoor(obj87) - ns.SetDialog(obj83, ns.NORMAL, TeacherStart, TeacherEnd) - gvar103 = gvar94 - ns.StartDialog(obj83, ns.GetHost()) - goto LABEL12 -LABEL10: - ns.Frozen(ns.GetHost(), false) - gvar103 = gvar92 - ns.SetDialog(obj83, ns.YESNO, TeacherStart, TeacherEnd) - goto LABEL12 -LABEL11: - ns.Frozen(ns.GetHost(), false) - gvar103 = gvar92 - ns.SetDialog(obj83, ns.YESNO, TeacherStart, TeacherEnd) - goto LABEL12 -LABEL12: - goto LABEL8 -LABEL2: - ns.Frozen(ns.GetHost(), false) - gvar103 = gvar92 - ns.SetDialog(obj83, ns.YESNO, TeacherStart, TeacherEnd) - goto LABEL8 -LABEL3: - ns.CancelDialog(obj83) - ns.Frozen(ns.GetHost(), false) - ns.Pickup(ns.GetHost(), obj85) - goto LABEL8 -LABEL4: - ns.CancelDialog(obj83) - ns.SecondTimer(1, Phoneme4) - goto LABEL8 -LABEL5: - ns.UnlockDoor(obj58) - ns.UnlockDoor(obj59) - ns.UnlockDoor(obj86) - ns.UnlockDoor(obj87) - gvar103 = gvar98 - ns.SetDialog(obj83, ns.NORMAL, TeacherStart, TeacherEnd) - goto LABEL8 -LABEL6: - ns.UnlockDoor(obj58) - ns.UnlockDoor(obj59) - ns.UnlockDoor(obj86) - ns.UnlockDoor(obj87) - gvar103 = gvar98 - ns.SetDialog(obj83, ns.NORMAL, TeacherStart, TeacherEnd) - goto LABEL8 -LABEL7: - gvar103 = gvar98 - ns.SetDialog(obj83, ns.NORMAL, TeacherStart, TeacherEnd) - goto LABEL8 -LABEL8: - return -} -func Phoneme1() { - if flag111 { - goto LABEL1 - } - if !(ns.CurrentHealth(obj84) > 0) { - goto LABEL1 - } - ns.MoveWaypoint(wp90, 1326, 2493) - ns.AudioEvent(ns.SpellPhonemeDown, wp90) - ns.FrameTimer(10, Phoneme2) -LABEL1: - return -} -func Phoneme2() { - if flag111 { - goto LABEL1 - } - if !(ns.CurrentHealth(obj84) > 0) { - goto LABEL1 - } - ns.AudioEvent(ns.SpellPhonemeDown, wp90) - ns.FrameTimer(10, Phoneme3) -LABEL1: - return -} -func Phoneme3() { - if flag111 { - goto LABEL1 - } - if !(ns.CurrentHealth(obj84) > 0) { - goto LABEL1 - } - ns.AudioEvent(ns.SpellPhonemeDown, wp90) - ns.FrameTimer(10, CastSpells) -LABEL1: - return -} -func Phoneme4() { - if !flag111 { - goto LABEL1 - } - if !(ns.CurrentHealth(obj84) > 0) { - goto LABEL1 - } - ns.MoveWaypoint(wp90, 1326, 2493) - ns.AudioEvent(ns.SpellPhonemeDown, wp90) - ns.FrameTimer(10, Phoneme5) -LABEL1: - return -} -func Phoneme5() { - if !flag111 { - goto LABEL1 - } - if !(ns.CurrentHealth(obj84) > 0) { - goto LABEL1 - } - ns.AudioEvent(ns.SpellPhonemeDown, wp90) - ns.FrameTimer(10, Phoneme6) -LABEL1: - return -} -func Phoneme6() { - if !flag111 { - goto LABEL1 - } - if !(ns.CurrentHealth(obj84) > 0) { - goto LABEL1 - } - ns.AudioEvent(ns.SpellPhonemeDown, wp90) - ns.FrameTimer(10, CastSpells2) -LABEL1: - return -} -func LessonBegin() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - if gvar103 != gvar94 { - goto LABEL1 - } - if !flag113 { - goto LABEL2 - } - ns.WideScreen(true) - ns.Frozen(ns.GetHost(), true) - ns.CreatureIdle(ns.GetHost()) - ns.LockDoor(obj86) - ns.LockDoor(obj87) - ns.Move(obj84, wp91) - flag113 = false -LABEL2: - if !(flag107 == false && flag112 == true) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.WideScreen(false) - ns.Frozen(ns.GetHost(), false) - ns.LookAtObject(obj84, ns.GetHost()) - flag107 = true - ns.LockDoor(obj58) - ns.LockDoor(obj59) - ns.SecondTimer(1, Phoneme1) -LABEL1: - return -} -func CastSpells() { - if flag111 { - goto LABEL1 - } - gvar105 = gvar102 - if !(ivar104 < 4) { - goto LABEL2 - } - ns.ClearOwner(obj84) - ns.CastSpellObjectLocation(ns.SPELL_SLOW, obj84, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.Enchant(obj84, ns.ENCHANT_INVULNERABLE, 0) -LABEL2: - if ivar104 != 4 { - goto LABEL3 - } - ns.EnchantOff(obj84, ns.ENCHANT_INVULNERABLE) - ns.CastSpellObjectLocation(ns.SPELL_MAGIC_MISSILE, obj84, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) -LABEL3: - ivar104 += 1 - if !(ivar104 < 5) { - goto LABEL4 - } - ns.SecondTimer(3, Phoneme1) - goto LABEL1 -LABEL4: - flag108 = true - if !flag110 { - goto LABEL5 - } - gvar103 = gvar96 - ns.SetDialog(obj83, ns.NORMAL, TeacherStart, TeacherEnd) - ns.StartDialog(obj83, ns.GetHost()) - goto LABEL1 -LABEL5: - gvar103 = gvar97 - ns.SetDialog(obj83, ns.NORMAL, TeacherStart, TeacherEnd) - ns.StartDialog(obj83, ns.GetHost()) -LABEL1: - return -} -func CastSpells2() { - if !flag111 { - goto LABEL1 - } - gvar105 = gvar102 - if !(ivar104 < 4) { - goto LABEL2 - } - ns.CastSpellObjectLocation(ns.SPELL_SLOW, obj84, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.Enchant(obj84, ns.ENCHANT_INVULNERABLE, 0) -LABEL2: - if ivar104 != 4 { - goto LABEL3 - } - ns.EnchantOff(obj84, ns.ENCHANT_INVULNERABLE) - ns.CastSpellObjectLocation(ns.SPELL_MAGIC_MISSILE, obj84, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) -LABEL3: - ivar104 += 1 - if !(ivar104 < 5) { - goto LABEL4 - } - ns.SecondTimer(3, Phoneme4) - goto LABEL1 -LABEL4: - flag108 = true - if !flag110 { - goto LABEL5 - } - gvar103 = gvar96 - ns.SetDialog(obj83, ns.NORMAL, TeacherStart, TeacherEnd) - ns.StartDialog(obj83, ns.GetHost()) - goto LABEL1 -LABEL5: - gvar103 = gvar97 - ns.SetDialog(obj83, ns.NORMAL, TeacherStart, TeacherEnd) - ns.StartDialog(obj83, ns.GetHost()) -LABEL1: - return -} -func CheckApprentice() { - if !ns.HasEnchant(obj84, ns.ENCHANT_SLOWED) { - goto LABEL1 - } - ns.ObjectOff(obj88) - flag111 = true - gvar103 = gvar95 - flag110 = true - if !(ivar104 > 2) { - goto LABEL2 - } - ivar104 = 2 -LABEL2: - ns.SetDialog(obj83, ns.NORMAL, TeacherStart, TeacherEnd) - ns.StartDialog(obj83, ns.GetHost()) -LABEL1: - if !(ns.CurrentHealth(obj84) <= 0) { - goto LABEL3 - } - ns.ObjectOff(ns.GetTrigger()) - flag110 = true -LABEL3: - return -} -func ApprenticeDie() { - ns.AudioEvent(ns.HumanMaleHurtHeavy, wp90) -} -func ApprenticeReport() { - ns.CreatureGuard(obj84, ns.GetWaypointX(wp91), ns.GetWaypointY(wp91), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - ns.ObjectOn(obj88) - flag112 = true -} -func StopCreatures() { - var v0 int - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - flag114 = false - v0 = 0 - for { - if !(v0 <= ivar106) { - goto LABEL1 - } - ns.AggressionLevel(obj89[v0], 0) - ns.CreatureIdle(obj89[v0]) - ns.ObjectOff(obj89[v0]) - v0 += 1 - } -LABEL1: - r3 := ns.IsAttackedBy(ns.GetHost(), ns.GetCaller()) - if r3 { - goto LABEL3 - } - if !ns.HasClass(ns.GetCaller(), "CLASS_MONSTER") { - goto LABEL3 - } - obj89[ivar106] = ns.GetCaller() - ns.AggressionLevel(ns.GetCaller(), 0) - ns.CreatureIdle(ns.GetCaller()) - ns.ObjectOff(ns.GetCaller()) - ivar106 += 1 -LABEL3: - return -} -func StartCreatures() { - var v0 int - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - v0 = 0 - for { - if !(v0 <= ivar106) { - goto LABEL1 - } - ns.ObjectOn(obj89[v0]) - ns.CreatureFollow(obj89[v0], ns.GetHost()) - ns.AggressionLevel(obj89[v0], 0.5) - flag114 = true - v0 += 1 - } -LABEL1: - return -} -func OwnObjects() { - ns.GroupSetOwner(ns.GetHost(), gvar134) - ns.SetOwner(ns.GetHost(), obj48) - ns.GroupSetOwner(ns.GetHost(), gvar135) - ns.SetOwner(ns.GetHost(), obj49) - ns.SetOwner(ns.GetHost(), obj67) - ns.SetOwner(ns.GetHost(), obj68) - ns.SetOwner(ns.GetHost(), obj69) - ns.SetOwner(ns.GetHost(), obj70) - ns.SetOwner(ns.GetHost(), obj47) - ns.SetOwner(ns.GetHost(), obj75) - ns.SetOwner(ns.GetHost(), obj77) -} -func AwardSummonSpell() { - ns.AwardSpell(ns.GetHost(), ns.SPELL_SUMMON_CREATURE) - ns.PrintToAll("GeneralPrint:Summon") - ns.JournalEntry(ns.GetHost(), "SummonHint", 8) -} -func DisableElevators() { - ns.ObjectOff(obj60) - ns.ObjectOff(obj66) -} -func MapInitialize() { - obj49 = ns.Object("Drunk") - obj54 = ns.Object("Aldwyn") - obj52 = ns.Object("Geoff") - obj63 = ns.Object("Ryan") - obj64 = ns.Object("Ed") - obj55 = ns.Object("Mayor_Theogrin") - obj53 = ns.Object("Mayor's_Guard") - obj51 = ns.Object("Barkeeper") - obj65 = ns.Object("Bridge_Guard") - obj48 = ns.Object("Henrick") - obj47 = ns.Object("Jandor") - obj75 = ns.Object("Jacob") - obj76 = ns.Object("Morgan") - obj78 = ns.Object("JacobTrigger") - obj126 = ns.Object("MorganDoor") - obj127 = ns.Object("CaveDoor") - wp79 = ns.Waypoint("JacobWP") - wp133 = ns.Waypoint("FaceWP") - obj77 = ns.Object("Contest_Guard") - obj56 = ns.Object("MayorGate1") - obj57 = ns.Object("MayorGate2") - obj58 = ns.Object("ContestGate1") - obj59 = ns.Object("ContestGate2") - obj120 = ns.Object("CemDoorL") - obj121 = ns.Object("CemDoorR") - obj118 = ns.Object("BasementDoor") - obj60 = ns.Object("AldwinElevator") - obj61 = ns.Object("RightTownGate") - obj62 = ns.Object("LeftTownGate") - obj72 = ns.Object("Bryan") - obj73 = ns.Object("Clyde") - obj74 = ns.Object("Tommy") - obj66 = ns.Object("MagicShopElevator") - obj67 = ns.Object("Joyce") - obj68 = ns.Object("Julie") - obj69 = ns.Object("Tanya") - obj70 = ns.Object("Gretchen") - obj50 = ns.Object("BlueKey") - obj71 = ns.Object("AldwynFireplace") - obj119 = ns.Object("AldwynsDoor") - obj122 = ns.Object("TempDoorL") - obj123 = ns.Object("TempDoorR") - obj124 = ns.Object("Mystic") - obj125 = ns.Object("Mystic2") - wp80 = ns.Waypoint("AldwynHome") - wp130 = ns.Waypoint("AldwynStorage") - wp131 = ns.Waypoint("MysticWP") - wp132 = ns.Waypoint("MysticStorage") - gvar134 = ns.ObjectGroup("NPC's") - gvar135 = ns.ObjectGroup("CharmedWolves") - gvar136 = ns.WallGroup("MagicShopElevatorWalls") - wp81 = ns.Waypoint("MineExitWP") - wp82 = ns.Waypoint("CaveExitWP") - ns.Wander(obj72) - ns.Wander(obj73) - ns.Wander(obj74) - ns.Wander(obj68) - ns.Wander(obj69) - ns.LockDoor(obj56) - ns.LockDoor(obj57) - ns.LockDoor(obj120) - ns.LockDoor(obj121) - ns.LockDoor(obj61) - ns.LockDoor(obj62) - ns.LockDoor(obj126) - ns.LockDoor(obj127) - ns.LockDoor(obj58) - ns.LockDoor(obj59) - obj128[0] = 0 - obj128[1] = 0 - obj128[2] = 0 - obj128[3] = 0 - InversionInit() - InitializeDialogs() - ns.StartupScreen(8) - ns.FrameTimer(1, OwnObjects) - ns.FrameTimer(5, StartCaptainConversation) - ns.FrameTimer(35, DisableElevators) -} -func MapEntry() { - var v0 int - v0 = ns.GetQuestStatus("Chapter8:HasWeirdling") - ns.Music(15, 100) - if v0 != 1 { - goto LABEL1 - } - flag116 = true - ns.MoveObject(obj54, ns.GetWaypointX(wp130), ns.GetWaypointY(wp130)) - ns.LockDoor(obj119) - ns.LockDoor(obj122) - ns.LockDoor(obj123) - InitializeSecondaryDialogs() - ns.SetShopkeeperText(obj124, "Con08a:Mystic2") - ns.CancelDialog(obj63) - ns.CancelDialog(obj64) -LABEL1: - if !(ns.CurrentHealth(obj84) > 0) { - goto LABEL2 - } - ns.Enchant(obj84, ns.ENCHANT_INVULNERABLE, 0) -LABEL2: - ns.SetDialog(obj77, ns.NORMAL, ContestGuardStart, ContestGuardEnd) - ns.StoryPic(obj77, "Townsman2Pic") - ns.UnBlind() -} -func DebugOn() { - flag115 = true - ns.PrintToAll("Debug mode is enabled.") -} -func DebugOff() { - flag115 = false - ns.PrintToAll("Debug mode has been disabled.") -} -func GetWeirdlingValue() { - var v0 int - v0 = ns.GetQuestStatus("Con08a:HasWierdling") - if v0 != 1 { - goto LABEL1 - } - ns.PrintToAll("The weirdleing has been retrieved!") - goto LABEL2 -LABEL1: - ns.PrintToAll("The weirdling value = 0!") -LABEL2: - return -} -func OpenCaveDoor() { - ns.UnlockDoor(obj127) - ns.ObjectOff(ns.GetTrigger()) -} -func EnableRandomBump() { - flag138 = true -} -func RandomBump() { - if !(ns.IsCaller(ns.GetHost()) && flag138) { - goto LABEL1 - } - ns.Chat(ns.GetTrigger(), "Con02a:RandomBump") - flag138 = false - ns.FrameTimer(ivar137, EnableRandomBump) -LABEL1: - return -} -func RestAwhile() { - var v0 int - v0 = ns.Random(60, 120) - ns.PauseObject(ns.GetCaller(), v0) -} -func OpenMagicShopElevatorWalls() { - ns.WallGroupOpen(gvar136) -} -func MakeAWish() { - var v0 int - v0 = ns.MaxHealth(ns.GetCaller()) - ns.RestoreHealth(ns.GetCaller(), v0-ns.CurrentHealth(ns.GetCaller())) - ns.PrintToAll("GeneralPrint:WellSignRefresh") - ns.AudioEvent(ns.RestoreHealthName, ns.Waypoint("WellWP")) -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapInitialize": - MapInitialize() - case "MapEntry": - MapEntry() - } -} diff --git a/examples/con08a/dummy_test.go b/examples/con08a/dummy_test.go deleted file mode 100644 index 907e688..0000000 --- a/examples/con08a/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package con08a - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/con08b/con08b.go b/examples/con08b/con08b.go deleted file mode 100644 index f1047bc..0000000 --- a/examples/con08b/con08b.go +++ /dev/null @@ -1,263 +0,0 @@ -package con08b - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 ns.ObjectID - obj5 ns.ObjectID - obj6 ns.ObjectID - obj7 ns.ObjectID - wp8 ns.WaypointID - wp9 ns.WaypointID - gvar10 ns.ObjectGroupID - wp11 ns.WaypointID - wp12 ns.WaypointID - wp13 ns.WaypointID - wp14 ns.WaypointID - gvar15 int - gvar16 int - gvar17 int - gvar18 int - gvar19 int - flag20 bool - flag21 bool -) - -func init() { - gvar15 = 0 - gvar16 = 1 - gvar17 = 2 - gvar18 = 3 - gvar19 = gvar15 - flag20 = false - flag21 = false -} -func PlayerDeath() { - ns.DeathScreen(8) -} -func GoToIxSEG2() { - ns.Frozen(ns.GetHost(), false) - ns.Frozen(obj4, false) - ns.Frozen(obj5, false) - ns.Frozen(obj6, false) - ns.MoveObject(ns.GetHost(), ns.GetWaypointX(wp8), ns.GetWaypointY(wp8)) -} -func GoToIx() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Frozen(ns.GetHost(), true) - ns.Frozen(obj4, true) - ns.Frozen(obj5, true) - ns.Frozen(obj6, true) - ns.Blind() - ns.FrameTimer(60, GoToIxSEG2) -LABEL1: - return -} -func GoToTempleSEG2() { - ns.Frozen(ns.GetHost(), false) - ns.MoveObject(ns.GetHost(), ns.GetWaypointX(wp9), ns.GetWaypointY(wp9)) -} -func GoToTemple() { - ns.Frozen(ns.GetHost(), true) - ns.CancelDialog(obj7) - ns.Blind() - ns.FrameTimer(60, GoToTempleSEG2) -} -func OwnObjects() { - ns.SetOwner(ns.GetHost(), obj7) -} -func MapInitialize() { - obj4 = ns.Object("Bear01") - obj5 = ns.Object("Bear02") - obj6 = ns.Object("Bear03") - obj7 = ns.Object("IxPriest") - gvar10 = ns.ObjectGroup("Fish") - wp8 = ns.Waypoint("IxExitWP") - wp11 = ns.Waypoint("TempleExtWP") - wp12 = ns.Waypoint("TempleIntWP") - wp9 = ns.Waypoint("TempleExitWP") - wp13 = ns.Waypoint("PriestWP") - wp14 = ns.Waypoint("PriestLookWP") - ns.GroupWander(gvar10) - ns.FrameTimer(1, OwnObjects) -} -func MapEntry() { - ns.UnBlind() - ns.Music(22, 100) -} -func EnterTempleSEG2() { - ns.Frozen(ns.GetHost(), false) - ns.Frozen(obj4, false) - ns.Frozen(obj5, false) - ns.Frozen(obj6, false) - ns.MoveObject(ns.GetHost(), ns.GetWaypointX(wp12), ns.GetWaypointY(wp12)) - ns.UnBlind() -} -func EnterTemple() { - ns.Frozen(ns.GetHost(), true) - ns.Frozen(obj4, true) - ns.Frozen(obj5, true) - ns.Frozen(obj6, true) - ns.Blind() - ns.FrameTimer(60, EnterTempleSEG2) -} -func LeaveTempleSEG2() { - ns.Frozen(ns.GetHost(), false) - ns.MoveObject(ns.GetHost(), ns.GetWaypointX(wp11), ns.GetWaypointY(wp11)) - ns.UnBlind() -} -func LeaveTemple() { - ns.Frozen(ns.GetHost(), true) - ns.Blind() - ns.FrameTimer(60, LeaveTempleSEG2) -} -func StayAway() { - r1 := ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) - if !r1 { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func NoMonsters() { - r1 := ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) - if !r1 { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func BearAttack() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.CreatureFollow(obj5, obj4) - ns.CreatureFollow(obj6, obj4) -LABEL1: - return -} -func BearIdle() { - ns.GoBackHome(ns.GetTrigger()) -} -func PriestSetPieceSEG2() { - ns.CreatureFollow(obj7, ns.GetHost()) - ns.FrameTimer(75, PriestSetPieceSEG3) -} -func PriestSetPieceSEG3() { - ns.StoryPic(obj7, "IxPriestPic") - ns.SetDialog(obj7, ns.NEXT, PriestDialogStart, PriestDialogEnd) - ns.StartDialog(obj7, ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj7) -} -func PriestDialogStart() { - var v0 int - v0 = gvar19 - if v0 == gvar15 { - goto LABEL1 - } - if v0 == gvar16 { - goto LABEL2 - } - if v0 == gvar17 { - goto LABEL3 - } - if v0 == gvar18 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - ns.TellStory(ns.SwordsmanHurt, "Con08a:PriestGreet") - goto LABEL5 -LABEL2: - ns.TellStory(ns.SwordsmanHurt, "Con08a:PriestProd") - goto LABEL5 -LABEL3: - ns.TellStory(ns.SwordsmanHurt, "Con08a:PriestProd2") - goto LABEL5 -LABEL4: - ns.TellStory(ns.SwordsmanHurt, "Con08a:PriestProd3") - goto LABEL5 -LABEL5: - return -} -func PriestDialogEnd() { - var v0 int - v0 = gvar19 - if v0 == gvar15 { - goto LABEL1 - } - if v0 == gvar16 { - goto LABEL2 - } - if v0 == gvar17 { - goto LABEL3 - } - if v0 == gvar18 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - gvar19 = gvar16 - PriestDialogStart() - goto LABEL5 -LABEL2: - gvar19 = gvar17 - PriestDialogStart() - goto LABEL5 -LABEL3: - gvar19 = gvar18 - ns.SetDialog(obj7, ns.NORMAL, PriestDialogStart, PriestDialogEnd) - PriestDialogStart() - goto LABEL5 -LABEL4: - if flag21 { - goto LABEL6 - } - flag21 = true - ns.JournalEdit(ns.GetHost(), "Chapter8IxPriest", 4) - ns.PrintToAll("Con02a:ObjectiveComplete") - ns.JournalEntry(ns.GetHost(), "Chapter8Wierdling", 2) - ns.PrintToAll("Con01a:NewJournalEntry") - ns.WideScreen(false) - ReleasePlayer() -LABEL6: - ns.CreatureGuard(obj7, ns.GetWaypointX(wp13), ns.GetWaypointY(wp13), ns.GetWaypointX(wp14), ns.GetWaypointY(wp14), 0) - goto LABEL5 -LABEL5: - return -} -func ReleasePlayer() { - ns.MusicPopEvent() - ns.Frozen(ns.GetHost(), false) -} -func StartPriestSetPiece() { - if flag20 { - goto LABEL1 - } - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.MusicPushEvent() - ns.Music(10, 100) - flag20 = true - ns.AudioEvent(ns.BigGong, wp12) - ns.Frozen(ns.GetHost(), true) - ns.WideScreen(true) - ns.FrameTimer(60, PriestSetPieceSEG2) -LABEL1: - return -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapInitialize": - MapInitialize() - case "MapEntry": - MapEntry() - } -} diff --git a/examples/con08b/dummy_test.go b/examples/con08b/dummy_test.go deleted file mode 100644 index 8b9fb36..0000000 --- a/examples/con08b/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package con08b - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/con08c/con08c.go b/examples/con08c/con08c.go deleted file mode 100644 index 8aa6a1d..0000000 --- a/examples/con08c/con08c.go +++ /dev/null @@ -1,838 +0,0 @@ -package con08c - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - gvar4 ns.ObjectGroupID - gvar5 ns.ObjectGroupID - gvar6 ns.ObjectGroupID - wp7 ns.WaypointID - obj8 ns.ObjectID - obj9 ns.ObjectID - wp10 ns.WaypointID - wp11 ns.WaypointID - gvar12 ns.WallGroupID - gvar13 ns.WallGroupID - wp14 ns.WaypointID - obj15 ns.ObjectID - obj16 ns.ObjectID - obj17 ns.ObjectID - obj18 ns.ObjectID - obj19 ns.ObjectID - obj20 ns.ObjectID - obj21 ns.ObjectID - obj22 ns.ObjectID - wp23 ns.WaypointID - wp24 ns.WaypointID - wp25 ns.WaypointID - wp26 ns.WaypointID - wp27 ns.WaypointID - wp28 ns.WaypointID - wp29 ns.WaypointID - wp30 ns.WaypointID - wp31 ns.WaypointID - gvar32 int - gvar33 [10]ns.ObjectGroupID - gvar34 int - obj35 ns.ObjectID - obj36 [9]ns.ObjectID - gvar37 int - ivar38 int - ivar39 int - ivar40 int - ivar41 int - ivar42 int - ivar43 [10]int - flag44 [10]bool - wp45 [10]ns.WaypointID - str46 [6]string -) - -func init() { - gvar37 = 0 - ivar38 = 1 - ivar39 = 0 - ivar40 = 180 - ivar41 = 0 - ivar42 = 10 -} -func ArrowTrapAudio() { - ns.MoveWaypoint(wp7, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.BowShoot, wp7) - ns.AudioEvent(ns.CrossBowShoot, wp7) -} -func DisableArrowTrapGroup01() { - ns.ObjectGroupOff(gvar4) -} -func EnableArrowTrapGroup01() { - ns.ObjectGroupOn(gvar4) - ns.FrameTimer(1, DisableArrowTrapGroup01) -} -func DisableArrowTrapGroup02() { - ns.ObjectGroupOff(gvar5) -} -func ActivateArrowTrap02() { - ns.ObjectGroupOn(gvar5) - ns.FrameTimer(1, DisableArrowTrapGroup02) -} -func DisableArrowTrapGroup03() { - ns.ObjectGroupOff(gvar6) -} -func ActivateArrowTrap03() { - ns.ObjectGroupOn(gvar6) - ns.FrameTimer(1, DisableArrowTrapGroup03) -} -func BeholderAttackExit() { - if !(ns.CurrentHealth(obj8) > 0) { - goto LABEL1 - } - if ns.IsVisibleTo(obj8, ns.GetHost()) { - goto LABEL1 - } - ns.Move(obj8, wp11) -LABEL1: - return -} -func BeholderStay() { - if !ns.IsCaller(obj8) { - goto LABEL1 - } - ns.Wander(obj8) -LABEL1: - if !ns.IsCaller(obj9) { - goto LABEL2 - } - ns.Wander(obj9) -LABEL2: - return -} -func OpenBoulderHallWall01() { - ns.ObjectOff(ns.GetTrigger()) - ns.WallOpen(ns.Wall(104, 162)) -} -func OpenBoulderHallWall02() { - ns.ObjectOff(ns.GetTrigger()) - ns.WallOpen(ns.Wall(213, 107)) -} -func GoldKeyRemoved() { - ns.WallGroupOpen(gvar12) - ns.WallGroupOpen(gvar13) -} -func ReleaseGoldKeyBombers() { - ns.WallGroupOpen(gvar13) -} -func PlayerDeath() { - ns.DeathScreen(8) -} -func InitializeSummoningCircles() { - var v0 int - v0 = 0 - for { - if !(v0 < 10) { - goto LABEL1 - } - flag44[v0] = true - ivar43[v0] = 0 - v0 += 1 - } -LABEL1: - str46[0] = "UrchinShaman" - str46[1] = "Mimic" - str46[2] = "Bear" - str46[3] = "Urchin" - str46[4] = "Imp" - str46[5] = "WhiteWolf" - obj35 = ns.Object("SummoningCircleTreasureLight") - obj36[0] = ns.Object("SummoningCircleTreasure01") - obj36[1] = ns.Object("SummoningCircleTreasure02") - obj36[2] = ns.Object("SummoningCircleTreasure03") - obj36[3] = ns.Object("SummoningCircleTreasure04") - obj36[4] = ns.Object("SummoningCircleTreasure05") - obj36[5] = ns.Object("SummoningCircleTreasure06") - obj36[6] = ns.Object("SummoningCircleTreasure07") - obj36[7] = ns.Object("SummoningCircleTreasure08") - obj36[8] = ns.Object("SummoningCircleTreasure09") - wp45[0] = ns.Waypoint("SummoningCircle01WP") - wp45[1] = ns.Waypoint("SummoningCircle02WP") - wp45[2] = ns.Waypoint("SummoningCircle03WP") - wp45[3] = ns.Waypoint("SummoningCircle04WP") - wp45[4] = ns.Waypoint("SummoningCircle05WP") - wp45[5] = ns.Waypoint("SummoningCircle06WP") - wp45[6] = ns.Waypoint("SummoningCircle07WP") - wp45[7] = ns.Waypoint("SummoningCircle08WP") - wp45[8] = ns.Waypoint("SummoningCircle09WP") - wp45[9] = ns.Waypoint("SummoningCircle10WP") - gvar33[0] = ns.ObjectGroup("SummonCircle01Lights") - gvar33[1] = ns.ObjectGroup("SummonCircle02Lights") - gvar33[2] = ns.ObjectGroup("SummonCircle03Lights") - gvar33[3] = ns.ObjectGroup("SummonCircle04Lights") - gvar33[4] = ns.ObjectGroup("SummonCircle05Lights") - gvar33[5] = ns.ObjectGroup("SummonCircle06Lights") - gvar33[6] = ns.ObjectGroup("SummonCircle07Lights") - gvar33[7] = ns.ObjectGroup("SummonCircle08Lights") - gvar33[8] = ns.ObjectGroup("SummonCircle09Lights") - gvar33[9] = ns.ObjectGroup("SummonCircle10Lights") -} -func MapInitialize() { - obj8 = ns.Object("Beholder01") - obj9 = ns.Object("Beholder02") - obj15 = ns.Object("Beholder03") - obj16 = ns.Object("Bat01") - obj17 = ns.Object("StoneBlock01") - obj18 = ns.Object("StoneBlock02") - obj19 = ns.Object("StoneBlock03") - obj20 = ns.Object("StoneBlock04") - obj21 = ns.Object("BomberPitElevator") - obj22 = ns.Object("SpiderPitElevator") - wp23 = ns.Waypoint("StoneBlock01WP") - wp26 = ns.Waypoint("StoneBlock02Home") - wp28 = ns.Waypoint("StoneBlock03Home") - wp25 = ns.Waypoint("StoneBlock02Dest") - wp27 = ns.Waypoint("StoneBlock03Dest") - wp24 = ns.Waypoint("StoneBlock04WP") - wp14 = ns.Waypoint("GoldKeyWP") - wp30 = ns.Waypoint("BomberCreationWP") - wp10 = ns.Waypoint("BomberAudioOrigin") - wp29 = ns.Waypoint("Beholder01SetPieceWP") - wp11 = ns.Waypoint("BeholderRoomExitWP") - wp7 = ns.Waypoint("ArrowTrapAudioOrigin") - wp31 = ns.Waypoint("SecretAudioOrigin") - gvar4 = ns.ObjectGroup("ArrowTrapGroup01") - gvar5 = ns.ObjectGroup("ArrowTrapGroup02") - gvar6 = ns.ObjectGroup("ArrowTrapGroup03") - gvar12 = ns.WallGroup("GoldKeyWalls") - gvar13 = ns.WallGroup("BomberCageWalls") - InitializeSummoningCircles() -} -func MapEntry() { - ns.Music(18, 100) - ns.UnBlind() -} -func EnableSpiderPitElevator() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.ObjectOn(obj22) -LABEL1: - return -} -func SecretSFX() { - ns.MoveWaypoint(wp31, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretFound, wp31) -} -func Secret01Found() { - ns.ObjectOff(ns.GetTrigger()) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 100) - SecretSFX() -} -func SealTheTempleFX() { - var ( - v0 float32 - v1 float32 - ) - v0 = ns.GetObjectX(ns.GetHost()) - v1 = ns.GetObjectY(ns.GetHost()) - ns.AudioEvent(ns.HugeFoot, wp23) - ns.Effect(ns.JIGGLE, v0, v1, 10, 0) -} -func SealTheTemple() { - ns.ObjectOff(ns.GetTrigger()) - ns.Move(obj17, wp23) - ns.Move(obj20, wp24) - ns.AudioEvent(ns.BigGong, wp23) - ns.AudioEvent(ns.SecretWallClose, wp23) - ns.FrameTimer(10, SealTheTempleFX) -} -func EnableElevator() { - ns.ObjectOn(obj21) -} -func ReleasePlayer() { - ns.WideScreen(false) - ns.ClearOwner(obj8) - ns.Frozen(ns.GetHost(), false) - if !(ns.CurrentHealth(obj16) > 0) { - goto LABEL1 - } - ns.ObjectOn(obj16) -LABEL1: - ns.NoWallSound(true) - ns.WallClose(ns.Wall(169, 87)) - ns.NoWallSound(false) - ns.FrameTimer(60, EnableElevator) -} -func BeholderSetpieceSEG3() { - ns.FrameTimer(60, ReleasePlayer) -} -func BeholderSetpieceSEG2() { - ns.Move(obj8, wp29) - ns.FrameTimer(180, ReleasePlayer) -} -func BeholderSetpiece() { - ns.SetOwner(ns.GetHost(), obj8) - ns.ObjectOff(ns.GetTrigger()) - ns.Frozen(ns.GetHost(), true) - ns.CreatureIdle(ns.GetHost()) - ns.WideScreen(true) - if !(ns.CurrentHealth(obj16) > 0) { - goto LABEL1 - } - ns.ObjectOff(obj16) -LABEL1: - ns.FrameTimer(60, BeholderSetpieceSEG2) -} -func DisableBomberPitElevator() { - ns.ObjectOff(obj21) -} -func BlockGatesFX() { - var ( - v0 float32 - v1 float32 - ) - v0 = ns.GetObjectX(ns.GetHost()) - v1 = ns.GetObjectY(ns.GetHost()) - ns.AudioEvent(ns.HugeFoot, wp25) - ns.Effect(ns.JIGGLE, v0, v1, 10, 0) -} -func CloseBlockGates() { - ns.Move(obj18, wp25) - ns.Move(obj19, wp27) - ns.AudioEvent(ns.SecretWallClose, wp25) - ns.AudioEvent(ns.SecretWallClose, wp27) - ns.FrameTimer(10, BlockGatesFX) -} -func SealBeholderRoom() { - ns.ObjectOff(ns.GetTrigger()) - ns.WallClose(ns.Wall(209, 109)) - ns.MoveObject(obj8, ns.GetWaypointX(wp11), ns.GetWaypointY(wp11)) - ns.AggressionLevel(obj8, 0.83) - ns.AggressionLevel(obj9, 0.83) - ns.Wander(obj8) - ns.Wander(obj9) -} -func ResetSummonCircle(a1 int) { - flag44[a1] = true - ns.ObjectGroupOn(gvar33[a1]) -} -func SummoningCircleCleared(a1 int) { - ivar39 += 1 - if ivar39 != 9 { - goto LABEL1 - } - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 500) - ns.Effect(ns.BLUE_SPARKS, ns.GetWaypointX(wp45[a1]), ns.GetWaypointY(wp45[a1]), 0, 0) - ns.MoveObject(obj35, ns.GetWaypointX(wp45[a1]), ns.GetWaypointY(wp45[a1])) - ns.MoveObject(obj36[ivar39-1], ns.GetWaypointX(wp45[a1]), ns.GetWaypointY(wp45[a1])) - ns.AudioEvent(ns.SmallGong, wp45[a1]) - goto LABEL2 -LABEL1: - ns.Effect(ns.BLUE_SPARKS, ns.GetWaypointX(wp45[a1]), ns.GetWaypointY(wp45[a1]), 0, 0) - ns.MoveObject(obj35, ns.GetWaypointX(wp45[a1]), ns.GetWaypointY(wp45[a1])) - ns.MoveObject(obj36[ivar39-1], ns.GetWaypointX(wp45[a1]), ns.GetWaypointY(wp45[a1])) - ns.AudioEvent(ns.BigGong, wp45[a1]) -LABEL2: - return -} -func SummonCircle01Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar37 = 0 - if !(ns.IsCaller(ns.GetHost()) && flag44[gvar37] == true) { - goto LABEL1 - } - flag44[gvar37] = false - ns.ObjectGroupOff(gvar33[gvar37]) - ns.AudioEvent(ns.SummonCast, wp45[gvar37]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp45[gvar37]), ns.GetWaypointY(wp45[gvar37]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar42) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp45[gvar37]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp45[gvar37]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar41 = ns.Random(0, 5) - ns.CreateObject(str46[ivar41], wp45[gvar37]) -LABEL6: - ivar43[gvar37] += 1 - if !(ivar43[gvar37] > ivar38) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar37, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar40, gvar37, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle02Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar37 = 1 - if !(ns.IsCaller(ns.GetHost()) && flag44[gvar37] == true) { - goto LABEL1 - } - flag44[gvar37] = false - ns.ObjectGroupOff(gvar33[gvar37]) - ns.AudioEvent(ns.SummonCast, wp45[gvar37]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp45[gvar37]), ns.GetWaypointY(wp45[gvar37]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar42) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp45[gvar37]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp45[gvar37]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar41 = ns.Random(0, 5) - ns.CreateObject(str46[ivar41], wp45[gvar37]) -LABEL6: - ivar43[gvar37] += 1 - if !(ivar43[gvar37] > ivar38) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar37, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar40, gvar37, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle03Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar37 = 2 - if !(ns.IsCaller(ns.GetHost()) && flag44[gvar37] == true) { - goto LABEL1 - } - flag44[gvar37] = false - ns.ObjectGroupOff(gvar33[gvar37]) - ns.AudioEvent(ns.SummonCast, wp45[gvar37]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp45[gvar37]), ns.GetWaypointY(wp45[gvar37]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar42) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp45[gvar37]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp45[gvar37]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar41 = ns.Random(0, 5) - ns.CreateObject(str46[ivar41], wp45[gvar37]) -LABEL6: - ivar43[gvar37] += 1 - if !(ivar43[gvar37] > ivar38) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar37, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar40, gvar37, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle04Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar37 = 3 - if !(ns.IsCaller(ns.GetHost()) && flag44[gvar37] == true) { - goto LABEL1 - } - flag44[gvar37] = false - ns.ObjectGroupOff(gvar33[gvar37]) - ns.AudioEvent(ns.SummonCast, wp45[gvar37]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp45[gvar37]), ns.GetWaypointY(wp45[gvar37]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar42) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp45[gvar37]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp45[gvar37]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar41 = ns.Random(0, 5) - ns.CreateObject(str46[ivar41], wp45[gvar37]) -LABEL6: - ivar43[gvar37] += 1 - if !(ivar43[gvar37] > ivar38) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar37, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar40, gvar37, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle05Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar37 = 4 - if !(ns.IsCaller(ns.GetHost()) && flag44[gvar37] == true) { - goto LABEL1 - } - flag44[gvar37] = false - ns.ObjectGroupOff(gvar33[gvar37]) - ns.AudioEvent(ns.SummonCast, wp45[gvar37]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp45[gvar37]), ns.GetWaypointY(wp45[gvar37]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar42) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp45[gvar37]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp45[gvar37]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar41 = ns.Random(0, 5) - ns.CreateObject(str46[ivar41], wp45[gvar37]) -LABEL6: - ivar43[gvar37] += 1 - if !(ivar43[gvar37] > ivar38) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar37, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar40, gvar37, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle06Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar37 = 5 - if !(ns.IsCaller(ns.GetHost()) && flag44[gvar37] == true) { - goto LABEL1 - } - flag44[gvar37] = false - ns.ObjectGroupOff(gvar33[gvar37]) - ns.AudioEvent(ns.SummonCast, wp45[gvar37]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp45[gvar37]), ns.GetWaypointY(wp45[gvar37]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar42) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp45[gvar37]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp45[gvar37]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar41 = ns.Random(0, 5) - ns.CreateObject(str46[ivar41], wp45[gvar37]) -LABEL6: - ivar43[gvar37] += 1 - if !(ivar43[gvar37] > ivar38) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar37, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar40, gvar37, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle07Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar37 = 6 - if !(ns.IsCaller(ns.GetHost()) && flag44[gvar37] == true) { - goto LABEL1 - } - flag44[gvar37] = false - ns.ObjectGroupOff(gvar33[gvar37]) - ns.AudioEvent(ns.SummonCast, wp45[gvar37]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp45[gvar37]), ns.GetWaypointY(wp45[gvar37]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar42) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp45[gvar37]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp45[gvar37]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar41 = ns.Random(0, 5) - ns.CreateObject(str46[ivar41], wp45[gvar37]) -LABEL6: - ivar43[gvar37] += 1 - if !(ivar43[gvar37] > ivar38) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar37, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar40, gvar37, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle08Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar37 = 7 - if !(ns.IsCaller(ns.GetHost()) && flag44[gvar37] == true) { - goto LABEL1 - } - flag44[gvar37] = false - ns.ObjectGroupOff(gvar33[gvar37]) - ns.AudioEvent(ns.SummonCast, wp45[gvar37]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp45[gvar37]), ns.GetWaypointY(wp45[gvar37]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar42) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp45[gvar37]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp45[gvar37]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar41 = ns.Random(0, 5) - ns.CreateObject(str46[ivar41], wp45[gvar37]) -LABEL6: - ivar43[gvar37] += 1 - if !(ivar43[gvar37] > ivar38) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar37, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar40, gvar37, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle09Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar37 = 8 - if !(ns.IsCaller(ns.GetHost()) && flag44[gvar37] == true) { - goto LABEL1 - } - flag44[gvar37] = false - ns.ObjectGroupOff(gvar33[gvar37]) - ns.AudioEvent(ns.SummonCast, wp45[gvar37]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp45[gvar37]), ns.GetWaypointY(wp45[gvar37]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar42) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp45[gvar37]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp45[gvar37]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar41 = ns.Random(0, 5) - ns.CreateObject(str46[ivar41], wp45[gvar37]) -LABEL6: - ivar43[gvar37] += 1 - if !(ivar43[gvar37] > ivar38) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar37, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar40, gvar37, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle10Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar37 = 9 - if !(ns.IsCaller(ns.GetHost()) && flag44[gvar37] == true) { - goto LABEL1 - } - flag44[gvar37] = false - ns.ObjectGroupOff(gvar33[gvar37]) - ns.AudioEvent(ns.SummonCast, wp45[gvar37]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp45[gvar37]), ns.GetWaypointY(wp45[gvar37]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar42) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp45[gvar37]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp45[gvar37]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar41 = ns.Random(0, 5) - ns.CreateObject(str46[ivar41], wp45[gvar37]) -LABEL6: - ivar43[gvar37] += 1 - if !(ivar43[gvar37] > ivar38) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar37, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar40, gvar37, ResetSummonCircle) -LABEL1: - return -} -func EnableBomberPitElevator() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.ObjectOn(obj21) -LABEL1: - return -} -func OpenBomberPitExit() { - ns.ObjectOff(ns.GetTrigger()) - ns.WallOpen(ns.Wall(159, 109)) -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapInitialize": - MapInitialize() - case "MapEntry": - MapEntry() - } -} diff --git a/examples/con08c/dummy_test.go b/examples/con08c/dummy_test.go deleted file mode 100644 index 1e16616..0000000 --- a/examples/con08c/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package con08c - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/con08d/con08d.go b/examples/con08d/con08d.go deleted file mode 100644 index efca555..0000000 --- a/examples/con08d/con08d.go +++ /dev/null @@ -1,2351 +0,0 @@ -package con08d - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 ns.ObjectID - gvar5 ns.ObjectGroupID - gvar6 ns.ObjectGroupID - gvar7 ns.ObjectGroupID - gvar8 ns.ObjectGroupID - wp9 ns.WaypointID - ivar10 int - obj11 ns.ObjectID - obj12 ns.ObjectID - obj13 ns.ObjectID - obj14 ns.ObjectID - obj15 ns.ObjectID - obj16 ns.ObjectID - obj17 ns.ObjectID - obj18 ns.ObjectID - obj19 ns.ObjectID - obj20 ns.ObjectID - obj21 ns.ObjectID - obj22 ns.ObjectID - obj23 ns.ObjectID - obj24 ns.ObjectID - wp25 ns.WaypointID - wp26 ns.WaypointID - obj27 ns.ObjectID - obj28 ns.ObjectID - obj29 ns.ObjectID - obj30 ns.ObjectID - obj31 ns.ObjectID - obj32 ns.ObjectID - obj33 ns.ObjectID - obj34 ns.ObjectID - obj35 ns.ObjectID - obj36 ns.ObjectID - obj37 ns.ObjectID - obj38 ns.ObjectID - obj39 ns.ObjectID - obj40 ns.ObjectID - fvar41 float32 - fvar42 float32 - ivar43 int - str44 [3]string - obj45 ns.ObjectID - obj46 ns.ObjectID - obj47 ns.ObjectID - wp48 ns.WaypointID - wp49 ns.WaypointID - wp50 ns.WaypointID - wp51 ns.WaypointID - wp52 ns.WaypointID - flag53 bool - obj54 ns.ObjectID - obj55 ns.ObjectID - gvar56 ns.WallGroupID - obj57 ns.ObjectID - obj58 ns.ObjectID - obj59 ns.ObjectID - obj60 ns.ObjectID - obj61 ns.ObjectID - obj62 ns.ObjectID - obj63 ns.ObjectID - obj64 ns.ObjectID - obj65 ns.ObjectID - obj66 ns.ObjectID - obj67 ns.ObjectID - gvar68 ns.ObjectGroupID - wp69 ns.WaypointID - wp70 ns.WaypointID - wp71 ns.WaypointID - wp72 ns.WaypointID - wp73 ns.WaypointID - wp74 ns.WaypointID - wp75 ns.WaypointID - obj76 ns.ObjectID - obj77 [15]ns.ObjectID - gvar78 [21]ns.ObjectGroupID - gvar79 int - ivar80 int - ivar81 int - ivar82 int - ivar83 int - ivar84 int - ivar85 [21]int - flag86 [21]bool - wp87 [21]ns.WaypointID - str88 [6]string -) - -func init() { - ivar10 = 0 - fvar41 = 0 - fvar42 = 0 - ivar43 = 0 - flag53 = false - gvar79 = 0 - ivar80 = 1 - ivar81 = 0 - ivar82 = 10 - ivar83 = 180 - ivar84 = 0 -} -func ArrowTrapAudio() { - ns.MoveWaypoint(wp9, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) -} -func DisableArrowTrap01() { - ns.ObjectGroupOff(gvar5) -} -func ActivateArrowTrap01() { - ns.ObjectGroupOn(gvar5) - ns.FrameTimer(1, DisableArrowTrap01) -} -func DisableArrowTrap02() { - ns.ObjectGroupOff(gvar6) -} -func ActivateArrowTrap02() { - ns.ObjectGroupOn(gvar6) - ns.FrameTimer(1, DisableArrowTrap02) -} -func DisableArrowTrap03() { - ns.ObjectGroupOff(gvar7) -} -func ActivateArrowTrap03() { - ns.ObjectGroupOn(gvar7) - ns.FrameTimer(1, DisableArrowTrap03) -} -func DisableUltimateArrowTrapGuns() { - ns.ObjectGroupOff(gvar8) -} -func ResetUltimateArrowTrap() { - ns.ObjectOn(obj4) -} -func UltimateArrowTrapLoop() { - if !(ivar10 < 8) { - goto LABEL1 - } - ivar10 += 1 - ns.ObjectGroupOn(gvar8) - ns.FrameTimer(1, DisableUltimateArrowTrapGuns) - ns.FrameTimer(10, UltimateArrowTrapLoop) -LABEL1: - if ivar10 != 8 { - goto LABEL2 - } - ivar10 = 0 - ns.ObjectGroupOn(gvar8) - ns.FrameTimer(1, DisableUltimateArrowTrapGuns) - ns.FrameTimer(10, ResetUltimateArrowTrap) -LABEL2: - return -} -func ActivateUltimateArrowTrap() { - ns.ObjectOff(ns.GetTrigger()) - ns.ObjectGroupOn(gvar8) - ns.FrameTimer(1, DisableUltimateArrowTrapGuns) - ns.FrameTimer(10, UltimateArrowTrapLoop) -} -func InitializeBeholders() { - str44[0] = "SPELL_STUN" - str44[1] = "SPELL_CONFUSE" - str44[2] = "SPELL_FUMBLE" -} -func BeholderIdle() { - ns.Wander(ns.GetTrigger()) -} -func Beholder01Bombers() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 int - ) - _ = v3 - _ = v2 - if !(ns.CurrentHealth(obj11) > 0 && ns.CurrentHealth(obj27) <= 0) { - goto LABEL1 - } - v0 = ns.GetObjectX(obj11) - v1 = ns.GetObjectY(obj11) - ns.MoveWaypoint(wp26, v0, v1) - ns.AudioEvent(ns.SummonCast, wp26) - v2 = ns.RandomFloat(fvar41, fvar42) - v3 = ns.RandomFloat(fvar41, fvar42) - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - ivar43 = ns.Random(0, 2) - v4 = ivar43 - if v4 == 0 { - goto LABEL2 - } - if v4 == 1 { - goto LABEL3 - } - if v4 == 2 { - goto LABEL4 - } - goto LABEL5 -LABEL2: - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj27 = ns.CreateObject("BomberBlue", wp25) - ns.TrapSpells(obj27, str44[ivar43], "", "") - goto LABEL5 -LABEL3: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj27 = ns.CreateObject("BomberGreen", wp25) - ns.TrapSpells(obj27, str44[ivar43], "", "") - goto LABEL5 -LABEL4: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj27 = ns.CreateObject("BomberYellow", wp25) - ns.TrapSpells(obj27, str44[ivar43], "", "") - goto LABEL5 -LABEL5: - ns.SetOwner(obj11, obj27) - ns.CreatureFollow(obj27, obj11) -LABEL1: - return -} -func Beholder01Recognize() { - ns.FrameTimer(90, Beholder01Bombers) -} -func Beholder01Die() { - ns.Damage(obj27, 0, 500, 0) -} -func Beholder02Bombers() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 int - ) - _ = v3 - _ = v2 - if !(ns.CurrentHealth(obj12) > 0 && ns.CurrentHealth(obj28) <= 0) { - goto LABEL1 - } - v0 = ns.GetObjectX(obj12) - v1 = ns.GetObjectY(obj12) - ns.MoveWaypoint(wp26, v0, v1) - ns.AudioEvent(ns.SummonCast, wp26) - v2 = ns.RandomFloat(fvar41, fvar42) - v3 = ns.RandomFloat(fvar41, fvar42) - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - ivar43 = ns.Random(0, 2) - v4 = ivar43 - if v4 == 0 { - goto LABEL2 - } - if v4 == 1 { - goto LABEL3 - } - if v4 == 2 { - goto LABEL4 - } - goto LABEL5 -LABEL2: - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj28 = ns.CreateObject("BomberBlue", wp25) - ns.TrapSpells(obj28, str44[ivar43], "", "") - goto LABEL5 -LABEL3: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj28 = ns.CreateObject("BomberGreen", wp25) - ns.TrapSpells(obj28, str44[ivar43], "", "") - goto LABEL5 -LABEL4: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj28 = ns.CreateObject("BomberYellow", wp25) - ns.TrapSpells(obj28, str44[ivar43], "", "") - goto LABEL5 -LABEL5: - ns.SetOwner(obj12, obj28) - ns.CreatureFollow(obj28, obj12) -LABEL1: - return -} -func Beholder02Recognize() { - ns.FrameTimer(90, Beholder02Bombers) -} -func Beholder02Die() { - ns.Damage(obj28, 0, 500, 0) -} -func Beholder03Bombers() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 int - ) - _ = v3 - _ = v2 - if !(ns.CurrentHealth(obj13) > 0 && ns.CurrentHealth(obj29) <= 0) { - goto LABEL1 - } - v0 = ns.GetObjectX(obj13) - v1 = ns.GetObjectY(obj13) - ns.MoveWaypoint(wp26, v0, v1) - ns.AudioEvent(ns.SummonCast, wp26) - v2 = ns.RandomFloat(fvar41, fvar42) - v3 = ns.RandomFloat(fvar41, fvar42) - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - ivar43 = ns.Random(0, 2) - v4 = ivar43 - if v4 == 0 { - goto LABEL2 - } - if v4 == 1 { - goto LABEL3 - } - if v4 == 2 { - goto LABEL4 - } - goto LABEL5 -LABEL2: - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj29 = ns.CreateObject("BomberBlue", wp25) - ns.TrapSpells(obj29, str44[ivar43], "", "") - goto LABEL5 -LABEL3: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj29 = ns.CreateObject("BomberGreen", wp25) - ns.TrapSpells(obj29, str44[ivar43], "", "") - goto LABEL5 -LABEL4: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj29 = ns.CreateObject("BomberYellow", wp25) - ns.TrapSpells(obj29, str44[ivar43], "", "") - goto LABEL5 -LABEL5: - ns.SetOwner(obj13, obj29) - ns.CreatureFollow(obj29, obj13) -LABEL1: - return -} -func Beholder03Recognize() { - ns.FrameTimer(90, Beholder03Bombers) -} -func Beholder03Die() { - ns.Damage(obj29, 0, 500, 0) -} -func Beholder04Bombers() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 int - ) - _ = v3 - _ = v2 - if !(ns.CurrentHealth(obj14) > 0 && ns.CurrentHealth(obj30) <= 0) { - goto LABEL1 - } - v0 = ns.GetObjectX(obj14) - v1 = ns.GetObjectY(obj14) - ns.MoveWaypoint(wp26, v0, v1) - ns.AudioEvent(ns.SummonCast, wp26) - v2 = ns.RandomFloat(fvar41, fvar42) - v3 = ns.RandomFloat(fvar41, fvar42) - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - ivar43 = ns.Random(0, 2) - v4 = ivar43 - if v4 == 0 { - goto LABEL2 - } - if v4 == 1 { - goto LABEL3 - } - if v4 == 2 { - goto LABEL4 - } - goto LABEL5 -LABEL2: - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj30 = ns.CreateObject("BomberBlue", wp25) - ns.TrapSpells(obj30, str44[ivar43], "", "") - goto LABEL5 -LABEL3: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj30 = ns.CreateObject("BomberGreen", wp25) - ns.TrapSpells(obj30, str44[ivar43], "", "") - goto LABEL5 -LABEL4: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj30 = ns.CreateObject("BomberYellow", wp25) - ns.TrapSpells(obj30, str44[ivar43], "", "") - goto LABEL5 -LABEL5: - ns.SetOwner(obj14, obj30) - ns.CreatureFollow(obj30, obj14) -LABEL1: - return -} -func Beholder04Recognize() { - ns.FrameTimer(90, Beholder04Bombers) -} -func Beholder04Die() { - ns.Damage(obj30, 0, 500, 0) -} -func Beholder05Bombers() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 int - ) - _ = v3 - _ = v2 - if !(ns.CurrentHealth(obj15) > 0 && ns.CurrentHealth(obj31) <= 0) { - goto LABEL1 - } - v0 = ns.GetObjectX(obj15) - v1 = ns.GetObjectY(obj15) - ns.MoveWaypoint(wp26, v0, v1) - ns.AudioEvent(ns.SummonCast, wp26) - v2 = ns.RandomFloat(fvar41, fvar42) - v3 = ns.RandomFloat(fvar41, fvar42) - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - ivar43 = ns.Random(0, 2) - v4 = ivar43 - if v4 == 0 { - goto LABEL2 - } - if v4 == 1 { - goto LABEL3 - } - if v4 == 2 { - goto LABEL4 - } - goto LABEL5 -LABEL2: - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj31 = ns.CreateObject("BomberBlue", wp25) - ns.TrapSpells(obj31, str44[ivar43], "", "") - goto LABEL5 -LABEL3: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj31 = ns.CreateObject("BomberGreen", wp25) - ns.TrapSpells(obj31, str44[ivar43], "", "") - goto LABEL5 -LABEL4: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj31 = ns.CreateObject("BomberYellow", wp25) - ns.TrapSpells(obj31, str44[ivar43], "", "") - goto LABEL5 -LABEL5: - ns.SetOwner(obj15, obj31) - ns.CreatureFollow(obj31, obj15) -LABEL1: - return -} -func Beholder05Recognize() { - ns.FrameTimer(90, Beholder05Bombers) -} -func Beholder05Die() { - ns.Damage(obj31, 0, 500, 0) -} -func Beholder06Bombers() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 int - ) - _ = v3 - _ = v2 - if !(ns.CurrentHealth(obj16) > 0 && ns.CurrentHealth(obj32) <= 0) { - goto LABEL1 - } - v0 = ns.GetObjectX(obj16) - v1 = ns.GetObjectY(obj16) - ns.MoveWaypoint(wp26, v0, v1) - ns.AudioEvent(ns.SummonCast, wp26) - v2 = ns.RandomFloat(fvar41, fvar42) - v3 = ns.RandomFloat(fvar41, fvar42) - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - ivar43 = ns.Random(0, 2) - v4 = ivar43 - if v4 == 0 { - goto LABEL2 - } - if v4 == 1 { - goto LABEL3 - } - if v4 == 2 { - goto LABEL4 - } - goto LABEL5 -LABEL2: - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj32 = ns.CreateObject("BomberBlue", wp25) - ns.TrapSpells(obj32, str44[ivar43], "", "") - goto LABEL5 -LABEL3: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj32 = ns.CreateObject("BomberGreen", wp25) - ns.TrapSpells(obj32, str44[ivar43], "", "") - goto LABEL5 -LABEL4: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj32 = ns.CreateObject("BomberYellow", wp25) - ns.TrapSpells(obj32, str44[ivar43], "", "") - goto LABEL5 -LABEL5: - ns.SetOwner(obj16, obj32) - ns.CreatureFollow(obj32, obj16) -LABEL1: - return -} -func Beholder06Recognize() { - ns.FrameTimer(90, Beholder06Bombers) -} -func Beholder06Die() { - ns.Damage(obj32, 0, 500, 0) -} -func Beholder07Bombers() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 int - ) - _ = v3 - _ = v2 - if !(ns.CurrentHealth(obj17) > 0 && ns.CurrentHealth(obj33) <= 0) { - goto LABEL1 - } - v0 = ns.GetObjectX(obj17) - v1 = ns.GetObjectY(obj17) - ns.MoveWaypoint(wp26, v0, v1) - ns.AudioEvent(ns.SummonCast, wp26) - v2 = ns.RandomFloat(fvar41, fvar42) - v3 = ns.RandomFloat(fvar41, fvar42) - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - ivar43 = ns.Random(0, 2) - v4 = ivar43 - if v4 == 0 { - goto LABEL2 - } - if v4 == 1 { - goto LABEL3 - } - if v4 == 2 { - goto LABEL4 - } - goto LABEL5 -LABEL2: - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj33 = ns.CreateObject("BomberBlue", wp25) - ns.TrapSpells(obj33, str44[ivar43], "", "") - goto LABEL5 -LABEL3: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj33 = ns.CreateObject("BomberGreen", wp25) - ns.TrapSpells(obj33, str44[ivar43], "", "") - goto LABEL5 -LABEL4: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj33 = ns.CreateObject("BomberYellow", wp25) - ns.TrapSpells(obj33, str44[ivar43], "", "") - goto LABEL5 -LABEL5: - ns.SetOwner(obj17, obj33) - ns.CreatureFollow(obj33, obj17) -LABEL1: - return -} -func Beholder07Recognize() { - ns.FrameTimer(90, Beholder07Bombers) -} -func Beholder07Die() { - ns.Damage(obj33, 0, 500, 0) -} -func Beholder08Bombers() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 int - ) - _ = v3 - _ = v2 - if !(ns.CurrentHealth(obj18) > 0 && ns.CurrentHealth(obj34) <= 0) { - goto LABEL1 - } - v0 = ns.GetObjectX(obj18) - v1 = ns.GetObjectY(obj18) - ns.MoveWaypoint(wp26, v0, v1) - ns.AudioEvent(ns.SummonCast, wp26) - v2 = ns.RandomFloat(fvar41, fvar42) - v3 = ns.RandomFloat(fvar41, fvar42) - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - ivar43 = ns.Random(0, 2) - v4 = ivar43 - if v4 == 0 { - goto LABEL2 - } - if v4 == 1 { - goto LABEL3 - } - if v4 == 2 { - goto LABEL4 - } - goto LABEL5 -LABEL2: - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj34 = ns.CreateObject("BomberBlue", wp25) - ns.TrapSpells(obj34, str44[ivar43], "", "") - goto LABEL5 -LABEL3: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj34 = ns.CreateObject("BomberGreen", wp25) - ns.TrapSpells(obj34, str44[ivar43], "", "") - goto LABEL5 -LABEL4: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj34 = ns.CreateObject("BomberYellow", wp25) - ns.TrapSpells(obj34, str44[ivar43], "", "") - goto LABEL5 -LABEL5: - ns.SetOwner(obj18, obj34) - ns.CreatureFollow(obj34, obj18) -LABEL1: - return -} -func Beholder08Recognize() { - ns.FrameTimer(90, Beholder08Bombers) -} -func Beholder08Die() { - ns.Damage(obj34, 0, 500, 0) -} -func Beholder09Bombers() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 int - ) - _ = v3 - _ = v2 - if !(ns.CurrentHealth(obj19) > 0 && ns.CurrentHealth(obj35) <= 0) { - goto LABEL1 - } - v0 = ns.GetObjectX(obj19) - v1 = ns.GetObjectY(obj19) - ns.MoveWaypoint(wp26, v0, v1) - ns.AudioEvent(ns.SummonCast, wp26) - v2 = ns.RandomFloat(fvar41, fvar42) - v3 = ns.RandomFloat(fvar41, fvar42) - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - ivar43 = ns.Random(0, 2) - v4 = ivar43 - if v4 == 0 { - goto LABEL2 - } - if v4 == 1 { - goto LABEL3 - } - if v4 == 2 { - goto LABEL4 - } - goto LABEL5 -LABEL2: - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj35 = ns.CreateObject("BomberBlue", wp25) - ns.TrapSpells(obj35, str44[ivar43], "", "") - goto LABEL5 -LABEL3: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj35 = ns.CreateObject("BomberGreen", wp25) - ns.TrapSpells(obj35, str44[ivar43], "", "") - goto LABEL5 -LABEL4: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj35 = ns.CreateObject("BomberYellow", wp25) - ns.TrapSpells(obj35, str44[ivar43], "", "") - goto LABEL5 -LABEL5: - ns.SetOwner(obj19, obj35) - ns.CreatureFollow(obj35, obj19) -LABEL1: - return -} -func Beholder09Recognize() { - ns.FrameTimer(90, Beholder09Bombers) -} -func Beholder09Die() { - ns.Damage(obj35, 0, 500, 0) -} -func Beholder10Bombers() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 int - ) - _ = v3 - _ = v2 - if !(ns.CurrentHealth(obj20) > 0 && ns.CurrentHealth(obj36) <= 0) { - goto LABEL1 - } - v0 = ns.GetObjectX(obj20) - v1 = ns.GetObjectY(obj20) - ns.MoveWaypoint(wp26, v0, v1) - ns.AudioEvent(ns.SummonCast, wp26) - v2 = ns.RandomFloat(fvar41, fvar42) - v3 = ns.RandomFloat(fvar41, fvar42) - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - ivar43 = ns.Random(0, 2) - v4 = ivar43 - if v4 == 0 { - goto LABEL2 - } - if v4 == 1 { - goto LABEL3 - } - if v4 == 2 { - goto LABEL4 - } - goto LABEL5 -LABEL2: - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj36 = ns.CreateObject("BomberBlue", wp25) - ns.TrapSpells(obj36, str44[ivar43], "", "") - goto LABEL5 -LABEL3: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj36 = ns.CreateObject("BomberGreen", wp25) - ns.TrapSpells(obj36, str44[ivar43], "", "") - goto LABEL5 -LABEL4: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj36 = ns.CreateObject("BomberYellow", wp25) - ns.TrapSpells(obj36, str44[ivar43], "", "") - goto LABEL5 -LABEL5: - ns.SetOwner(obj20, obj36) - ns.CreatureFollow(obj36, obj20) -LABEL1: - return -} -func Beholder10Recognize() { - ns.FrameTimer(90, Beholder10Bombers) -} -func Beholder10Die() { - ns.Damage(obj36, 0, 500, 0) -} -func Beholder11Bombers() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 int - ) - _ = v3 - _ = v2 - if !(ns.CurrentHealth(obj21) > 0 && ns.CurrentHealth(obj37) <= 0) { - goto LABEL1 - } - v0 = ns.GetObjectX(obj21) - v1 = ns.GetObjectY(obj21) - ns.MoveWaypoint(wp26, v0, v1) - ns.AudioEvent(ns.SummonCast, wp26) - v2 = ns.RandomFloat(fvar41, fvar42) - v3 = ns.RandomFloat(fvar41, fvar42) - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - ivar43 = ns.Random(0, 2) - v4 = ivar43 - if v4 == 0 { - goto LABEL2 - } - if v4 == 1 { - goto LABEL3 - } - if v4 == 2 { - goto LABEL4 - } - goto LABEL5 -LABEL2: - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj37 = ns.CreateObject("BomberBlue", wp25) - ns.TrapSpells(obj37, str44[ivar43], "", "") - goto LABEL5 -LABEL3: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj37 = ns.CreateObject("BomberGreen", wp25) - ns.TrapSpells(obj37, str44[ivar43], "", "") - goto LABEL5 -LABEL4: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj37 = ns.CreateObject("BomberYellow", wp25) - ns.TrapSpells(obj37, str44[ivar43], "", "") - goto LABEL5 -LABEL5: - ns.SetOwner(obj21, obj37) - ns.CreatureFollow(obj37, obj21) -LABEL1: - return -} -func Beholder11Recognize() { - ns.FrameTimer(90, Beholder11Bombers) -} -func Beholder11Die() { - ns.Damage(obj37, 0, 500, 0) -} -func Beholder12Bombers() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 int - ) - _ = v3 - _ = v2 - if !(ns.CurrentHealth(obj22) > 0 && ns.CurrentHealth(obj38) <= 0) { - goto LABEL1 - } - v0 = ns.GetObjectX(obj22) - v1 = ns.GetObjectY(obj22) - ns.MoveWaypoint(wp26, v0, v1) - ns.AudioEvent(ns.SummonCast, wp26) - v2 = ns.RandomFloat(fvar41, fvar42) - v3 = ns.RandomFloat(fvar41, fvar42) - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - ivar43 = ns.Random(0, 2) - v4 = ivar43 - if v4 == 0 { - goto LABEL2 - } - if v4 == 1 { - goto LABEL3 - } - if v4 == 2 { - goto LABEL4 - } - goto LABEL5 -LABEL2: - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj38 = ns.CreateObject("BomberBlue", wp25) - ns.TrapSpells(obj38, str44[ivar43], "", "") - goto LABEL5 -LABEL3: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj38 = ns.CreateObject("BomberGreen", wp25) - ns.TrapSpells(obj38, str44[ivar43], "", "") - goto LABEL5 -LABEL4: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj38 = ns.CreateObject("BomberYellow", wp25) - ns.TrapSpells(obj38, str44[ivar43], "", "") - goto LABEL5 -LABEL5: - ns.SetOwner(obj22, obj38) - ns.CreatureFollow(obj38, obj22) -LABEL1: - return -} -func Beholder12Recognize() { - ns.FrameTimer(90, Beholder12Bombers) -} -func Beholder12Die() { - ns.Damage(obj38, 0, 500, 0) -} -func Beholder13Bombers() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 int - ) - _ = v3 - _ = v2 - if !(ns.CurrentHealth(obj23) > 0 && ns.CurrentHealth(obj39) <= 0) { - goto LABEL1 - } - v0 = ns.GetObjectX(obj23) - v1 = ns.GetObjectY(obj23) - ns.MoveWaypoint(wp26, v0, v1) - ns.AudioEvent(ns.SummonCast, wp26) - v2 = ns.RandomFloat(fvar41, fvar42) - v3 = ns.RandomFloat(fvar41, fvar42) - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - ivar43 = ns.Random(0, 2) - v4 = ivar43 - if v4 == 0 { - goto LABEL2 - } - if v4 == 1 { - goto LABEL3 - } - if v4 == 2 { - goto LABEL4 - } - goto LABEL5 -LABEL2: - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj39 = ns.CreateObject("BomberBlue", wp25) - ns.TrapSpells(obj39, str44[ivar43], "", "") - goto LABEL5 -LABEL3: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj39 = ns.CreateObject("BomberGreen", wp25) - ns.TrapSpells(obj39, str44[ivar43], "", "") - goto LABEL5 -LABEL4: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj39 = ns.CreateObject("BomberYellow", wp25) - ns.TrapSpells(obj39, str44[ivar43], "", "") - goto LABEL5 -LABEL5: - ns.SetOwner(obj23, obj39) - ns.CreatureFollow(obj39, obj23) -LABEL1: - return -} -func Beholder13Recognize() { - ns.FrameTimer(90, Beholder13Bombers) -} -func Beholder13Die() { - ns.Damage(obj39, 0, 500, 0) -} -func Beholder14Bombers() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 int - ) - _ = v3 - _ = v2 - if !(ns.CurrentHealth(obj24) > 0 && ns.CurrentHealth(obj40) <= 0) { - goto LABEL1 - } - v0 = ns.GetObjectX(obj24) - v1 = ns.GetObjectY(obj24) - ns.MoveWaypoint(wp26, v0, v1) - ns.AudioEvent(ns.SummonCast, wp26) - v2 = ns.RandomFloat(fvar41, fvar42) - v3 = ns.RandomFloat(fvar41, fvar42) - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - ivar43 = ns.Random(0, 2) - v4 = ivar43 - if v4 == 0 { - goto LABEL2 - } - if v4 == 1 { - goto LABEL3 - } - if v4 == 2 { - goto LABEL4 - } - goto LABEL5 -LABEL2: - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj40 = ns.CreateObject("BomberBlue", wp25) - ns.TrapSpells(obj40, str44[ivar43], "", "") - goto LABEL5 -LABEL3: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj40 = ns.CreateObject("BomberGreen", wp25) - ns.TrapSpells(obj40, str44[ivar43], "", "") - goto LABEL5 -LABEL4: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj40 = ns.CreateObject("BomberYellow", wp25) - ns.TrapSpells(obj40, str44[ivar43], "", "") - goto LABEL5 -LABEL5: - ns.SetOwner(obj24, obj40) - ns.CreatureFollow(obj40, obj24) -LABEL1: - return -} -func Beholder14Recognize() { - ns.FrameTimer(90, Beholder14Bombers) -} -func Beholder14Die() { - ns.Damage(obj40, 0, 500, 0) -} -func OpenBlockPassage() { - ns.ObjectOff(ns.GetTrigger()) - ns.AudioEvent(ns.SpikeBlockMove, wp52) - ns.Move(obj45, wp48) - ns.Move(obj46, wp49) - ns.Move(obj47, wp51) -} -func SealBlockRoom() { - ns.ObjectOff(ns.GetTrigger()) - ns.AudioEvent(ns.SpikeBlockMove, wp50) - ns.Move(obj46, wp50) -} -func CagedAnimalDie() { - if flag53 { - goto LABEL1 - } - flag53 = true - ns.WallGroupBreak(gvar56) -LABEL1: - return -} -func UnlockBearCage() { - ns.ObjectOff(ns.GetTrigger()) - ns.UnlockDoor(obj54) - ns.UnlockDoor(obj55) -} -func PlayerDeath() { - ns.DeathScreen(8) -} -func FireFONTrap01() { - ns.CastSpellObjectLocation(ns.SPELL_FORCE_OF_NATURE, obj57, ns.GetWaypointX(wp69), ns.GetWaypointY(wp69)) - ns.CastSpellObjectLocation(ns.SPELL_FORCE_OF_NATURE, obj58, ns.GetWaypointX(wp70), ns.GetWaypointY(wp70)) - ns.SecondTimer(5, FireFONTrap01) -} -func EndFONSetpiece() { - ns.Frozen(ns.GetHost(), false) - ns.WideScreen(false) -} -func BearAttack() { - ns.EnchantOff(obj62, ns.ENCHANT_INVULNERABLE) - ns.AggressionLevel(obj62, 0.83) - ns.Attack(obj62, ns.GetHost()) - ns.FrameTimer(45, FireFONTrap01) -} -func InitializeFONtraps() { - obj57 = ns.Object("FON_Origin01") - obj58 = ns.Object("FON_Origin02") - obj59 = ns.Object("FON_Origin03") - obj60 = ns.Object("FON_Origin04") - obj61 = ns.Object("FON_Origin05") - obj62 = ns.Object("Bear01") - obj63 = ns.Object("SpikeTrapDoor01") - obj64 = ns.Object("SpikeTrapDoor02") - obj65 = ns.Object("SpikeTrapDoor03") - obj66 = ns.Object("SpikeTrapDoor04") - gvar68 = ns.ObjectGroup("SpikeGroup01") - wp69 = ns.Waypoint("FON_Target01") - wp70 = ns.Waypoint("FON_Target02") - wp71 = ns.Waypoint("FON_Target03") - wp72 = ns.Waypoint("FON_Target04") - wp73 = ns.Waypoint("FON_Target05") - wp74 = ns.Waypoint("SpikeTrapAudioOrigin") - ns.Enchant(obj62, ns.ENCHANT_INVULNERABLE, 0) -} -func StartFONSetpiece() { - ns.ObjectOff(ns.GetTrigger()) - ns.Frozen(ns.GetHost(), true) - ns.WideScreen(true) - ns.CreatureIdle(ns.GetHost()) - BearAttack() -} -func BearDie() { - ns.FrameTimer(60, EndFONSetpiece) -} -func BearInjured() { - ns.Damage(ns.GetTrigger(), 0, 300, 0) -} -func FireFONTrap02() { - ns.CastSpellObjectLocation(ns.SPELL_FORCE_OF_NATURE, obj59, ns.GetWaypointX(wp71), ns.GetWaypointY(wp71)) - ns.CastSpellObjectLocation(ns.SPELL_FORCE_OF_NATURE, obj60, ns.GetWaypointX(wp72), ns.GetWaypointY(wp72)) -} -func EnableSpikeTrap() { - ns.ObjectGroupOn(gvar68) - ns.ObjectOn(obj67) - ns.AudioEvent(ns.FloorSpikesUp, wp74) - ns.LockDoor(obj63) - ns.LockDoor(obj64) - ns.LockDoor(obj65) - ns.LockDoor(obj66) -} -func DisableSpikeTrap() { - ns.ObjectGroupOff(gvar68) - ns.ObjectOff(obj67) - ns.AudioEvent(ns.FloorSpikesDown, wp74) - ns.UnlockDoor(obj63) - ns.UnlockDoor(obj64) - ns.UnlockDoor(obj65) - ns.UnlockDoor(obj66) -} -func InitializeSummoningCircles() { - var v0 int - v0 = 0 - for { - if !(v0 < 21) { - goto LABEL1 - } - flag86[v0] = true - ivar85[v0] = 0 - v0 += 1 - } -LABEL1: - str88[0] = "UrchinShaman" - str88[1] = "Mimic" - str88[2] = "Bear" - str88[3] = "Urchin" - str88[4] = "Imp" - str88[5] = "WhiteWolf" - obj76 = ns.Object("SummoningCircleTreasureLight") - obj77[0] = ns.Object("SummoningCircleTreasure01") - obj77[1] = ns.Object("SummoningCircleTreasure02") - obj77[2] = ns.Object("SummoningCircleTreasure03") - obj77[3] = ns.Object("SummoningCircleTreasure04") - obj77[4] = ns.Object("SummoningCircleTreasure05") - obj77[5] = ns.Object("SummoningCircleTreasure06") - obj77[6] = ns.Object("SummoningCircleTreasure07") - obj77[7] = ns.Object("SummoningCircleTreasure08") - obj77[8] = ns.Object("SummoningCircleTreasure09") - obj77[9] = ns.Object("SummoningCircleTreasure10") - obj77[10] = ns.Object("SummoningCircleTreasure11") - obj77[11] = ns.Object("SummoningCircleTreasure12") - obj77[12] = ns.Object("SummoningCircleTreasure13") - obj77[13] = ns.Object("SummoningCircleTreasure14") - obj77[14] = ns.Object("SummoningCircleTreasure15") - wp87[0] = ns.Waypoint("SummoningCircle01WP") - wp87[1] = ns.Waypoint("SummoningCircle02WP") - wp87[2] = ns.Waypoint("SummoningCircle03WP") - wp87[3] = ns.Waypoint("SummoningCircle04WP") - wp87[4] = ns.Waypoint("SummoningCircle05WP") - wp87[5] = ns.Waypoint("SummoningCircle06WP") - wp87[6] = ns.Waypoint("SummoningCircle07WP") - wp87[7] = ns.Waypoint("SummoningCircle08WP") - wp87[8] = ns.Waypoint("SummoningCircle09WP") - wp87[9] = ns.Waypoint("SummoningCircle10WP") - wp87[10] = ns.Waypoint("SummoningCircle11WP") - wp87[11] = ns.Waypoint("SummoningCircle12WP") - wp87[12] = ns.Waypoint("SummoningCircle13WP") - wp87[13] = ns.Waypoint("SummoningCircle14WP") - wp87[14] = ns.Waypoint("SummoningCircle15WP") - wp87[15] = ns.Waypoint("SummoningCircle16WP") - wp87[16] = ns.Waypoint("SummoningCircle17WP") - wp87[17] = ns.Waypoint("SummoningCircle18WP") - wp87[18] = ns.Waypoint("SummoningCircle19WP") - wp87[19] = ns.Waypoint("SummoningCircle20WP") - wp87[20] = ns.Waypoint("SummoningCircle21WP") - gvar78[0] = ns.ObjectGroup("SummonCircle01Lights") - gvar78[1] = ns.ObjectGroup("SummonCircle02Lights") - gvar78[2] = ns.ObjectGroup("SummonCircle03Lights") - gvar78[3] = ns.ObjectGroup("SummonCircle04Lights") - gvar78[4] = ns.ObjectGroup("SummonCircle05Lights") - gvar78[5] = ns.ObjectGroup("SummonCircle06Lights") - gvar78[6] = ns.ObjectGroup("SummonCircle07Lights") - gvar78[7] = ns.ObjectGroup("SummonCircle08Lights") - gvar78[8] = ns.ObjectGroup("SummonCircle09Lights") - gvar78[9] = ns.ObjectGroup("SummonCircle10Lights") - gvar78[10] = ns.ObjectGroup("SummonCircle11Lights") - gvar78[11] = ns.ObjectGroup("SummonCircle12Lights") - gvar78[12] = ns.ObjectGroup("SummonCircle13Lights") - gvar78[13] = ns.ObjectGroup("SummonCircle14Lights") - gvar78[14] = ns.ObjectGroup("SummonCircle15Lights") - gvar78[15] = ns.ObjectGroup("SummonCircle16Lights") - gvar78[16] = ns.ObjectGroup("SummonCircle17Lights") - gvar78[17] = ns.ObjectGroup("SummonCircle18Lights") - gvar78[18] = ns.ObjectGroup("SummonCircle19Lights") - gvar78[19] = ns.ObjectGroup("SummonCircle20Lights") - gvar78[20] = ns.ObjectGroup("SummonCircle21Lights") -} -func MapInitialize() { - obj45 = ns.Object("StoneBlock01") - obj46 = ns.Object("StoneBlock02") - obj47 = ns.Object("StoneBlock03") - obj11 = ns.Object("Beholder01") - obj12 = ns.Object("Beholder02") - obj13 = ns.Object("Beholder03") - obj14 = ns.Object("Beholder04") - obj15 = ns.Object("Beholder05") - obj16 = ns.Object("Beholder06") - obj17 = ns.Object("Beholder07") - obj18 = ns.Object("Beholder08") - obj19 = ns.Object("Beholder09") - obj20 = ns.Object("Beholder10") - obj21 = ns.Object("Beholder11") - obj22 = ns.Object("Beholder12") - obj23 = ns.Object("Beholder13") - obj24 = ns.Object("Beholder14") - obj54 = ns.Object("CageGateL") - obj55 = ns.Object("CageGateR") - obj4 = ns.Object("UltimateArrowTrapSwitch") - obj67 = ns.Object("SpikeSFX") - wp9 = ns.Waypoint("ArrowTrapAudioOrigin") - wp48 = ns.Waypoint("StoneBlock01WP") - wp49 = ns.Waypoint("StoneBlock02WP") - wp50 = ns.Waypoint("StoneBlock02WP2") - wp51 = ns.Waypoint("StoneBlock03WP") - wp52 = ns.Waypoint("StoneBlockAudioOrigin") - wp25 = ns.Waypoint("BomberCreationWP") - wp26 = ns.Waypoint("BomberAudioOrigin") - wp75 = ns.Waypoint("SecretAudioOrigin") - gvar5 = ns.ObjectGroup("ArrowTrapGroup01") - gvar6 = ns.ObjectGroup("ArrowTrapGroup02") - gvar7 = ns.ObjectGroup("ArrowTrapGroup03") - gvar8 = ns.ObjectGroup("ArrowTrapGroup04") - gvar56 = ns.WallGroup("CageWalls") - ns.Wander(obj11) - ns.Wander(obj12) - ns.Wander(obj13) - ns.AggressionLevel(obj13, 0.83) - ns.Wander(obj14) - ns.AggressionLevel(obj14, 0.83) - ns.Wander(obj15) - ns.AggressionLevel(obj15, 0.83) - ns.Wander(obj16) - ns.AggressionLevel(obj16, 0.83) - ns.Wander(obj17) - ns.AggressionLevel(obj17, 0.83) - ns.Wander(obj18) - ns.AggressionLevel(obj18, 0.83) - ns.Wander(obj19) - ns.AggressionLevel(obj19, 0.83) - ns.Wander(obj20) - ns.AggressionLevel(obj20, 0.83) - ns.Wander(obj21) - ns.AggressionLevel(obj21, 0.83) - ns.Wander(obj22) - ns.AggressionLevel(obj22, 0.83) - ns.LockDoor(obj54) - ns.LockDoor(obj55) - InitializeBeholders() - InitializeSummoningCircles() - InitializeFONtraps() -} -func OpenPitElevatorWall() { - ns.ObjectOff(ns.GetTrigger()) - ns.WallOpen(ns.Wall(56, 134)) -} -func MonstersGoHome() { - r1 := ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) - if !r1 { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func SecretSFX() { - ns.MoveWaypoint(wp75, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretFound, wp75) -} -func BoulderSecretFound() { - ns.ObjectOff(ns.GetTrigger()) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 200) - SecretSFX() -} -func OpenBoulderSecret() { - ns.ObjectOff(ns.GetTrigger()) - ns.WallOpen(ns.Wall(104, 40)) - ns.AudioEvent(ns.SecretWallOpen, ns.Waypoint("BoulderSecretAudioOrigin")) - SecretSFX() -} -func SecretFound() { - ns.ObjectOff(ns.GetTrigger()) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 100) - SecretSFX() -} -func ResetSummonCircle(a1 int) { - flag86[a1] = true - ns.ObjectGroupOn(gvar78[a1]) -} -func SummoningCircleCleared(a1 int) { - ivar84 += 1 - if ivar84 != 15 { - goto LABEL1 - } - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 500) - ns.Effect(ns.BLUE_SPARKS, ns.GetWaypointX(wp87[a1]), ns.GetWaypointY(wp87[a1]), 0, 0) - ns.MoveObject(obj76, ns.GetWaypointX(wp87[a1]), ns.GetWaypointY(wp87[a1])) - ns.MoveObject(obj77[ivar84-1], ns.GetWaypointX(wp87[a1]), ns.GetWaypointY(wp87[a1])) - ns.AudioEvent(ns.SmallGong, wp87[a1]) - goto LABEL2 -LABEL1: - ns.Effect(ns.BLUE_SPARKS, ns.GetWaypointX(wp87[a1]), ns.GetWaypointY(wp87[a1]), 0, 0) - ns.MoveObject(obj76, ns.GetWaypointX(wp87[a1]), ns.GetWaypointY(wp87[a1])) - ns.MoveObject(obj77[ivar84-1], ns.GetWaypointX(wp87[a1]), ns.GetWaypointY(wp87[a1])) - ns.AudioEvent(ns.BigGong, wp87[a1]) -LABEL2: - return -} -func SummonCircle01Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 0 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle02Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 1 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle03Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 2 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle04Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 3 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle05Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 4 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle06Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 5 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle07Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 6 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle08Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 7 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle09Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 8 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle10Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 9 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle11Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 10 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle12Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 11 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle13Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 12 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle14Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 13 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle15Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 14 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle16Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 15 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle17Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 16 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle18Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 17 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle19Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 18 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle20Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 19 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle21Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 20 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapInitialize": - MapInitialize() - } -} diff --git a/examples/con08d/dummy_test.go b/examples/con08d/dummy_test.go deleted file mode 100644 index d1e4f01..0000000 --- a/examples/con08d/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package con08d - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/con08e/con08e.go b/examples/con08e/con08e.go deleted file mode 100644 index 0405a0b..0000000 --- a/examples/con08e/con08e.go +++ /dev/null @@ -1,394 +0,0 @@ -package con08e - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 ns.ObjectID - obj5 ns.ObjectID - obj6 ns.ObjectID - obj7 ns.ObjectID - obj8 ns.ObjectID - wp9 ns.WaypointID - wp10 ns.WaypointID - wp11 ns.WaypointID - wp12 ns.WaypointID - wp13 ns.WaypointID - obj14 ns.ObjectID - obj15 ns.ObjectID - obj16 ns.ObjectID - obj17 ns.ObjectID - obj18 ns.ObjectID - obj19 ns.ObjectID - obj20 ns.ObjectID - obj21 ns.ObjectID - obj22 ns.ObjectID - obj23 ns.ObjectID - obj24 ns.ObjectID - gvar25 ns.ObjectGroupID - gvar26 ns.ObjectGroupID - gvar27 ns.WallGroupID - gvar28 ns.WallGroupID - gvar29 ns.WallGroupID - gvar30 ns.WallGroupID - wp31 ns.WaypointID - wp32 ns.WaypointID - wp33 ns.WaypointID - wp34 ns.WaypointID - wp35 ns.WaypointID - wp36 ns.WaypointID - wp37 ns.WaypointID - wp38 ns.WaypointID - wp39 ns.WaypointID - wp40 ns.WaypointID - gvar41 int - gvar42 int - gvar43 int - gvar44 int - gvar45 int - gvar46 int - gvar47 int - gvar48 int - gvar49 int - obj50 ns.ObjectID - obj51 ns.ObjectID - flag52 bool - flag53 bool - flag54 bool - flag55 bool - flag56 bool - wp57 ns.WaypointID - flag58 bool -) - -func init() { - gvar41 = 0 - gvar42 = 1 - gvar43 = 2 - gvar44 = 3 - gvar45 = 4 - gvar46 = 5 - gvar47 = 6 - gvar48 = gvar41 - gvar49 = gvar46 - flag52 = false - flag53 = false - flag54 = false - flag55 = false - flag56 = false - flag58 = false -} -func PlayerDeath() { - ns.DeathScreen(8) -} -func FireFONTrap01() { - ns.CastSpellObjectLocation(ns.SPELL_FORCE_OF_NATURE, obj4, ns.GetWaypointX(wp9), ns.GetWaypointY(wp9)) - ns.CastSpellObjectLocation(ns.SPELL_FORCE_OF_NATURE, obj5, ns.GetWaypointX(wp10), ns.GetWaypointY(wp10)) - ns.CastSpellObjectLocation(ns.SPELL_FORCE_OF_NATURE, obj6, ns.GetWaypointX(wp11), ns.GetWaypointY(wp11)) - ns.CastSpellObjectLocation(ns.SPELL_FORCE_OF_NATURE, obj7, ns.GetWaypointX(wp12), ns.GetWaypointY(wp12)) - ns.SecondTimer(5, FireFONTrap01) -} -func InitializeFONtraps() { - obj4 = ns.Object("FON_Origin01") - obj5 = ns.Object("FON_Origin02") - obj6 = ns.Object("FON_Origin03") - obj7 = ns.Object("FON_Origin04") - obj8 = ns.Object("FON_Origin05") - wp9 = ns.Waypoint("FON_Target01") - wp10 = ns.Waypoint("FON_Target02") - wp11 = ns.Waypoint("FON_Target03") - wp12 = ns.Waypoint("FON_Target04") - wp13 = ns.Waypoint("FON_Target05") - FireFONTrap01() -} -func OpenFONSecret() { - ns.ObjectOff(ns.GetTrigger()) - ns.AudioEvent(ns.SecretWallOpen, ns.Waypoint("FonSecretWP")) - ns.WallOpen(ns.Wall(44, 122)) -} -func MapInitialize() { - obj14 = ns.Object("MoverA1") - obj15 = ns.Object("MoverA2") - obj16 = ns.Object("MoverA3") - obj17 = ns.Object("MoverB1") - obj18 = ns.Object("MoverB2") - obj19 = ns.Object("MoverB3") - obj20 = ns.Object("Priest01") - obj21 = ns.Object("Priest02") - obj22 = ns.Object("Imp01") - obj23 = ns.Object("Imp02") - obj24 = ns.Object("WierdlingPool") - wp31 = ns.Waypoint("GolemWP_A") - wp32 = ns.Waypoint("GolemWP_B") - wp33 = ns.Waypoint("Priest01WP") - wp34 = ns.Waypoint("Priest02WP") - wp35 = ns.Waypoint("Priest1Home") - wp36 = ns.Waypoint("Priest2Home") - wp37 = ns.Waypoint("Priest1ExitWP") - wp38 = ns.Waypoint("Priest2ExitWP") - wp39 = ns.Waypoint("ImpCreationWP") - wp40 = ns.Waypoint("WierdlingPoolWP") - gvar25 = ns.ObjectGroup("GolemLights") - gvar26 = ns.ObjectGroup("GolemHandleTriggers") - gvar27 = ns.WallGroup("GolemArenaEntranceWalls") - gvar28 = ns.WallGroup("GolemArenaExitWalls") - gvar29 = ns.WallGroup("WierdlingExitWalls") - gvar30 = ns.WallGroup("AldwynElevatorWalls") - ns.SetOwner(ns.GetHost(), obj20) - ns.SetOwner(ns.GetHost(), obj21) - InitializeFONtraps() -} -func OpenElevatorWalls() { - ns.ObjectOff(ns.GetTrigger()) - ns.WallGroupOpen(gvar30) -} -func NoMonsters() { - r1 := ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) - if !r1 { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func PlaySub1Music() { - ns.Music(18, 100) -} -func PlaySub2Music() { - ns.Music(19, 100) -} -func SecretFound() { - ns.ObjectOff(ns.GetTrigger()) - ns.MoveWaypoint(ns.Waypoint("FonSecretWP"), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretFound, ns.Waypoint("FonSecretWP")) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 200) -} -func PriestReport() { - var v0 int - v0 = gvar48 - if v0 == gvar42 { - goto LABEL1 - } - if v0 == gvar43 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - if !ns.IsTrigger(obj22) { - goto LABEL4 - } - flag53 = true - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(obj22), ns.GetObjectY(obj22), 0, 0) - ns.AudioEvent(ns.ImpRecognize, wp57) - ns.MoveObject(obj20, ns.GetObjectX(obj22), ns.GetObjectY(obj22)) - ns.Delete(obj22) -LABEL4: - if !ns.IsTrigger(obj23) { - goto LABEL5 - } - flag54 = true - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(obj23), ns.GetObjectY(obj23), 0, 0) - ns.AudioEvent(ns.ImpRecognize, wp57) - ns.MoveObject(obj21, ns.GetObjectX(obj23), ns.GetObjectY(obj23)) - ns.Delete(obj23) -LABEL5: - if !flag53 { - goto LABEL6 - } - if !flag54 { - goto LABEL6 - } - gvar48 = gvar44 - ns.FrameTimer(30, SummonGolems) -LABEL6: - goto LABEL3 -LABEL2: - if !ns.IsTrigger(obj22) { - goto LABEL7 - } - flag55 = true -LABEL7: - if !ns.IsTrigger(obj23) { - goto LABEL8 - } - flag56 = true -LABEL8: - if !(flag55 && flag56) { - goto LABEL9 - } - ns.WallGroupClose(gvar28) - gvar48 = gvar45 - ns.Delete(obj22) - ns.Delete(obj23) -LABEL9: - goto LABEL3 -LABEL3: - return -} -func GolemDie() { - if !(ns.CurrentHealth(obj50) <= 0 && ns.CurrentHealth(obj51) <= 0) { - goto LABEL1 - } - ns.GiveXp(ns.GetHost(), 1000) - ns.WallGroupOpen(gvar28) - ns.AudioEvent(ns.BigGong, wp33) - ns.AudioEvent(ns.BigGong, wp34) -LABEL1: - return -} -func GolemsAttack() { - ns.Attack(obj50, ns.GetHost()) - ns.Attack(obj51, ns.GetHost()) -} -func RemoveLetterbox() { - ns.WideScreen(false) - ns.Delete(obj22) - ns.Delete(obj23) - ns.Frozen(ns.GetHost(), false) - ns.FrameTimer(45, GolemsAttack) - ns.Music(27, 100) -} -func ImpsExit() { - ns.Move(obj22, wp37) - ns.Move(obj23, wp38) -} -func PriestsExit() { - gvar48 = gvar43 - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(obj20), ns.GetObjectY(obj20), 0, 0) - ns.MoveWaypoint(wp39, ns.GetObjectX(obj20), ns.GetObjectY(obj20)) - obj22 = ns.CreateObject("Imp", wp39) - ns.MoveObject(obj20, ns.GetWaypointX(wp35), ns.GetWaypointY(wp35)) - ns.AudioEvent(ns.ImpRecognize, wp57) - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(obj21), ns.GetObjectY(obj21), 0, 0) - ns.MoveWaypoint(wp39, ns.GetObjectX(obj21), ns.GetObjectY(obj21)) - obj23 = ns.CreateObject("Imp", wp39) - ns.MoveObject(obj21, ns.GetWaypointX(wp36), ns.GetWaypointY(wp36)) - ns.SetOwner(ns.GetHost(), obj22) - ns.SetOwner(ns.GetHost(), obj23) - ns.AggressionLevel(obj22, 0) - ns.AggressionLevel(obj23, 0) - ns.SetCallback(obj22, 11, PriestReport) - ns.SetCallback(obj23, 11, PriestReport) - ns.FrameTimer(1, ImpsExit) -} -func GetGolemHandles() { - var v0 int - if !(flag52 || ns.IsCaller(obj22) || ns.IsCaller(obj23)) { - goto LABEL1 - } - return -LABEL1: - v0 = gvar49 - if v0 == gvar46 { - goto LABEL2 - } - if v0 == gvar47 { - goto LABEL3 - } - goto LABEL4 -LABEL2: - ns.ObjectOff(ns.GetTrigger()) - ns.DestroyEveryChat() - obj50 = ns.GetCaller() - ns.SetCallback(obj50, 5, GolemDie) - ns.ClearOwner(obj20) - ns.CreatureIdle(obj50) - ns.ClearOwner(obj50) - ns.AggressionLevel(obj50, 0) - gvar49 = gvar47 - goto LABEL5 -LABEL3: - ns.ObjectOff(ns.GetTrigger()) - ns.DestroyEveryChat() - obj51 = ns.GetCaller() - ns.SetCallback(obj51, 5, GolemDie) - ns.ClearOwner(obj21) - ns.ClearOwner(obj51) - ns.CreatureIdle(obj51) - ns.AggressionLevel(obj51, 0) - ns.LookAtObject(obj50, ns.GetHost()) - ns.LookAtObject(obj51, ns.GetHost()) - flag52 = true - ns.AggressionLevel(obj50, 0.83) - ns.AggressionLevel(obj51, 0.83) - RemoveLetterbox() - goto LABEL5 -LABEL4: - goto LABEL5 -LABEL5: - return -} -func SummonGolems() { - ns.CastSpellObjectLocation(ns.SPELL_SUMMON_STONE_GOLEM, obj20, ns.GetWaypointX(wp31), ns.GetWaypointY(wp31)) - ns.CastSpellObjectLocation(ns.SPELL_SUMMON_STONE_GOLEM, obj21, ns.GetWaypointX(wp32), ns.GetWaypointY(wp32)) - ns.AudioEvent(ns.SummonCast, wp33) - ns.AudioEvent(ns.SummonCast, wp34) - ns.ObjectGroupOn(gvar26) - ns.ObjectGroupOff(gvar25) - ns.FrameTimer(60, PriestsExit) -} -func ImpsEnter() { - ns.WallGroupOpen(gvar28) - ns.Move(obj22, wp33) - ns.Move(obj23, wp34) -} -func GolemSetPiece() { - if gvar48 == gvar41 { - goto LABEL1 - } - return -LABEL1: - if !ns.IsCaller(ns.GetHost()) { - goto LABEL2 - } - ns.MusicPushEvent() - ns.Music(10, 100) - wp57 = ns.Waypoint("GolemSP_AudioOrigin") - ns.MoveWaypoint(wp57, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - gvar48 = gvar42 - ns.WallGroupClose(gvar27) - ns.Frozen(ns.GetHost(), true) - ns.CreatureIdle(ns.GetHost()) - ns.WideScreen(true) - ns.SetOwner(ns.GetHost(), obj22) - ns.SetOwner(ns.GetHost(), obj23) - ns.FrameTimer(15, ImpsEnter) -LABEL2: - return -} -func Golem01() { - ns.Chat(obj50, "Hi. I'm Golem1.") -} -func Golem02() { - ns.Chat(obj50, "Hi. I'm Golem2, and I'm an alcholic.") -} -func RetrieveWierdling() { - if !flag58 { - goto LABEL1 - } - return -LABEL1: - if !ns.IsCaller(ns.GetHost()) { - goto LABEL2 - } - ns.SetQuestStatus(1, "Chapter8:HasWeirdling") - flag58 = true - ns.SetHalberd(2) - ns.ObjectOff(obj24) - ns.WallGroupOpen(gvar29) - ns.JournalEdit(ns.GetHost(), "Chapter8Wierdling", 4) - ns.PrintToAll("Con02a:ObjectiveComplete") - ns.JournalEntry(ns.GetHost(), "Chapter8MeetCaptain", 2) - ns.PrintToAll("Con01a:NewJournalEntry") - ns.MusicPopEvent() -LABEL2: - return -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapInitialize": - MapInitialize() - } -} diff --git a/examples/con08e/dummy_test.go b/examples/con08e/dummy_test.go deleted file mode 100644 index e15b22a..0000000 --- a/examples/con08e/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package con08e - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/con09a/con09a.go b/examples/con09a/con09a.go deleted file mode 100644 index 65a9f89..0000000 --- a/examples/con09a/con09a.go +++ /dev/null @@ -1,747 +0,0 @@ -package con09a - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 [2]ns.ObjectID - wp5 [2]ns.WaypointID - gvar6 ns.WallGroupID - wp7 [5]ns.WaypointID - wp8 [6]ns.WaypointID - obj9 [6]ns.ObjectID - gvar10 int - ivar11 int - ivar12 int - gvar13 int - flag14 bool - flag15 bool - flag16 bool - fvar17 float32 - fvar18 float32 - obj19 ns.ObjectID - obj20 ns.ObjectID - obj21 ns.ObjectID - obj22 ns.ObjectID - obj23 ns.ObjectID - obj24 ns.ObjectID - obj25 ns.ObjectID - obj26 ns.ObjectID - obj27 ns.ObjectID - obj28 ns.ObjectID - obj29 ns.ObjectID - obj30 ns.ObjectID - obj31 ns.ObjectID - gvar32 ns.ObjectGroupID - gvar33 ns.ObjectGroupID - gvar34 ns.ObjectGroupID - gvar35 ns.ObjectGroupID - gvar36 ns.ObjectGroupID - gvar37 ns.ObjectGroupID - gvar38 ns.ObjectGroupID - gvar39 ns.WallGroupID - gvar40 ns.WallGroupID - gvar41 ns.WallGroupID - gvar42 ns.WallGroupID - gvar43 ns.WallGroupID - gvar44 ns.WallGroupID - gvar45 ns.WallGroupID - wp46 ns.WaypointID - wp47 ns.WaypointID - wp48 ns.WaypointID - gvar49 [9]int - wp50 ns.WaypointID - wp51 ns.WaypointID - flag52 bool - flag53 bool - gvar54 int - gvar55 int - gvar56 int - gvar57 int - gvar58 int - gvar59 int - gvar60 int - gvar61 int - gvar62 int - gvar63 int - flag64 bool - gvar65 int - gvar66 int - gvar67 int - gvar68 int - gvar69 int - gvar70 int - ivar71 int - ivar72 int - obj73 [8]ns.ObjectID - wp74 [8]ns.WaypointID - gvar75 [8]int - ivar76 [8]int - gvar77 [8]ns.TimerID -) - -func init() { - gvar10 = 0 - gvar13 = 0 - flag14 = false - flag15 = false - flag16 = false - flag52 = false - flag53 = false - gvar54 = 0 - gvar55 = 1 - gvar56 = 2 - gvar57 = 3 - gvar58 = 4 - gvar59 = 5 - gvar60 = 6 - gvar62 = gvar54 - gvar63 = gvar57 - flag64 = false - gvar65 = 0 - gvar66 = 1 - gvar67 = 2 - gvar68 = 3 - gvar69 = 4 - gvar70 = 5 - ivar71 = 15 - ivar72 = 2 -} -func PlantBarrier() { - ivar11 = 0 - for { - if !(ivar11 < 6) { - goto LABEL1 - } - CreatePlant(ivar11) - ivar11 += 1 - } -LABEL1: - return -} -func CreatePlant(a1 int) { - obj9[a1] = ns.CreateObject("CarnivorousPlant", wp8[a1]) - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(obj9[a1]), ns.GetObjectY(obj9[a1]), 0, 0) - ns.LookAtObject(obj9[a1], ns.GetHost()) - ns.SetOwner(obj4[0], obj9[a1]) - ns.SetCallback(obj9[a1], 7, AttackBack) -} -func CheckPlants() { - if !(flag15 == false || flag16 == false) { - goto LABEL1 - } - ivar11 = 0 - for { - if !(ivar11 < 6) { - goto LABEL2 - } - if !(ns.CurrentHealth(obj9[ivar11]) <= 0) { - goto LABEL3 - } - ns.FrameTimerWithArg(14, ivar11, PlantDie) - LABEL3: - ivar11 += 1 - } -LABEL2: - ns.FrameTimer(15, CheckPlants) -LABEL1: - return -} -func PlantDie(a1 int) { - if !(flag15 == false || flag16 == false) { - goto LABEL1 - } - ns.Delete(obj9[a1]) - CreatePlant(a1) -LABEL1: - return -} -func AttackBack() { - if ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Attack(ns.GetTrigger(), ns.GetCaller()) -LABEL1: - return -} -func PlayAction() { - ns.Music(26, 100) -} -func PlaySwamp() { - ns.Music(29, 100) -} -func DryadHuntPlayer() { - ns.CreatureHunt(ns.GetTrigger()) -} -func StartDryadSequence() { - var v0 int - if !(ns.IsCaller(ns.GetHost()) && flag14 == false) { - goto LABEL1 - } - flag14 = true - ns.SetOwner(obj4[0], obj4[1]) - ns.MusicPushEvent() - PlayAction() - ns.NoWallSound(true) - ns.WallGroupClose(gvar6) - ns.NoWallSound(false) - v0 = 0 - for { - if !(v0 < 2) { - goto LABEL2 - } - ns.ObjectOn(obj4[v0]) - ns.Enchant(obj4[v0], ns.ENCHANT_INVISIBLE, 1) - ns.MoveObject(obj4[v0], ns.GetWaypointX(wp5[v0]), ns.GetWaypointY(wp5[v0])) - ns.Effect(ns.BLUE_SPARKS, ns.GetWaypointX(wp5[v0]), ns.GetWaypointY(wp5[v0]), 0, 0) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp5[v0]), ns.GetWaypointY(wp5[v0]), 0, 0) - v0 += 1 - } -LABEL2: - PlantBarrier() - ns.FrameTimer(1, CheckPlants) -LABEL1: - return -} -func DryadDie() { - if !ns.IsTrigger(obj4[0]) { - goto LABEL1 - } - flag15 = true -LABEL1: - if !ns.IsTrigger(obj4[1]) { - goto LABEL2 - } - flag16 = true -LABEL2: - if !(flag15 == true && flag16 == true) { - goto LABEL3 - } - ns.NoWallSound(true) - ns.WallGroupOpen(gvar6) - ns.NoWallSound(false) - ns.MusicPopEvent() -LABEL3: - return -} -func DryadStay() { - if !(ns.IsCaller(obj4[0]) || ns.IsCaller(obj4[1])) { - goto LABEL1 - } - ivar12 = ns.Random(0, 4) - fvar17 = ns.GetWaypointX(wp7[ivar12]) - fvar18 = ns.GetWaypointY(wp7[ivar12]) - ns.Enchant(ns.GetCaller(), ns.ENCHANT_INVISIBLE, 1.5) - ns.Effect(ns.BLUE_SPARKS, ns.GetObjectX(ns.GetCaller()), ns.GetObjectY(ns.GetCaller()), 0, 0) - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(ns.GetCaller()), ns.GetObjectY(ns.GetCaller()), 0, 0) - ns.MoveObject(ns.GetCaller(), fvar17, fvar18) - ns.Effect(ns.BLUE_SPARKS, fvar17, fvar18, 0, 0) - ns.Effect(ns.SMOKE_BLAST, fvar17, fvar18, 0, 0) -LABEL1: - return -} -func PlayerDeath() { - ns.DeathScreen(9) -} -func CaptainDialogStart() { - var v0 int - v0 = gvar62 - if v0 == gvar54 { - goto LABEL1 - } - if v0 == gvar55 { - goto LABEL2 - } - if v0 == gvar56 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - ns.TellStory(ns.SwordsmanHurt, "War09a:CaptainGreet") - goto LABEL4 -LABEL2: - ns.TellStory(ns.SwordsmanHurt, "War09a:CaptainLeave") - goto LABEL4 -LABEL3: - ns.TellStory(ns.SwordsmanHurt, "War09a:CaptainImpatient") - goto LABEL4 -LABEL4: - return -} -func CaptainDialogEnd() { - var v0 int - v0 = gvar62 - if v0 == gvar54 { - goto LABEL1 - } - if v0 == gvar55 { - goto LABEL2 - } - if v0 == gvar56 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - ns.JournalEntry(ns.GetHost(), "FindMordwyn", 2) - ns.JournalEntry(ns.GetHost(), "FindOutpost", 2) - ns.PrintToAll("Con01a:NewJournalEntry") - PlaySwamp() - gvar62 = gvar55 - goto LABEL4 -LABEL2: - gvar62 = gvar56 - goto LABEL4 -LABEL3: - goto LABEL4 -LABEL4: - return -} -func MordwynDialogStart() { - var v0 int - v0 = gvar63 - if v0 == gvar57 { - goto LABEL1 - } - if v0 == gvar58 { - goto LABEL2 - } - if v0 == gvar59 { - goto LABEL3 - } - if v0 == gvar60 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - ns.LookAtObject(obj19, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War09a:MordwynGreet") - goto LABEL5 -LABEL2: - ns.LookAtObject(obj19, ns.GetHost()) - ns.WideScreen(true) - ns.Frozen(ns.GetHost(), true) - ns.TellStory(ns.SwordsmanHurt, "Con09a:MordwynHome") - goto LABEL5 -LABEL3: - ns.LookAtObject(obj19, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "Con09a:MordwynHome2") - goto LABEL5 -LABEL4: - ns.LookAtObject(obj19, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War09a:MordwynDone") - goto LABEL5 -LABEL5: - return -} -func MordwynDialogEnd() { - var v0 int - v0 = gvar63 - if v0 == gvar57 { - goto LABEL1 - } - if v0 == gvar58 { - goto LABEL2 - } - if v0 == gvar59 { - goto LABEL3 - } - if v0 == gvar60 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - gvar63 = gvar58 - ns.WideScreen(false) - ns.Frozen(ns.GetHost(), false) - ns.JournalEdit(ns.GetHost(), "FindMordwyn", 4) - ns.CancelDialog(obj19) - ns.SetCallback(obj19, 11, AllowDialog) - ns.Move(obj19, wp47) - goto LABEL5 -LABEL2: - gvar63 = gvar59 - ns.SetCallback(obj19, 11, GetArmorOfJandor) - ns.Move(obj19, wp48) - goto LABEL5 -LABEL3: - gvar63 = gvar60 - ns.WideScreen(false) - ns.Frozen(ns.GetHost(), false) - ns.CreatureGuard(obj19, ns.GetWaypointX(wp47), ns.GetWaypointY(wp47), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - ns.SetCallback(obj19, 11, NullFunction) - ns.Pickup(ns.GetHost(), obj23) - ns.Pickup(ns.GetHost(), obj24) - ns.Pickup(ns.GetHost(), obj25) - ns.PrintToAll("Con09a:GainedBowAlt") - goto LABEL5 -LABEL4: - goto LABEL5 -LABEL5: - return -} -func StartCaptainConversation() { - ns.SetDialog(obj20, ns.NORMAL, CaptainDialogStart, CaptainDialogEnd) - ns.StartDialog(obj20, ns.GetHost()) -} -func WispInitialize() { - obj73[0] = ns.Object("Wisp0") - gvar75[0] = gvar65 - wp74[0] = ns.Waypoint("Wisp0Dest") - obj73[1] = ns.Object("Wisp1") - gvar75[1] = gvar65 - wp74[1] = ns.Waypoint("Wisp1Dest") -} -func MapInitialize() { - obj20 = ns.Object("Jandor") - obj21 = ns.Object("Basket") - obj22 = ns.Object("BasketShadow") - obj19 = ns.Object("Mordwyn") - obj23 = ns.Object("JBow") - obj24 = ns.Object("JQuiver1") - obj25 = ns.Object("JQuiver2") - obj26 = ns.Object("PitElev01") - obj27 = ns.Object("PitElev02") - obj28 = ns.Object("PitElev03") - obj29 = ns.Object("TreasureTrap01") - obj30 = ns.Object("TreasureTrap01Light") - obj31 = ns.Object("Secret02Trigger") - obj4[0] = ns.Object("Dryad0") - obj4[1] = ns.Object("Dryad1") - gvar39 = ns.WallGroup("Surprise00Walls") - gvar40 = ns.WallGroup("Surprise00DestWalls") - gvar41 = ns.WallGroup("Surprise01Walls") - gvar42 = ns.WallGroup("Surprise01DWalls") - gvar43 = ns.WallGroup("Surprise02Walls") - gvar44 = ns.WallGroup("Surprise02DestWalls") - gvar45 = ns.WallGroup("TreasureTrap01Walls") - gvar6 = ns.WallGroup("DryadWalls") - gvar34 = ns.ObjectGroup("Surprise00Triggers") - gvar33 = ns.ObjectGroup("Surprise00Creatures") - gvar35 = ns.ObjectGroup("Surprise01Creatures") - gvar36 = ns.ObjectGroup("Surprise01Triggers") - gvar32 = ns.ObjectGroup("MordwynTriggers") - gvar37 = ns.ObjectGroup("TreasureTrap01Zombies") - gvar38 = ns.ObjectGroup("Secret01Triggers") - wp46 = ns.Waypoint("TalkToPlayer") - wp47 = ns.Waypoint("MordwynHome") - wp48 = ns.Waypoint("MordwynBedroom") - wp5[0] = ns.Waypoint("DryadHome0") - wp5[1] = ns.Waypoint("DryadHome1") - wp7[0] = ns.Waypoint("DryadWarp0") - wp7[1] = ns.Waypoint("DryadWarp1") - wp7[2] = ns.Waypoint("DryadWarp2") - wp7[3] = ns.Waypoint("DryadWarp3") - wp7[4] = ns.Waypoint("DryadWarp4") - wp8[0] = ns.Waypoint("PlantLoc0") - wp8[1] = ns.Waypoint("PlantLoc1") - wp8[2] = ns.Waypoint("PlantLoc2") - wp8[3] = ns.Waypoint("PlantLoc3") - wp8[4] = ns.Waypoint("PlantLoc4") - wp8[5] = ns.Waypoint("PlantLoc5") - wp50 = ns.Waypoint("WellWP") - wp51 = ns.Waypoint("PlayerSounds") - ns.SetOwner(ns.GetHost(), obj20) - ns.UnBlind() - WispInitialize() - ns.StoryPic(obj20, "AirshipCaptainPic") - ns.StoryPic(obj19, "MordwynPic") - ns.SetDialog(obj19, ns.NORMAL, MordwynDialogStart, MordwynDialogEnd) - ns.StartupScreen(9) - ns.Music(0, 100) - ns.FrameTimer(5, StartCaptainConversation) - ns.ObjectOn(ns.Object("StayHere1")) - ns.Move(ns.Object("StayHere1"), ns.Waypoint("Here1")) - ns.ObjectOn(ns.Object("StayHere2")) - ns.Move(ns.Object("StayHere2"), ns.Waypoint("Here2")) - ns.ObjectOn(ns.Object("StayHere3")) - ns.Move(ns.Object("StayHere3"), ns.Waypoint("Here3")) - ns.ObjectOn(ns.Object("StayHere4")) - ns.Move(ns.Object("StayHere4"), ns.Waypoint("Here4")) - ns.ObjectOn(ns.Object("StayHere5")) - ns.Move(ns.Object("StayHere5"), ns.Waypoint("Here5")) -} -func MordwynGreet() { - ns.LookAtObject(obj19, ns.GetHost()) - ns.StartDialog(obj19, ns.GetHost()) - ns.SetCallback(obj19, 11, NullFunction) -} -func GetArmorOfJandor() { - ns.PauseObject(obj19, 75) - ns.SetCallback(obj19, 11, GiveArmorToPlayer) - ns.Move(obj19, wp47) -} -func GiveArmorToPlayer() { - ns.LookAtObject(obj19, ns.GetHost()) - ns.StartDialog(obj19, ns.GetHost()) -} -func KeepOut() { - r1 := ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) - if !r1 { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func CapTakeoff() { - if !(ns.IsCaller(ns.GetHost()) && flag53 == false) { - goto LABEL1 - } - flag53 = true - ns.Delete(obj21) - ns.Delete(obj22) - ns.Delete(obj20) -LABEL1: - return -} -func NullFunction() { -} -func MordwynMove() { - ns.ObjectGroupOff(gvar32) - ns.ObjectOn(obj19) - ns.SetOwner(ns.GetHost(), obj19) - ns.WideScreen(true) - ns.Frozen(ns.GetHost(), true) - ns.Move(obj19, wp46) -} -func AllowDialog() { - ns.CreatureGuard(obj19, ns.GetWaypointX(wp47), ns.GetWaypointY(wp47), ns.GetWaypointX(wp46), ns.GetWaypointY(wp46), 0) - ns.SetDialog(obj19, ns.NORMAL, MordwynDialogStart, MordwynDialogEnd) -} -func Surprise00() { - ns.ObjectGroupOff(gvar34) - ns.NoWallSound(true) - ns.WallGroupOpen(gvar39) - ns.NoWallSound(false) - ns.WallGroupBreak(gvar40) - ns.ObjectGroupOn(gvar33) - ns.GroupWander(gvar33) -} -func Surprise01() { - ns.ObjectGroupOff(gvar36) - ns.NoWallSound(true) - ns.WallGroupOpen(gvar41) - ns.NoWallSound(false) - ns.WallGroupBreak(gvar42) - ns.ObjectGroupOn(gvar35) -} -func Secret01Declare() { - ns.ObjectGroupOff(gvar38) - ns.MoveWaypoint(wp51, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.AudioEvent(ns.SecretFound, wp51) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 100) -} -func Secret02Declare() { - ns.PrintToAll("GeneralPrint:SecretFound") - ns.MoveWaypoint(wp51, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.AudioEvent(ns.SecretFound, wp51) - ns.GiveXp(ns.GetHost(), 100) -} -func EnablePitElev01() { - ns.ObjectOn(obj26) -} -func EnablePitElev02() { - ns.ObjectOn(obj27) -} -func EnablePitElev03() { - ns.ObjectOn(obj28) -} -func TriggerTreasureTrap() { - ns.WallGroupBreak(gvar45) - ns.ObjectOff(obj30) - ns.GroupAggressionLevel(gvar37, 0.83) - ns.GroupWander(gvar37) -} -func MapEntry() { - ns.NoWallSound(false) -} -func whichWisp(a1 ns.ObjectID) int { - var v0 int - v0 = 0 - for { - if !(v0 < ivar72) { - goto LABEL1 - } - if obj73[v0] != a1 { - goto LABEL2 - } - return v0 - LABEL2: - v0 += 1 - } -LABEL1: - return -1 - return 1 -} -func WispAction(a1 int) { - var ( - v0 float32 - v1 int - ) - v1 = gvar75[a1] - if v1 == gvar66 { - goto LABEL1 - } - if v1 == gvar68 { - goto LABEL2 - } - if v1 == gvar67 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - v0 = ns.Distance(ns.GetObjectX(obj73[a1]), ns.GetObjectY(obj73[a1]), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - if !(v0 < 70) { - goto LABEL5 - } - gvar75[a1] = gvar67 - ns.Move(obj73[a1], wp74[a1]) -LABEL5: - goto LABEL4 -LABEL2: - ns.LookAtObject(obj73[a1], ns.GetHost()) - ivar76[a1] += 1 - if !(ivar76[a1] > 4) { - goto LABEL6 - } - gvar75[a1] = gvar66 - ns.CreatureFollow(obj73[a1], ns.GetHost()) -LABEL6: - goto LABEL4 -LABEL3: - v0 = ns.Distance(ns.GetObjectX(obj73[a1]), ns.GetObjectY(obj73[a1]), ns.GetWaypointX(wp74[a1]), ns.GetWaypointY(wp74[a1])) - if !(v0 < 30) { - goto LABEL7 - } - gvar75[a1] = gvar69 - ns.CreatureIdle(obj73[a1]) - return -LABEL7: - goto LABEL4 -LABEL4: - ns.FrameTimerWithArg(ivar71, a1, WispAction) -} -func WispRecognize() { - var ( - v0 int - v1 int - ) - if ns.HasClass(ns.GetCaller(), ns.PLAYER) { - goto LABEL1 - } - return -LABEL1: - v0 = whichWisp(ns.GetTrigger()) - if !(v0 < 0) { - goto LABEL2 - } - return -LABEL2: - v1 = gvar75[v0] - if v1 == gvar65 { - goto LABEL3 - } - if v1 == gvar68 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - gvar75[v0] = gvar66 - ns.CreatureFollow(ns.GetTrigger(), ns.GetCaller()) - gvar77[v0] = ns.FrameTimerWithArg(ivar71, v0, WispAction) - goto LABEL5 -LABEL4: - gvar75[v0] = gvar67 - ns.Move(ns.GetTrigger(), wp74[v0]) - goto LABEL5 -LABEL5: - return -} -func WispLoseSight() { - var ( - v0 int - v1 int - ) - if ns.HasClass(ns.GetCaller(), ns.PLAYER) { - goto LABEL1 - } - return -LABEL1: - v0 = whichWisp(ns.GetTrigger()) - if !(v0 < 0) { - goto LABEL2 - } - return -LABEL2: - v1 = gvar75[v0] - if v1 == gvar67 { - goto LABEL3 - } - goto LABEL4 -LABEL3: - gvar75[v0] = gvar68 - ivar76[v0] = 0 - ns.CreatureIdle(ns.GetTrigger()) - goto LABEL4 -LABEL4: - return -} -func WispGetMad() { - var v0 int - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.AggressionLevel(ns.GetTrigger(), 0.83) - ns.CreatureIdle(ns.GetTrigger()) - v0 = whichWisp(ns.GetTrigger()) - if !(v0 >= 0) { - goto LABEL1 - } - gvar75[v0] = gvar70 - ns.CancelTimer(gvar77[v0]) -LABEL1: - return -} -func WispMedieval() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.AggressionLevel(ns.GetTrigger(), 0.83) - ns.CreatureIdle(ns.GetTrigger()) -LABEL1: - return -} -func MakeAWish() { - var v0 int - v0 = ns.MaxHealth(ns.GetCaller()) - ns.RestoreHealth(ns.GetCaller(), v0-ns.CurrentHealth(ns.GetCaller())) - ns.PrintToAll("GeneralPrint:WellSignRefresh") - ns.AudioEvent(ns.RestoreHealthName, wp50) -} -func PlayMordwyn() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Music(21, 100) -LABEL1: - return -} -func PlayOgre() { - ns.Music(7, 100) -} -func PlayCaves() { - ns.Music(18, 100) -} -func PlayWasteland() { - ns.Music(19, 100) -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapInitialize": - MapInitialize() - case "MapEntry": - MapEntry() - } -} diff --git a/examples/con09a/dummy_test.go b/examples/con09a/dummy_test.go deleted file mode 100644 index dd24668..0000000 --- a/examples/con09a/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package con09a - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/con09b/con09b.go b/examples/con09b/con09b.go deleted file mode 100644 index a639c6e..0000000 --- a/examples/con09b/con09b.go +++ /dev/null @@ -1,805 +0,0 @@ -package con09b - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 ns.ObjectID - obj5 ns.ObjectID - obj6 ns.ObjectID - obj7 ns.ObjectID - obj8 ns.ObjectID - obj9 ns.ObjectID - obj10 ns.ObjectID - obj11 ns.ObjectID - obj12 ns.ObjectID - obj13 ns.ObjectID - obj14 ns.ObjectID - obj15 ns.ObjectID - obj16 ns.ObjectID - obj17 ns.ObjectID - obj18 ns.ObjectID - obj19 ns.ObjectID - obj20 ns.ObjectID - obj21 ns.ObjectID - obj22 ns.ObjectID - obj23 ns.ObjectID - obj24 ns.ObjectID - obj25 ns.ObjectID - gvar26 ns.ObjectGroupID - gvar27 ns.ObjectGroupID - gvar28 ns.ObjectGroupID - gvar29 ns.ObjectGroupID - gvar30 ns.ObjectGroupID - gvar31 ns.ObjectGroupID - gvar32 ns.ObjectGroupID - gvar33 ns.ObjectGroupID - gvar34 ns.ObjectGroupID - gvar35 ns.ObjectGroupID - gvar36 ns.ObjectGroupID - gvar37 ns.ObjectGroupID - gvar38 ns.WallGroupID - gvar39 ns.WallGroupID - gvar40 ns.WallGroupID - gvar41 ns.WallGroupID - gvar42 ns.WallGroupID - gvar43 ns.WallGroupID - wp44 ns.WaypointID - wp45 ns.WaypointID - wp46 [9]ns.WaypointID - wp47 [3]ns.WaypointID - wp48 ns.WaypointID - wp49 ns.WaypointID - wp50 ns.WaypointID - wp51 ns.WaypointID - wp52 ns.WaypointID - wp53 ns.WaypointID - flag54 bool - gvar55 int - gvar56 int - gvar57 int - gvar58 int - gvar59 int - obj60 [9]ns.ObjectID - obj61 ns.ObjectID - obj62 ns.ObjectID - gvar63 int - flag64 bool - flag65 bool - flag66 bool - flag67 bool - flag68 bool - gvar69 int - gvar70 int - gvar71 int - gvar72 int - gvar73 int - gvar74 int - ivar75 int - ivar76 int - obj77 [8]ns.ObjectID - wp78 [8]ns.WaypointID - gvar79 [8]int - ivar80 [8]int - gvar81 [8]ns.TimerID -) - -func init() { - flag54 = false - gvar55 = 0 - gvar56 = 1 - gvar57 = 2 - gvar58 = 3 - gvar59 = 4 - gvar63 = gvar55 - flag64 = false - flag65 = false - flag66 = false - flag67 = false - flag68 = false - gvar69 = 0 - gvar70 = 1 - gvar71 = 2 - gvar72 = 3 - gvar73 = 4 - gvar74 = 5 - ivar75 = 15 - ivar76 = 2 -} -func PlayerDeath() { - ns.DeathScreen(9) -} -func AidanDialogStart() { - var v0 int - v0 = gvar63 - if v0 == gvar55 { - goto LABEL1 - } - if v0 == gvar56 { - goto LABEL2 - } - if v0 == gvar57 { - goto LABEL3 - } - if v0 == gvar58 { - goto LABEL4 - } - if v0 == gvar59 { - goto LABEL5 - } - goto LABEL6 -LABEL1: - ns.DestroyChat(obj4) - ns.TellStory(ns.SwordsmanHurt, "War09a:AidanGreet1") - flag54 = true - goto LABEL6 -LABEL2: - ns.TellStory(ns.SwordsmanHurt, "War09a:AidanGreet2") - goto LABEL6 -LABEL3: - ns.TellStory(ns.SwordsmanHurt, "War09a:AidanWaiting") - goto LABEL6 -LABEL4: - ns.DestroyChat(obj4) - ns.TellStory(ns.SwordsmanHurt, "War09a:AidanThankful") - goto LABEL6 -LABEL5: - ns.DestroyChat(obj4) - ns.TellStory(ns.SwordsmanHurt, "War09a:AidanLeaving") - goto LABEL6 -LABEL6: - return -} -func AidanDialogEnd() { - var v0 int - v0 = gvar63 - if v0 == gvar55 { - goto LABEL1 - } - if v0 == gvar56 { - goto LABEL2 - } - if v0 == gvar57 { - goto LABEL3 - } - if v0 == gvar58 { - goto LABEL4 - } - if v0 == gvar59 { - goto LABEL5 - } - goto LABEL6 -LABEL1: - gvar63 = gvar56 - goto LABEL6 -LABEL2: - gvar63 = gvar57 - goto LABEL6 -LABEL3: - goto LABEL6 -LABEL4: - flag54 = true - flag66 = true - ns.WideScreen(false) - ns.Frozen(ns.GetHost(), false) - ns.CancelDialog(obj4) - ns.GiveXp(ns.GetHost(), 1000) - ns.Pickup(ns.GetHost(), obj5) - ns.PrintToAll("GeneralPrint:FindSpell") - ns.CreatureFollow(obj4, ns.GetHost()) - ns.AggressionLevel(obj4, 0.5) - ns.BecomePet(obj4) - ns.SetOwner(ns.GetHost(), obj4) - goto LABEL6 -LABEL5: - goto LABEL6 -LABEL6: - return -} -func WispInitialize() { - obj77[0] = ns.Object("Wisp2") - gvar79[0] = gvar69 - wp78[0] = ns.Waypoint("Wisp2Dest") - obj77[1] = ns.Object("Wisp3") - gvar79[1] = gvar69 - wp78[1] = ns.Waypoint("Wisp3Dest") -} -func MapInitialize() { - obj4 = ns.Object("Aidan") - obj5 = ns.Object("SlowBook") - obj6 = ns.Object("DeadPrisoner") - obj7 = ns.Object("Mystic_Brotherhood") - obj8 = ns.Object("OgreCageDoor01") - obj9 = ns.Object("CheckRescueTrigger") - obj10 = ns.Object("PitElev02") - obj11 = ns.Object("PitElev03") - obj12 = ns.Object("CryptTrigger01") - obj13 = ns.Object("CryptEnd1") - obj14 = ns.Object("CryptDoor3") - obj15 = ns.Object("CryptDoor4") - obj16 = ns.Object("CryptGuardian") - obj17 = ns.Object("CryptWarrior") - obj18 = ns.Object("UrchinCageDoor") - obj19 = ns.Object("UrchinShaman") - obj20 = ns.Object("Urchin1") - obj21 = ns.Object("Urchin2") - obj22 = ns.Object("Urchin3") - obj23 = ns.Object("Urchin4") - obj24 = ns.Object("Necromancer") - obj25 = ns.Object("OgreDude") - gvar38 = ns.WallGroup("Surprise02Walls") - gvar39 = ns.WallGroup("Surprise02DestWalls") - gvar40 = ns.WallGroup("GraveyardTrapWalls") - gvar41 = ns.WallGroup("GraveyardTrapWalls2") - gvar42 = ns.WallGroup("CryptWall01") - gvar43 = ns.WallGroup("SubGraveyardWalls") - gvar26 = ns.ObjectGroup("GraveyardTrapEnemies") - gvar27 = ns.ObjectGroup("TriggerGroup01") - gvar28 = ns.ObjectGroup("TriggerGroup02") - gvar29 = ns.ObjectGroup("SubGraveyardTriggers") - gvar30 = ns.ObjectGroup("SubGraveyardCreatures") - gvar31 = ns.ObjectGroup("CryptGuardianTriggers") - gvar32 = ns.ObjectGroup("CryptWarriorTriggers") - gvar33 = ns.ObjectGroup("UrchinPrisoners") - gvar34 = ns.ObjectGroup("Secret03Enemies") - gvar35 = ns.ObjectGroup("Secret03Triggers") - gvar36 = ns.ObjectGroup("Secret04Triggers") - gvar37 = ns.ObjectGroup("Secret06Triggers") - wp46[0] = ns.Waypoint("CreateWP1") - wp46[1] = ns.Waypoint("CreateWP2") - wp46[2] = ns.Waypoint("CreateWP3") - wp46[3] = ns.Waypoint("CreateWP4") - wp46[4] = ns.Waypoint("CreateWP5") - wp46[5] = ns.Waypoint("CreateWP6") - wp46[6] = ns.Waypoint("CreateWP7") - wp46[7] = ns.Waypoint("CreateWP8") - wp46[8] = ns.Waypoint("CreateWP9") - wp44 = ns.Waypoint("VileZombieCreateWP01") - wp45 = ns.Waypoint("GhostCreateWP01") - wp50 = ns.Waypoint("FaceHereWP") - wp47[0] = ns.Waypoint("TeleWP1") - wp47[1] = ns.Waypoint("TeleWP2") - wp47[2] = ns.Waypoint("TeleWP3") - wp48 = ns.Waypoint("CryptGuardianEntrance") - wp49 = ns.Waypoint("CryptWarriorEntrance") - wp51 = ns.Waypoint("AidanWait") - wp52 = ns.Waypoint("AidanLook") - wp53 = ns.Waypoint("PlayerSounds") - ns.LockDoor(obj18) - ns.UnBlind() - WispInitialize() - ns.StoryPic(obj4, "AidanPic") - ns.SetDialog(obj4, ns.NORMAL, AidanDialogStart, AidanDialogEnd) - ns.SetOwner(obj25, obj4) - ns.Damage(obj6, 0, 50, 8) -} -func AidanRescued() { - ns.ObjectOff(obj9) - ns.WideScreen(true) - ns.Frozen(ns.GetHost(), true) - gvar63 = gvar58 - ns.StartDialog(obj4, ns.GetHost()) -} -func PlayOgre() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Music(7, 100) -LABEL1: - return -} -func KeepOut() { - r1 := ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) - if !r1 { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func AidanNearPlayer() { - if !(flag54 == false && ns.IsCaller(ns.GetHost())) { - goto LABEL1 - } - ns.Chat(obj4, "War09a:AidanPlea") - if flag67 { - goto LABEL1 - } - ns.ClearOwner(obj4) - ns.SetOwner(ns.GetHost(), obj4) - flag67 = true -LABEL1: - return -} -func CheckRescue() { - if ns.IsLocked(obj8) { - goto LABEL1 - } - if !(ns.CurrentHealth(obj4) > 0) { - goto LABEL1 - } - AidanRescued() -LABEL1: - return -} -func AidanMustGo() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - PlayOgre() -LABEL1: - if !(ns.IsCaller(ns.GetHost()) && flag64 == false) { - goto LABEL2 - } - flag64 = true - ns.GiveXp(ns.GetHost(), 500) - ns.JournalEdit(ns.GetHost(), "FindOutpost", 4) - ns.JournalEntry(ns.GetHost(), "FindLOTD", 2) - ns.PrintToAll("Con01a:NewJournalEntry") -LABEL2: - if !(ns.IsCaller(ns.GetHost()) && flag66 == true && ns.CurrentHealth(obj4) > 0 && flag68 == false) { - goto LABEL3 - } - flag68 = true - ns.RestoreHealth(obj4, 120) - ns.SetDialog(obj4, ns.NORMAL, AidanDialogStart, AidanDialogEnd) - gvar63 = gvar59 - ns.CreatureGuard(obj4, ns.GetWaypointX(wp51), ns.GetWaypointY(wp51), ns.GetWaypointX(wp52), ns.GetWaypointY(wp52), 0) - ns.BecomeEnemy(obj4) - ns.SetOwner(ns.GetHost(), obj4) -LABEL3: - return -} -func DestroyAidan() { - if !flag68 { - goto LABEL1 - } - ns.Delete(obj4) -LABEL1: - return -} -func Secret03Declare() { - ns.ObjectGroupOff(gvar35) - ns.ObjectGroupOn(gvar34) - ns.MoveWaypoint(wp53, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.AudioEvent(ns.SecretFound, wp53) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 5) -} -func Secret04Declare() { - ns.ObjectGroupOff(gvar36) - ns.MoveWaypoint(wp53, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.AudioEvent(ns.SecretFound, wp53) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 150) -} -func Secret05Declare() { - ns.PrintToAll("GeneralPrint:SecretFound") - ns.MoveWaypoint(wp53, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.AudioEvent(ns.SecretFound, wp53) - ns.GiveXp(ns.GetHost(), 100) -} -func Secret06Declare() { - ns.ObjectGroupOff(gvar37) - ns.MoveWaypoint(wp53, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.AudioEvent(ns.SecretFound, wp53) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 50) -} -func Patrol() { - ns.Wander(ns.GetTrigger()) -} -func GoMedieval() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.AggressionLevel(ns.GetTrigger(), 0.83) -LABEL1: - return -} -func GoNormal() { - ns.AggressionLevel(ns.GetTrigger(), 0.5) -} -func StopAndListen() { - var v0 int - v0 = ns.Random(1, 3) - if !(ns.IsCaller(ns.GetHost()) && v0 == 1) { - goto LABEL1 - } - ns.PauseObject(ns.GetTrigger(), 45) - ns.LookAtObject(ns.GetTrigger(), ns.GetCaller()) - if !ns.IsVisibleTo(ns.GetTrigger(), ns.GetCaller()) { - goto LABEL2 - } - ns.AggressionLevel(ns.GetTrigger(), 0.83) - goto LABEL1 -LABEL2: - ns.CreatureIdle(ns.GetTrigger()) -LABEL1: - return -} -func ReturnHome() { - ns.AggressionLevel(ns.GetTrigger(), 0.5) - ns.GoBackHome(ns.GetTrigger()) -} -func EnablePitElev02() { - ns.ObjectOn(obj10) -} -func EnablePitElev03() { - ns.ObjectOn(obj11) -} -func GraveyardCreateOrders() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 float32 - v5 float32 - ) - v0 = ns.GetWaypointX(wp44) - v1 = ns.GetWaypointY(wp44) - v2 = ns.GetWaypointX(wp45) - v3 = ns.GetWaypointY(wp45) - v4 = ns.GetWaypointX(wp50) - v5 = ns.GetWaypointY(wp50) - ns.LookWithAngle(obj61, 224) - ns.LookWithAngle(obj62, 192) - ns.CreatureGuard(obj61, v0, v1, v4, v5, 500) - ns.CreatureGuard(obj62, v2, v3, v4, v5, 500) -} -func GraveyardTrapTrigger() { - ns.ObjectGroupOff(gvar27) - ns.NoWallSound(true) - ns.WallGroupOpen(gvar40) - ns.NoWallSound(false) - ns.WallGroupBreak(gvar41) - ns.ObjectGroupOn(gvar26) - obj61 = ns.CreateObject("VileZombie", wp44) - obj62 = ns.CreateObject("Ghost", wp45) - ns.FrameTimer(1, GraveyardCreateOrders) -} -func SubGraveSurprise() { - ns.ObjectGroupOff(gvar29) - ns.ObjectGroupOn(gvar30) - ns.WallGroupBreak(gvar43) -} -func CryptGuardian() { - var ( - v0 float32 - v1 float32 - ) - v0 = ns.GetWaypointX(wp48) - v1 = ns.GetWaypointY(wp48) - ns.ObjectGroupOff(gvar31) - ns.LockDoor(obj14) - ns.LockDoor(obj15) - ns.ObjectOn(obj16) - ns.Enchant(obj16, ns.ENCHANT_INVISIBLE, 2) - ns.MoveObject(obj16, v0, v1) - ns.Effect(ns.BLUE_SPARKS, v0, v1, 0, 0) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) -} -func TurnInvisible() { - ns.Enchant(obj16, ns.ENCHANT_INVISIBLE, 1.5) -} -func UnlockCryptDoors2() { - ns.UnlockDoor(obj14) - ns.UnlockDoor(obj15) -} -func CreatureOrders() { - var v0 int - v0 = 0 - for { - if !(v0 < 9) { - goto LABEL1 - } - ns.SetRoamFlag(obj60[v0], 1) - ns.Wander(obj60[v0]) - ns.AggressionLevel(obj60[v0], 0.83) - v0 += 1 - } -LABEL1: - return -} -func CreateZombies01() { - var v0 int - ns.ObjectGroupOff(gvar28) - ns.ObjectOn(obj24) - ns.NoWallSound(true) - ns.WallGroupOpen(gvar38) - ns.NoWallSound(false) - ns.WallGroupBreak(gvar39) - v0 = 0 - for { - if !(v0 < 5) { - goto LABEL1 - } - obj60[v0] = ns.CreateObject("Zombie", wp46[v0]) - v0 += 1 - } -LABEL1: - v0 = 5 - for { - if !(v0 < 7) { - goto LABEL3 - } - obj60[v0] = ns.CreateObject("Ghost", wp46[v0]) - v0 += 1 - } -LABEL3: - v0 = 7 - for { - if !(v0 < 9) { - goto LABEL5 - } - obj60[v0] = ns.CreateObject("VileZombie", wp46[v0]) - v0 += 1 - } -LABEL5: - ns.FrameTimer(1, CreatureOrders) -} -func NecroTeleport() { - var ( - v0 float32 - v1 float32 - v2 int - ) - v2 = ns.Random(0, 2) - v0 = ns.GetWaypointX(wp47[v2]) - v1 = ns.GetWaypointY(wp47[v2]) - if !ns.IsCaller(obj24) { - goto LABEL1 - } - ns.Enchant(ns.GetCaller(), ns.ENCHANT_INVISIBLE, 2) - ns.Effect(ns.BLUE_SPARKS, ns.GetObjectX(ns.GetCaller()), ns.GetObjectY(ns.GetCaller()), 0, 0) - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(ns.GetCaller()), ns.GetObjectY(ns.GetCaller()), 0, 0) - ns.MoveObject(obj24, v0, v1) - ns.Effect(ns.BLUE_SPARKS, v0, v1, 0, 0) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) -LABEL1: - return -} -func NecroTeleportInjured() { - var ( - v0 float32 - v1 float32 - v2 int - ) - v2 = ns.Random(0, 2) - v0 = ns.GetWaypointX(wp47[v2]) - v1 = ns.GetWaypointY(wp47[v2]) - ns.PauseObject(ns.GetTrigger(), 15) - ns.Enchant(ns.GetTrigger(), ns.ENCHANT_INVISIBLE, 2) - ns.Effect(ns.BLUE_SPARKS, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger()), 0, 0) - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger()), 0, 0) - ns.MoveObject(ns.GetTrigger(), v0, v1) - ns.Effect(ns.BLUE_SPARKS, v0, v1, 0, 0) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) -} -func HuntPlayer() { - ns.CreatureHunt(ns.GetTrigger()) -} -func FreeUrchins01() { - ns.UnlockDoor(obj18) - if flag65 { - goto LABEL1 - } - flag65 = true - ns.SetOwner(ns.GetHost(), obj20) - ns.SetOwner(ns.GetHost(), obj21) - ns.SetOwner(ns.GetHost(), obj22) - ns.SetOwner(ns.GetHost(), obj23) - ns.SetOwner(ns.GetHost(), obj19) - ns.SetRoamFlag(obj19, 1) - ns.SetRoamFlag(obj20, 1) - ns.SetRoamFlag(obj21, 1) - ns.SetRoamFlag(obj22, 1) - ns.SetRoamFlag(obj23, 1) - ns.AggressionLevel(obj19, 0.83) - ns.AggressionLevel(obj20, 0.83) - ns.AggressionLevel(obj21, 0.83) - ns.AggressionLevel(obj22, 0.83) - ns.AggressionLevel(obj23, 0.83) -LABEL1: - return -} -func LockUrchinCage() { - ns.LockDoor(obj18) -} -func HurtUrchins01() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.AggressionLevel(ns.GetTrigger(), 0.5) - ns.RunAway(ns.GetTrigger(), ns.GetCaller(), 120) -LABEL1: - return -} -func MapEntry() { - ns.NoWallSound(false) -} -func whichWisp(a1 ns.ObjectID) int { - var v0 int - v0 = 0 - for { - if !(v0 < ivar76) { - goto LABEL1 - } - if obj77[v0] != a1 { - goto LABEL2 - } - return v0 - LABEL2: - v0 += 1 - } -LABEL1: - return -1 - return 1 -} -func WispAction(a1 int) { - var ( - v0 float32 - v1 int - ) - v1 = gvar79[a1] - if v1 == gvar70 { - goto LABEL1 - } - if v1 == gvar72 { - goto LABEL2 - } - if v1 == gvar71 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - v0 = ns.Distance(ns.GetObjectX(obj77[a1]), ns.GetObjectY(obj77[a1]), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - if !(v0 < 70) { - goto LABEL5 - } - gvar79[a1] = gvar71 - ns.Move(obj77[a1], wp78[a1]) -LABEL5: - goto LABEL4 -LABEL2: - ns.LookAtObject(obj77[a1], ns.GetHost()) - ivar80[a1] += 1 - if !(ivar80[a1] > 4) { - goto LABEL6 - } - gvar79[a1] = gvar70 - ns.CreatureFollow(obj77[a1], ns.GetHost()) -LABEL6: - goto LABEL4 -LABEL3: - v0 = ns.Distance(ns.GetObjectX(obj77[a1]), ns.GetObjectY(obj77[a1]), ns.GetWaypointX(wp78[a1]), ns.GetWaypointY(wp78[a1])) - if !(v0 < 30) { - goto LABEL7 - } - gvar79[a1] = gvar73 - ns.CreatureIdle(obj77[a1]) - return -LABEL7: - goto LABEL4 -LABEL4: - ns.FrameTimerWithArg(ivar75, a1, WispAction) -} -func WispRecognize() { - var ( - v0 int - v1 int - ) - if ns.HasClass(ns.GetCaller(), ns.PLAYER) { - goto LABEL1 - } - return -LABEL1: - v0 = whichWisp(ns.GetTrigger()) - if !(v0 < 0) { - goto LABEL2 - } - return -LABEL2: - v1 = gvar79[v0] - if v1 == gvar69 { - goto LABEL3 - } - if v1 == gvar72 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - gvar79[v0] = gvar70 - ns.CreatureFollow(ns.GetTrigger(), ns.GetCaller()) - gvar81[v0] = ns.FrameTimerWithArg(ivar75, v0, WispAction) - goto LABEL5 -LABEL4: - gvar79[v0] = gvar71 - ns.Move(ns.GetTrigger(), wp78[v0]) - goto LABEL5 -LABEL5: - return -} -func WispLoseSight() { - var ( - v0 int - v1 int - ) - if ns.HasClass(ns.GetCaller(), ns.PLAYER) { - goto LABEL1 - } - return -LABEL1: - v0 = whichWisp(ns.GetTrigger()) - if !(v0 < 0) { - goto LABEL2 - } - return -LABEL2: - v1 = gvar79[v0] - if v1 == gvar71 { - goto LABEL3 - } - goto LABEL4 -LABEL3: - gvar79[v0] = gvar72 - ivar80[v0] = 0 - ns.CreatureIdle(ns.GetTrigger()) - goto LABEL4 -LABEL4: - return -} -func WispGetMad() { - var v0 int - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.AggressionLevel(ns.GetTrigger(), 0.83) - ns.CreatureIdle(ns.GetTrigger()) - v0 = whichWisp(ns.GetTrigger()) - if !(v0 >= 0) { - goto LABEL1 - } - gvar79[v0] = gvar74 - ns.CancelTimer(gvar81[v0]) -LABEL1: - return -} -func WispMedieval() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.AggressionLevel(ns.GetTrigger(), 0.83) - ns.CreatureIdle(ns.GetTrigger()) -LABEL1: - return -} -func PlaySwamp() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Music(29, 100) -LABEL1: - return -} -func PlaySwamp2() { - ns.Music(29, 100) -} -func PlayAction() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Music(26, 100) -LABEL1: - return -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapInitialize": - MapInitialize() - case "MapEntry": - MapEntry() - } -} diff --git a/examples/con09b/dummy_test.go b/examples/con09b/dummy_test.go deleted file mode 100644 index 69e33b5..0000000 --- a/examples/con09b/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package con09b - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/con09c/con09c.go b/examples/con09c/con09c.go deleted file mode 100644 index 75cfef0..0000000 --- a/examples/con09c/con09c.go +++ /dev/null @@ -1,583 +0,0 @@ -package con09c - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 ns.ObjectID - obj5 ns.ObjectID - obj6 ns.ObjectID - obj7 ns.ObjectID - obj8 ns.ObjectID - obj9 ns.ObjectID - obj10 ns.ObjectID - obj11 ns.ObjectID - obj12 ns.ObjectID - obj13 ns.ObjectID - obj14 ns.ObjectID - obj15 ns.ObjectID - obj16 ns.ObjectID - obj17 ns.ObjectID - obj18 ns.ObjectID - obj19 ns.ObjectID - obj20 ns.ObjectID - obj21 ns.ObjectID - obj22 ns.ObjectID - obj23 ns.ObjectID - obj24 ns.ObjectID - obj25 ns.ObjectID - obj26 ns.ObjectID - obj27 ns.ObjectID - obj28 ns.ObjectID - obj29 ns.ObjectID - obj30 ns.ObjectID - obj31 ns.ObjectID - obj32 ns.ObjectID - obj33 ns.ObjectID - obj34 ns.ObjectID - obj35 ns.ObjectID - obj36 ns.ObjectID - obj37 ns.ObjectID - obj38 ns.ObjectID - obj39 ns.ObjectID - obj40 ns.ObjectID - obj41 ns.ObjectID - obj42 ns.ObjectID - obj43 ns.ObjectID - obj44 ns.ObjectID - obj45 ns.ObjectID - obj46 ns.ObjectID - obj47 ns.ObjectID - obj48 ns.ObjectID - obj49 ns.ObjectID - obj50 ns.ObjectID - obj51 ns.ObjectID - obj52 ns.ObjectID - obj53 ns.ObjectID - obj54 ns.ObjectID - gvar55 ns.ObjectGroupID - gvar56 ns.ObjectGroupID - gvar57 ns.ObjectGroupID - gvar58 ns.ObjectGroupID - gvar59 ns.ObjectGroupID - gvar60 ns.ObjectGroupID - gvar61 ns.ObjectGroupID - gvar62 ns.ObjectGroupID - gvar63 ns.ObjectGroupID - gvar64 ns.ObjectGroupID - gvar65 ns.ObjectGroupID - gvar66 [6]ns.ObjectGroupID - gvar67 ns.ObjectGroupID - gvar68 ns.ObjectGroupID - gvar69 ns.WallGroupID - gvar70 ns.WallGroupID - gvar71 ns.WallGroupID - gvar72 ns.WallGroupID - gvar73 ns.WallGroupID - gvar74 ns.WallGroupID - wp75 ns.WaypointID - wp76 ns.WaypointID - wp77 ns.WaypointID - wp78 ns.WaypointID - wp79 ns.WaypointID - wp80 ns.WaypointID - wp81 ns.WaypointID - wp82 ns.WaypointID - wp83 ns.WaypointID - wp84 ns.WaypointID - wp85 ns.WaypointID - wp86 ns.WaypointID - wp87 ns.WaypointID - wp88 ns.WaypointID - wp89 ns.WaypointID - wp90 ns.WaypointID - wp91 ns.WaypointID - wp92 ns.WaypointID - wp93 ns.WaypointID - wp94 ns.WaypointID - wp95 ns.WaypointID - wp96 ns.WaypointID - wp97 ns.WaypointID - flag98 bool - flag99 bool - flag100 bool - flag101 bool - ivar102 int - ivar103 int - gvar104 int - gvar105 int - ivar106 int - obj107 ns.ObjectID -) - -func init() { - flag99 = true - flag100 = false - flag101 = false - ivar102 = 22 - ivar103 = ivar102 - ivar106 = 0 - flag98 = true -} -func ToggleSpikes1() { - ns.ObjectGroupToggle(gvar61) - ns.AudioEvent(ns.FloorSpikesUp, ns.Waypoint("SpikeWP01")) - ns.AudioEvent(ns.FloorSpikesDown, ns.Waypoint("SpikeWP06")) - ns.AudioEvent(ns.FloorSpikesUp, ns.Waypoint("SpikeWP09")) - ns.FrameTimer(60, ToggleSpikes2) -} -func ToggleSpikes2() { - ns.ObjectGroupToggle(gvar62) - ns.AudioEvent(ns.FloorSpikesDown, ns.Waypoint("SpikeWP04")) - ns.AudioEvent(ns.FloorSpikesUp, ns.Waypoint("SpikeWP07")) - ns.AudioEvent(ns.FloorSpikesDown, ns.Waypoint("SpikeWP12")) - ns.FrameTimer(60, ToggleSpikes1) -} -func GoToPost() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - ) - v0 = ns.GetWaypointX(wp94) - v1 = ns.GetWaypointY(wp94) - v2 = ns.GetWaypointX(wp95) - v3 = ns.GetWaypointY(wp95) - ns.CreatureGuard(obj28, v0, v1, v2, v3, 100) -} -func SwitchSpikeState() { - ns.ObjectGroupOff(gvar66[ivar106]) - if !flag99 { - goto LABEL1 - } - ivar106 += 1 - if !(ivar106 > 5) { - goto LABEL2 - } - ivar106 = 0 -LABEL2: - ns.ObjectGroupOn(gvar66[ivar106]) - ns.AudioEvent(ns.FloorSpikesUp, wp97) - ns.FrameTimer(30, SwitchSpikeState) - goto LABEL3 -LABEL1: - return -LABEL3: - return -} -func CloseWalls() { - ns.MusicPopEvent() - ns.WallGroupClose(gvar69) - ns.WallGroupClose(gvar70) -} -func BeginPolling() { - if flag100 { - goto LABEL1 - } - if flag101 { - goto LABEL2 - } - if !(ns.CurrentHealth(obj21) <= 0 || !ns.IsAttackedBy(obj21, ns.GetHost())) { - goto LABEL3 - } - flag101 = true - ns.WallGroupOpen(gvar70) - ns.ObjectOn(obj22) - ns.Wander(obj22) -LABEL3: - goto LABEL4 -LABEL2: - if !(ns.CurrentHealth(obj22) <= 0 || !ns.IsAttackedBy(obj22, ns.GetHost())) { - goto LABEL4 - } - flag100 = true - ns.Effect(ns.BLUE_SPARKS, ns.GetWaypointX(wp90), ns.GetWaypointY(wp90), 0, 0) - ns.AudioEvent(ns.KeyDrop, wp90) - ns.MoveObject(obj19, ns.GetWaypointX(wp90), ns.GetWaypointY(wp90)) - ns.ObjectOn(obj20) - ns.Move(obj9, wp88) - ns.Move(obj10, wp89) - ns.Move(obj7, wp78) - ns.Move(obj8, wp79) - ns.FrameTimer(45, CloseWalls) -LABEL4: - ns.FrameTimer(45, BeginPolling) -LABEL1: - return -} -func PlayAction() { - ns.MusicPushEvent() - ns.Music(26, 100) -} -func PlayCaves() { - ns.Music(18, 100) -} -func MapEntry() { - PlayCaves() - ns.NoWallSound(false) -} -func Secret01Declare() { - ns.PrintToAll("GeneralPrint:SecretFound") - ns.MoveWaypoint(wp96, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.AudioEvent(ns.SecretFound, wp96) - ns.GiveXp(ns.GetHost(), 500) -} -func Secret01Exit() { - ns.WallGroupOpen(gvar71) -} -func Secret02Declare() { - ns.ObjectGroupOff(gvar68) - ns.MoveWaypoint(wp96, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.AudioEvent(ns.SecretFound, wp96) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 250) -} -func Secret03Declare() { - ns.PrintToAll("GeneralPrint:SecretFound") - ns.MoveWaypoint(wp96, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.AudioEvent(ns.SecretFound, wp96) - ns.GiveXp(ns.GetHost(), 50) -} -func Secret04Declare() { - ns.PrintToAll("GeneralPrint:SecretFound") - ns.MoveWaypoint(wp96, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.AudioEvent(ns.SecretFound, wp96) - ns.GiveXp(ns.GetHost(), 100) -} -func SpikeTimerAudioLoop() { - if flag98 { - goto LABEL1 - } - ns.AudioEvent(ns.Gear1, wp75) - ns.FrameTimer(ivar103, SpikeTimerAudioLoop) - ivar103 -= 1 - goto LABEL2 -LABEL1: - ns.AudioEvent(ns.TriggerPressed, wp75) -LABEL2: - return -} -func ResetOgreSpikeDoor01() { - ns.ObjectOn(obj4) - ns.ObjectOn(obj5) - ns.ObjectGroupOn(gvar55) - ns.LockDoor(obj6) - flag98 = true - ivar103 = ivar102 -} -func ToggleOgreTrapSpikes01() { - ns.ObjectOff(obj4) - ns.ObjectOff(obj5) - ns.ObjectGroupOff(gvar55) - if !flag98 { - goto LABEL1 - } - ns.UnlockDoor(obj6) - flag98 = false - SpikeTimerAudioLoop() - ns.FrameTimer(150, ResetOgreSpikeDoor01) - goto LABEL2 -LABEL1: - ns.LockDoor(obj6) - flag98 = true -LABEL2: - return -} -func MoveBlocks01() { - ns.ObjectGroupOff(gvar57) - ns.ObjectGroupOff(gvar58) - PlayAction() - ns.Move(obj7, wp76) - ns.Move(obj8, wp77) - ns.Move(obj9, wp78) - ns.Move(obj10, wp79) - ns.Move(obj11, wp80) - ns.Move(obj12, wp81) - ns.Move(obj13, wp82) - ns.Move(obj14, wp83) - ns.Move(obj15, wp84) - ns.Move(obj16, wp85) - ns.Move(obj17, wp86) - ns.Move(obj18, wp87) - ns.WallGroupOpen(gvar69) - ns.ObjectOn(obj21) - ns.Wander(obj21) - ns.FrameTimer(45, BeginPolling) -} -func OpenWayOut() { - ns.WallGroupOpen(gvar74) -} -func GetBuddy() { - ns.RetreatLevel(obj23, 0) - ns.Move(obj23, wp91) -} -func FollowOgrePatrol01() { - if !ns.IsCaller(obj23) { - goto LABEL1 - } - ns.CreatureFollow(ns.GetTrigger(), obj23) - ns.AggressionLevel(obj26, 0.83) - ns.AggressionLevel(obj27, 0.83) - ns.Walk(obj23, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) -LABEL1: - return -} -func WaitASec() { - ns.PauseObject(ns.GetTrigger(), 30) -} -func Patrol() { - ns.Wander(ns.GetTrigger()) -} -func GoMedieval() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.AggressionLevel(ns.GetTrigger(), 0.83) -LABEL1: - return -} -func GoNormal() { - ns.AggressionLevel(ns.GetTrigger(), 0.5) -} -func StopAndListen() { - var v0 int - v0 = ns.Random(1, 3) - if !(ns.IsCaller(ns.GetHost()) && v0 == 1) { - goto LABEL1 - } - ns.PauseObject(ns.GetTrigger(), 45) - ns.LookAtObject(ns.GetTrigger(), ns.GetCaller()) - if !ns.IsVisibleTo(ns.GetTrigger(), ns.GetCaller()) { - goto LABEL2 - } - ns.AggressionLevel(ns.GetTrigger(), 0.5) - goto LABEL1 -LABEL2: - ns.CreatureIdle(ns.GetTrigger()) -LABEL1: - return -} -func ReturnHome() { - ns.AggressionLevel(ns.GetTrigger(), 0.5) - ns.GoBackHome(ns.GetTrigger()) -} -func SpikeHall() { - ns.ObjectGroupOff(gvar59) - ns.ObjectGroupOn(gvar60) - ToggleSpikes1() -} -func PressButton() { - ns.AudioEvent(ns.GruntRecognize, wp93) - ns.Move(obj28, wp92) - ns.AggressionLevel(obj29, 0.83) - ns.AggressionLevel(obj30, 0.83) - ns.AggressionLevel(obj31, 0.83) - ns.FrameTimer(60, GoToPost) -} -func OgrePressButton() { - ns.FrameTimer(10, PressButton) -} -func LockCageDoor() { - if ns.IsLocked(obj32) { - goto LABEL1 - } - ns.LockDoor(obj32) - goto LABEL2 -LABEL1: - ns.UnlockDoor(obj32) -LABEL2: - return -} -func FoundTreasureTrove() { - ns.PrintToAll("War09c:FoundTrove") - ns.GiveXp(ns.GetHost(), 1000) -} -func ToggleElevatorGroup3() { - ns.ObjectGroupToggle(gvar65) -} -func ToggleElevatorGroup1() { - ns.ObjectGroupToggle(gvar63) -} -func StartSpikes() { - ns.ObjectGroupOff(gvar67) - ns.LockDoor(obj33) - ns.FrameTimer(60, SwitchSpikeState) -} -func UnlockSpikeSegRoomDoor() { - ns.UnlockDoor(obj33) - flag99 = false -} -func CallSpitter1() { - ns.Wander(obj35) -} -func SetSpitter1PathColor() { - ns.SetRoamFlag(obj35, 1|128) -} -func LockPitDoor() { - ns.LockDoor(obj34) -} -func UnlockPitDoor() { - ns.UnlockDoor(obj34) -} -func ReleaseA() { - ns.UnlockDoor(obj36) - ns.UnlockDoor(obj37) - ns.CreatureHunt(obj48) -} -func ReleaseB() { - ns.UnlockDoor(obj38) - ns.UnlockDoor(obj39) - ns.CreatureHunt(obj49) -} -func ReleaseC() { - ns.UnlockDoor(obj40) - ns.UnlockDoor(obj41) - ns.CreatureHunt(obj50) -} -func ReleaseD() { - ns.UnlockDoor(obj42) - ns.UnlockDoor(obj43) - ns.CreatureHunt(obj51) -} -func ReleaseE() { - ns.UnlockDoor(obj44) - ns.UnlockDoor(obj45) - ns.CreatureHunt(obj52) -} -func ReleaseF() { - ns.UnlockDoor(obj46) - ns.UnlockDoor(obj47) - ns.CreatureHunt(obj53) -} -func ToggleElevatorGroup2() { - ns.ObjectOff(obj54) - ns.ObjectGroupToggle(gvar64) - ns.GiveXp(ns.GetHost(), 2500) -} -func PlayerDeath() { - ns.DeathScreen(9) -} -func MapInitialize() { - obj6 = ns.Object("OgreSpikeDoor01") - obj4 = ns.Object("OgreTrapSpikePlate01") - obj5 = ns.Object("OgreTrapSpikeSwitch01") - obj7 = ns.Object("Block01") - obj8 = ns.Object("Block02") - obj9 = ns.Object("Block03") - obj10 = ns.Object("Block04") - obj11 = ns.Object("Block05") - obj12 = ns.Object("Block06") - obj13 = ns.Object("Block07") - obj14 = ns.Object("Block08") - obj15 = ns.Object("Block09") - obj16 = ns.Object("Block10") - obj17 = ns.Object("Block11") - obj18 = ns.Object("Block12") - obj19 = ns.Object("SilverKey") - obj20 = ns.Object("SilverKeyLight") - obj21 = ns.Object("OgreFighter01") - obj22 = ns.Object("OgreFighter02") - obj23 = ns.Object("OgrePatrol01") - obj24 = ns.Object("OgrePatrol02") - obj25 = ns.Object("OgrePatrol03") - obj26 = ns.Object("OgrePatrolBuddy01") - obj27 = ns.Object("OgrePatrolBuddy02") - obj28 = ns.Object("ButtonPresser") - obj29 = ns.Object("OgrePsycho01") - obj30 = ns.Object("OgrePsycho02") - obj31 = ns.Object("OgrePsycho03") - obj32 = ns.Object("CageDoor") - obj33 = ns.Object("SpikeSegRoomDoor") - obj34 = ns.Object("CrumblingPitDoor") - obj36 = ns.Object("CreaturePitDoorA1") - obj37 = ns.Object("CreaturePitDoorA2") - obj38 = ns.Object("CreaturePitDoorB1") - obj39 = ns.Object("CreaturePitDoorB2") - obj40 = ns.Object("CreaturePitDoorC1") - obj41 = ns.Object("CreaturePitDoorC2") - obj42 = ns.Object("CreaturePitDoorD1") - obj43 = ns.Object("CreaturePitDoorD2") - obj44 = ns.Object("CreaturePitDoorE1") - obj45 = ns.Object("CreaturePitDoorE2") - obj46 = ns.Object("CreaturePitDoorF1") - obj47 = ns.Object("CreaturePitDoorF2") - obj48 = ns.Object("CreatureA") - obj49 = ns.Object("CreatureB") - obj50 = ns.Object("CreatureC") - obj51 = ns.Object("CreatureD") - obj52 = ns.Object("CreatureE") - obj53 = ns.Object("CreatureF") - obj107 = ns.Object("CreaturePitElev") - obj54 = ns.Object("CreaturePitSwitch") - gvar55 = ns.ObjectGroup("OgreTrapSpikes01") - gvar57 = ns.ObjectGroup("BlockTrigger01") - gvar56 = ns.ObjectGroup("BlockMoverGroup01") - gvar58 = ns.ObjectGroup("SecretLight01") - gvar59 = ns.ObjectGroup("SpikeHallTriggers") - gvar60 = ns.ObjectGroup("SpikeMoverGroup") - gvar61 = ns.ObjectGroup("HallSpikes1") - gvar62 = ns.ObjectGroup("HallSpikes2") - gvar66[0] = ns.ObjectGroup("SpikeSeg01") - gvar66[1] = ns.ObjectGroup("SpikeSeg02") - gvar66[2] = ns.ObjectGroup("SpikeSeg03") - gvar66[3] = ns.ObjectGroup("SpikeSeg04") - gvar66[4] = ns.ObjectGroup("SpikeSeg05") - gvar66[5] = ns.ObjectGroup("SpikeSeg06") - gvar67 = ns.ObjectGroup("SpikeSegTriggers") - gvar68 = ns.ObjectGroup("Secret02Triggers") - gvar63 = ns.ObjectGroup("ElevatorGroup1") - gvar64 = ns.ObjectGroup("ElevatorGroup2") - gvar65 = ns.ObjectGroup("ElevatorGroup3") - gvar69 = ns.WallGroup("SecretWallGroup01") - gvar70 = ns.WallGroup("SecretWallGroup02") - gvar71 = ns.WallGroup("Secret01Wall") - gvar72 = ns.WallGroup("SecretHallWalls01") - gvar73 = ns.WallGroup("CreaturePitWalls") - gvar74 = ns.WallGroup("WayOut") - wp75 = ns.Waypoint("SpikeTimerAudioOrigin") - wp76 = ns.Waypoint("BlockWP01") - wp77 = ns.Waypoint("BlockWP02") - wp78 = ns.Waypoint("BlockWP03") - wp79 = ns.Waypoint("BlockWP04") - wp80 = ns.Waypoint("BlockWP05") - wp81 = ns.Waypoint("BlockWP06") - wp82 = ns.Waypoint("BlockWP07") - wp83 = ns.Waypoint("BlockWP08") - wp84 = ns.Waypoint("BlockWP09") - wp85 = ns.Waypoint("BlockWP10") - wp86 = ns.Waypoint("BlockWP11") - wp87 = ns.Waypoint("BlockWP12") - wp88 = ns.Waypoint("BlockWP13") - wp89 = ns.Waypoint("BlockWP14") - wp90 = ns.Waypoint("SilverKeySpot") - wp91 = ns.Waypoint("BuddyWP") - wp92 = ns.Waypoint("ButtonLocationWP") - wp93 = ns.Waypoint("OgreAudioOrigin") - wp94 = ns.Waypoint("PostWP") - wp95 = ns.Waypoint("FacingWP") - wp96 = ns.Waypoint("PlayerSounds") - wp97 = ns.Waypoint("RoomSounds") - ns.LockDoor(obj36) - ns.LockDoor(obj37) - ns.LockDoor(obj38) - ns.LockDoor(obj39) - ns.LockDoor(obj40) - ns.LockDoor(obj41) - ns.LockDoor(obj42) - ns.LockDoor(obj43) - ns.LockDoor(obj44) - ns.LockDoor(obj45) - ns.LockDoor(obj46) - ns.LockDoor(obj47) - ns.UnBlind() -} -func OnEvent(typ string) { - switch typ { - case "MapEntry": - MapEntry() - case "PlayerDeath": - PlayerDeath() - case "MapInitialize": - MapInitialize() - } -} diff --git a/examples/con09c/dummy_test.go b/examples/con09c/dummy_test.go deleted file mode 100644 index 1641a99..0000000 --- a/examples/con09c/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package con09c - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/con09d/con09d.go b/examples/con09d/con09d.go deleted file mode 100644 index 061bb07..0000000 --- a/examples/con09d/con09d.go +++ /dev/null @@ -1,859 +0,0 @@ -package con09d - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 ns.ObjectID - obj5 ns.ObjectID - obj6 ns.ObjectID - obj7 ns.ObjectID - obj8 ns.ObjectID - obj9 ns.ObjectID - obj10 ns.ObjectID - obj11 ns.ObjectID - obj12 ns.ObjectID - obj13 ns.ObjectID - obj14 ns.ObjectID - obj15 ns.ObjectID - obj16 ns.ObjectID - obj17 ns.ObjectID - obj18 ns.ObjectID - obj19 ns.ObjectID - obj20 ns.ObjectID - gvar21 ns.ObjectGroupID - gvar22 ns.ObjectGroupID - gvar23 ns.ObjectGroupID - gvar24 ns.ObjectGroupID - gvar25 ns.ObjectGroupID - gvar26 ns.ObjectGroupID - gvar27 ns.WallGroupID - gvar28 ns.WallGroupID - gvar29 ns.WallGroupID - wp30 ns.WaypointID - wp31 ns.WaypointID - wp32 ns.WaypointID - wp33 ns.WaypointID - wp34 ns.WaypointID - wp35 ns.WaypointID - wp36 ns.WaypointID - wp37 ns.WaypointID - wp38 ns.WaypointID - wp39 ns.WaypointID - wp40 ns.WaypointID - wp41 [5]ns.WaypointID - wp42 [5]ns.WaypointID - wp43 ns.WaypointID - gvar44 ns.WaypointGroupID - gvar45 int - gvar46 int - gvar47 int - gvar48 int - gvar49 int - obj50 ns.ObjectID - obj51 ns.ObjectID - ivar52 int - gvar53 int - gvar54 int - fvar55 float32 - fvar56 float32 - flag57 bool - flag58 bool - flag59 bool - flag60 bool - flag61 bool - flag62 bool - flag63 bool - flag64 bool - flag65 bool - flag66 bool - flag67 bool - flag68 bool - flag69 bool - flag70 bool - flag71 bool - flag72 bool - flag73 bool -) - -func init() { - gvar45 = 0 - gvar46 = 1 - gvar47 = 2 - gvar48 = 3 - gvar49 = 4 - ivar52 = 1000 - gvar53 = gvar45 - gvar54 = gvar48 - flag57 = false - flag58 = false - flag59 = false - flag60 = false - flag61 = false - flag62 = false - flag63 = false - flag64 = false - flag65 = false - flag66 = false - flag67 = false - flag68 = false - flag69 = false - flag70 = false - flag71 = false - flag72 = false - flag73 = false -} -func PlayerDeath() { - ns.DeathScreen(9) -} -func MapInitialize() { - obj4 = ns.Object("LoneWolf01") - obj5 = ns.Object("Skel01a") - obj6 = ns.Object("Skel02a") - obj7 = ns.Object("Skel03a") - obj8 = ns.Object("SquadLeader") - obj9 = ns.Object("Cain") - obj10 = ns.Object("Cain2") - obj11 = ns.Object("CainWolf01") - obj12 = ns.Object("CainWolf02") - obj13 = ns.Object("CainWolf03") - obj14 = ns.Object("Necromancer1") - obj15 = ns.Object("Necromancer2") - obj16 = ns.Object("Necromancer") - obj17 = ns.Object("NecroStart") - obj18 = ns.Object("Lich") - obj19 = ns.Object("KeepOutTrigger") - obj20 = ns.Object("TreasureLight") - gvar21 = ns.ObjectGroup("GoldTrapSpikes") - gvar22 = ns.ObjectGroup("WolfCaveTriggers") - gvar23 = ns.ObjectGroup("SkeletonSquad") - gvar25 = ns.ObjectGroup("NecroTriggers") - gvar24 = ns.ObjectGroup("ElevatorGroup1") - gvar26 = ns.ObjectGroup("SkeletonMarchTriggers") - gvar27 = ns.WallGroup("SecretHallWalls01") - gvar28 = ns.WallGroup("NecroWalls") - gvar29 = ns.WallGroup("NecroSafetyWalls") - wp30 = ns.Waypoint("NecroWP") - wp31 = ns.Waypoint("GoldTrapWP1") - wp32 = ns.Waypoint("GoldTrapWP2") - wp33 = ns.Waypoint("GoldTrapWP3") - wp34 = ns.Waypoint("GoldTrapWP4") - wp37 = ns.Waypoint("WolfCreateWP01") - wp38 = ns.Waypoint("WolfCreateWP02") - wp39 = ns.Waypoint("LoneWolf01DestWP") - wp40 = ns.Waypoint("Wolf01FacingWP") - wp35 = ns.Waypoint("WolfCreate01Dest") - wp36 = ns.Waypoint("WolfCreate02Dest") - wp41[0] = ns.Waypoint("TeleWP0") - wp41[1] = ns.Waypoint("TeleWP1") - wp41[2] = ns.Waypoint("TeleWP2") - wp41[3] = ns.Waypoint("TeleWP3") - wp41[4] = ns.Waypoint("TeleWP4") - wp42[0] = ns.Waypoint("WallSmokeWP0") - wp42[1] = ns.Waypoint("WallSmokeWP1") - wp42[2] = ns.Waypoint("WallSmokeWP2") - wp42[3] = ns.Waypoint("WallSmokeWP3") - wp42[4] = ns.Waypoint("WallSmokeWP4") - wp43 = ns.Waypoint("PlayerSounds") - gvar44 = ns.WaypointGroup("SearchNetwork1") - ns.StoryPic(obj9, "WoundedConjurerPic") - ns.StoryPic(obj10, "WoundedConjurerPic") - ns.StoryPic(obj16, "NecromancerPic") - ns.UnBlind() -} -func PlaySwamp() { - ns.Music(25, 100) -} -func PlayAction() { - ns.Music(26, 100) -} -func PlayAction2() { - ns.Music(28, 100) -} -func PlayMordwyn() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Music(21, 100) -LABEL1: - return -} -func PlayOgre() { - ns.Music(7, 100) -} -func PlayCaves() { - ns.Music(18, 100) -} -func PlayWasteland() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Music(19, 100) -LABEL1: - return -} -func Patrol() { - ns.Wander(ns.GetTrigger()) -} -func GoMedieval() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.AggressionLevel(ns.GetTrigger(), 0.83) -LABEL1: - return -} -func GoNormal() { - ns.AggressionLevel(ns.GetTrigger(), 0.5) -} -func StopAndListen() { - var v0 int - v0 = ns.Random(1, 3) - if !(ns.IsCaller(ns.GetHost()) && v0 == 1) { - goto LABEL1 - } - ns.PauseObject(ns.GetTrigger(), 45) - ns.LookAtObject(ns.GetTrigger(), ns.GetCaller()) - if !ns.IsVisibleTo(ns.GetTrigger(), ns.GetCaller()) { - goto LABEL2 - } - ns.AggressionLevel(ns.GetTrigger(), 0.5) - goto LABEL1 -LABEL2: - ns.CreatureIdle(ns.GetTrigger()) -LABEL1: - return -} -func ReturnHome() { - ns.AggressionLevel(ns.GetTrigger(), 0.5) - ns.GoBackHome(ns.GetTrigger()) -} -func DisableGoldTrapSpikes() { - ns.ObjectGroupOff(gvar21) -} -func TriggerGoldTrapPoison() { - ns.CastSpellLocationLocation(ns.SPELL_TOXIC_CLOUD, ns.GetWaypointX(wp31), ns.GetWaypointY(wp31), 0, 0) - ns.CastSpellLocationLocation(ns.SPELL_TOXIC_CLOUD, ns.GetWaypointX(wp32), ns.GetWaypointY(wp32), 0, 0) - ns.CastSpellLocationLocation(ns.SPELL_TOXIC_CLOUD, ns.GetWaypointX(wp33), ns.GetWaypointY(wp33), 0, 0) - ns.CastSpellLocationLocation(ns.SPELL_TOXIC_CLOUD, ns.GetWaypointX(wp34), ns.GetWaypointY(wp34), 0, 0) -} -func TriggerGoldTrap() { - ns.ObjectGroupOn(gvar21) - ns.FrameTimer(20, TriggerGoldTrapPoison) -} -func ToggleElevatorGroup1() { - ns.ObjectGroupToggle(gvar24) -} -func DisableTL() { - ns.ObjectOff(obj20) -} -func WolfOrders() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 float32 - v5 float32 - ) - v0 = ns.GetWaypointX(wp35) - v1 = ns.GetWaypointY(wp35) - v2 = ns.GetWaypointX(wp36) - v3 = ns.GetWaypointY(wp36) - v4 = ns.GetWaypointX(wp39) - v5 = ns.GetWaypointY(wp39) - ns.CreatureGuard(obj50, v0, v1, v4, v5, 350) - ns.CreatureGuard(obj51, v2, v3, v4, v5, 350) - ns.AggressionLevel(obj50, 0.83) - ns.AggressionLevel(obj51, 0.83) -} -func CainDialogStart() { - var v0 int - v0 = gvar53 - if v0 == gvar45 { - goto LABEL1 - } - if v0 == gvar46 { - goto LABEL2 - } - if v0 == gvar47 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - ns.TellStory(ns.SwordsmanHurt, "War09c:CainAsk") - flag57 = true - goto LABEL4 -LABEL2: - ns.TellStory(ns.SwordsmanHurt, "War09c:CainHealed") - flag57 = true - goto LABEL4 -LABEL3: - ns.TellStory(ns.SwordsmanHurt, "War09c:CainEscort") - flag57 = true - goto LABEL4 -LABEL4: - return -} -func CainDialogEnd() { - var ( - v0 int - v1 ns.ObjectID - v2 int - ) - v2 = gvar53 - if v2 == gvar45 { - goto LABEL1 - } - if v2 == gvar46 { - goto LABEL2 - } - if v2 == gvar47 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - v0 = ns.GetAnswer(obj9) - if v0 != 1 { - goto LABEL5 - } - v1 = ns.GetLastItem(ns.GetHost()) - for { - if v1 == 0 { - goto LABEL6 - } - if !(ns.HasClass(v1, ns.FOOD) && ns.HasSubclass(v1, ns.HEALTH_POTION)) { - goto LABEL7 - } - ns.Drop(ns.GetHost(), v1) - ns.Delete(v1) - fvar55 = ns.GetObjectX(obj9) - fvar56 = ns.GetObjectY(obj9) - CainRescue() - return - LABEL7: - v1 = ns.GetPreviousItem(v1) - } -LABEL6: - ns.PrintToAll("War09c:CainNoPotion") - goto LABEL9 -LABEL5: - ns.FrameTimer(1, CainPlea2) -LABEL9: - goto LABEL4 -LABEL2: - ns.CreatureFollow(obj10, ns.GetHost()) - ns.BecomePet(obj10) - ns.PrintToAll("War09c:SavedCain") - ns.GiveXp(ns.GetHost(), 2500) - ns.CancelDialog(obj10) - flag61 = true - gvar53 = gvar47 - goto LABEL4 -LABEL3: - goto LABEL4 -LABEL4: - return -} -func LichFight() { - ns.ObjectOn(obj18) - ns.Enchant(obj18, ns.ENCHANT_INVISIBLE, 3) - ns.MoveObject(obj18, ns.GetWaypointX(wp41[3]), ns.GetWaypointY(wp41[3])) - ns.Effect(ns.BLUE_SPARKS, ns.GetWaypointX(wp41[3]), ns.GetWaypointY(wp41[3]), 0, 0) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp41[3]), ns.GetWaypointY(wp41[3]), 0, 0) -} -func NecroTalk() { - if !ns.IsCaller(obj16) { - goto LABEL1 - } - ns.ObjectOff(obj17) - ns.SetDialog(obj16, ns.NORMAL, NecroDialogStart, NecroDialogEnd) - ns.StartDialog(obj16, ns.GetHost()) -LABEL1: - return -} -func MoveBody() { - ns.Delete(obj9) - ns.MoveObject(obj10, fvar55, fvar56) -} -func StartNecroFight2() { - ns.Frozen(ns.GetHost(), true) - ns.WideScreen(true) - ns.Walk(obj16, ns.GetWaypointX(wp30), ns.GetWaypointY(wp30)) -} -func WolfHarass2() { - var ( - v0 int - v1 int - v2 int - ) - v0 = ns.Random(40, 65) - v1 = ns.Random(0, 2) - if ns.IsObjectOn(obj11) { - goto LABEL1 - } - ns.ObjectOn(obj11) - ns.ObjectOn(obj12) - ns.ObjectOn(obj13) -LABEL1: - v2 = v1 - if v2 == 0 { - goto LABEL2 - } - if v2 == 1 { - goto LABEL3 - } - if v2 == 2 { - goto LABEL4 - } - goto LABEL5 -LABEL2: - if !(flag58 == false && flag63 == false) { - goto LABEL6 - } - ns.HitLocation(obj11, ns.GetObjectX(obj9), ns.GetObjectY(obj9)) - goto LABEL7 -LABEL6: - v0 = 2 -LABEL7: - goto LABEL5 -LABEL3: - if !(flag59 == false && flag64 == false) { - goto LABEL8 - } - ns.HitLocation(obj12, ns.GetObjectX(obj9), ns.GetObjectY(obj9)) - goto LABEL9 -LABEL8: - v0 = 2 -LABEL9: - goto LABEL5 -LABEL4: - if !(flag60 == false && flag65 == false) { - goto LABEL10 - } - ns.HitLocation(obj13, ns.GetObjectX(obj9), ns.GetObjectY(obj9)) - goto LABEL11 -LABEL10: - v0 = 2 -LABEL11: - goto LABEL5 -LABEL5: - if !(flag63 == false || flag64 == false || flag65 == false) { - goto LABEL12 - } - ns.FrameTimer(v0, WolfHarass2) - goto LABEL13 -LABEL12: - return -LABEL13: - return -} -func CainPlea2() { - ns.Chat(obj9, "War09c:CainPlea2") -} -func MapEntry() { - ns.NoWallSound(false) -} -func KeepOut() { - r1 := ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) - if !r1 { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func KeepOut2() { - if flag69 { - goto LABEL1 - } - if !ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func Secret01Declare() { - ns.ObjectOff(ns.GetTrigger()) - ns.MoveWaypoint(wp43, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.AudioEvent(ns.SecretFound, wp43) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 75) -} -func Secret02Declare() { - ns.ObjectOff(ns.GetTrigger()) - ns.MoveWaypoint(wp43, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.AudioEvent(ns.SecretFound, wp43) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 150) -} -func SkeletonMarch() { - if !(ns.IsCaller(ns.GetHost()) || ns.IsOwnedBy(ns.GetCaller(), ns.GetHost())) { - goto LABEL1 - } - ns.ObjectGroupOff(gvar26) - ns.ObjectGroupOn(gvar23) - ns.Wander(obj5) - ns.Wander(obj6) - ns.Wander(obj7) - ns.Wander(obj8) -LABEL1: - return -} -func LoneWolf01Retreat() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - ) - v0 = ns.GetWaypointX(wp39) - v1 = ns.GetWaypointY(wp39) - v2 = ns.GetWaypointX(wp40) - v3 = ns.GetWaypointY(wp40) - ns.RetreatLevel(obj4, 0) - ns.CreatureGuard(obj4, v0, v1, v2, v3, 150) -} -func WolfAmbush() { - ns.ObjectGroupOff(gvar22) - obj50 = ns.CreateObject("BlackWolf", wp37) - obj51 = ns.CreateObject("BlackWolf", wp38) - ns.FrameTimer(1, WolfOrders) -} -func HomePatrol() { - ns.AggressionLevel(ns.GetTrigger(), 0.83) - ns.GoBackHome(ns.GetTrigger()) - ns.PauseObject(ns.GetTrigger(), 120) - ns.Wander(ns.GetTrigger()) -} -func WolfGone() { - if !ns.IsTrigger(obj11) { - goto LABEL1 - } - flag58 = true - if !(ns.CurrentHealth(obj11) > 0) { - goto LABEL1 - } - ns.AggressionLevel(obj11, 0.5) -LABEL1: - if !ns.IsTrigger(obj12) { - goto LABEL2 - } - flag59 = true - if !(ns.CurrentHealth(obj12) > 0) { - goto LABEL2 - } - ns.AggressionLevel(obj12, 0.5) -LABEL2: - if !ns.IsTrigger(obj13) { - goto LABEL3 - } - flag60 = true - if !(ns.CurrentHealth(obj13) > 0) { - goto LABEL3 - } - ns.AggressionLevel(obj13, 0.5) -LABEL3: - if !(flag58 == true && flag59 == true && flag60 == true) { - goto LABEL4 - } - ns.DestroyChat(obj9) - flag57 = true - gvar54 = gvar49 - ns.SetDialog(obj9, ns.YESNO, CainDialogStart, CainDialogEnd) -LABEL4: - return -} -func CainPlea() { - var v0 int - if !(ns.IsCaller(ns.GetHost()) && ns.CurrentHealth(obj9) > 0) { - goto LABEL1 - } - v0 = gvar54 - if v0 == gvar48 { - goto LABEL2 - } - if v0 == gvar49 { - goto LABEL3 - } - goto LABEL1 -LABEL2: - ns.Chat(obj9, "War09c:CainPlea") - goto LABEL1 -LABEL3: - ns.Chat(obj9, "War09c:CainPlea2") - goto LABEL1 -LABEL1: - return -} -func WolfHarass() { - r1 := ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) - if !(r1 && flag61 == false) { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - if !ns.IsCaller(ns.GetHost()) { - goto LABEL2 - } - if !(flag61 == false && flag62 == false) { - goto LABEL2 - } - WolfHarass2() -LABEL2: - return -} -func WolvesTargetPlayer() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - if flag58 { - goto LABEL2 - } - flag63 = true - ns.AggressionLevel(obj11, 0.5) - ns.Attack(obj11, ns.GetHost()) -LABEL2: - if flag59 { - goto LABEL3 - } - flag64 = true - ns.AggressionLevel(obj12, 0.5) - ns.Attack(obj12, ns.GetHost()) -LABEL3: - if flag60 { - goto LABEL1 - } - flag65 = true - ns.AggressionLevel(obj13, 0.5) - ns.Attack(obj13, ns.GetHost()) -LABEL1: - return -} -func CainDie() { - if !(ns.CurrentHealth(obj11) > 0) { - goto LABEL1 - } - ns.AggressionLevel(obj11, 0.83) -LABEL1: - if !(ns.CurrentHealth(obj12) > 0) { - goto LABEL2 - } - ns.AggressionLevel(obj12, 0.83) -LABEL2: - if !(ns.CurrentHealth(obj13) > 0) { - goto LABEL3 - } - ns.AggressionLevel(obj13, 0.83) -LABEL3: - fvar55 = ns.GetObjectX(obj9) - fvar56 = ns.GetObjectY(obj9) - flag62 = true - ns.ObjectOn(obj10) - ns.Damage(obj10, 0, 200000, 0) - ns.FrameTimer(1, MoveBody) -} -func CainRescue() { - ns.Delete(obj9) - ns.MoveObject(obj10, fvar55, fvar56) - ns.ObjectOn(obj10) - ns.CreatureGuard(obj10, fvar55, fvar56, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - gvar53 = gvar46 - ns.SetDialog(obj10, ns.NORMAL, CainDialogStart, CainDialogEnd) - ns.LookAtObject(obj10, ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj10) - ns.StartDialog(obj10, ns.GetHost()) -} -func NecroDialogStart() { - var ( - v0 int - v1 int - ) - v0 = ns.Random(1, 2) - v1 = v0 - if v1 == 1 { - goto LABEL1 - } - if v1 == 2 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.LookAtObject(obj16, ns.GetHost()) - ns.LookAtObject(obj15, ns.GetHost()) - ns.LookAtObject(obj14, ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj16) - ns.TellStory(ns.SwordsmanHurt, "Con09a:NecroThreat1") - goto LABEL3 -LABEL2: - ns.LookAtObject(obj16, ns.GetHost()) - ns.LookAtObject(obj15, ns.GetHost()) - ns.LookAtObject(obj14, ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj16) - ns.TellStory(ns.SwordsmanHurt, "Con09a:NecroThreat4") - goto LABEL3 -LABEL3: - return -} -func NecroDialogEnd() { - ns.CancelDialog(obj16) - ns.AggressionLevel(obj14, 0.83) - ns.AggressionLevel(obj15, 0.83) - ns.AggressionLevel(obj16, 0.83) - ns.CreatureIdle(obj14) - ns.CreatureIdle(obj15) - ns.Frozen(ns.GetHost(), false) - ns.WideScreen(false) - ns.FrameTimer(ivar52, LichFight) -} -func StartNecroFight() { - var v0 int - ns.WayPointGroupOff(gvar44) - ns.ObjectOff(obj19) - ns.ObjectGroupOff(gvar25) - ns.ObjectOn(obj17) - ns.ObjectOn(obj14) - ns.ObjectOn(obj15) - ns.ObjectOn(obj16) - ns.NoWallSound(true) - ns.WallGroupOpen(gvar29) - ns.NoWallSound(false) - ns.MusicPushEvent() - PlayAction2() - ns.WallGroupClose(gvar28) - v0 = 0 - for { - if !(v0 < 5) { - goto LABEL1 - } - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp42[v0]), ns.GetWaypointY(wp42[v0]), 0, 0) - v0 += 1 - } -LABEL1: - ns.FrameTimer(1, StartNecroFight2) -} -func NecroTeleport() { - var ( - v0 float32 - v1 float32 - v2 int - ) - v2 = ns.Random(0, 4) - v0 = ns.GetWaypointX(wp41[v2]) - v1 = ns.GetWaypointY(wp41[v2]) - if !(ns.IsCaller(obj14) || ns.IsCaller(obj15) || ns.IsCaller(obj16) || ns.IsCaller(obj18)) { - goto LABEL1 - } - ns.Enchant(ns.GetCaller(), ns.ENCHANT_INVISIBLE, 2) - ns.Effect(ns.BLUE_SPARKS, ns.GetObjectX(ns.GetCaller()), ns.GetObjectY(ns.GetCaller()), 0, 0) - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(ns.GetCaller()), ns.GetObjectY(ns.GetCaller()), 0, 0) - ns.MoveObject(ns.GetCaller(), v0, v1) - ns.Effect(ns.BLUE_SPARKS, v0, v1, 0, 0) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) -LABEL1: - return -} -func NecroTeleportInjured() { - var ( - v0 float32 - v1 float32 - v2 int - ) - v2 = ns.Random(0, 4) - v0 = ns.GetWaypointX(wp41[v2]) - v1 = ns.GetWaypointY(wp41[v2]) - if !(ns.IsTrigger(obj14) || ns.IsTrigger(obj15) || ns.IsTrigger(obj16)) { - goto LABEL1 - } - ns.PauseObject(ns.GetTrigger(), 15) -LABEL1: - ns.Enchant(ns.GetTrigger(), ns.ENCHANT_INVISIBLE, 2) - ns.Effect(ns.BLUE_SPARKS, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger()), 0, 0) - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger()), 0, 0) - ns.MoveObject(ns.GetTrigger(), v0, v1) - ns.Effect(ns.BLUE_SPARKS, v0, v1, 0, 0) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) -} -func HuntPlayer() { - ns.CreatureHunt(ns.GetTrigger()) -} -func OpenMagicWalls() { - var v0 int - if !ns.IsTrigger(obj14) { - goto LABEL1 - } - flag66 = true -LABEL1: - if !ns.IsTrigger(obj15) { - goto LABEL2 - } - flag67 = true -LABEL2: - if !ns.IsTrigger(obj16) { - goto LABEL3 - } - flag68 = true -LABEL3: - if !ns.IsTrigger(obj18) { - goto LABEL4 - } - flag69 = true -LABEL4: - if !(flag66 == true && flag67 == true && flag68 == true && flag69 == true) { - goto LABEL5 - } - ns.WallGroupOpen(gvar28) - v0 = 0 - for { - if !(v0 < 5) { - goto LABEL6 - } - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp42[v0]), ns.GetWaypointY(wp42[v0]), 0, 0) - v0 += 1 - } -LABEL6: - ns.WayPointGroupOn(gvar44) - ns.MusicPopEvent() -LABEL5: - return -} -func TeleportToPlayer() { - var ( - v0 int - v1 float32 - v2 float32 - v3 ns.WaypointID - ) - v2 = 1e+06 - v0 = 0 - for { - if !(v0 < 5) { - goto LABEL1 - } - v1 = ns.Distance(ns.GetWaypointX(wp41[v0]), ns.GetWaypointY(wp41[v0]), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - if !(v1 < v2) { - goto LABEL2 - } - v2 = v1 - v3 = wp41[v0] - LABEL2: - v0 += 1 - } -LABEL1: - ns.Enchant(obj18, ns.ENCHANT_INVISIBLE, 1) - ns.Effect(ns.BLUE_SPARKS, ns.GetObjectX(obj18), ns.GetObjectY(obj18), 0, 0) - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(obj18), ns.GetObjectY(obj18), 0, 0) - ns.MoveObject(obj18, ns.GetWaypointX(v3), ns.GetWaypointY(v3)) - ns.Effect(ns.BLUE_SPARKS, ns.GetWaypointX(v3), ns.GetWaypointY(v3), 0, 0) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(v3), ns.GetWaypointY(v3), 0, 0) -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapInitialize": - MapInitialize() - case "MapEntry": - MapEntry() - } -} diff --git a/examples/con09d/dummy_test.go b/examples/con09d/dummy_test.go deleted file mode 100644 index cefe2f8..0000000 --- a/examples/con09d/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package con09d - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/con10a/con10a.go b/examples/con10a/con10a.go deleted file mode 100644 index ac3f3ed..0000000 --- a/examples/con10a/con10a.go +++ /dev/null @@ -1,828 +0,0 @@ -package con10a - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 ns.ObjectID - obj5 ns.ObjectID - obj6 ns.ObjectID - obj7 ns.ObjectID - obj8 ns.ObjectID - obj9 ns.ObjectID - obj10 ns.ObjectID - obj11 ns.ObjectID - obj12 ns.ObjectID - obj13 ns.ObjectID - obj14 ns.ObjectID - obj15 ns.ObjectID - obj16 ns.ObjectID - obj17 ns.ObjectID - obj18 ns.ObjectID - obj19 ns.ObjectID - obj20 ns.ObjectID - obj21 ns.ObjectID - obj22 ns.ObjectID - obj23 ns.ObjectID - obj24 ns.ObjectID - obj25 ns.ObjectID - obj26 ns.ObjectID - obj27 ns.ObjectID - obj28 ns.ObjectID - obj29 ns.ObjectID - obj30 ns.ObjectID - obj31 ns.ObjectID - obj32 ns.ObjectID - obj33 ns.ObjectID - obj34 ns.ObjectID - obj35 ns.ObjectID - obj36 ns.ObjectID - obj37 ns.ObjectID - obj38 ns.ObjectID - obj39 ns.ObjectID - obj40 ns.ObjectID - obj41 ns.ObjectID - obj42 ns.ObjectID - obj43 ns.ObjectID - obj44 ns.ObjectID - obj45 ns.ObjectID - obj46 ns.ObjectID - obj47 ns.ObjectID - gvar48 ns.ObjectGroupID - wp49 ns.WaypointID - wp50 ns.WaypointID - wp51 ns.WaypointID - wp52 ns.WaypointID - wp53 ns.WaypointID - wp54 ns.WaypointID - wp55 ns.WaypointID - wp56 ns.WaypointID - wp57 ns.WaypointID - wp58 ns.WaypointID - wp59 ns.WaypointID - wp60 ns.WaypointID - wp61 ns.WaypointID - gvar62 ns.WallGroupID - gvar63 ns.WallGroupID - gvar64 ns.WallGroupID - gvar65 ns.ObjectGroupID - gvar66 ns.ObjectGroupID - gvar67 ns.ObjectGroupID - gvar68 ns.ObjectGroupID - gvar69 ns.ObjectGroupID - gvar70 ns.ObjectGroupID - flag71 bool - flag72 bool - flag73 bool - flag74 bool - gvar75 ns.WallGroupID - gvar76 ns.WallGroupID - gvar77 ns.WallGroupID - gvar78 ns.ObjectGroupID - obj79 ns.ObjectID - obj80 ns.ObjectID - gvar81 ns.WallGroupID - flag82 bool - flag83 bool - wp84 ns.WaypointID - wp85 ns.WaypointID - obj86 ns.ObjectID - obj87 ns.ObjectID - wp88 ns.WaypointID - wp89 ns.WaypointID - obj90 ns.ObjectID - gvar91 ns.WallGroupID - gvar92 ns.WallGroupID - gvar93 ns.ObjectGroupID - gvar94 ns.ObjectGroupID - gvar95 ns.ObjectGroupID - gvar96 ns.ObjectGroupID - gvar97 ns.ObjectGroupID - gvar98 ns.ObjectGroupID - wp99 ns.WaypointID - wp100 ns.WaypointID - wp101 ns.WaypointID - wp102 ns.WaypointID - wp103 ns.WaypointID - wp104 ns.WaypointID - wp105 ns.WaypointID - gvar106 ns.ObjectGroupID - obj107 ns.ObjectID - obj108 ns.ObjectID - obj109 ns.ObjectID - obj110 ns.ObjectID - gvar111 int - wp112 ns.WaypointID - wp113 ns.WaypointID - gvar114 ns.WallGroupID - gvar115 ns.WallGroupID - gvar116 ns.ObjectGroupID - gvar117 ns.WallGroupID - gvar118 ns.WallGroupID - wp119 ns.WaypointID - obj120 ns.ObjectID - obj121 ns.ObjectID - obj122 ns.ObjectID - wp123 ns.WaypointID - wp124 ns.WaypointID - fvar125 float32 - fvar126 float32 - flag127 bool - flag128 bool -) - -func init() { - flag71 = false - flag72 = false - flag73 = false - flag74 = false - flag83 = false - flag82 = false - flag127 = false - flag128 = false -} -func DisableArrow01() { - ns.ObjectOff(obj4) -} -func EnableArrow01() { - ns.ObjectOn(obj4) - ns.FrameTimer(1, DisableArrow01) -} -func DisableArrow02() { - ns.ObjectOff(obj5) -} -func EnableArrow02() { - ns.ObjectOn(obj5) - ns.FrameTimer(1, DisableArrow02) -} -func DisableArrow03() { - ns.ObjectOff(obj6) -} -func EnableArrow03() { - ns.ObjectOn(obj6) - ns.FrameTimer(1, DisableArrow03) -} -func DisableArrow04() { - ns.ObjectOff(obj7) -} -func EnableArrow04() { - ns.ObjectOn(obj7) - ns.FrameTimer(1, DisableArrow04) -} -func DisableArrow05() { - ns.ObjectOff(obj8) -} -func EnableArrow05() { - ns.ObjectOn(obj8) - ns.FrameTimer(1, DisableArrow05) -} -func DisableArrow06() { - ns.ObjectOff(obj9) -} -func EnableArrow06() { - ns.ObjectOn(obj9) - ns.FrameTimer(1, DisableArrow06) -} -func DisableArrow07() { - ns.ObjectOff(obj10) -} -func EnableArrow07() { - ns.ObjectOn(obj10) - ns.FrameTimer(1, DisableArrow07) -} -func DisableArrow08() { - ns.ObjectOff(obj11) -} -func EnableArrow08() { - ns.ObjectOn(obj11) - ns.FrameTimer(1, DisableArrow08) -} -func DisableArrow09() { - ns.ObjectOff(obj12) -} -func EnableArrow09() { - ns.ObjectOn(obj12) - ns.FrameTimer(1, DisableArrow09) -} -func DisableArrow10() { - ns.ObjectOff(obj13) -} -func EnableArrow10() { - ns.ObjectOn(obj13) - ns.FrameTimer(1, DisableArrow10) -} -func DisableArrow11() { - ns.ObjectOff(obj14) -} -func EnableArrow11() { - ns.ObjectOn(obj14) - ns.FrameTimer(1, DisableArrow11) -} -func DisableArrow12() { - ns.ObjectOff(obj15) -} -func EnableArrow12() { - ns.ObjectOn(obj15) - ns.FrameTimer(1, DisableArrow12) -} -func DisableArrow13() { - ns.ObjectOff(obj16) -} -func EnableArrow13() { - ns.ObjectOn(obj16) - ns.FrameTimer(1, DisableArrow13) -} -func DisableArrow14() { - ns.ObjectOff(obj17) -} -func EnableArrow14() { - ns.ObjectOn(obj17) - ns.FrameTimer(1, DisableArrow14) -} -func DisableArrow15() { - ns.ObjectOff(obj18) -} -func EnableArrow15() { - ns.ObjectOn(obj18) - ns.FrameTimer(1, DisableArrow15) -} -func DisableArrow25() { - ns.ObjectOff(obj28) -} -func EnableArrow25() { - ns.ObjectOn(obj28) - ns.FrameTimer(1, DisableArrow25) -} -func DisableArrow26() { - ns.ObjectOff(obj29) -} -func EnableArrow26() { - ns.ObjectOn(obj29) - ns.FrameTimer(1, DisableArrow26) -} -func DisableArrow27() { - ns.ObjectOff(obj30) -} -func EnableArrow27() { - ns.ObjectOn(obj30) - ns.FrameTimer(1, DisableArrow27) -} -func DisableArrow28() { - ns.ObjectOff(obj31) -} -func EnableArrow28() { - ns.ObjectOn(obj31) - ns.FrameTimer(1, DisableArrow28) -} -func DisableArrow29() { - ns.ObjectOff(obj32) -} -func EnableArrow29() { - ns.ObjectOn(obj32) - ns.FrameTimer(1, DisableArrow29) -} -func DisableArrow30() { - ns.ObjectOff(obj33) -} -func EnableArrow30() { - ns.ObjectOn(obj33) - ns.FrameTimer(1, DisableArrow30) -} -func DisableArrow31() { - ns.ObjectOff(obj34) -} -func EnableArrow31() { - ns.ObjectOn(obj34) - ns.FrameTimer(1, DisableArrow31) -} -func DisableArrow32() { - ns.ObjectOff(obj35) -} -func EnableArrow32() { - ns.ObjectOn(obj35) - ns.FrameTimer(1, DisableArrow32) -} -func DisableArrow33() { - ns.ObjectOff(obj36) -} -func EnableArrow33() { - ns.ObjectOn(obj36) - ns.FrameTimer(1, DisableArrow33) -} -func DisableArrow34() { - ns.ObjectOff(obj37) -} -func EnableArrow34() { - ns.ObjectOn(obj37) - ns.FrameTimer(1, DisableArrow34) -} -func DisableArrow35() { - ns.ObjectOff(obj38) -} -func EnableArrow35() { - ns.ObjectOn(obj38) - ns.FrameTimer(1, DisableArrow35) -} -func DisableArrow36() { - ns.ObjectOff(obj39) -} -func EnableArrow36() { - ns.ObjectOn(obj39) - ns.FrameTimer(1, DisableArrow36) -} -func DisableArrow37() { - ns.ObjectOff(obj40) -} -func EnableArrow37() { - ns.ObjectOn(obj40) - ns.FrameTimer(1, DisableArrow37) -} -func DisableArrow38() { - ns.ObjectOff(obj41) -} -func EnableArrow38() { - ns.ObjectOn(obj41) - ns.FrameTimer(1, DisableArrow38) -} -func DisableArrowGroup1() { - ns.ObjectOff(obj19) - ns.ObjectOff(obj20) - ns.ObjectOff(obj21) - ns.ObjectOff(obj22) -} -func EnableArrowGroup1() { - ns.ObjectOn(obj19) - ns.ObjectOn(obj20) - ns.ObjectOn(obj21) - ns.ObjectOn(obj22) - ns.FrameTimer(2, DisableArrowGroup1) -} -func DisableArrowGroup2() { - ns.ObjectOff(obj24) - ns.ObjectOff(obj25) - ns.ObjectOff(obj26) - ns.ObjectOff(obj27) -} -func EnableArrowGroup2() { - ns.ObjectOn(obj24) - ns.ObjectOn(obj25) - ns.ObjectOn(obj26) - ns.ObjectOn(obj27) - ns.FrameTimer(2, DisableArrowGroup2) -} -func Blocks2MoveBack() { - ns.Move(obj45, wp55) - ns.Move(obj46, wp56) - ns.Move(obj47, wp57) - ns.AudioEvent(ns.SpikeBlockMove, wp52) -} -func Blocks2Move() { - ns.ObjectGroupOff(gvar48) - ns.Move(obj45, wp52) - ns.Move(obj46, wp53) - ns.Move(obj47, wp54) - ns.AudioEvent(ns.SpikeBlockMove, wp55) -} -func OpenBlockWallGroup1() { - ns.WallGroupOpen(gvar62) -} -func OpenBlockWallGroup2() { - ns.WallGroupOpen(gvar63) -} -func OpenBlockWallGroup3() { - ns.WallGroupOpen(gvar64) -} -func FilterBlock5() int { - if !ns.IsCaller(obj46) { - goto LABEL1 - } - return 1 - goto LABEL2 -LABEL1: - return 0 -LABEL2: - return 0 -} -func EnableSpikeGroup1() { - ns.ObjectGroupOn(gvar78) - ns.AudioEvent(ns.FloorSpikesUp, wp53) -} -func UnlockSpikeDoor() { - ns.UnlockDoor(obj79) -} -func LockSpikeDoor() { - ns.LockDoor(obj79) -} -func SkelGroup1Hostilize() { - ns.GroupAggressionLevel(gvar65, 0.83) -} -func SkelGroup2Hostilize() { - ns.GroupAggressionLevel(gvar66, 0.83) -} -func SkelGroup3Hostilize() { - ns.GroupAggressionLevel(gvar67, 0.83) -} -func SkelGroup4Hostilize() { - ns.GroupAggressionLevel(gvar68, 0.83) -} -func SkelGroup5Hostilize() { - ns.GroupAggressionLevel(gvar69, 0.83) -} -func SkelGroup6Hostilize() { - ns.GroupAggressionLevel(gvar70, 0.83) -} -func OpenSecretWallGroup1() { - ns.WallGroupOpen(gvar75) -} -func OpenSecretWallGroup2() { - ns.WallGroupOpen(gvar76) -} -func OpenSecretWallGroup3() { - ns.WallGroupOpen(gvar77) -} -func Blocks1Move() { - ns.Move(obj42, wp49) - ns.Move(obj43, wp50) - ns.Move(obj44, wp51) - ns.AudioEvent(ns.SpikeBlockMove, wp58) - ns.AudioEvent(ns.SpikeBlockMove, wp60) - ns.AudioEvent(ns.SpikeBlockMove, wp61) -} -func Lever1Check() { - ns.WallGroupOpen(gvar63) - if flag71 { - goto LABEL1 - } - flag71 = true - ns.AudioEvent(ns.Gear3, wp61) - ns.ObjectOff(ns.GetTrigger()) -LABEL1: - if !(flag71 == true && flag72 == true) { - goto LABEL2 - } - Blocks1Move() -LABEL2: - return -} -func Lever2Check() { - ns.WallGroupOpen(gvar62) - if flag72 { - goto LABEL1 - } - flag72 = true - ns.AudioEvent(ns.Gear3, wp60) - ns.ObjectOff(ns.GetTrigger()) -LABEL1: - if !(flag71 == true && flag72 == true) { - goto LABEL2 - } - Blocks1Move() -LABEL2: - return -} -func Lever3Check() { - if flag73 { - goto LABEL1 - } - flag73 = true - ns.AudioEvent(ns.Gear3, wp59) - ns.ObjectOff(ns.GetTrigger()) -LABEL1: - if !(flag73 == true && flag74 == true) { - goto LABEL2 - } - OpenSecretWallGroup3() - ns.ObjectOn(obj80) -LABEL2: - return -} -func Lever4Check() { - if flag74 { - goto LABEL1 - } - flag74 = true - ns.AudioEvent(ns.Gear3, wp59) - ns.ObjectOff(ns.GetTrigger()) -LABEL1: - if !(flag73 == true && flag74 == true) { - goto LABEL2 - } - OpenSecretWallGroup3() - ns.ObjectOn(obj80) -LABEL2: - return -} -func PlayerDeath() { - ns.DeathScreen(10) -} -func OpenExitWallGroup() { - ns.WallGroupOpen(gvar81) -} -func PuzzleCheck() { - if !(flag82 && flag83) { - goto LABEL1 - } - OpenExitWallGroup() -LABEL1: - return -} -func LeftPuzzleActivation() { - flag83 = true - ns.AudioEvent(ns.CreatureCageAppears, wp85) - PuzzleCheck() -} -func RightPuzzleActivation() { - flag82 = true - ns.AudioEvent(ns.CreatureCageAppears, wp84) - PuzzleCheck() -} -func LeftPuzzleRelease() { - flag83 = false - PuzzleCheck() -} -func RightPuzzleRelease() { - flag82 = false - PuzzleCheck() -} -func OrbLightOff() { - ns.ObjectOff(obj86) - ns.MoveObject(obj87, ns.GetWaypointX(wp88), ns.GetWaypointY(wp88)) -} -func ForceOrb() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - ) - v0 = ns.RandomFloat(-30, 30) - v1 = ns.RandomFloat(-30, 30) - v2 = ns.GetObjectX(ns.GetTrigger()) + v0 - v3 = ns.GetObjectY(ns.GetTrigger()) + v1 - ns.MoveObject(obj86, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.MoveObject(obj87, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())+6) - ns.MoveWaypoint(wp89, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.ObjectOn(obj86) - ns.AudioEvent(ns.BallBounce, wp89) - ns.PushObject(ns.GetCaller(), 60, v2, v3) - ns.FrameTimer(4, OrbLightOff) -} -func PlaySubMusic() { - ns.Music(18, 100) -} -func MissionStart() { - ns.StartupScreen(10) - ns.FrameTimer(10, PlaySubMusic) - ns.JournalEntry(ns.GetHost(), "War10aOrbQuest", 2) -} -func InitializeVampireKnights() { - obj120 = ns.Object("VampireKnight1") - obj121 = ns.Object("VKBat1") - wp123 = ns.Waypoint("VampireKnight1WP") - wp124 = ns.Waypoint("BatCreate") -} -func OpenVampire1WallGroup() { - ns.WallGroupOpen(gvar114) -} -func MapInitialize() { - obj90 = ns.Object("MissionTrig") - gvar118 = ns.WallGroup("GoldKeyWallGroup") - wp119 = ns.Waypoint("GoldKeyExitWP") - gvar93 = ns.ObjectGroup("PitAmbushGroup") - gvar91 = ns.WallGroup("SkelPitWallGroup") - gvar92 = ns.WallGroup("ElevatorWallGroup") - gvar94 = ns.ObjectGroup("PitSpikesGroup1") - gvar95 = ns.ObjectGroup("PitSpikesGroup2") - gvar96 = ns.ObjectGroup("PitSpikesGroup3") - gvar97 = ns.ObjectGroup("PitSpikesGroup4") - gvar98 = ns.ObjectGroup("PitSpikesGroup5") - wp99 = ns.Waypoint("Spikes1AudioWP") - wp100 = ns.Waypoint("Spikes2AudioWP") - wp101 = ns.Waypoint("Spikes3AudioWP") - wp102 = ns.Waypoint("Spikes4AudioWP") - wp103 = ns.Waypoint("Spikes5AudioWP") - wp104 = ns.Waypoint("Secret1AudioWP") - obj4 = ns.Object("Arrow01") - obj5 = ns.Object("Arrow02") - obj6 = ns.Object("Arrow03") - obj7 = ns.Object("Arrow04") - obj8 = ns.Object("Arrow05") - obj9 = ns.Object("Arrow06") - obj10 = ns.Object("Arrow07") - obj11 = ns.Object("Arrow08") - obj12 = ns.Object("Arrow09") - obj13 = ns.Object("Arrow10") - obj14 = ns.Object("Arrow11") - obj15 = ns.Object("Arrow12") - obj16 = ns.Object("Arrow13") - obj17 = ns.Object("Arrow14") - obj18 = ns.Object("Arrow15") - obj19 = ns.Object("Arrow16") - obj20 = ns.Object("Arrow17") - obj21 = ns.Object("Arrow18") - obj22 = ns.Object("Arrow19") - obj23 = ns.Object("Arrow20") - obj24 = ns.Object("Arrow21") - obj25 = ns.Object("Arrow22") - obj26 = ns.Object("Arrow23") - obj27 = ns.Object("Arrow24") - obj28 = ns.Object("Arrow25") - obj29 = ns.Object("Arrow26") - obj30 = ns.Object("Arrow27") - obj31 = ns.Object("Arrow28") - obj32 = ns.Object("Arrow29") - obj33 = ns.Object("Arrow30") - obj34 = ns.Object("Arrow31") - obj35 = ns.Object("Arrow32") - obj36 = ns.Object("Arrow33") - obj37 = ns.Object("Arrow34") - obj38 = ns.Object("Arrow35") - obj39 = ns.Object("Arrow36") - obj40 = ns.Object("Arrow37") - obj41 = ns.Object("Arrow38") - obj42 = ns.Object("Block1") - obj43 = ns.Object("Block2") - obj44 = ns.Object("Block3") - obj45 = ns.Object("Block4") - obj46 = ns.Object("Block5") - obj47 = ns.Object("Block6") - wp49 = ns.Waypoint("Block1WP") - wp50 = ns.Waypoint("Block2WP") - wp51 = ns.Waypoint("Block3WP") - wp52 = ns.Waypoint("Block4WP") - wp53 = ns.Waypoint("Block5WP") - wp54 = ns.Waypoint("Block6WP") - wp55 = ns.Waypoint("Block4WPb") - wp56 = ns.Waypoint("Block5WPb") - wp57 = ns.Waypoint("Block6WPb") - wp58 = ns.Waypoint("BlockAudioWP") - wp59 = ns.Waypoint("BlockAudio2WP") - wp60 = ns.Waypoint("BlockAudio3WP") - wp61 = ns.Waypoint("BlockAudio4WP") - wp105 = ns.Waypoint("Secret2AudioWP") - gvar106 = ns.ObjectGroup("Secret200Group") - gvar48 = ns.ObjectGroup("BlockTriggers") - obj107 = ns.Object("Blocks2Trigger") - gvar62 = ns.WallGroup("BlockWallGroup1") - gvar63 = ns.WallGroup("BlockWallGroup2") - gvar64 = ns.WallGroup("BlockWallGroup3") - gvar78 = ns.ObjectGroup("SpikeGroup1") - obj79 = ns.Object("SpikeDoor") - ns.LockDoor(obj79) - obj108 = ns.Object("StoneBlock1") - gvar75 = ns.WallGroup("SecretWallGroup1") - gvar76 = ns.WallGroup("SecretWallGroup2") - gvar77 = ns.WallGroup("SecretWallGroup3") - gvar65 = ns.ObjectGroup("SkelGroup1") - gvar66 = ns.ObjectGroup("SkelGroup2") - gvar67 = ns.ObjectGroup("SkelGroup3") - gvar68 = ns.ObjectGroup("SkelGroup4") - gvar69 = ns.ObjectGroup("SkelGroup5") - gvar70 = ns.ObjectGroup("SkelGroup6") - obj109 = ns.Object("VampireKnight1") - obj110 = ns.Object("VKbat1") - wp112 = ns.Waypoint("VampireKnight1WP ") - wp113 = ns.Waypoint("BatCreate") - gvar114 = ns.WallGroup("Vampire1WallGroup") - gvar115 = ns.WallGroup("Vampire1WallGroup2") - gvar116 = ns.ObjectGroup("Vampire1TrigGroup") - gvar117 = ns.WallGroup("CherubWallGroup") - OpenVampire1WallGroup() - gvar81 = ns.WallGroup("ExitWallGroup") - obj86 = ns.Object("OrbLight") - wp89 = ns.Waypoint("OrbSoundWP") - obj87 = ns.Object("OrbEffect") - wp88 = ns.Waypoint("OrbEffectWP") - wp84 = ns.Waypoint("RightPuzzleWP") - wp85 = ns.Waypoint("LeftPuzzleWP") - obj80 = ns.Object("Necro1") - InitializeVampireKnights() - MissionStart() -} -func MapEntry() { -} -func OpenGoldKeyWallGroup() { - ns.WallGroupOpen(gvar118) - ns.AudioEvent(ns.FlagDrop, wp119) -} -func OpenCherubWallGroup() { - ns.WallGroupOpen(gvar117) -} -func Secret100XP() { - ns.GiveXp(ns.GetHost(), 100) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.AudioEvent(ns.SecretFound, wp104) -} -func Secret200XP() { - ns.GiveXp(ns.GetHost(), 200) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.AudioEvent(ns.SecretFound, wp105) - ns.ObjectGroupOff(gvar106) -} -func PlayWanderMusic() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Music(17, 100) -LABEL1: - return -} -func PlayAction3Music() { - ns.Music(28, 100) -} -func ToggleSpikes1() { - ns.ObjectGroupToggle(gvar94) - ns.AudioEvent(ns.FloorSpikesDown, wp99) -} -func ToggleSpikes2() { - ns.ObjectGroupToggle(gvar95) - ns.ObjectGroupToggle(gvar96) - ns.AudioEvent(ns.FloorSpikesDown, wp100) - ns.AudioEvent(ns.FloorSpikesDown, wp101) -} -func ToggleSpikes3() { - ns.ObjectGroupToggle(gvar97) - ns.ObjectGroupToggle(gvar98) - ns.AudioEvent(ns.FloorSpikesDown, wp102) - ns.AudioEvent(ns.FloorSpikesDown, wp103) -} -func OpenSkelPitWallGroup() { - ns.WallGroupOpen(gvar91) - ns.GroupAggressionLevel(gvar93, 0.83) -} -func OpenElevatorWallGroup() { - ns.WallGroupOpen(gvar92) -} -func BatToVampireKnight() { - ns.Effect(ns.BLUE_SPARKS, fvar125, fvar126, 0, 0) - ns.Effect(ns.SMOKE_BLAST, fvar125, fvar126, 0, 0) - ns.Enchant(obj120, ns.ENCHANT_INVISIBLE, 0.25) - ns.MoveObject(obj120, fvar125, fvar126) - ns.LookAtObject(obj120, ns.GetHost()) - PlayAction3Music() -} -func SetRetreatBat() { - ns.AggressionLevel(obj122, 0.83) - ns.SetCallback(obj122, 7, BatDie) - ns.SetCallback(obj122, 5, BatDie) -} -func BatDie() { - var ( - v0 ns.ObjectID - v1 ns.ObjectID - v2 ns.ObjectID - ) - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(obj122), ns.GetObjectY(obj122), 0, 0) - ns.MoveWaypoint(wp124, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.Delete(obj122) - ns.AudioEvent(ns.BurnCast, wp124) - v0 = ns.CreateObject("Flame", wp124) - v1 = ns.CreateObject("MediumFlame", wp124) - v2 = ns.CreateObject("SmallFlame", wp124) - ns.DeleteObjectTimer(v0, 80) - ns.DeleteObjectTimer(v1, 83) - ns.DeleteObjectTimer(v2, 85) - ns.WallGroupOpen(gvar114) - ns.WallGroupOpen(gvar115) - PlaySubMusic() - ns.GiveXp(ns.GetHost(), 250) -} -func ChangeOnSight() { - if !flag128 { - goto LABEL1 - } - ns.AggressionLevel(ns.GetTrigger(), 0.83) - ns.SetCallback(ns.GetTrigger(), 6, BatToVampireKnight) -LABEL1: - return -} -func InjureVampireKnight() { - fvar125 = ns.GetObjectX(ns.GetTrigger()) - fvar126 = ns.GetObjectY(ns.GetTrigger()) - ns.ObjectOn(obj120) - ns.Damage(obj120, 0, 50, 0) - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger()), 0, 0) - ns.Delete(ns.GetTrigger()) - ns.FrameTimer(1, BatToVampireKnight) -} -func VKDie() { - fvar125 = ns.GetObjectX(ns.GetTrigger()) - fvar126 = ns.GetObjectY(ns.GetTrigger()) - ns.Delete(ns.GetTrigger()) - ns.MoveWaypoint(wp124, fvar125, fvar126) - obj122 = ns.CreateObject("Bat", wp124) - ns.FrameTimer(1, SetRetreatBat) -} -func CloseVampire1WallGroup() { - ns.WallGroupClose(gvar114) - ns.ObjectGroupOff(gvar116) -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapInitialize": - MapInitialize() - case "MapEntry": - MapEntry() - } -} diff --git a/examples/con10a/dummy_test.go b/examples/con10a/dummy_test.go deleted file mode 100644 index a291246..0000000 --- a/examples/con10a/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package con10a - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/con10b/con10b.go b/examples/con10b/con10b.go deleted file mode 100644 index 3b1bf3b..0000000 --- a/examples/con10b/con10b.go +++ /dev/null @@ -1,627 +0,0 @@ -package con10b - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - gvar4 ns.ObjectGroupID - obj5 ns.ObjectID - obj6 ns.ObjectID - obj7 ns.ObjectID - obj8 ns.ObjectID - obj9 ns.ObjectID - obj10 ns.ObjectID - obj11 ns.ObjectID - obj12 ns.ObjectID - obj13 ns.ObjectID - wp14 ns.WaypointID - wp15 ns.WaypointID - wp16 ns.WaypointID - wp17 ns.WaypointID - wp18 ns.WaypointID - wp19 ns.WaypointID - wp20 ns.WaypointID - wp21 ns.WaypointID - wp22 ns.WaypointID - obj23 ns.ObjectID - obj24 ns.ObjectID - obj25 ns.ObjectID - obj26 ns.ObjectID - obj27 ns.ObjectID - obj28 ns.ObjectID - wp29 ns.WaypointID - wp30 ns.WaypointID - wp31 ns.WaypointID - wp32 ns.WaypointID - wp33 ns.WaypointID - wp34 ns.WaypointID - wp35 ns.WaypointID - wp36 ns.WaypointID - wp37 ns.WaypointID - wp38 ns.WaypointID - wp39 ns.WaypointID - wp40 ns.WaypointID - gvar41 int - gvar42 int - gvar43 int - obj44 ns.ObjectID - obj45 ns.ObjectID - obj46 ns.ObjectID - obj47 ns.ObjectID - obj48 ns.ObjectID - wp49 ns.WaypointID - wp50 ns.WaypointID - wp51 ns.WaypointID - wp52 ns.WaypointID - wp53 ns.WaypointID - wp54 ns.WaypointID - wp55 ns.WaypointID - wp56 ns.WaypointID - wp57 ns.WaypointID - wp58 ns.WaypointID - gvar59 int - gvar60 int - gvar61 int - obj62 ns.ObjectID - obj63 ns.ObjectID - obj64 ns.ObjectID - wp65 ns.WaypointID - wp66 ns.WaypointID - wp67 ns.WaypointID - wp68 ns.WaypointID - wp69 ns.WaypointID - wp70 ns.WaypointID - gvar71 int - gvar72 int - gvar73 int - obj74 ns.ObjectID - obj75 ns.ObjectID - wp76 ns.WaypointID - wp77 ns.WaypointID - gvar78 ns.WallGroupID - gvar79 ns.ObjectGroupID - gvar80 ns.WallGroupID - gvar81 ns.WallGroupID - gvar82 ns.WallGroupID - obj83 ns.ObjectID - obj84 ns.ObjectID - gvar85 ns.ObjectGroupID - gvar86 ns.ObjectGroupID - gvar87 ns.WallGroupID - obj88 ns.ObjectID - wp89 ns.WaypointID - gvar90 ns.WallGroupID - obj91 ns.ObjectID - obj92 ns.ObjectID - obj93 ns.ObjectID - wp94 ns.WaypointID - wp95 ns.WaypointID - wp96 ns.WaypointID - obj97 ns.ObjectID - obj98 ns.ObjectID - obj99 ns.ObjectID - wp100 ns.WaypointID - wp101 ns.WaypointID - gvar102 ns.ObjectGroupID - gvar103 ns.WallGroupID - gvar104 ns.WallGroupID - gvar105 ns.WallGroupID - gvar106 ns.WallGroupID - gvar107 ns.WallGroupID - obj108 ns.ObjectID - obj109 ns.ObjectID - gvar110 ns.WallGroupID - obj111 [2]ns.ObjectID - obj112 [2]ns.ObjectID - obj113 ns.ObjectID - wp114 ns.WaypointID - wp115 ns.WaypointID - wp116 ns.WaypointID - fvar117 float32 - fvar118 float32 - flag119 bool - flag120 bool -) - -func init() { - gvar41 = 0 - gvar42 = 1 - gvar43 = gvar41 - gvar59 = 0 - gvar60 = 1 - gvar61 = gvar59 - gvar71 = 0 - gvar72 = 1 - gvar73 = gvar71 - flag119 = false - flag120 = false -} -func DisableArrow1() { - ns.ObjectOff(obj5) -} -func EnableArrow1() { - ns.ObjectOn(obj5) - ns.AudioEvent(ns.BowShoot, wp14) - ns.FrameTimer(1, DisableArrow1) -} -func DisableArrow2() { - ns.ObjectOff(obj6) -} -func EnableArrow2() { - ns.ObjectOn(obj6) - ns.AudioEvent(ns.BowShoot, wp15) - ns.FrameTimer(1, DisableArrow2) -} -func DisableArrow3() { - ns.ObjectOff(obj7) -} -func EnableArrow3() { - ns.ObjectOn(obj7) - ns.AudioEvent(ns.BowShoot, wp16) - ns.FrameTimer(1, DisableArrow3) -} -func DisableArrow4() { - ns.ObjectOff(obj8) -} -func EnableArrow4() { - ns.ObjectOn(obj8) - ns.AudioEvent(ns.BowShoot, wp17) - ns.FrameTimer(1, DisableArrow4) -} -func DisableArrow5() { - ns.ObjectOff(obj9) -} -func EnableArrow5() { - ns.ObjectOn(obj9) - ns.AudioEvent(ns.BowShoot, wp18) - ns.FrameTimer(1, DisableArrow5) -} -func DisableArrow6() { - ns.ObjectOff(obj10) -} -func EnableArrow6() { - ns.ObjectOn(obj10) - ns.AudioEvent(ns.BowShoot, wp19) - ns.FrameTimer(1, DisableArrow6) -} -func DisableArrow7() { - ns.ObjectOff(obj11) -} -func EnableArrow7() { - ns.ObjectOn(obj11) - ns.AudioEvent(ns.BowShoot, wp20) - ns.FrameTimer(1, DisableArrow7) -} -func DisableArrow8() { - ns.ObjectOff(obj12) -} -func EnableArrow8() { - ns.ObjectOn(obj12) - ns.AudioEvent(ns.BowShoot, wp21) - ns.FrameTimer(1, DisableArrow8) -} -func DisableArrow9() { - ns.ObjectOff(obj13) -} -func EnableArrow9() { - ns.ObjectOn(obj13) - ns.AudioEvent(ns.BowShoot, wp22) - ns.FrameTimer(1, DisableArrow9) -} -func DisableArrowTriggers() { - ns.ObjectGroupOff(gvar4) -} -func EnableArrowTriggers() { - ns.ObjectGroupOn(gvar4) -} -func BlockAGotoB() { - ns.Move(obj23, wp29) - ns.Move(obj24, wp30) - ns.Move(obj25, wp31) - ns.Move(obj26, wp32) - ns.Move(obj27, wp33) - ns.Move(obj28, wp34) - gvar43 = gvar42 - ns.AudioEvent(ns.SpikeBlockMove, wp30) - ns.AudioEvent(ns.BoulderMove, wp30) -} -func BlockAGotoC() { - ns.Move(obj23, wp35) - ns.Move(obj24, wp36) - ns.Move(obj25, wp37) - ns.Move(obj26, wp38) - ns.Move(obj27, wp39) - ns.Move(obj28, wp40) - gvar43 = gvar41 - ns.AudioEvent(ns.SpikeBlockMove, wp30) - ns.AudioEvent(ns.BoulderMove, wp30) -} -func BlockAGo() { - var v0 int - v0 = gvar43 - if v0 == gvar41 { - goto LABEL1 - } - if v0 == gvar42 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - BlockAGotoB() - goto LABEL3 -LABEL2: - BlockAGotoC() - goto LABEL3 -LABEL3: - return -} -func BlockBGotoB() { - ns.Move(obj44, wp49) - ns.Move(obj45, wp50) - ns.Move(obj46, wp51) - ns.Move(obj47, wp52) - ns.Move(obj48, wp53) - gvar61 = gvar60 - ns.AudioEvent(ns.SpikeBlockMove, wp50) - ns.AudioEvent(ns.BoulderMove, wp50) -} -func BlockBGotoC() { - ns.Move(obj44, wp54) - ns.Move(obj45, wp55) - ns.Move(obj46, wp56) - ns.Move(obj47, wp57) - ns.Move(obj48, wp58) - gvar61 = gvar59 - ns.AudioEvent(ns.SpikeBlockMove, wp50) - ns.AudioEvent(ns.BoulderMove, wp50) -} -func BlockBGo() { - var v0 int - v0 = gvar61 - if v0 == gvar59 { - goto LABEL1 - } - if v0 == gvar60 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - BlockBGotoB() - goto LABEL3 -LABEL2: - BlockBGotoC() - goto LABEL3 -LABEL3: - return -} -func BlockCGotoB() { - ns.Move(obj62, wp65) - ns.Move(obj63, wp66) - ns.Move(obj64, wp67) - gvar73 = gvar72 - ns.AudioEvent(ns.SpikeBlockMove, wp65) - ns.AudioEvent(ns.BoulderMove, wp65) -} -func BlockCGotoC() { - ns.Move(obj62, wp68) - ns.Move(obj63, wp69) - ns.Move(obj64, wp70) - gvar73 = gvar71 - ns.AudioEvent(ns.SpikeBlockMove, wp68) - ns.AudioEvent(ns.BoulderMove, wp68) -} -func BlockCGo() { - var v0 int - v0 = gvar73 - if v0 == gvar71 { - goto LABEL1 - } - if v0 == gvar72 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - BlockCGotoB() - goto LABEL3 -LABEL2: - BlockCGotoC() - goto LABEL3 -LABEL3: - return -} -func PlayerDeath() { - ns.DeathScreen(10) -} -func OrbLightOff() { - ns.ObjectOff(obj74) - ns.MoveObject(obj75, ns.GetWaypointX(wp76), ns.GetWaypointY(wp76)) -} -func ForceOrb() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - ) - v0 = ns.RandomFloat(-30, 30) - v1 = ns.RandomFloat(-30, 30) - v2 = ns.GetObjectX(ns.GetTrigger()) + v0 - v3 = ns.GetObjectY(ns.GetTrigger()) + v1 - ns.MoveObject(obj74, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.MoveObject(obj75, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())+6) - ns.MoveWaypoint(wp77, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.ObjectOn(obj74) - ns.AudioEvent(ns.BallBounce, wp77) - ns.PushObject(ns.GetCaller(), 60, v2, v3) - ns.FrameTimer(4, OrbLightOff) -} -func OpenBouncySecretWallGroup() { - ns.WallGroupOpen(gvar78) -} -func InitializeVampireKnights() { - obj111[0] = ns.Object("VampireKnight1") - obj112[0] = ns.Object("VKBat1") - wp114 = ns.Waypoint("VKSpot") - wp115 = ns.Waypoint("VampireKnight1WP") - wp116 = ns.Waypoint("BatCreate") -} -func MapInitialize() { - gvar80 = ns.WallGroup("ZombieAmbushWalls") - gvar79 = ns.ObjectGroup("ZombieAmbushGroup") - gvar81 = ns.WallGroup("SkeletonWallGroup") - gvar82 = ns.WallGroup("SkeletonWallGroup2") - obj83 = ns.Object("SkeletonTrigger1") - obj84 = ns.Object("SkeletonElevator") - gvar85 = ns.ObjectGroup("SkelAmbushGroup") - gvar86 = ns.ObjectGroup("SecretMechGroup") - gvar87 = ns.WallGroup("SecretMechWallGroup") - obj88 = ns.Object("SecretMechTrig") - wp89 = ns.Waypoint("Secret1AudioWP") - obj23 = ns.Object("BlockA1") - obj24 = ns.Object("BlockA2") - obj25 = ns.Object("BlockA3") - obj26 = ns.Object("BlockA4") - obj27 = ns.Object("BlockA5") - obj28 = ns.Object("BlockA6") - wp29 = ns.Waypoint("BlockWPA1b") - wp30 = ns.Waypoint("BlockWPA2b") - wp31 = ns.Waypoint("BlockWPA3b") - wp32 = ns.Waypoint("BlockWPA4b") - wp33 = ns.Waypoint("BlockWPA5b") - wp34 = ns.Waypoint("BlockWPA6b") - wp35 = ns.Waypoint("BlockWPA1c") - wp36 = ns.Waypoint("BlockWPA2c") - wp37 = ns.Waypoint("BlockWPA3c") - wp38 = ns.Waypoint("BlockWPA4c") - wp39 = ns.Waypoint("BlockWPA5c") - wp40 = ns.Waypoint("BlockWPA6c") - obj44 = ns.Object("BlockB1") - obj45 = ns.Object("BlockB2") - obj46 = ns.Object("BlockB3") - obj47 = ns.Object("BlockB4") - obj48 = ns.Object("BlockB5") - wp49 = ns.Waypoint("BlockWPB1b") - wp50 = ns.Waypoint("BlockWPB2b") - wp51 = ns.Waypoint("BlockWPB3b") - wp52 = ns.Waypoint("BlockWPB4b") - wp53 = ns.Waypoint("BlockWPB5b") - wp54 = ns.Waypoint("BlockWPB1c") - wp55 = ns.Waypoint("BlockWPB2c") - wp56 = ns.Waypoint("BlockWPB3c") - wp57 = ns.Waypoint("BlockWPB4c") - wp58 = ns.Waypoint("BlockWPB5c") - obj62 = ns.Object("BlockC1") - obj63 = ns.Object("BlockC2") - obj64 = ns.Object("BlockC3") - wp65 = ns.Waypoint("BlockWPC1b") - wp66 = ns.Waypoint("BlockWPC2b") - wp67 = ns.Waypoint("BlockWPC3b") - wp68 = ns.Waypoint("BlockWPC1c") - wp69 = ns.Waypoint("BlockWPC2c") - wp70 = ns.Waypoint("BlockWPC3c") - gvar90 = ns.WallGroup("VampireWallGroup") - obj91 = ns.Object("VampireKnight1") - obj92 = ns.Object("VKBat1") - obj93 = ns.Object("RetreatBat") - wp94 = ns.Waypoint("VampireKnight1WP") - wp95 = ns.Waypoint("BatCreate") - wp96 = ns.Waypoint("VKSpot") - InitializeVampireKnights() - gvar4 = ns.ObjectGroup("ArrowTrigGroup") - obj5 = ns.Object("Arrow1") - obj6 = ns.Object("Arrow2") - obj7 = ns.Object("Arrow3") - obj8 = ns.Object("Arrow4") - obj9 = ns.Object("Arrow5") - obj10 = ns.Object("Arrow6") - obj11 = ns.Object("Arrow7") - obj12 = ns.Object("Arrow8") - obj13 = ns.Object("Arrow9") - wp14 = ns.Waypoint("Arrow1WP") - wp15 = ns.Waypoint("Arrow2WP") - wp16 = ns.Waypoint("Arrow3WP") - wp17 = ns.Waypoint("Arrow4WP") - wp18 = ns.Waypoint("Arrow5WP") - wp19 = ns.Waypoint("Arrow6WP") - wp20 = ns.Waypoint("Arrow7WP") - wp21 = ns.Waypoint("Arrow8WP") - wp22 = ns.Waypoint("Arrow9WP") - obj97 = ns.Object("MechGolem1") - obj98 = ns.Object("MechGolem2") - obj99 = ns.Object("MechGolem3") - wp100 = ns.Waypoint("MechGolem2WP") - wp101 = ns.Waypoint("MechGolemAudioWP") - gvar102 = ns.ObjectGroup("GolemTrigGroup") - obj108 = ns.Object("MazeTrig1") - obj109 = ns.Object("MazeTrig2") - gvar103 = ns.WallGroup("GolemWallGroup") - gvar104 = ns.WallGroup("GolemWall2Group") - gvar105 = ns.WallGroup("GolemWall3Group") - gvar106 = ns.WallGroup("GolemGate1Group") - gvar107 = ns.WallGroup("GolemGate2Group") - gvar110 = ns.WallGroup("CherubBreakWallGroup") - obj74 = ns.Object("OrbLight") - obj75 = ns.Object("OrbEffect") - wp76 = ns.Waypoint("OrbEffectWP") - wp77 = ns.Waypoint("OrbSoundWP") - gvar78 = ns.WallGroup("BouncySecretWallGroup") -} -func Secret300XP() { - ns.GiveXp(ns.GetHost(), 300) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.AudioEvent(ns.SecretFound, wp89) -} -func PlaySubMusic() { - ns.Music(18, 100) -} -func PlayAction1Music() { - ns.Music(26, 100) -} -func CherubWallsBreak() { - ns.WallGroupBreak(gvar110) - PlaySubMusic() -} -func GolemWallDown() { - ns.WallGroupOpen(gvar103) - ns.ObjectOn(obj97) - ns.AudioEvent(ns.MechGolemPowerUp, wp101) - ns.ObjectGroupOff(gvar102) - PlayAction1Music() -} -func GolemWall2Down() { - ns.NoWallSound(true) - ns.WallGroupOpen(gvar104) - ns.NoWallSound(false) - ns.ObjectOn(obj98) - ns.AudioEvent(ns.MechGolemRecognize, wp100) - ns.AudioEvent(ns.MechGolemPowerUp, wp100) -} -func GolemWall3Down() { - ns.WallGroupOpen(gvar105) - ns.ObjectOn(obj99) - ns.ObjectOn(obj88) -} -func OpenGolemGate1() { - ns.WallGroupOpen(gvar106) - ns.ObjectOff(obj108) -} -func OpenGolemGate2() { - ns.WallGroupOpen(gvar107) - ns.ObjectOff(obj109) -} -func HostilizeMe() { - ns.AggressionLevel(ns.GetTrigger(), 0.83) -} -func PlayAction3Music() { - ns.Music(28, 100) -} -func BatToVampireKnight() { - if flag119 { - goto LABEL1 - } - fvar117 = ns.GetObjectX(ns.GetTrigger()) - fvar118 = ns.GetObjectY(ns.GetTrigger()) - ns.Delete(ns.GetTrigger()) - ns.ObjectOn(obj111[0]) -LABEL1: - ns.Effect(ns.BLUE_SPARKS, fvar117, fvar118, 0, 0) - ns.Effect(ns.SMOKE_BLAST, fvar117, fvar118, 0, 0) - ns.Enchant(obj111[0], ns.ENCHANT_INVISIBLE, 0.25) - ns.MoveObject(obj111[0], fvar117, fvar118) - ns.LookAtObject(obj111[0], ns.GetHost()) -} -func SetRetreatBat() { - ns.AggressionLevel(obj113, 0.83) - ns.SetCallback(obj113, 7, BatDie) - ns.SetCallback(obj113, 5, BatDie) -} -func BatDie() { - var ( - v0 ns.ObjectID - v1 ns.ObjectID - v2 ns.ObjectID - ) - if !(ns.CurrentHealth(obj113) <= 0) { - goto LABEL1 - } - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(obj113), ns.GetObjectY(obj113), 0, 0) - ns.MoveWaypoint(wp116, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.Delete(obj113) - ns.AudioEvent(ns.BurnCast, wp116) - v0 = ns.CreateObject("Flame", wp116) - v1 = ns.CreateObject("MediumFlame", wp116) - v2 = ns.CreateObject("SmallFlame", wp116) - ns.DeleteObjectTimer(v0, 80) - ns.DeleteObjectTimer(v1, 85) - ns.DeleteObjectTimer(v2, 90) - ns.GiveXp(ns.GetHost(), 250) -LABEL1: - return -} -func ChangeOnSight() { - if !flag120 { - goto LABEL1 - } - ns.AggressionLevel(ns.GetTrigger(), 0.83) - ns.SetCallback(ns.GetTrigger(), 6, BatToVampireKnight) -LABEL1: - return -} -func InjureVampireKnight() { - fvar117 = ns.GetObjectX(ns.GetTrigger()) - fvar118 = ns.GetObjectY(ns.GetTrigger()) - ns.ObjectOn(obj111[0]) - ns.Damage(obj111[0], 0, 50, 0) - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger()), 0, 0) - ns.Delete(ns.GetTrigger()) - flag119 = true - ns.FrameTimer(1, BatToVampireKnight) -} -func BatMove() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.SetCallback(ns.GetTrigger(), 4, ChangeOnSight) - ns.Move(obj112[0], wp114) -LABEL1: - return -} -func VKDie() { - fvar117 = ns.GetObjectX(ns.GetTrigger()) - fvar118 = ns.GetObjectY(ns.GetTrigger()) - ns.Delete(ns.GetTrigger()) - ns.MoveWaypoint(wp116, fvar117, fvar118) - obj113 = ns.CreateObject("Bat", wp116) - ns.FrameTimer(1, SetRetreatBat) -} -func ZombieAmbush() { - ns.WallGroupOpen(gvar80) - ns.ObjectGroupOn(gvar79) -} -func SkeletonAttack() { - ns.WallGroupOpen(gvar81) - ns.WallGroupClose(gvar82) - ns.ObjectOn(obj83) - ns.ObjectGroupOn(gvar85) - PlayAction3Music() -} -func OpenSkeletonWallGroup2() { - ns.WallGroupOpen(gvar82) - ns.ObjectOn(obj84) -} -func Secret300() { - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 300) -} -func OpenSecretMechWallGroup() { - ns.WallGroupOpen(gvar87) - ns.GroupAggressionLevel(gvar86, 0.83) - Secret300() -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapInitialize": - MapInitialize() - } -} diff --git a/examples/con10b/dummy_test.go b/examples/con10b/dummy_test.go deleted file mode 100644 index 57e358e..0000000 --- a/examples/con10b/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package con10b - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/con10c/con10c.go b/examples/con10c/con10c.go deleted file mode 100644 index b9442d1..0000000 --- a/examples/con10c/con10c.go +++ /dev/null @@ -1,682 +0,0 @@ -package con10c - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 [21]ns.ObjectID - ivar5 int - obj6 ns.ObjectID - obj7 ns.ObjectID - wp8 ns.WaypointID - wp9 ns.WaypointID - obj10 ns.ObjectID - obj11 ns.ObjectID - obj12 ns.ObjectID - obj13 ns.ObjectID - obj14 ns.ObjectID - obj15 ns.ObjectID - obj16 ns.ObjectID - obj17 ns.ObjectID - obj18 ns.ObjectID - obj19 ns.ObjectID - obj20 ns.ObjectID - obj21 ns.ObjectID - obj22 ns.ObjectID - obj23 ns.ObjectID - obj24 [6]ns.ObjectID - obj25 ns.ObjectID - obj26 ns.ObjectID - obj27 ns.ObjectID - obj28 ns.ObjectID - obj29 ns.ObjectID - obj30 ns.ObjectID - obj31 ns.ObjectID - obj32 ns.ObjectID - obj33 ns.ObjectID - obj34 ns.ObjectID - obj35 ns.ObjectID - obj36 ns.ObjectID - obj37 ns.ObjectID - obj38 ns.ObjectID - obj39 ns.ObjectID - gvar40 ns.ObjectGroupID - gvar41 ns.ObjectGroupID - obj42 ns.ObjectID - wp43 [2]ns.WaypointID - wp44 ns.WaypointID - gvar45 ns.WallGroupID - gvar46 ns.WallGroupID - gvar47 ns.WallGroupID - gvar48 ns.WallGroupID - gvar49 ns.WallGroupID - gvar50 ns.WallGroupID - gvar51 ns.WallGroupID - gvar52 ns.WallGroupID - gvar53 ns.WallGroupID - gvar54 ns.WallGroupID - gvar55 ns.WallGroupID - gvar56 ns.WallGroupID - gvar57 ns.WallGroupID - gvar58 ns.WallGroupID - wp59 ns.WaypointID - wp60 ns.WaypointID - flag61 bool - flag62 bool - flag63 bool - flag64 bool - flag65 bool - flag66 bool - flag67 bool - flag68 bool - ivar69 int - wp70 ns.WaypointID - obj71 ns.ObjectID - gvar72 ns.ObjectGroupID - wp73 [5]ns.WaypointID - wp74 ns.WaypointID - obj75 [2]ns.ObjectID - obj76 [2]ns.ObjectID - obj77 ns.ObjectID - wp78 ns.WaypointID - wp79 ns.WaypointID - wp80 ns.WaypointID - fvar81 float32 - fvar82 float32 - flag83 bool - flag84 bool -) - -func init() { - flag61 = false - flag62 = false - flag63 = false - flag64 = false - flag65 = false - flag66 = false - flag67 = false - flag68 = false - ivar69 = 0 - flag83 = false - flag84 = false -} -func DisableAT(a1 int) { - ns.ObjectOff(obj4[a1]) -} -func FireAT0() { - ns.ObjectOn(obj4[0]) - ns.FrameTimerWithArg(1, nil, DisableAT) -} -func FireAT1() { - ns.ObjectOn(obj4[1]) - ns.FrameTimerWithArg(1, 1, DisableAT) -} -func FireAT2() { - ns.ObjectOn(obj4[2]) - ns.FrameTimerWithArg(1, 2, DisableAT) -} -func FireAT3() { - ns.ObjectOn(obj4[3]) - ns.FrameTimerWithArg(1, 3, DisableAT) -} -func FireAT4() { - ns.ObjectOn(obj4[4]) - ns.FrameTimerWithArg(1, 4, DisableAT) -} -func FireAT5() { - ns.ObjectOn(obj4[5]) - ns.FrameTimerWithArg(1, 5, DisableAT) -} -func FireAT6() { - ns.ObjectOn(obj4[6]) - ns.FrameTimerWithArg(1, 6, DisableAT) -} -func FireAT7() { - ns.ObjectOn(obj4[7]) - ns.FrameTimerWithArg(1, 7, DisableAT) -} -func FireAT8() { - ns.ObjectOn(obj4[8]) - ns.FrameTimerWithArg(1, 8, DisableAT) -} -func FireAT9() { - ns.ObjectOn(obj4[9]) - ns.FrameTimerWithArg(1, 9, DisableAT) -} -func FireAT10() { - ns.ObjectOn(obj4[10]) - ns.FrameTimerWithArg(1, 10, DisableAT) -} -func FireAT11() { - ns.ObjectOn(obj4[11]) - ns.FrameTimerWithArg(1, 11, DisableAT) -} -func FireAT17() { - ns.ObjectOn(obj4[17]) - ns.FrameTimerWithArg(1, 17, DisableAT) -} -func FireAT18() { - ns.ObjectOn(obj4[18]) - ns.FrameTimerWithArg(1, 18, DisableAT) -} -func FireAT19() { - ns.ObjectOn(obj4[19]) - ns.FrameTimerWithArg(1, 19, DisableAT) -} -func FireAT20() { - ns.ObjectOn(obj4[20]) - ns.FrameTimerWithArg(1, 20, DisableAT) -} -func FireATRow() { - ns.ObjectOn(obj4[12]) - ns.ObjectOn(obj4[13]) - ns.ObjectOn(obj4[14]) - ns.ObjectOn(obj4[15]) - ns.ObjectOn(obj4[16]) - ivar5 = 12 - for { - if !(ivar5 < 17) { - goto LABEL1 - } - ns.FrameTimerWithArg(1, ivar5, DisableAT) - ivar5 += 1 - } -LABEL1: - return -} -func PlayerDeath() { - ns.DeathScreen(10) -} -func OrbLightOff() { - ns.ObjectOff(obj6) - ns.MoveObject(obj7, ns.GetWaypointX(wp8), ns.GetWaypointY(wp8)) -} -func ForceOrb() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - ) - v0 = ns.RandomFloat(-30, 30) - v1 = ns.RandomFloat(-30, 30) - v2 = ns.GetObjectX(ns.GetTrigger()) + v0 - v3 = ns.GetObjectY(ns.GetTrigger()) + v1 - ns.MoveObject(obj6, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.MoveObject(obj7, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())+6) - ns.MoveWaypoint(wp9, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.ObjectOn(obj6) - ns.AudioEvent(ns.BallBounce, wp9) - ns.PushObject(ns.GetCaller(), 60, v2, v3) - ns.FrameTimer(4, OrbLightOff) -} -func StairAccess2() { - if !(flag63 == true && flag64 == true) { - goto LABEL1 - } - ns.UnlockDoor(obj12) - ns.UnlockDoor(obj13) -LABEL1: - return -} -func CreateCherub() { - var v0 int - if !(ivar69 < 6) { - goto LABEL1 - } - v0 = ns.Random(0, 1) - obj24[ivar69] = ns.CreateObject("EvilCherub", wp43[v0]) - ns.Effect(ns.BLUE_SPARKS, ns.GetWaypointX(wp43[v0]), ns.GetWaypointY(wp43[v0]), 0, 0) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp43[v0]), ns.GetWaypointY(wp43[v0]), 0, 0) - ns.SetCallback(obj24[ivar69], 5, CreateCherub) - ns.SetRoamFlag(obj24[ivar69], 128) - ns.AggressionLevel(obj24[ivar69], 0.83) - ivar69 += 1 - goto LABEL2 -LABEL1: - return -LABEL2: - return -} -func WakeVKBat2() { - ns.ObjectOn(obj76[1]) -} -func PlayAction2Music() { - ns.Music(27, 100) -} -func CherubHostilize() { - ns.GroupAggressionLevel(gvar41, 0.83) -} -func OpenSecretRoom() { - ns.WallGroupOpen(gvar48) -} -func EnableTreasureLich1() { - ns.ObjectOn(obj14) -} -func AccessTreasureRoom1() { - ns.WallGroupOpen(gvar45) -} -func EnableTreasureLich2() { - ns.ObjectOn(obj15) -} -func AccessTreasureRoom2() { - ns.WallGroupOpen(gvar46) -} -func EnableTreasureMech() { - ns.ObjectOn(obj16) -} -func AccessTreasureRoom3() { - ns.WallGroupOpen(gvar47) -} -func EnableRoom() { - if !(ns.IsCaller(ns.GetHost()) && flag61 == false) { - goto LABEL1 - } - flag61 = true - ns.ObjectOn(obj27) -LABEL1: - return -} -func StairAccess1() { - ns.WallGroupOpen(gvar49) - ns.UnlockDoor(obj10) - ns.UnlockDoor(obj11) -} -func AllowAccess2() { - ns.PrintToAll("War10c:SentryDisabled") - ns.ObjectOff(obj21) - ns.ObjectOff(obj20) - ns.ObjectOff(obj19) - ns.AudioEvent(ns.Gear2, wp70) -} -func EnableRoom2() { - PlayAction2Music() - if !(ns.IsCaller(ns.GetHost()) && flag62 == false) { - goto LABEL1 - } - flag62 = true - ns.LockDoor(obj12) - ns.LockDoor(obj13) - ns.FrameTimer(800, CreateCherub) -LABEL1: - return -} -func OneDown() { - flag63 = true - ns.FrameTimer(1, StairAccess2) -} -func TwoDown() { - flag64 = true - ns.FrameTimer(1, StairAccess2) -} -func SwitchOffSentries() { - ns.ObjectOff(obj17) - ns.ObjectOff(obj18) - ns.UnlockDoor(obj12) - ns.UnlockDoor(obj13) -} -func SwitchOnSentries() { - ns.ObjectOn(obj17) - ns.ObjectOn(obj18) -} -func UnlockAccessDoors() { - ns.ObjectOff(obj31) - ns.UnlockDoor(obj25) - ns.UnlockDoor(obj26) -} -func OpenWall01() { - ns.WallGroupOpen(gvar55) - ns.AggressionLevel(obj42, 0.83) -} -func OpenWindowWall1() { - ns.WallGroupOpen(gvar56) -} -func CloseWindowWall1() { - ns.WallGroupClose(gvar56) -} -func OpenWindowWall2() { - ns.WallGroupOpen(gvar57) -} -func CloseWindowWall2() { - ns.WallGroupClose(gvar57) -} -func OpenCage1() { - ns.WallGroupOpen(gvar50) - ns.ObjectOn(obj28) -} -func OpenCage2() { - ns.WallGroupOpen(gvar51) - ns.ObjectOn(obj30) -} -func OpenCage3() { - ns.WallGroupOpen(gvar52) - ns.ObjectOn(obj29) -} -func OpenCage4() { - ns.WallGroupOpen(gvar53) - WakeVKBat2() -} -func OpenAccess() { - ns.WallGroupOpen(gvar54) -} -func CheckIdols() { - if !(flag65 == true && flag66 == true) { - goto LABEL1 - } - ns.ObjectGroupOn(gvar40) -LABEL1: - return -} -func BlueIdol() { - if !ns.IsCaller(obj32) { - goto LABEL1 - } - flag65 = true - CheckIdols() - ns.ObjectOff(obj38) - ns.ObjectOn(obj33) - ns.Delete(obj32) - ns.Delete(obj36) - ns.AudioEvent(ns.Gear2, wp60) -LABEL1: - return -} -func RedIdol() { - if !ns.IsCaller(obj34) { - goto LABEL1 - } - flag66 = true - CheckIdols() - ns.ObjectOff(obj39) - ns.ObjectOn(obj35) - ns.Delete(obj34) - ns.Delete(obj37) - ns.AudioEvent(ns.Gear2, wp60) -LABEL1: - return -} -func CheckSwitches() { - if !(flag67 == true && flag68 == true) { - goto LABEL1 - } - ns.WallGroupOpen(gvar58) -LABEL1: - return -} -func ExitWallSwitch1() { - ns.AudioEvent(ns.Gear3, wp59) - flag67 = true - CheckSwitches() -} -func ExitWallSwitch2() { - ns.AudioEvent(ns.Gear3, wp59) - flag68 = true - CheckSwitches() -} -func InitializeVampireKnights() { - obj75[0] = ns.Object("VampireKnight1") - obj75[1] = ns.Object("VampireKnight2") - obj76[0] = ns.Object("VKBat1") - obj76[1] = ns.Object("VKBat2") - wp78 = ns.Waypoint("VKSpot") - wp79 = ns.Waypoint("VampireKnight1WP") - wp80 = ns.Waypoint("BatCreate") -} -func PlaySubMusic() { - ns.Music(18, 100) -} -func MapInitialize() { - wp60 = ns.Waypoint("LichKeyAudioWP") - wp70 = ns.Waypoint("SentryAudioWP") - gvar41 = ns.ObjectGroup("CherubPitGroup") - obj6 = ns.Object("OrbLight") - obj7 = ns.Object("OrbEffect") - obj10 = ns.Object("ForceOrbDoorA") - obj11 = ns.Object("ForceOrbDoorB") - obj12 = ns.Object("ForceOrbDoorC") - obj13 = ns.Object("ForceOrbDoorD") - obj4[0] = ns.Object("AT0") - obj4[1] = ns.Object("AT1") - obj4[2] = ns.Object("AT2") - obj4[3] = ns.Object("AT3") - obj4[4] = ns.Object("AT4") - obj4[5] = ns.Object("AT5") - obj4[6] = ns.Object("AT6") - obj4[7] = ns.Object("AT7") - obj4[8] = ns.Object("AT8") - obj4[9] = ns.Object("AT9") - obj4[10] = ns.Object("AT10") - obj4[11] = ns.Object("AT11") - obj4[12] = ns.Object("AT12") - obj4[13] = ns.Object("AT13") - obj4[14] = ns.Object("AT14") - obj4[15] = ns.Object("AT15") - obj4[16] = ns.Object("AT16") - obj4[17] = ns.Object("AT17") - obj4[18] = ns.Object("AT18") - obj4[19] = ns.Object("AT19") - obj4[20] = ns.Object("AT20") - obj14 = ns.Object("TreasureLich1") - obj15 = ns.Object("TreasureLich2") - obj16 = ns.Object("TreasureMech") - obj27 = ns.Object("Necromancer1") - obj28 = ns.Object("Necromancer2") - obj29 = ns.Object("Necromancer3") - obj42 = ns.Object("Lich1") - obj71 = ns.Object("Lich2") - obj30 = ns.Object("Lich3") - obj17 = ns.Object("Sentry1") - obj18 = ns.Object("Sentry2") - obj19 = ns.Object("Sentry3") - obj20 = ns.Object("Sentry4") - obj21 = ns.Object("SentrySwitch") - obj22 = ns.Object("MainSentry1") - obj23 = ns.Object("MainSentry2") - obj25 = ns.Object("AccessDoorA") - obj26 = ns.Object("AccessDoorB") - obj31 = ns.Object("OpenDoors") - obj32 = ns.Object("BlueIdol") - obj34 = ns.Object("RedIdol") - obj33 = ns.Object("BlueIdolBase") - obj35 = ns.Object("RedIdolBase") - obj36 = ns.Object("BlueTrigger") - obj37 = ns.Object("RedTrigger") - obj38 = ns.Object("BlueIdolSentry") - obj39 = ns.Object("RedIdolSentry") - wp73[0] = ns.Waypoint("N1TeleWP0") - wp73[1] = ns.Waypoint("N1TeleWP1") - wp73[2] = ns.Waypoint("N1TeleWP2") - wp73[3] = ns.Waypoint("N1TeleWP3") - wp73[4] = ns.Waypoint("N1TeleWP4") - wp9 = ns.Waypoint("OrbSoundWP") - wp8 = ns.Waypoint("OrbEffectWP") - wp43[0] = ns.Waypoint("CherubCreate1") - wp43[1] = ns.Waypoint("CherubCreate2") - gvar72 = ns.ObjectGroup("VampTriggers") - gvar40 = ns.ObjectGroup("FinalLiches") - gvar45 = ns.WallGroup("TreasureRoom1Walls") - gvar46 = ns.WallGroup("TreasureRoom2Walls") - gvar47 = ns.WallGroup("TreasureRoom3Walls") - wp44 = ns.Waypoint("MechGolemAudioWP") - gvar48 = ns.WallGroup("SecretRoomWall") - gvar49 = ns.WallGroup("ForceOrbRoomWalls1") - gvar50 = ns.WallGroup("Cage1") - gvar51 = ns.WallGroup("Cage2") - gvar52 = ns.WallGroup("Cage3") - gvar53 = ns.WallGroup("Cage4") - gvar54 = ns.WallGroup("AccessTreasureRoom3") - gvar55 = ns.WallGroup("OpeningWall01") - gvar56 = ns.WallGroup("WindowWall1") - gvar57 = ns.WallGroup("WindowWall2") - gvar58 = ns.WallGroup("LichStairAccess") - wp74 = ns.Waypoint("Secret1AudioWP") - wp59 = ns.Waypoint("ExitAudioWP") - PlaySubMusic() - InitializeVampireKnights() - ns.LockDoor(obj25) - ns.LockDoor(obj26) -} -func Secret100XP() { - ns.GiveXp(ns.GetHost(), 100) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.AudioEvent(ns.SecretFound, wp74) -} -func PlayWanderMusic() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Music(17, 100) -LABEL1: - return -} -func Necro1TeleportInjured() { - var ( - v0 float32 - v1 float32 - v2 int - ) - v2 = ns.Random(0, 4) - v0 = ns.GetWaypointX(wp73[v2]) - v1 = ns.GetWaypointY(wp73[v2]) - ns.PauseObject(ns.GetTrigger(), 15) - ns.Enchant(ns.GetTrigger(), ns.ENCHANT_INVISIBLE, 2) - ns.Effect(ns.BLUE_SPARKS, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger()), 0, 0) - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger()), 0, 0) - ns.MoveObject(ns.GetTrigger(), v0, v1) - ns.Effect(ns.BLUE_SPARKS, v0, v1, 0, 0) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) -} -func SmackPlayer() { - r0 := ns.IsAttackedBy(ns.GetCaller(), ns.GetTrigger()) - if !r0 { - goto LABEL1 - } - ns.LookAtObject(ns.GetTrigger(), ns.GetCaller()) - ns.HitLocation(ns.GetTrigger(), ns.GetObjectX(ns.GetCaller()), ns.GetObjectY(ns.GetCaller())) -LABEL1: - return -} -func HuntPlayer() { - ns.CreatureHunt(ns.GetTrigger()) -} -func BatToVampireKnight() { - if flag83 { - goto LABEL1 - } - fvar81 = ns.GetObjectX(ns.GetTrigger()) - fvar82 = ns.GetObjectY(ns.GetTrigger()) - ns.Delete(ns.GetTrigger()) - ns.ObjectOn(obj75[0]) -LABEL1: - ns.Effect(ns.BLUE_SPARKS, fvar81, fvar82, 0, 0) - ns.Effect(ns.SMOKE_BLAST, fvar81, fvar82, 0, 0) - ns.Enchant(obj75[0], ns.ENCHANT_INVISIBLE, 0.25) - ns.MoveObject(obj75[0], fvar81, fvar82) - ns.LookAtObject(obj75[0], ns.GetHost()) - flag83 = false -} -func BatToVampireKnight2() { - if flag83 { - goto LABEL1 - } - fvar81 = ns.GetObjectX(ns.GetTrigger()) - fvar82 = ns.GetObjectY(ns.GetTrigger()) - ns.Delete(ns.GetTrigger()) - ns.ObjectOn(obj75[1]) -LABEL1: - ns.Effect(ns.BLUE_SPARKS, fvar81, fvar82, 0, 0) - ns.Effect(ns.SMOKE_BLAST, fvar81, fvar82, 0, 0) - ns.Enchant(obj75[1], ns.ENCHANT_INVISIBLE, 0.25) - ns.MoveObject(obj75[1], fvar81, fvar82) - ns.LookAtObject(obj75[1], ns.GetHost()) -} -func SetRetreatBat() { - ns.AggressionLevel(obj77, 0.83) - ns.SetCallback(obj77, 7, BatDie) - ns.SetCallback(obj77, 5, BatDie) -} -func BatDie() { - var ( - v0 ns.ObjectID - v1 ns.ObjectID - v2 ns.ObjectID - ) - if !(ns.CurrentHealth(ns.GetTrigger()) <= 0) { - goto LABEL1 - } - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger()), 0, 0) - ns.MoveWaypoint(wp80, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.MoveObject(ns.GetTrigger(), ns.GetWaypointX(wp79), ns.GetWaypointY(wp79)) - ns.Delete(obj77) - ns.AudioEvent(ns.BurnCast, wp80) - v0 = ns.CreateObject("Flame", wp80) - v1 = ns.CreateObject("MediumFlame", wp80) - v2 = ns.CreateObject("SmallFlame", wp80) - ns.DeleteObjectTimer(v0, 80) - ns.DeleteObjectTimer(v1, 83) - ns.DeleteObjectTimer(v2, 85) - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.GiveXp(ns.GetHost(), 250) -LABEL1: - return -} -func ChangeOnSight() { - if !flag84 { - goto LABEL1 - } - ns.AggressionLevel(ns.GetTrigger(), 0.83) - ns.SetCallback(ns.GetTrigger(), 6, BatToVampireKnight) -LABEL1: - return -} -func InjureVampireKnight() { - if flag83 { - goto LABEL1 - } - fvar81 = ns.GetObjectX(ns.GetTrigger()) - fvar82 = ns.GetObjectY(ns.GetTrigger()) - ns.ObjectOn(obj75[0]) - ns.Damage(obj75[0], 0, 50, 0) - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger()), 0, 0) - ns.Delete(ns.GetTrigger()) - flag83 = true - ns.FrameTimer(1, BatToVampireKnight) -LABEL1: - return -} -func InjureVampireKnight2() { - fvar81 = ns.GetObjectX(ns.GetTrigger()) - fvar82 = ns.GetObjectY(ns.GetTrigger()) - ns.ObjectOn(obj75[1]) - ns.Damage(obj75[1], 0, 50, 0) - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger()), 0, 0) - ns.Delete(ns.GetTrigger()) - flag83 = true - ns.FrameTimer(1, BatToVampireKnight2) -} -func BatMove() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.SetCallback(ns.GetTrigger(), 4, ChangeOnSight) - ns.PauseObject(ns.GetTrigger(), 15) -LABEL1: - return -} -func VKDie() { - fvar81 = ns.GetObjectX(ns.GetTrigger()) - fvar82 = ns.GetObjectY(ns.GetTrigger()) - ns.Delete(ns.GetTrigger()) - ns.MoveWaypoint(wp80, fvar81, fvar82) - obj77 = ns.CreateObject("Bat", wp80) - ns.FrameTimer(1, SetRetreatBat) -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapInitialize": - MapInitialize() - } -} diff --git a/examples/con10c/dummy_test.go b/examples/con10c/dummy_test.go deleted file mode 100644 index 408f82e..0000000 --- a/examples/con10c/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package con10c - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/con10d/con10d.go b/examples/con10d/con10d.go deleted file mode 100644 index 7b25493..0000000 --- a/examples/con10d/con10d.go +++ /dev/null @@ -1,775 +0,0 @@ -package con10d - -import ( - "github.com/noxworld-dev/noxscript/ns/v3" - "strconv" -) - -var ( - obj4 ns.ObjectID - obj5 ns.ObjectID - obj6 ns.ObjectID - obj7 ns.ObjectID - obj8 ns.ObjectID - obj9 ns.ObjectID - gvar10 ns.WallGroupID - gvar11 ns.ObjectGroupID - gvar12 ns.ObjectGroupID - gvar13 ns.ObjectGroupID - gvar14 ns.WallGroupID - wp15 ns.WaypointID - wp16 ns.WaypointID - wp17 ns.WaypointID - wp18 ns.WaypointID - gvar19 ns.WallGroupID - gvar20 ns.ObjectGroupID - gvar21 ns.ObjectGroupID - gvar22 ns.ObjectGroupID - wp23 ns.WaypointID - wp24 ns.WaypointID - wp25 ns.WaypointID - obj26 ns.ObjectID - wp27 [32]ns.WaypointID - obj28 ns.ObjectID - gvar29 ns.WallGroupID - gvar30 [85]int - gvar31 ns.ObjectGroupID - gvar32 ns.ObjectGroupID - gvar33 ns.WallGroupID - gvar34 ns.WallGroupID - gvar35 ns.ObjectGroupID - obj36 ns.ObjectID - obj37 ns.ObjectID - flag38 bool - flag39 bool - wp40 ns.WaypointID - wp41 ns.WaypointID - wp42 ns.WaypointID - wp43 ns.WaypointID - wp44 ns.WaypointID - wp45 ns.WaypointID - wp46 ns.WaypointID - wp47 ns.WaypointID - wp48 ns.WaypointID - wp49 ns.WaypointID - wp50 ns.WaypointID - wp51 ns.WaypointID - wp52 ns.WaypointID - wp53 ns.WaypointID - wp54 ns.WaypointID - wp55 ns.WaypointID - wp56 ns.WaypointID - wp57 ns.WaypointID - obj58 ns.ObjectID - obj59 ns.ObjectID - obj60 ns.ObjectID - obj61 ns.ObjectID - obj62 ns.ObjectID - obj63 ns.ObjectID - gvar64 int - gvar65 int - gvar66 int - gvar67 int - gvar68 int - gvar69 int - gvar70 int - obj71 ns.ObjectID - wp72 [6]ns.WaypointID - gvar73 ns.WallGroupID - gvar74 int - gvar75 int - gvar76 int - obj77 ns.ObjectID - obj78 ns.ObjectID - obj79 ns.ObjectID - obj80 ns.ObjectID - wp81 ns.WaypointID - wp82 ns.WaypointID - wp83 ns.WaypointID - wp84 ns.WaypointID - gvar85 ns.WallGroupID - gvar86 ns.ObjectGroupID - gvar87 ns.ObjectGroupID - gvar88 ns.WallGroupID - obj89 ns.ObjectID - obj90 ns.ObjectID - obj91 ns.ObjectID - obj92 ns.ObjectID - obj93 ns.ObjectID - obj94 ns.ObjectID - obj95 ns.ObjectID - obj96 ns.ObjectID - obj97 ns.ObjectID - obj98 ns.ObjectID - obj99 ns.ObjectID - obj100 ns.ObjectID - obj101 ns.ObjectID - obj102 ns.ObjectID - obj103 ns.ObjectID - obj104 ns.ObjectID - obj105 ns.ObjectID - obj106 ns.ObjectID - gvar107 ns.ObjectGroupID - gvar108 ns.ObjectGroupID - gvar109 ns.ObjectGroupID - gvar110 ns.ObjectGroupID - gvar111 ns.ObjectGroupID - gvar112 ns.ObjectGroupID - gvar113 ns.WallGroupID - gvar114 ns.WallGroupID - gvar115 ns.WallGroupID - flag116 bool - flag117 bool - flag118 bool - flag119 bool - gvar120 ns.ObjectGroupID - wp121 ns.WaypointID - wp122 ns.WaypointID - wp123 ns.WaypointID -) - -func init() { - gvar64 = 0 - gvar65 = 1 - gvar66 = 2 - gvar67 = 3 - gvar68 = 4 - gvar69 = 5 - gvar70 = gvar64 - gvar74 = 0 - gvar75 = 1 - gvar76 = gvar74 - flag38 = false - flag39 = false - flag116 = false - flag117 = false - flag118 = false - flag119 = false -} -func PlayerDeath() { - ns.DeathScreen(10) -} -func EnableAllMonsters() { - ns.Frozen(ns.GetHost(), false) - ns.ObjectGroupOn(gvar11) - ns.ObjectGroupOn(gvar12) - ns.ObjectGroupOn(gvar13) -} -func FilterHecubah() int { - if !ns.IsCaller(obj9) { - goto LABEL1 - } - return 1 - goto LABEL2 -LABEL1: - return 0 -LABEL2: - return 0 -} -func ActivateSmokePuffs() { - var v0 int - v0 = 0 - for { - if !(v0 < 32) { - goto LABEL1 - } - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp27[v0]), ns.GetWaypointY(wp27[v0]), 0, 0) - v0 += 2 - } -LABEL1: - return -} -func HecubahGuard() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - ) - v0 = ns.GetWaypointX(wp17) - v1 = ns.GetWaypointY(wp17) - v2 = ns.GetWaypointX(wp18) - v3 = ns.GetWaypointY(wp18) - ns.CreatureGuard(obj9, v0, v1, v2, v3, 0) - ns.NoWallSound(true) - ns.WallGroupClose(gvar29) - ns.NoWallSound(false) -} -func EnableOrbMonsterGroup() { - ns.ObjectGroupOn(gvar11) - ns.ObjectGroupOn(gvar12) - ns.ObjectGroupOn(gvar13) - ns.Frozen(ns.GetHost(), false) - ns.WallGroupOpen(gvar10) - ns.FrameTimer(2, ActivateSmokePuffs) - ns.WallGroupClose(gvar14) - ns.Frozen(ns.GetHost(), false) -} -func HecubahExit() { - ns.Enchant(obj9, ns.ENCHANT_HASTED, 100) - ns.Move(obj9, wp17) - ns.WideScreen(false) - ns.FrameTimer(60, EnableOrbMonsterGroup) -} -func HecubahDialogEnd() { - ns.FrameTimer(30, HecubahExit) - ns.CancelDialog(obj9) -} -func HecubahDialogStart() { - ns.TellStory(ns.DemonRecognize, "Con07H.scr:HecubahTalk02") -} -func HecubahTrigger() { - ns.LookAtObject(obj9, ns.GetHost()) - ns.StoryPic(obj9, "HecubahPic") - ns.SetDialog(obj9, ns.NEXT, HecubahDialogStart, HecubahDialogEnd) - ns.StartDialog(obj9, ns.GetHost()) -} -func HecubahEnter() { - ns.Move(obj9, wp16) -} -func HecubahWallsDown() { - ns.WallGroupOpen(gvar19) - ns.FrameTimer(1, HecubahEnter) -} -func GetOrb() { - ns.ObjectOff(obj8) - ns.ObjectGroupOff(gvar21) - ns.SetHalberd(3) - ns.Frozen(ns.GetHost(), true) - ns.WideScreen(true) - ns.FrameTimer(60, HecubahWallsDown) - ns.ObjectGroupOff(gvar20) - ns.JournalEntry(ns.GetHost(), "War11Hecubah", 1) - ns.JournalEdit(ns.GetHost(), "War10aOrbQuest", 4) -} -func HecubahVanish1() { - ns.ObjectOn(obj26) - ns.ObjectGroupOff(gvar22) - ns.Move(obj9, wp23) - ns.AudioEvent(ns.HecubahTaunt, wp17) - ns.WideScreen(false) - ns.FrameTimer(60, EnableAllMonsters) -} -func HecubahTakesOff() { - ns.Frozen(ns.GetHost(), true) - ns.WideScreen(true) - ns.FrameTimer(60, HecubahVanish1) - ns.ObjectGroupOff(gvar11) - ns.ObjectGroupOff(gvar12) - ns.ObjectGroupOff(gvar13) - ns.NoWallSound(true) - ns.WallGroupOpen(gvar29) - ns.NoWallSound(false) -} -func HecubahVanish2() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - ) - v0 = ns.GetWaypointX(wp24) - v1 = ns.GetWaypointY(wp24) - v2 = ns.GetWaypointX(wp23) - v3 = ns.GetWaypointY(wp23) - ns.Effect(ns.SMOKE_BLAST, v2, v3, 0, 0) - ns.AudioEvent(ns.TeleportOut, wp23) - ns.MoveObject(obj9, v0, v1) - ns.ObjectOn(obj28) -} -func MapSwitch() { - var ( - v0 float32 - v1 float32 - ) - v0 = ns.GetWaypointX(wp25) - v1 = ns.GetWaypointY(wp25) - ns.Frozen(ns.GetHost(), false) - ns.MoveObject(ns.GetHost(), v0, v1) -} -func EnableMonsterGroup2() { - ns.AggressionLevel(ns.GetTrigger(), 0.83) - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.ObjectGroupOn(gvar12) -LABEL1: - return -} -func EnableMonsterGroup3() { - ns.AggressionLevel(ns.GetTrigger(), 0.83) - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.ObjectGroupOn(gvar13) -LABEL1: - return -} -func PlayerFadeOut() { - ns.Frozen(ns.GetHost(), true) - ns.Blind() - ns.FrameTimer(60, MapSwitch) -} -func TeleportPlayer() { - ns.Blind() - ns.Frozen(ns.GetHost(), true) -} -func DestroyMe() { - ns.Delete(ns.GetCaller()) -} -func LichWallsDown2() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 float32 - v5 float32 - v6 float32 - v7 float32 - v8 float32 - v9 float32 - v10 float32 - v11 float32 - v12 float32 - v13 float32 - v14 float32 - v15 float32 - ) - v0 = ns.GetWaypointX(wp48) - v1 = ns.GetWaypointY(wp48) - v2 = ns.GetWaypointX(wp49) - v3 = ns.GetWaypointY(wp49) - v4 = ns.GetWaypointX(wp50) - v5 = ns.GetWaypointY(wp50) - v6 = ns.GetWaypointX(wp51) - v7 = ns.GetWaypointY(wp51) - v8 = ns.GetWaypointX(wp52) - v9 = ns.GetWaypointY(wp52) - v10 = ns.GetWaypointX(wp53) - v11 = ns.GetWaypointY(wp53) - v12 = ns.GetWaypointX(wp54) - v13 = ns.GetWaypointY(wp54) - v14 = ns.GetWaypointX(wp55) - v15 = ns.GetWaypointY(wp55) - ns.WallGroupOpen(gvar34) - ns.ObjectGroupOn(gvar35) - ns.ObjectGroupOn(gvar32) - ns.FrameTimer(1, LichMove) - ns.Effect(ns.SMOKE_BLAST, v0, v1, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v2, v3, v2, v3) - ns.Effect(ns.SMOKE_BLAST, v4, v5, v4, v5) - ns.Effect(ns.SMOKE_BLAST, v6, v7, v6, v7) - ns.Effect(ns.SMOKE_BLAST, v8, v9, v8, v9) - ns.Effect(ns.SMOKE_BLAST, v10, v11, v10, v11) - ns.Effect(ns.SMOKE_BLAST, v12, v13, v12, v13) - ns.Effect(ns.SMOKE_BLAST, v14, v15, v14, v15) -} -func LichDieCheck() { - if !(flag38 && flag39) { - goto LABEL1 - } - LichWallsDown2() -LABEL1: - return -} -func LichDie1() { - flag38 = true - LichDieCheck() -} -func LichDie2() { - flag39 = true - LichDieCheck() -} -func LichMove() { - ns.Move(obj36, wp56) - ns.Move(obj37, wp57) -} -func LichWallsDown() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 float32 - v5 float32 - v6 float32 - v7 float32 - v8 float32 - v9 float32 - v10 float32 - v11 float32 - v12 float32 - v13 float32 - v14 float32 - v15 float32 - ) - v0 = ns.GetWaypointX(wp40) - v1 = ns.GetWaypointY(wp40) - v2 = ns.GetWaypointX(wp41) - v3 = ns.GetWaypointY(wp41) - v4 = ns.GetWaypointX(wp42) - v5 = ns.GetWaypointY(wp42) - v6 = ns.GetWaypointX(wp43) - v7 = ns.GetWaypointY(wp43) - v8 = ns.GetWaypointX(wp44) - v9 = ns.GetWaypointY(wp44) - v10 = ns.GetWaypointX(wp45) - v11 = ns.GetWaypointY(wp45) - v12 = ns.GetWaypointX(wp46) - v13 = ns.GetWaypointY(wp46) - v14 = ns.GetWaypointX(wp47) - v15 = ns.GetWaypointY(wp47) - ns.WallGroupOpen(gvar33) - ns.ObjectGroupOn(gvar31) - ns.Effect(ns.SMOKE_BLAST, v0, v1, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v2, v3, v2, v3) - ns.Effect(ns.SMOKE_BLAST, v4, v5, v4, v5) - ns.Effect(ns.SMOKE_BLAST, v6, v7, v6, v7) - ns.Effect(ns.SMOKE_BLAST, v8, v9, v8, v9) - ns.Effect(ns.SMOKE_BLAST, v10, v11, v10, v11) - ns.Effect(ns.SMOKE_BLAST, v12, v13, v12, v13) - ns.Effect(ns.SMOKE_BLAST, v14, v15, v14, v15) -} -func SentryRun() { - var v0 int - v0 = gvar70 - if v0 == gvar64 { - goto LABEL1 - } - if v0 == gvar65 { - goto LABEL2 - } - if v0 == gvar66 { - goto LABEL3 - } - if v0 == gvar67 { - goto LABEL4 - } - if v0 == gvar68 { - goto LABEL5 - } - if v0 == gvar69 { - goto LABEL6 - } - goto LABEL7 -LABEL1: - ns.ObjectOff(obj58) - ns.ObjectOn(obj59) - ns.ObjectOn(obj60) - ns.ObjectOn(obj61) - ns.ObjectOn(obj62) - ns.ObjectOff(obj63) - ns.FrameTimer(25, SentryRun) - gvar70 = gvar65 - goto LABEL7 -LABEL2: - ns.ObjectOn(obj58) - ns.ObjectOn(obj59) - ns.ObjectOn(obj60) - ns.ObjectOn(obj61) - ns.ObjectOff(obj62) - ns.ObjectOn(obj63) - ns.FrameTimer(25, SentryRun) - gvar70 = gvar66 - goto LABEL7 -LABEL3: - ns.ObjectOn(obj58) - ns.ObjectOn(obj59) - ns.ObjectOn(obj60) - ns.ObjectOff(obj61) - ns.ObjectOn(obj62) - ns.ObjectOn(obj63) - ns.FrameTimer(25, SentryRun) - gvar70 = gvar67 - goto LABEL7 -LABEL4: - ns.ObjectOn(obj58) - ns.ObjectOn(obj59) - ns.ObjectOff(obj60) - ns.ObjectOn(obj61) - ns.ObjectOn(obj62) - ns.ObjectOn(obj63) - ns.FrameTimer(25, SentryRun) - gvar70 = gvar68 - goto LABEL7 -LABEL5: - ns.ObjectOn(obj58) - ns.ObjectOff(obj59) - ns.ObjectOn(obj60) - ns.ObjectOn(obj61) - ns.ObjectOn(obj62) - ns.ObjectOn(obj63) - ns.FrameTimer(25, SentryRun) - gvar70 = gvar69 - goto LABEL7 -LABEL6: - ns.ObjectOn(obj58) - ns.ObjectOn(obj59) - ns.ObjectOn(obj60) - ns.ObjectOn(obj61) - ns.ObjectOn(obj62) - ns.ObjectOn(obj63) - ns.FrameTimer(25, SentryRun) - gvar70 = gvar64 - goto LABEL7 -LABEL7: - return -} -func LLDies() { - gvar76 = gvar75 -} -func OpenLLWallGroup() { - ns.WallGroupOpen(gvar73) -} -func Ghost1Face() { - ns.LookAtObject(obj71, ns.GetHost()) -} -func Ghost2Face() { - ns.LookAtObject(obj71, ns.GetHost()) -} -func PlayAction2Music() { - ns.Music(27, 100) -} -func MapInitialize() { - var v0 int - gvar31 = ns.ObjectGroup("LichGroup") - gvar32 = ns.ObjectGroup("LichGroup2") - gvar33 = ns.WallGroup("LichWallGroup") - gvar34 = ns.WallGroup("LichWallGroup2") - gvar35 = ns.ObjectGroup("LichElevatorGroup") - obj36 = ns.Object("Lich1") - obj37 = ns.Object("Lich2") - wp40 = ns.Waypoint("DestroyWP1") - wp41 = ns.Waypoint("DestroyWP2") - wp42 = ns.Waypoint("DestroyWP3") - wp43 = ns.Waypoint("DestroyWP4") - wp44 = ns.Waypoint("DestroyWP5") - wp45 = ns.Waypoint("DestroyWP6") - wp46 = ns.Waypoint("DestroyWP7") - wp47 = ns.Waypoint("DestroyWP8") - wp48 = ns.Waypoint("DestroyWP1a") - wp49 = ns.Waypoint("DestroyWP2a") - wp50 = ns.Waypoint("DestroyWP3a") - wp51 = ns.Waypoint("DestroyWP4a") - wp52 = ns.Waypoint("DestroyWP5a") - wp53 = ns.Waypoint("DestroyWP6a") - wp54 = ns.Waypoint("DestroyWP7a") - wp55 = ns.Waypoint("DestroyWP8a") - wp56 = ns.Waypoint("LichWP1") - wp57 = ns.Waypoint("LichWP2") - obj58 = ns.Object("Sentry1") - obj59 = ns.Object("Sentry2") - obj60 = ns.Object("Sentry3") - obj61 = ns.Object("Sentry4") - obj62 = ns.Object("Sentry5") - obj63 = ns.Object("Sentry6") - SentryRun() - obj71 = ns.Object("LLGhost") - wp72[0] = ns.Waypoint("LLGhostWP1") - wp72[1] = ns.Waypoint("LLGhostWP2") - wp72[2] = ns.Waypoint("LLGhostWP3") - wp72[3] = ns.Waypoint("LLGhostWP4") - wp72[4] = ns.Waypoint("LLGhostWP5") - wp72[5] = ns.Waypoint("LLGhostWP6") - gvar73 = ns.WallGroup("LLWallGroup") - obj77 = ns.Object("Spike1") - obj78 = ns.Object("Spike2") - obj79 = ns.Object("Spike3") - obj80 = ns.Object("Spike4") - wp81 = ns.Waypoint("Spike1WP") - wp82 = ns.Waypoint("Spike2WP") - wp83 = ns.Waypoint("Spike3WP") - wp84 = ns.Waypoint("Spike4WP") - gvar85 = ns.WallGroup("SpikeWallGroup") - gvar86 = ns.ObjectGroup("SpikeWallTrigGroup") - gvar87 = ns.ObjectGroup("CherubGroup") - gvar88 = ns.WallGroup("CherubWallGroup") - obj89 = ns.Object("Cherub1") - obj90 = ns.Object("Cherub2") - obj91 = ns.Object("Cherub3") - obj92 = ns.Object("Cherub4") - obj93 = ns.Object("Cherub5") - obj94 = ns.Object("Cherub6") - obj95 = ns.Object("Cherub7") - obj96 = ns.Object("Cherub8") - obj97 = ns.Object("Cherub9") - obj98 = ns.Object("Cherub10") - gvar107 = ns.ObjectGroup("SentryGroup1") - gvar108 = ns.ObjectGroup("SentryGroup2") - gvar109 = ns.ObjectGroup("SentryGroup3") - gvar110 = ns.ObjectGroup("SentryGroup4") - obj99 = ns.Object("Sentry1L") - obj100 = ns.Object("Sentry1R") - obj101 = ns.Object("Sentry2L") - obj102 = ns.Object("Sentry2R") - obj103 = ns.Object("Sentry3L") - obj104 = ns.Object("Sentry3R") - obj105 = ns.Object("Sentry4L") - obj106 = ns.Object("Sentry4R") - gvar112 = ns.ObjectGroup("OrbTriggerGroup") - gvar111 = ns.ObjectGroup("SentryMonsterGroup") - gvar113 = ns.WallGroup("OrbWallGroup1") - gvar114 = ns.WallGroup("OrbWallGroup2") - gvar115 = ns.WallGroup("OrbWallGroup3") - gvar14 = ns.WallGroup("OrbWallGroup4") - wp121 = ns.Waypoint("OrbXPWP") - gvar120 = ns.ObjectGroup("OrbXPTrigGroup") - obj4 = ns.Object("Group2AlertA") - obj5 = ns.Object("Group2AlertB") - obj6 = ns.Object("Group3AlertA") - obj7 = ns.Object("Group3AlertB") - obj8 = ns.Object("OrbPool1") - obj9 = ns.Object("Hecubah") - gvar11 = ns.ObjectGroup("OrbMonsterGroup") - gvar12 = ns.ObjectGroup("OrbMonsterGroup2") - gvar13 = ns.ObjectGroup("OrbMonsterGroup3") - gvar10 = ns.WallGroup("OrbWallGroupFinal") - wp15 = ns.Waypoint("OrbAudioWP") - gvar19 = ns.WallGroup("HecubahWallGroup") - wp16 = ns.Waypoint("HecubahEnterWP") - wp17 = ns.Waypoint("HecubahExitWP") - wp18 = ns.Waypoint("HecubahLookWP") - gvar20 = ns.ObjectGroup("OrbSoundGroup") - gvar21 = ns.ObjectGroup("OrbPoolTrigGroup") - gvar22 = ns.ObjectGroup("HecubahVanishTrigGroup") - wp23 = ns.Waypoint("HecubahVanishWP") - wp24 = ns.Waypoint("HecubahEndWP") - wp25 = ns.Waypoint("MapSwitchWP") - obj26 = ns.Object("HecubahEndTrig") - obj28 = ns.Object("ExitTeleporter") - wp122 = ns.Waypoint("Secret1AudioWP") - wp123 = ns.Waypoint("Secret2AudioWP") - gvar29 = ns.WallGroup("InvisibleWallGroup") - ns.WallGroupOpen(gvar29) - PlayAction2Music() - v0 = 0 - for { - if !(v0 < 32) { - goto LABEL1 - } - wp27[v0] = ns.Waypoint("SmokeWP" + strconv.Itoa(v0+1)) - v0 += 1 - } -LABEL1: - return -} -func OrbXP() { - ns.ObjectGroupOff(gvar120) - ns.AudioEvent(ns.FlagDrop, wp121) - ns.GiveXp(ns.GetHost(), 2000) -} -func Secret100XP() { - ns.GiveXp(ns.GetHost(), 100) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.AudioEvent(ns.SecretFound, wp122) -} -func Secret200XP() { - ns.GiveXp(ns.GetHost(), 200) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.AudioEvent(ns.SecretFound, wp123) -} -func PlaySubMusic() { - ns.Music(18, 100) -} -func PlayAction3Music() { - ns.Music(28, 100) -} -func PlayOrbMusic() { - ns.Music(12, 100) -} -func SpikeMove() { - ns.ObjectGroupOff(gvar86) - ns.AudioEvent(ns.SpikeBlockMove, wp83) - ns.WallGroupOpen(gvar85) - ns.Move(obj77, wp81) - ns.Move(obj78, wp82) - ns.Move(obj79, wp83) - ns.Move(obj80, wp84) - PlayAction3Music() -} -func OpenOrbWallGroup1() { - if !(!ns.IsObjectOn(obj99) && !ns.IsObjectOn(obj100) && !ns.IsObjectOn(obj101) && !ns.IsObjectOn(obj102) && !ns.IsObjectOn(obj103) && !ns.IsObjectOn(obj104) && !ns.IsObjectOn(obj105) && !ns.IsObjectOn(obj106)) { - goto LABEL1 - } - ns.WallGroupOpen(gvar113) -LABEL1: - return -} -func ToggleSG1() { - ns.ObjectGroupToggle(gvar107) - OpenOrbWallGroup1() -} -func EnableSG1() { - ns.ObjectGroupOn(gvar107) -} -func ToggleSG2() { - ns.ObjectGroupToggle(gvar108) - OpenOrbWallGroup1() -} -func EnableSG2() { - ns.ObjectGroupOn(gvar108) -} -func ToggleSG3() { - ns.ObjectGroupToggle(gvar109) - OpenOrbWallGroup1() -} -func EnableSG3() { - ns.ObjectGroupOn(gvar109) -} -func ToggleSG4() { - ns.ObjectGroupToggle(gvar110) - OpenOrbWallGroup1() -} -func EnableSG4() { - ns.ObjectGroupOn(gvar110) -} -func OpenOrbWallGroup2() { - ns.WallGroupOpen(gvar114) - ns.ObjectGroupOn(gvar111) - ns.ObjectGroupOn(gvar87) - ns.WallGroupOpen(gvar88) -} -func OpenOrbWallGroup3() { - ns.WallGroupOpen(gvar115) -} -func OpenOrbWallGroup4() { - ns.WallGroupOpen(gvar14) - ns.ObjectGroupOff(gvar112) - ns.ObjectGroupOff(gvar107) - ns.ObjectGroupOff(gvar108) - ns.ObjectGroupOff(gvar109) - ns.ObjectGroupOff(gvar110) -} -func BossDieCheck() { - if !(flag116 && flag117 && flag118 && flag119) { - goto LABEL1 - } - OpenOrbWallGroup3() -LABEL1: - return -} -func BossDie1() { - flag116 = true - BossDieCheck() -} -func BossDie2() { - flag117 = true - BossDieCheck() -} -func BossDie3() { - flag118 = true - BossDieCheck() -} -func BossDie4() { - flag119 = true - BossDieCheck() -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapInitialize": - MapInitialize() - } -} diff --git a/examples/con10d/dummy_test.go b/examples/con10d/dummy_test.go deleted file mode 100644 index 803e66c..0000000 --- a/examples/con10d/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package con10d - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/con11a/con11a.go b/examples/con11a/con11a.go deleted file mode 100644 index 3bc91ba..0000000 --- a/examples/con11a/con11a.go +++ /dev/null @@ -1,519 +0,0 @@ -package con11a - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - gvar4 int - gvar5 int - gvar6 int - gvar7 int - gvar8 int - obj9 ns.ObjectID - obj10 ns.ObjectID - obj11 ns.ObjectID - obj12 ns.ObjectID - obj13 ns.ObjectID - obj14 ns.ObjectID - obj15 ns.ObjectID - obj16 ns.ObjectID - obj17 ns.ObjectID - obj18 ns.ObjectID - obj19 ns.ObjectID - obj20 ns.ObjectID - obj21 ns.ObjectID - obj22 ns.ObjectID - obj23 ns.ObjectID - obj24 ns.ObjectID - obj25 ns.ObjectID - obj26 ns.ObjectID - obj27 ns.ObjectID - obj28 ns.ObjectID - obj29 ns.ObjectID - obj30 ns.ObjectID - gvar31 ns.ObjectGroupID - wp32 ns.WaypointID - wp33 ns.WaypointID - wp34 ns.WaypointID - wp35 ns.WaypointID - wp36 ns.WaypointID - wp37 ns.WaypointID - wp38 ns.WaypointID - wp39 ns.WaypointID - wp40 ns.WaypointID - wp41 ns.WaypointID - wp42 ns.WaypointID - wp43 ns.WaypointID - wp44 ns.WaypointID - gvar45 ns.WaypointGroupID - gvar46 ns.WaypointGroupID - gvar47 ns.WaypointGroupID - gvar48 int - flag49 bool - obj50 ns.ObjectID - obj51 ns.ObjectID - obj52 ns.ObjectID - obj53 ns.ObjectID - gvar54 ns.ObjectGroupID - gvar55 ns.ObjectGroupID - wp56 ns.WaypointID - wp57 ns.WaypointID - wp58 ns.WaypointID - wp59 ns.WaypointID - wp60 ns.WaypointID - wp61 ns.WaypointID - wp62 ns.WaypointID - wp63 ns.WaypointID - wp64 ns.WaypointID - wp65 ns.WaypointID - wp66 ns.WaypointID - wp67 ns.WaypointID - wp68 ns.WaypointID - wp69 ns.WaypointID - wp70 ns.WaypointID - wp71 ns.WaypointID - wp72 ns.WaypointID - wp73 ns.WaypointID - wp74 ns.WaypointID - wp75 ns.WaypointID - wp76 ns.WaypointID - wp77 ns.WaypointID - wp78 ns.WaypointID - wp79 ns.WaypointID - wp80 ns.WaypointID - wp81 ns.WaypointID - wp82 ns.WaypointID - wp83 ns.WaypointID - wp84 ns.WaypointID - wp85 ns.WaypointID - wp86 ns.WaypointID - wp87 ns.WaypointID - wp88 ns.WaypointID - wp89 ns.WaypointID - wp90 ns.WaypointID - wp91 ns.WaypointID - wp92 ns.WaypointID - wp93 ns.WaypointID - wp94 ns.WaypointID - wp95 ns.WaypointID - wp96 ns.WaypointID - wp97 ns.WaypointID - flag98 bool - gvar99 ns.WaypointGroupID -) - -func init() { - gvar4 = 0 - gvar5 = 1 - gvar6 = 2 - gvar7 = 3 - gvar8 = 4 - gvar48 = gvar4 - flag49 = false - flag98 = false -} -func SwampGuards() { - ns.ObjectGroupOn(gvar31) - ns.AggressionLevel(obj10, 0.83) - ns.AggressionLevel(obj11, 0.83) - ns.Move(obj12, wp35) - ns.Move(obj13, wp36) - ns.Move(obj14, wp37) - ns.Frozen(ns.GetHost(), false) - ns.WideScreen(false) -} -func HecTalk() { - ns.WayPointGroupOn(gvar47) - ns.SetDialog(obj9, ns.NORMAL, HecubahDialogStart, HecubahDialogEnd) - ns.StartDialog(obj9, ns.GetHost()) -} -func HecDie() { - ns.Blind() - ns.Frozen(obj9, true) - ns.Frozen(ns.GetHost(), true) - ns.Music(0, 100) - ns.MoveWaypoint(wp41, ns.GetObjectX(obj9), ns.GetObjectY(obj9)) - ns.AudioEvent(ns.HecubahDieFrame0A, wp41) - ns.FrameTimer(45, HecDie2) -} -func HecDie2() { - ns.Frozen(obj9, false) - ns.Frozen(ns.GetHost(), false) - ns.MoveObject(obj9, ns.GetWaypointX(wp39), ns.GetWaypointY(wp39)) - ns.MoveObject(ns.GetHost(), ns.GetWaypointX(wp40), ns.GetWaypointY(wp40)) - ns.WideScreen(true) - ns.FrameTimer(1, HecDie3) -} -func HecDie3() { - ns.UnBlind() - ns.LookAtObject(ns.GetHost(), obj9) - ns.Frozen(ns.GetHost(), true) - ns.Frozen(obj9, true) - ns.FrameTimer(30, HecDie4) -} -func HecDie4() { - ns.Frozen(obj9, false) - ns.FrameTimer(67, HecubahDie1) - ns.FrameTimer(131, HecubahDie2) - ns.FrameTimer(171, HecubahDie3) - ns.FrameTimer(281, HecubahDie4) - ns.FrameTimer(440, TheEnd1) -} -func TheEnd1() { - ns.EndGame(2) -} -func HecubahDie1() { - ns.AudioEvent(ns.HecubahDieFrame98, wp39) -} -func HecubahDie2() { - ns.AudioEvent(ns.HecubahDieFrame194, wp39) -} -func HecubahDie3() { - ns.AudioEvent(ns.HecubahDieFrame283, wp39) -} -func HecubahDie4() { - ns.AudioEvent(ns.HecubahDieFrame439, wp39) -} -func HecubahDialogStart() { - var v0 int - v0 = gvar48 - if v0 == gvar4 { - goto LABEL1 - } - if v0 == gvar5 { - goto LABEL2 - } - if v0 == gvar6 { - goto LABEL3 - } - if v0 == gvar7 { - goto LABEL4 - } - if v0 == gvar8 { - goto LABEL5 - } - goto LABEL6 -LABEL1: - ns.LookAtObject(obj9, ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj9) - ns.TellStory(ns.SwordsmanHurt, "Con10B.scr:HecubahDialog2") - goto LABEL6 -LABEL2: - ns.LookAtObject(obj9, ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj9) - ns.TellStory(ns.SwordsmanHurt, "Con10B.scr:HecubahLine1") - goto LABEL6 -LABEL3: - ns.LookAtObject(obj9, ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj9) - ns.TellStory(ns.SwordsmanHurt, "Con10B.scr:HecubahLine3") - goto LABEL6 -LABEL4: - ns.LookAtObject(ns.GetHost(), obj9) - ns.TellStory(ns.SwordsmanHurt, "Con10B.scr:HecubahLine16") - goto LABEL6 -LABEL5: - ns.TellStory(ns.SwordsmanHurt, "Con10B.scr:HecubahDefeat6") - goto LABEL6 -LABEL6: - return -} -func HecubahDialogEnd() { - var v0 int - v0 = gvar48 - if v0 == gvar4 { - goto LABEL1 - } - if v0 == gvar5 { - goto LABEL2 - } - if v0 == gvar6 { - goto LABEL3 - } - if v0 == gvar7 { - goto LABEL4 - } - if v0 == gvar8 { - goto LABEL5 - } - goto LABEL6 -LABEL1: - gvar48 = gvar5 - ns.SetDialog(obj9, ns.NORMAL, HecubahDialogStart, HecubahDialogEnd) - ns.StartDialog(obj9, ns.GetHost()) - goto LABEL6 -LABEL2: - gvar48 = gvar6 - ns.CancelDialog(obj9) - ns.Enchant(obj9, ns.ENCHANT_INVISIBLE, 3) - ns.Effect(ns.BLUE_SPARKS, ns.GetObjectX(obj9), ns.GetObjectY(obj9), 0, 0) - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(obj9), ns.GetObjectY(obj9), 0, 0) - ns.MoveObject(obj9, ns.GetWaypointX(wp34), ns.GetWaypointY(wp34)) - SwampGuards() - goto LABEL6 -LABEL3: - gvar48 = gvar7 - ns.CancelDialog(obj9) - ns.Frozen(ns.GetHost(), false) - ns.WideScreen(false) - ns.AggressionLevel(obj9, 0.83) - ns.CastSpellObjectObject(ns.SPELL_BLINK, obj9, obj9) - goto LABEL6 -LABEL4: - ns.FrameTimer(310, TheEnd1) - goto LABEL6 -LABEL5: - goto LABEL6 -LABEL6: - return -} -func GreetPlayer1() { - ns.ObjectOff(ns.GetTrigger()) - ns.WideScreen(true) - ns.Frozen(ns.GetHost(), true) - ns.Move(obj9, wp32) -} -func GreetPlayer2() { - if !ns.IsCaller(obj9) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.StartDialog(obj9, ns.GetHost()) -LABEL1: - return -} -func WarnPlayer() { - if !(ns.IsCaller(ns.GetHost()) && flag49 == false) { - goto LABEL1 - } - flag49 = true - ns.WayPointGroupOff(gvar45) - ns.Frozen(ns.GetHost(), true) - ns.WideScreen(true) - ns.Move(obj9, wp38) - ns.FrameTimer(45, HecTalk) -LABEL1: - return -} -func BlinkLimit() { - ns.WayPointGroupOff(gvar45) - ns.WayPointGroupOn(gvar46) -} -func HecBlink() { - if !(ns.IsCaller(obj15) || ns.IsCaller(obj16) || ns.IsCaller(obj17) || ns.IsCaller(obj18) || ns.IsCaller(obj19) || ns.IsCaller(obj20) || ns.IsCaller(obj21) || ns.IsCaller(obj22) || ns.IsCaller(obj23) || ns.IsCaller(obj24) || ns.IsCaller(obj25) || ns.IsCaller(obj26) || ns.IsCaller(obj27) || ns.IsCaller(obj28) || ns.IsCaller(obj29) || ns.IsCaller(obj30)) { - goto LABEL1 - } - ns.CastSpellObjectObject(ns.SPELL_BLINK, obj9, obj9) -LABEL1: - return -} -func MoveBlocksOut() { - ns.Move(obj15, wp57) - ns.Move(obj16, wp58) - ns.Move(obj17, wp59) - ns.Move(obj18, wp60) - ns.Move(obj19, wp61) - ns.Move(obj20, wp62) - ns.Move(obj21, wp63) - ns.Move(obj22, wp64) - ns.Move(obj23, wp65) - ns.Move(obj24, wp66) - ns.Move(obj25, wp67) - ns.Move(obj26, wp68) - ns.FrameTimer(120, MoveBlocksHome) -} -func MoveBlocksHome() { - if !flag98 { - goto LABEL1 - } - ns.Move(obj15, wp69) - ns.Move(obj16, wp70) - ns.Move(obj17, wp71) - ns.Move(obj18, wp72) - ns.Move(obj19, wp73) - ns.Move(obj20, wp74) - ns.Move(obj21, wp75) - ns.Move(obj22, wp76) - ns.Move(obj23, wp77) - ns.Move(obj24, wp78) - ns.Move(obj25, wp79) - ns.Move(obj26, wp80) - ns.FrameTimer(120, MoveBlocksOut) - goto LABEL2 -LABEL1: - return -LABEL2: - return -} -func ReopenSet1() { - ns.ObjectGroupOn(gvar54) - ns.Move(obj27, wp89) - ns.Move(obj50, wp90) - ns.Move(obj28, wp91) - ns.Move(obj51, wp92) -} -func ReopenSet2() { - ns.ObjectGroupOn(gvar55) - ns.Move(obj29, wp93) - ns.Move(obj52, wp94) - ns.Move(obj30, wp95) - ns.Move(obj53, wp96) -} -func CrashAndRumble() { - ns.MoveWaypoint(wp56, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.HammerMissing, wp56) - ns.Effect(ns.JIGGLE, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 10, 0) -} -func Secret01Declare() { - ns.ObjectOff(ns.GetTrigger()) - ns.MoveWaypoint(wp97, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.AudioEvent(ns.SecretFound, wp97) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 1000) -} -func CloseSet1() { - ns.ObjectGroupOff(gvar54) - ns.Move(obj27, wp81) - ns.Move(obj50, wp82) - ns.Move(obj28, wp83) - ns.Move(obj51, wp84) - ns.FrameTimer(16, CrashAndRumble) - ns.FrameTimer(75, ReopenSet1) -} -func CloseSet2() { - ns.ObjectGroupOff(gvar55) - ns.Move(obj29, wp85) - ns.Move(obj52, wp86) - ns.Move(obj30, wp87) - ns.Move(obj53, wp88) - ns.FrameTimer(16, CrashAndRumble) - ns.FrameTimer(75, ReopenSet2) -} -func NearBlocks() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - flag98 = true -LABEL1: - MoveBlocksOut() -} -func FarFromBlocks() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - flag98 = false -LABEL1: - return -} -func GoMedieval() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.AggressionLevel(ns.GetTrigger(), 0.83) -LABEL1: - return -} -func PlayerDeath() { - ns.DeathScreen(11) -} -func MapInitialize() { - obj9 = ns.Object("Hecubah") - obj10 = ns.Object("Guard1") - obj11 = ns.Object("Guard2") - obj12 = ns.Object("GuardA") - obj13 = ns.Object("GuardB") - obj14 = ns.Object("GuardC") - obj15 = ns.Object("BlockA1") - obj16 = ns.Object("BlockA2") - obj17 = ns.Object("BlockA3") - obj18 = ns.Object("BlockB1") - obj19 = ns.Object("BlockB2") - obj20 = ns.Object("BlockB3") - obj21 = ns.Object("BlockC1") - obj22 = ns.Object("BlockC2") - obj23 = ns.Object("BlockC3") - obj24 = ns.Object("BlockD1") - obj25 = ns.Object("BlockD2") - obj26 = ns.Object("BlockD3") - obj27 = ns.Object("DoorBlock1") - obj50 = ns.Object("DoorBlock2") - obj28 = ns.Object("DoorBlock3") - obj51 = ns.Object("DoorBlock4") - obj29 = ns.Object("DoorBlock5") - obj52 = ns.Object("DoorBlock6") - obj30 = ns.Object("DoorBlock7") - obj53 = ns.Object("DoorBlock8") - gvar31 = ns.ObjectGroup("GuardGroup1") - gvar54 = ns.ObjectGroup("TriggerSet1") - gvar55 = ns.ObjectGroup("TriggerSet2") - wp32 = ns.Waypoint("HecWP1") - wp41 = ns.Waypoint("HecSounds") - wp33 = ns.Waypoint("HecLeaveWP") - wp34 = ns.Waypoint("HecTeleport") - wp35 = ns.Waypoint("GuardAWP") - wp36 = ns.Waypoint("GuardBWP") - wp37 = ns.Waypoint("GuardCWP") - wp38 = ns.Waypoint("HecWarning") - wp39 = ns.Waypoint("FinalHecubahWP") - wp40 = ns.Waypoint("FinalPlayerWP") - wp56 = ns.Waypoint("SoundSource") - wp97 = ns.Waypoint("PlayerSounds") - wp57 = ns.Waypoint("A1Out") - wp58 = ns.Waypoint("A2Out") - wp59 = ns.Waypoint("A3Out") - wp60 = ns.Waypoint("B1Out") - wp61 = ns.Waypoint("B2Out") - wp62 = ns.Waypoint("B3Out") - wp63 = ns.Waypoint("C1Out") - wp64 = ns.Waypoint("C2Out") - wp65 = ns.Waypoint("C3Out") - wp66 = ns.Waypoint("D1Out") - wp67 = ns.Waypoint("D2Out") - wp68 = ns.Waypoint("D3Out") - wp69 = ns.Waypoint("A1Home") - wp70 = ns.Waypoint("A2Home") - wp71 = ns.Waypoint("A3Home") - wp72 = ns.Waypoint("B1Home") - wp73 = ns.Waypoint("B2Home") - wp74 = ns.Waypoint("B3Home") - wp75 = ns.Waypoint("C1Home") - wp76 = ns.Waypoint("C2Home") - wp77 = ns.Waypoint("C3Home") - wp78 = ns.Waypoint("D1Home") - wp79 = ns.Waypoint("D2Home") - wp80 = ns.Waypoint("D3Home") - wp81 = ns.Waypoint("Close1") - wp82 = ns.Waypoint("Close2") - wp83 = ns.Waypoint("Close3") - wp84 = ns.Waypoint("Close4") - wp85 = ns.Waypoint("Close5") - wp86 = ns.Waypoint("Close6") - wp87 = ns.Waypoint("Close7") - wp88 = ns.Waypoint("Close8") - wp89 = ns.Waypoint("Open1") - wp90 = ns.Waypoint("Open2") - wp91 = ns.Waypoint("Open3") - wp92 = ns.Waypoint("Open4") - wp93 = ns.Waypoint("Open5") - wp94 = ns.Waypoint("Open6") - wp95 = ns.Waypoint("Open7") - wp96 = ns.Waypoint("Open8") - wp42 = ns.Waypoint("EditWP1") - wp43 = ns.Waypoint("EditWP2") - wp44 = ns.Waypoint("EditWP3") - gvar45 = ns.WaypointGroup("AllSearchWPs") - gvar99 = ns.WaypointGroup("SwampSearchWPs") - gvar46 = ns.WaypointGroup("LessonSearchWPs") - gvar47 = ns.WaypointGroup("DungeonSearchWPs") - ns.StoryPic(obj9, "HecubahPic") - ns.SetDialog(obj9, ns.NEXT, HecubahDialogStart, HecubahDialogEnd) - ns.WayPointGroupOff(gvar45) - ns.WayPointGroupOn(gvar99) -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapInitialize": - MapInitialize() - } -} diff --git a/examples/con11a/dummy_test.go b/examples/con11a/dummy_test.go deleted file mode 100644 index 607d8b5..0000000 --- a/examples/con11a/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package con11a - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/war01a/dummy_test.go b/examples/war01a/dummy_test.go deleted file mode 100644 index b255223..0000000 --- a/examples/war01a/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package war01a - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/war01a/war01a.go b/examples/war01a/war01a.go deleted file mode 100644 index de54641..0000000 --- a/examples/war01a/war01a.go +++ /dev/null @@ -1,1856 +0,0 @@ -package war01a - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - flag4 bool - flag5 bool - flag6 bool - flag7 bool - flag8 bool - obj9 ns.ObjectID - obj10 ns.ObjectID - obj11 ns.ObjectID - obj12 ns.ObjectID - obj13 ns.ObjectID - obj14 ns.ObjectID - obj15 ns.ObjectID - obj16 ns.ObjectID - obj17 ns.ObjectID - gvar18 ns.ObjectGroupID - gvar19 ns.ObjectGroupID - gvar20 ns.ObjectGroupID - gvar21 ns.ObjectGroupID - wp22 ns.WaypointID - ivar23 int - ivar24 int - gvar25 int - flag26 bool - flag27 bool - obj28 ns.ObjectID - obj29 ns.ObjectID - obj30 ns.ObjectID - obj31 ns.ObjectID - obj32 ns.ObjectID - obj33 ns.ObjectID - obj34 ns.ObjectID - ivar35 int - flag36 bool - flag37 bool - flag38 bool - obj39 ns.ObjectID - gvar40 ns.ObjectID - obj41 ns.ObjectID - obj42 ns.ObjectID - obj43 ns.ObjectID - obj44 ns.ObjectID - obj45 ns.ObjectID - obj46 ns.ObjectID - obj47 ns.ObjectID - obj48 ns.ObjectID - obj49 ns.ObjectID - obj50 ns.ObjectID - obj51 ns.ObjectID - obj52 ns.ObjectID - obj53 ns.ObjectID - obj54 ns.ObjectID - obj55 ns.ObjectID - obj56 ns.ObjectID - obj57 ns.ObjectID - obj58 ns.ObjectID - obj59 ns.ObjectID - obj60 ns.ObjectID - obj61 ns.ObjectID - obj62 ns.ObjectID - obj63 ns.ObjectID - obj64 ns.ObjectID - obj65 ns.ObjectID - obj66 ns.ObjectID - obj67 ns.ObjectID - obj68 ns.ObjectID - obj69 ns.ObjectID - obj70 ns.ObjectID - obj71 ns.ObjectID - obj72 ns.ObjectID - gvar73 ns.ObjectID - gvar74 ns.ObjectGroupID - gvar75 ns.ObjectGroupID - gvar76 ns.ObjectGroupID - gvar77 ns.ObjectGroupID - gvar78 ns.ObjectGroupID - gvar79 ns.ObjectGroupID - gvar80 ns.ObjectGroupID - gvar81 ns.ObjectGroupID - flag82 bool - flag83 bool - flag84 bool - flag85 bool - flag86 bool - flag87 bool - flag88 bool - gvar89 int - ivar90 int - wp91 ns.WaypointID - wp92 ns.WaypointID - flag93 bool - obj94 ns.ObjectID - obj95 ns.ObjectID - obj96 ns.ObjectID - obj97 ns.ObjectID - obj98 ns.ObjectID - obj99 ns.ObjectID - obj100 ns.ObjectID - obj101 ns.ObjectID - obj102 ns.ObjectID - obj103 ns.ObjectID - obj104 ns.ObjectID - obj105 ns.ObjectID - obj106 ns.ObjectID - obj107 ns.ObjectID - obj108 ns.ObjectID - obj109 ns.ObjectID - obj110 ns.ObjectID - obj111 ns.ObjectID - obj112 ns.ObjectID - obj113 ns.ObjectID - obj114 ns.ObjectID - obj115 ns.ObjectID - obj116 ns.ObjectID - obj117 ns.ObjectID - gvar118 ns.ObjectID - obj119 ns.ObjectID - obj120 ns.ObjectID - gvar121 ns.ObjectGroupID - gvar122 ns.ObjectGroupID - gvar123 ns.WallGroupID - wp124 ns.WaypointID - gvar125 ns.WaypointGroupID - gvar126 int - gvar127 int - gvar128 int - gvar129 int - gvar130 int - gvar131 int - gvar132 int - gvar133 int - ivar134 int - flag135 bool - obj136 ns.ObjectID - obj137 ns.ObjectID - obj138 ns.ObjectID - obj139 ns.ObjectID - obj140 ns.ObjectID - obj141 ns.ObjectID - wp142 ns.WaypointID - wp143 ns.WaypointID - wp144 ns.WaypointID - wp145 ns.WaypointID - wp146 ns.WaypointID -) - -func init() { - flag4 = true - flag5 = false - flag6 = false - ivar23 = 0 - ivar24 = 0 - ivar35 = 0 - flag36 = true - flag82 = false - flag8 = false - flag83 = true - flag84 = true - flag85 = false - flag86 = false - flag87 = false - flag26 = false - gvar89 = 1 - ivar90 = 1 - flag37 = false - flag7 = false - flag88 = false - flag38 = false - flag27 = false - flag93 = true - gvar25 = 1 - gvar126 = 0 - gvar127 = 1 - gvar128 = 2 - gvar129 = 3 - gvar130 = 4 - gvar131 = 5 - gvar132 = 6 - gvar133 = gvar126 - ivar134 = 0 - flag135 = false -} -func GHStart6() { - ns.LookAtObject(obj16, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "War01A.scr:GearhartTalk06") -} -func GHEnd6() { - ns.SetDialog(obj16, ns.NORMAL, GHStart6, GHEnd6) -} -func GHStart7() { - ns.LookAtObject(obj16, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "War01A.scr:GearhartTalk07") -} -func GHEnd7() { - ns.JournalEdit(ns.GetHost(), "ReturnToGearhart", 4) - ns.PrintToAll("GeneralPrint:GainedItem") - ns.GiveXp(ns.GetHost(), 500) - ns.Pickup(ns.GetHost(), obj52) - ns.CancelDialog(obj16) - gvar25 = 0 - ns.SetDialog(obj17, ns.NORMAL, QMStart3, QMEnd3) -} -func StartFleePiece() { - ns.ObjectGroupOff(gvar20) - ns.SetDialog(obj16, ns.NORMAL, GHStart6, GHEnd6) - gvar25 = 3 - flag7 = true - ns.ObjectGroupOn(gvar18) - ns.ObjectGroupOn(gvar19) - ns.FrameTimer(1, StartBatAttack) -} -func StartBatAttack() { - ns.Wander(obj14) - ns.Wander(obj15) - ns.Attack(obj10, obj14) - ns.Attack(obj11, obj14) - ns.Attack(obj12, obj15) - ns.Attack(obj13, obj15) - ns.SecondTimer(2, BatGroup1Peel) -} -func BatGroup1Die() { - var v0 int - ivar23 += 1 - v0 = ivar23 - if v0 == 1 { - goto LABEL1 - } - if v0 == 2 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.AggressionLevel(obj11, 0.83) - ns.Attack(obj11, ns.GetHost()) - goto LABEL3 -LABEL2: - ns.FrameTimer(1, IdleMaiden1) - goto LABEL3 -LABEL3: - return -} -func BatGroup2Die() { - var v0 int - ivar24 += 1 - v0 = ivar24 - if v0 == 1 { - goto LABEL1 - } - if v0 == 2 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.AggressionLevel(obj13, 0.83) - ns.Attack(obj13, ns.GetHost()) - goto LABEL3 -LABEL2: - ns.FrameTimer(1, IdleMaiden2) - goto LABEL3 -LABEL3: - return -} -func batToOrchard() { - r1 := ns.IsAttackedBy(ns.GetHost(), ns.GetCaller()) - if !r1 { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) - obj9 = ns.GetCaller() - ns.FrameTimer(90, BatReport) -LABEL1: - if !ns.IsCaller(ns.GetHost()) { - goto LABEL2 - } - if !flag8 { - goto LABEL2 - } - ns.CreatureFollow(obj17, ns.GetHost()) -LABEL2: - return -} -func stopEscorting() { - if !ns.IsCaller(obj17) { - goto LABEL1 - } - flag8 = true - ns.CreatureGuard(obj17, 1291, 4108, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) -LABEL1: - return -} -func IdleMaiden1() { - ns.CreatureIdle(obj14) - flag5 = true - ns.SetDialog(obj14, ns.NORMAL, Maiden1Start, Maiden1End) - ns.CreatureGuard(obj14, ns.GetObjectX(obj14), ns.GetObjectY(obj14), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) -} -func IdleMaiden2() { - ns.CreatureIdle(obj15) - flag6 = true - ns.SetDialog(obj15, ns.NORMAL, Maiden2Start, Maiden2End) - ns.CreatureGuard(obj15, ns.GetObjectX(obj15), ns.GetObjectY(obj15), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) -} -func Maiden1See() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - if !flag4 { - goto LABEL1 - } - if !(ivar23 < 2) { - goto LABEL1 - } - ns.Chat(obj14, "War01A.scr:Maiden1Talk03") - flag4 = false - ns.SecondTimer(3, ResetMaiden) -LABEL1: - return -} -func Maiden2See() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - if !flag4 { - goto LABEL1 - } - if !(ivar24 < 2) { - goto LABEL1 - } - ns.Chat(obj15, "War01A.scr:Maiden2Talk02") - flag4 = false - ns.SecondTimer(3, ResetMaiden) -LABEL1: - return -} -func Maiden1Start() { - ns.TellStory(ns.HumanMaleEatFood, "War01A.scr:Maiden1Talk04") -} -func Maiden1End() { - ns.SetDialog(obj14, ns.NORMAL, Maiden1Start, Maiden1End) -} -func Maiden2Start() { - ns.TellStory(ns.HumanMaleEatFood, "War01A.scr:Maiden2Talk03") -} -func Maiden2End() { - ns.SetDialog(obj15, ns.NORMAL, Maiden2Start, Maiden2End) -} -func ResetMaiden() { - flag4 = true -} -func Maiden1Contact() { - if !flag5 { - goto LABEL1 - } - if !ns.IsAttackedBy(obj14, ns.GetCaller()) { - goto LABEL1 - } - ns.Wander(obj14) - flag5 = false - ns.CancelDialog(obj14) - ns.FrameTimer(90, IdleMaiden1) -LABEL1: - return -} -func Maiden2Contact() { - if !flag6 { - goto LABEL1 - } - if !ns.IsAttackedBy(obj15, ns.GetCaller()) { - goto LABEL1 - } - ns.Wander(obj15) - flag6 = false - ns.CancelDialog(obj15) - ns.FrameTimer(90, IdleMaiden2) -LABEL1: - return -} -func BatGroup1Peel() { - ns.Attack(obj10, ns.GetHost()) - ns.SecondTimer(2, BatGroup2Peel) -} -func BatGroup2Peel() { - ns.Attack(obj12, ns.GetHost()) -} -func CaveEntranceCheck() { - ns.AggressionLevel(ns.GetCaller(), 0.16) - ns.GoBackHome(ns.GetCaller()) -} -func BatReport() { - ns.AggressionLevel(obj9, 0.83) -} -func UrchinDead() { - ns.MoveWaypoint(wp22, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.FlagCapture, wp22) - ns.JournalEdit(ns.GetHost(), "OrchardQuest", 4) - ns.JournalEntry(ns.GetHost(), "ReturnToGearhart", 2) - ns.PrintToAll("Con01a:NewJournalEntry") - ns.SetDialog(obj16, ns.NORMAL, GHStart7, GHEnd7) - gvar25 = 4 - ns.ObjectGroupOff(gvar21) - ns.Music(16, 100) -} -func ShortDelay() { - ns.ObjectOff(obj32) - ns.MoveObject(obj17, 2288, 2840) - ns.SetQuestStatus(1, "PlayerInSewers") - flag27 = true - ns.FrameTimer(20, ElevatorExplode) -} -func ElevatorExplode() { - var v0 int - v0 = ivar35 - if v0 == 3 { - goto LABEL1 - } - goto LABEL2 -LABEL1: - ns.MoveWaypoint(wp22, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.MechGolemDie, wp22) - ns.FrameTimer(30, QMTalkStart) - goto LABEL3 -LABEL2: - if ivar35 != 0 { - goto LABEL4 - } - ns.Frozen(ns.GetHost(), true) - ns.WideScreen(true) -LABEL4: - ns.MoveWaypoint(wp22, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.HammerMissing, wp22) - ns.AudioEvent(ns.WallDestroyed, wp22) - ns.Effect(ns.JIGGLE, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 10, 0) - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(obj28), ns.GetObjectY(obj28), 0, 0) - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(obj29), ns.GetObjectY(obj29), 0, 0) - ns.ObjectOff(obj28) - ns.ObjectOff(obj29) - ns.ObjectOff(obj32) - ivar35 += 1 - if ivar35 != 1 { - goto LABEL5 - } - ns.MoveObject(obj30, 4507, 4426) -LABEL5: - if ivar35 != 2 { - goto LABEL6 - } - ns.MoveObject(obj31, 4507, 4426) -LABEL6: - ns.FrameTimer(10, ElevatorExplode) - goto LABEL3 -LABEL3: - return -} -func QMTalkStart() { - ns.SetDialog(obj17, ns.NORMAL, QMBlastStart, QMBlastEnd) - ns.StartDialog(obj17, ns.GetHost()) -} -func QMBlastStart() { - ns.TellStory(ns.HumanMaleEatFood, "War02:QuarterMaster11") -} -func QMBlastEnd() { - ns.CancelDialog(obj17) - ns.Frozen(ns.GetHost(), false) - ns.FrameTimer(2, BackToNormal) -} -func BackToNormal() { - ns.WideScreen(false) -} -func TurnOffLights() { - ns.LookAtObject(obj16, ns.GetHost()) - ns.ObjectGroupToggle(gvar75) - ns.ObjectGroupToggle(gvar76) - ns.ObjectGroupToggle(gvar77) - ns.ObjectGroupToggle(gvar78) - ns.ObjectToggle(obj53) - ns.ObjectToggle(obj54) - ns.ObjectToggle(obj55) - if !flag84 { - goto LABEL1 - } - flag84 = false - ns.MoveWaypoint(wp22, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.Gear2, wp22) - ns.SetDialog(obj41, ns.NORMAL, DanStart2, DanEnd2) - ns.SetDialog(obj42, ns.NORMAL, JesseStart2, JesseEnd2) - ns.SetDialog(obj44, ns.NORMAL, EricStart2, EricEnd2) - ns.SetDialog(obj16, ns.NORMAL, GHStart8, GHEnd8) - ns.SetDialog(obj45, ns.NORMAL, JacobStart2, JacobEnd2) - if ns.GetQuestStatus("EnteredGauntlet") == 1 { - goto LABEL2 - } - if !ns.IsVisibleTo(obj16, ns.GetHost()) { - goto LABEL2 - } - ns.FrameTimer(2, TalkToGearhart) -LABEL2: - goto LABEL3 -LABEL1: - flag84 = true - ns.MoveWaypoint(wp22, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.Gear3, wp22) - ns.SetDialog(obj41, ns.NORMAL, DanStart1, DanEnd1) - ns.SetDialog(obj42, ns.NORMAL, JesseStart1, JesseEnd1) - ns.SetDialog(obj44, ns.NORMAL, EricStart1, EricEnd1) - ns.SetDialog(obj45, ns.NORMAL, JacobStart1, JacobEnd1) -LABEL3: - return -} -func TurnOnLights() { - ns.ObjectGroupOn(gvar75) - ns.ObjectGroupOn(gvar76) - ns.ObjectGroupOn(gvar77) - ns.ObjectOn(obj53) - ns.ObjectOn(obj54) - ns.ObjectOn(obj55) - ns.SetDialog(obj41, ns.NORMAL, DanStart1, DanEnd1) - ns.SetDialog(obj42, ns.NORMAL, JesseStart1, JesseEnd1) - ns.SetDialog(obj44, ns.NORMAL, EricStart1, EricEnd1) - ns.SetDialog(obj45, ns.NORMAL, JacobStart1, JacobEnd1) -} -func MoveToFacade() { - ns.MoveObject(ns.GetHost(), 3473, 1234) - ns.Frozen(obj16, false) - ns.Frozen(ns.GetHost(), false) - ns.MoveObject(obj16, 2215, 3389) - ns.CreatureGuard(obj16, 2215, 3389, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - ns.UnBlind() - ns.SetDialog(obj50, ns.NORMAL, HorStart1, HorEnd1) - ns.StartupScreen(3) -} -func DanStart1() { - ns.DestroyEveryChat() - ns.Frozen(obj41, true) - ns.CreatureIdle(obj41) - ns.LookAtObject(obj41, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "War01A.scr:Townsman2Talk01") -} -func DanEnd1() { - ns.Frozen(obj41, false) - ns.Wander(obj41) - ns.SetDialog(obj41, ns.NORMAL, DanStart1, DanEnd1) -} -func DanStart2() { - ns.DestroyEveryChat() - ns.Frozen(obj41, true) - ns.CreatureIdle(obj41) - ns.LookAtObject(obj41, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "War01A.scr:Townsman2Talk02") -} -func DanEnd2() { - ns.Frozen(obj41, false) - ns.Wander(obj41) - ns.SetDialog(obj41, ns.NORMAL, DanStart2, DanEnd2) -} -func JesseStart1() { - ns.DestroyEveryChat() - ns.Frozen(obj42, true) - ns.CreatureIdle(obj42) - ns.LookAtObject(obj42, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "War01A.scr:Townsman1Talk01") -} -func JesseEnd1() { - ns.Frozen(obj42, false) - ns.Wander(obj42) - ns.SetDialog(obj42, ns.NORMAL, JesseStart1, JesseEnd1) -} -func JesseStart2() { - ns.DestroyEveryChat() - ns.Frozen(obj42, true) - ns.CreatureIdle(obj42) - ns.LookAtObject(obj42, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "War01A.scr:Townsman1Talk02") -} -func JesseEnd2() { - ns.Frozen(obj42, false) - ns.Wander(obj42) - ns.SetDialog(obj42, ns.NORMAL, JesseStart2, JesseEnd2) -} -func EricStart1() { - ns.DestroyEveryChat() - ns.Frozen(obj44, true) - ns.CreatureIdle(obj44) - ns.LookAtObject(obj44, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "War01A.scr:Townsman3Talk01") -} -func EricEnd1() { - ns.Frozen(obj44, false) - ns.Wander(obj44) - ns.SetDialog(obj44, ns.NORMAL, EricStart1, EricEnd1) -} -func EricStart2() { - ns.DestroyEveryChat() - ns.Frozen(obj44, true) - ns.CreatureIdle(obj44) - ns.LookAtObject(obj44, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "War01A.scr:Townsman3Talk02") -} -func EricEnd2() { - ns.Frozen(obj44, false) - ns.Wander(obj44) - ns.SetDialog(obj44, ns.NORMAL, EricStart2, EricEnd2) -} -func TylerStart1() { - ns.DestroyEveryChat() - ns.Frozen(obj46, true) - ns.CreatureIdle(obj46) - ns.LookAtObject(obj46, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "War01A.scr:Townsman4Talk01") -} -func TylerEnd1() { - ns.Frozen(obj46, false) - ns.LookAtObject(obj46, obj43) - ns.CreatureGuard(obj46, ns.GetObjectX(obj46), ns.GetObjectY(obj46), ns.GetObjectX(obj43), ns.GetObjectY(obj43), 0) - ns.SetDialog(obj46, ns.NORMAL, TylerStart1, TylerEnd1) -} -func JacobStart1() { - ns.DestroyEveryChat() - ns.Frozen(obj45, true) - ns.CreatureIdle(obj45) - ns.LookAtObject(obj45, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "War01A.scr:Townsman5Talk01") -} -func JacobEnd1() { - ns.Frozen(obj45, false) - ns.Wander(obj45) - ns.SetDialog(obj45, ns.NORMAL, JacobStart1, JacobEnd1) -} -func JacobStart2() { - ns.DestroyEveryChat() - ns.Frozen(obj45, true) - ns.CreatureIdle(obj45) - ns.LookAtObject(obj45, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "War01A.scr:Townsman5Talk02") -} -func JacobEnd2() { - ns.Frozen(obj45, false) - ns.Wander(obj45) - ns.SetDialog(obj45, ns.NORMAL, JacobStart2, JacobEnd2) -} -func BingStart1() { - var ( - v0 int - v1 int - ) - ns.DestroyEveryChat() - v0 = ns.Random(1, 6) - v1 = v0 - if v1 == 1 { - goto LABEL1 - } - if v1 == 2 { - goto LABEL2 - } - if v1 == 3 { - goto LABEL3 - } - if v1 == 4 { - goto LABEL4 - } - if v1 == 5 { - goto LABEL5 - } - if v1 == 6 { - goto LABEL6 - } - goto LABEL7 -LABEL1: - ns.TellStory(ns.HumanMaleEatFood, "War02A:BartenderTalk1aStart") - goto LABEL7 -LABEL2: - ns.TellStory(ns.HumanMaleEatFood, "War02A:BartenderTalk1bStart") - goto LABEL7 -LABEL3: - ns.TellStory(ns.HumanMaleEatFood, "War02A:BartenderTalk1cStart") - goto LABEL7 -LABEL4: - ns.TellStory(ns.HumanMaleEatFood, "War02:BartenderTalk1dStart") - goto LABEL7 -LABEL5: - ns.TellStory(ns.HumanMaleEatFood, "War02A:BartenderTalk1eStart") - goto LABEL7 -LABEL6: - ns.TellStory(ns.HumanMaleEatFood, "War02A:BartenderTalk1fStart") - goto LABEL7 -LABEL7: - return -} -func BingEnd1() { - ns.SetDialog(obj43, ns.NORMAL, BingStart1, BingEnd1) -} -func BingStart2() { - ns.TellStory(ns.HumanMaleEatFood, "War02B.scr:BarTalk1") -} -func BingEnd2() { - ns.SetDialog(obj43, ns.NORMAL, BingStart2, BingEnd2) -} -func LydiaStart1() { - ns.DestroyEveryChat() - ns.LookAtObject(obj49, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "War01A.scr:LydiaTalk02") -} -func LydiaEnd1() { - ns.SetDialog(obj49, ns.NORMAL, LydiaStart1, LydiaEnd1) -} -func LydiaStart2() { - ns.DestroyEveryChat() - ns.LookAtObject(obj49, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "War01A.scr:LydiaTalk01") -} -func LydiaEnd2() { - ns.SetDialog(obj49, ns.NORMAL, LydiaStart3, LydiaEnd3) -} -func LydiaStart3() { - var ( - v0 int - v1 int - ) - v0 = ns.Random(1, 2) - v1 = v0 - if v1 == 1 { - goto LABEL1 - } - if v1 == 2 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.TellStory(ns.HumanMaleEatFood, "War01A.scr:LydiaTalk01") - goto LABEL3 -LABEL2: - ns.TellStory(ns.HumanMaleEatFood, "War01A.scr:LydiaTalk03") - goto LABEL3 -LABEL3: - return -} -func LydiaEnd3() { - ns.SetDialog(obj49, ns.NORMAL, LydiaStart3, LydiaEnd3) -} -func MelStart1() { - var v0 int - ns.DestroyEveryChat() - ns.Frozen(obj47, true) - ns.CreatureIdle(obj47) - ns.LookAtObject(obj47, ns.GetHost()) - ivar90 = ns.Random(1, 2) - v0 = ivar90 - if v0 == 1 { - goto LABEL1 - } - if v0 == 2 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.TellStory(ns.HumanMaleEatFood, "War01A.scr:Maiden1Talk01") - goto LABEL3 -LABEL2: - ns.TellStory(ns.HumanMaleEatFood, "War01A.scr:Maiden1Talk02") - goto LABEL3 -LABEL3: - return -} -func MelEnd1() { - ns.Frozen(obj47, false) - ns.LookAtObject(obj47, obj43) - ns.CreatureGuard(obj47, ns.GetObjectX(obj47), ns.GetObjectY(obj47), ns.GetObjectX(obj43), ns.GetObjectY(obj43), 0) - ns.SetDialog(obj47, ns.NORMAL, MelStart1, MelEnd1) -} -func EvelynStart1() { - ns.DestroyEveryChat() - ns.Frozen(obj48, true) - ns.CreatureIdle(obj48) - ns.LookAtObject(obj48, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "War01A.scr:Maiden2Talk01") -} -func EvelynEnd1() { - ns.Frozen(obj48, false) - ns.Wander(obj48) - ns.SetDialog(obj48, ns.NORMAL, EvelynStart1, EvelynEnd1) -} -func QMProd() { - var v0 float32 - v0 = ns.Distance(ns.GetObjectX(obj17), ns.GetObjectY(obj17), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - if !(v0 > 300) { - goto LABEL1 - } - if gvar89 != 1 { - goto LABEL1 - } - ns.CreatureFollow(obj17, ns.GetHost()) - flag8 = true - gvar89 = 2 -LABEL1: - if !(v0 < 150) { - goto LABEL2 - } - if gvar89 != 2 { - goto LABEL2 - } - if !(ns.IsTalking() == false && ns.IsTrading() == false) { - goto LABEL2 - } - if !ns.IsVisibleTo(obj17, ns.GetHost()) { - goto LABEL2 - } - gvar89 = 1 - ns.StartDialog(obj17, ns.GetHost()) -LABEL2: - if flag26 { - goto LABEL3 - } - ns.SecondTimer(3, QMProd) -LABEL3: - return -} -func QMGearTrigger() { - if !ns.IsCaller(obj17) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.Wander(obj17) - ns.CreatureGuard(obj17, 2280, 3101, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) -LABEL1: - return -} -func QMStart1() { - ns.TellStory(ns.HumanMaleEatFood, "War01A.scr:QuaterMasterTalk01") - ns.JournalEdit(ns.GetHost(), "FirstQuest", 4) -} -func QMEnd1() { - if flag85 { - goto LABEL1 - } - ns.MoveObject(obj16, 1720, 3432) - ns.CreatureFollow(obj16, ns.GetHost()) - flag37 = true - ns.SetDialog(obj16, ns.YESNO, GHStart1, GHEnd1) -LABEL1: - ns.SetDialog(obj17, ns.NORMAL, QMStart2, QMEnd2) - if !flag88 { - goto LABEL2 - } - ns.JournalEdit(ns.GetHost(), "FirstQuest", 4) -LABEL2: - ns.JournalEntry(ns.GetHost(), "SponsorQuest", 2) - ns.PrintToAll("Con01a:NewJournalEntry") -} -func QMStart2() { - ns.TellStory(ns.HumanMaleEatFood, "War01A.scr:QuarterMasterTalk02") -} -func QMEnd2() { - ns.SetDialog(obj17, ns.NORMAL, QMStart2, QMEnd2) -} -func QMStart3() { - ns.TellStory(ns.HumanMaleEatFood, "War01A.scr:QuarterMasterTalk03") -} -func QMEnd3() { - ns.CancelDialog(obj17) - ns.GiveXp(ns.GetHost(), 1000) - ns.MoveWaypoint(wp22, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.FlagCapture, wp22) - ns.Blind() - ns.SetQuestStatus(1, "EnteredGauntlet") - flag38 = true - ns.FrameTimer(45, DropLetter) -} -func QMStart4() { - ns.TellStory(ns.HumanMaleEatFood, "War02a:QuarterMasterTalk03") -} -func QMEnd4() { - ns.JournalEntry(ns.GetHost(), "SaveGearhart", 2) - ns.PrintToAll("Con01a:NewJournalEntry") - ns.CreatureFollow(obj17, ns.GetHost()) - flag8 = true - ns.SetDialog(obj17, ns.NORMAL, QMStart5, QMEnd5) - ns.StartDialog(obj17, ns.GetHost()) -} -func QMStart5() { - ns.TellStory(ns.HumanMaleEatFood, "War02a:QuarterMasterTalk04") -} -func QMEnd5() { - ns.SetDialog(obj17, ns.NORMAL, QMStart5a, QMEnd5a) -} -func QMStart5a() { - ns.TellStory(ns.HumanMaleEatFood, "War02a:QuarterMasterTalk05") -} -func QMEnd5a() { - ns.SetDialog(obj17, ns.NORMAL, QMStart5a, QMEnd5a) -} -func QMStart6() { - ns.TellStory(ns.HumanMaleEatFood, "War02:QuarterMaster10") -} -func QMEnd6() { - ns.CancelDialog(obj17) - ns.CreatureGuard(obj17, 2280, 3101, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - if flag26 { - goto LABEL1 - } - ns.Walk(obj17, 2276, 3120) -LABEL1: - return -} -func QMStart7() { - ns.SetDialog(obj39, ns.NORMAL, KirikStart2, KirikEnd2) - ns.TellStory(ns.HumanMaleEatFood, "War02:QuarterMaster12") -} -func QMEnd7() { - if gvar40 == 0 { - goto LABEL1 - } - ns.Delete(gvar40) -LABEL1: - if gvar73 == 0 { - goto LABEL2 - } - ns.Delete(gvar73) -LABEL2: - ns.ObjectOff(obj58) - ns.ObjectOn(obj72) - ns.GiveXp(ns.GetHost(), 1500) - ns.MoveWaypoint(wp22, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.FlagCapture, wp22) - ns.JournalEdit(ns.GetHost(), "SaveGearhart", 4) - ns.CancelDialog(obj17) - ns.SetDialog(obj16, ns.NORMAL, GHStart9, GHEnd9) - ns.StartDialog(obj16, ns.GetHost()) -} -func TalkToGearhart() { - ns.StartDialog(obj16, ns.GetHost()) -} -func GHStart1() { - ns.LookAtObject(obj16, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "War01A.scr:GearhartTalk01") -} -func GHEnd1() { - if ns.GetAnswer(obj16) != 1 { - goto LABEL1 - } - ns.SetDialog(obj16, ns.NORMAL, GHStart2, GHEnd2) - GHStart2() - goto LABEL2 -LABEL1: - ns.SetDialog(obj16, ns.NORMAL, GHStart3, GHEnd3) - GHStart3() -LABEL2: - flag85 = true -} -func GHStart2() { - ns.LookAtObject(obj16, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "War01A.scr:GearhartTalk02") -} -func GHEnd2() { - ns.Frozen(obj16, false) - flag86 = true - gvar25 = 2 - ns.CancelDialog(obj16) - ns.Pickup(ns.GetHost(), obj51) - ns.JournalEdit(ns.GetHost(), "SponsorQuest", 4) - ns.JournalEntry(ns.GetHost(), "OrchardQuest", 2) - ns.PrintToAll("GeneralPrint:GainedKey") - ns.PrintToAll("Con01a:NewJournalEntry") - if flag87 { - goto LABEL1 - } - ns.ObjectOn(obj71) - flag37 = false - ns.Move(obj16, wp91) -LABEL1: - return -} -func GHStart3() { - ns.Frozen(obj16, true) - ns.LookAtObject(obj16, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "War01A.scr:GearhartTalk03") -} -func GHEnd3() { - ns.Frozen(obj16, false) - ns.SetDialog(obj16, ns.YESNO, GHStart5, GHEnd5) - gvar25 = 1 - if flag87 { - goto LABEL1 - } - ns.ObjectOn(obj71) - flag37 = false - ns.Move(obj16, wp91) -LABEL1: - return -} -func GHStart4() { - ns.LookAtObject(obj16, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "War01A.scr:GearhartTalk05") -} -func GHEnd4() { - ns.SetDialog(obj16, ns.NORMAL, GHStart4, GHEnd4) -} -func GHStart5() { - ns.Frozen(obj16, true) - ns.CreatureIdle(obj16) - ns.LookAtObject(obj16, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "War01A.scr:GearhartTalk04") -} -func GHEnd5() { - if ns.GetAnswer(obj16) != 1 { - goto LABEL1 - } - ns.SetDialog(obj16, ns.NORMAL, GHStart2, GHEnd2) - GHStart2() - goto LABEL2 -LABEL1: - ns.SetDialog(obj16, ns.NORMAL, GHStart3, GHEnd3) - GHStart3() -LABEL2: - flag85 = true -} -func GHStart8() { - ns.LookAtObject(obj16, ns.GetHost()) - ns.Chat(obj16, "War01A.scr:GearhartTalk08") - ns.FrameTimer(60, GHEnd8) -} -func GHEnd8() { - var v0 int - v0 = gvar25 - if v0 == 0 { - goto LABEL1 - } - if v0 == 1 { - goto LABEL2 - } - if v0 == 2 { - goto LABEL3 - } - if v0 == 3 { - goto LABEL4 - } - if v0 == 4 { - goto LABEL5 - } - goto LABEL6 -LABEL1: - ns.CancelDialog(obj16) - goto LABEL6 -LABEL2: - ns.SetDialog(obj16, ns.YESNO, GHStart5, GHEnd5) - goto LABEL6 -LABEL3: - ns.SetDialog(obj16, ns.NORMAL, GHStart4, GHEnd4) - goto LABEL6 -LABEL4: - ns.SetDialog(obj16, ns.NORMAL, GHStart6, GHEnd6) - goto LABEL6 -LABEL5: - ns.SetDialog(obj16, ns.NORMAL, GHStart7, GHEnd7) - goto LABEL6 -LABEL6: - return -} -func GHStart9() { - ns.LookAtObject(ns.GetHost(), obj16) - ns.TellStory(ns.HumanMaleEatFood, "War02a:GearhartTalk07") -} -func GHEnd9() { - ns.CancelDialog(obj16) - ns.Blind() - ns.SetOwner(ns.GetHost(), obj50) - ns.FrameTimer(45, MoveToFacade) -} -func KirikStart2() { - ns.TellStory(ns.HumanMaleEatFood, "War03a:Guard1Talk02") -} -func KirikEnd2() { - ns.SetDialog(obj39, ns.NORMAL, KirikStart2, KirikEnd2) -} -func HorStart1() { - flag36 = false - ns.LookAtObject(obj50, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "War02B.scr:HorrendousTalk1Start") -} -func HorEnd1() { - ns.UnlockDoor(obj56) - ns.UnlockDoor(obj57) - ns.JournalEntry(ns.GetHost(), "War03aIxQuest", 2) - ns.PrintToAll("Con02a:ItemsAddedToInventory") - ns.Pickup(ns.GetHost(), obj62) - ns.Pickup(ns.GetHost(), obj63) - ns.Pickup(ns.GetHost(), obj64) - ns.Pickup(ns.GetHost(), obj70) - ns.SetDialog(obj50, ns.NORMAL, HorStart2, HorEnd2) -} -func HorStart2() { - ns.TellStory(ns.HumanMaleEatFood, "War02A.scr:RealTalk2Start") -} -func HorEnd2() { - ns.SetDialog(obj50, ns.NORMAL, HorStart2, HorEnd2) -} -func HorTalkStart() { - if !flag36 { - goto LABEL1 - } - flag36 = false - ns.StartDialog(obj50, ns.GetHost()) -LABEL1: - return -} -func GHInRoom() { - if !ns.IsCaller(obj16) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - flag87 = true - ns.CreatureGuard(obj16, ns.GetObjectX(obj16), ns.GetObjectY(obj16), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - if !flag86 { - goto LABEL2 - } - ns.SetDialog(obj16, ns.NORMAL, GHStart4, GHEnd4) - goto LABEL1 -LABEL2: - ns.SetDialog(obj16, ns.YESNO, GHStart5, GHEnd5) -LABEL1: - return -} -func PlayerInGearRoom() { - if !ns.IsVisibleTo(obj17, ns.GetHost()) { - goto LABEL1 - } - ns.ObjectGroupOff(gvar81) - ns.SetDialog(obj17, ns.NORMAL, QMStart6, QMEnd6) - ns.StartDialog(obj17, ns.GetHost()) -LABEL1: - return -} -func PlayerExitSewers() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.MoveObject(obj17, 2392, 3545) - ns.MoveObject(obj16, 2457, 3476) - ns.MoveObject(obj50, 3395, 1224) - ns.MoveObject(obj59, 3348, 1195) - ns.MoveObject(obj60, 3371, 1278) - ns.LookAtObject(obj16, ns.GetHost()) - ns.LookAtObject(obj17, ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj17) - ns.Frozen(ns.GetHost(), true) - ns.CreatureGuard(obj17, ns.GetObjectX(obj17), ns.GetObjectY(obj17), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - ns.CreatureGuard(obj16, ns.GetObjectX(obj16), ns.GetObjectY(obj16), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - ns.CreatureGuard(obj50, ns.GetObjectX(obj50), ns.GetObjectY(obj50), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - ns.CreatureGuard(obj59, ns.GetObjectX(obj59), ns.GetObjectY(obj59), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - ns.CreatureGuard(obj60, ns.GetObjectX(obj60), ns.GetObjectY(obj60), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - ns.FrameTimer(30, Congrats) -LABEL1: - return -} -func Congrats() { - ns.SetDialog(obj17, ns.NEXT, QMStart7, QMEnd7) - ns.StartDialog(obj17, ns.GetHost()) -} -func DropLetter() { - ns.Delete(obj52) - ns.FrameTimer(1, MovePlayer) -} -func MovePlayer() { - ns.MoveObject(ns.GetHost(), 2586, 5309) -} -func SecretTrainingRoom() { - ns.ObjectGroupOff(gvar79) - secretSound() - ns.GiveXp(ns.GetHost(), 100) - ns.PrintToAll("GeneralPrint:SecretFound") -} -func SecretRoom() { - ns.ObjectGroupOff(gvar80) - ns.GiveXp(ns.GetHost(), 100) - secretSound() - ns.PrintToAll("GeneralPrint:SecretFound") -} -func GeneralSecret() { - ns.GiveXp(ns.GetHost(), 100) - secretSound() - ns.PrintToAll("GeneralPrint:SecretFound") -} -func secretSound() { - ns.MoveWaypoint(wp22, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretFound, wp22) -} -func QMEndTrigger() { - if !ns.IsCaller(obj17) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - flag26 = true - ns.CreatureGuard(obj17, ns.GetObjectX(obj17), ns.GetObjectY(obj17), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) -LABEL1: - return -} -func FKG1Start() { - ns.TellStory(ns.SwordsmanRecognize, "War01A.scr:Guard2Talk1aStart") -} -func FKG1End() { - ns.SetDialog(obj117, ns.NORMAL, FKG1Start, FKG1End) -} -func SecretSurprise() { - ns.ObjectOn(gvar73) - ns.MoveObject(gvar73, 4416, 1000) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 50) - secretSound() -} -func SecretSword() { - secretSound() - ns.GiveXp(ns.GetHost(), 150) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.FrameTimer(15, FlamesOut) -} -func FlamesOut() { - ns.GroupDelete(gvar122) - ns.AudioEvent(ns.FireExtinguish, wp124) -} -func gauntletQuest() { - ns.Music(1, 100) - ns.JournalEntry(ns.GetHost(), "FirstQuest", 2) - ns.PrintToAll("Con01a:NewJournalEntry") -} -func MakeAWish() { - var v0 int - v0 = ns.MaxHealth(ns.GetCaller()) - ns.RestoreHealth(ns.GetCaller(), v0-ns.CurrentHealth(ns.GetCaller())) - ns.MoveWaypoint(wp22, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.PrintToAll("GeneralPrint:WellSignRefresh") - ns.AudioEvent(ns.RestoreHealthName, wp22) -} -func CaveMusic() { - ns.ObjectOff(obj113) - ns.ObjectGroupOn(gvar21) - ns.Music(19, 100) -} -func TownMusic() { - ns.ObjectGroupOff(gvar21) - if gvar118 == 0 { - goto LABEL1 - } - ns.ObjectOn(obj113) -LABEL1: - ns.Music(16, 100) -} -func runFromPain() { - ns.RunAway(ns.GetTrigger(), ns.GetHost(), 60) - obj94 = ns.GetTrigger() - ns.RestoreHealth(obj94, 1000) - if !flag37 { - goto LABEL1 - } - ns.FrameTimer(63, followPlayer) -LABEL1: - if ns.GetTrigger() != obj17 { - goto LABEL2 - } - ns.FrameTimer(63, followPlayer) -LABEL2: - return -} -func followPlayer() { - ns.CreatureFollow(obj94, ns.GetHost()) -} -func InitializeWizardSetpiece() { - obj136 = ns.Object("Wizard") - obj137 = ns.Object("Wizard2") - obj138 = ns.Object("Jerry") - obj139 = ns.Object("Bryan") - obj140 = ns.Object("FireKnightGuard1") - obj141 = ns.Object("Staff") - wp142 = ns.Waypoint("WizardMark") - wp143 = ns.Waypoint("BryanMark") - wp144 = ns.Waypoint("AudioOrigin") - wp145 = ns.Waypoint("WizardStorage") - wp146 = ns.Waypoint("WizardExitPath") - ns.Pickup(obj136, obj141) - ns.SetOwner(ns.GetHost(), obj139) - ns.SetOwner(ns.GetHost(), obj138) - ns.CastSpellObjectObject(ns.SPELL_SHIELD, obj136, obj136) - ns.Enchant(obj136, ns.ENCHANT_INVISIBLE, 0) -} -func CreatureSetup() { - ns.SetOwner(ns.GetHost(), obj115) - ns.SetOwner(ns.GetHost(), obj116) - ns.SetOwner(ns.GetHost(), obj39) - ns.SetOwner(ns.GetHost(), obj43) - ns.SetOwner(ns.GetHost(), obj44) - ns.SetOwner(ns.GetHost(), obj45) - ns.SetOwner(ns.GetHost(), obj41) - ns.SetOwner(ns.GetHost(), obj42) - ns.SetOwner(ns.GetHost(), obj46) - ns.SetOwner(ns.GetHost(), obj47) - ns.SetOwner(ns.GetHost(), obj48) - ns.SetOwner(ns.GetHost(), obj49) - ns.SetOwner(ns.GetHost(), obj16) - ns.SetOwner(ns.GetHost(), obj17) - ns.SetOwner(ns.GetHost(), obj14) - ns.SetOwner(ns.GetHost(), obj15) - ns.SetOwner(ns.GetHost(), obj117) - ns.SetOwner(ns.GetHost(), obj59) - ns.SetOwner(ns.GetHost(), obj60) - ns.SetOwner(ns.GetHost(), obj39) - if ns.GetQuestStatus("War02A:EnteredGauntlet") != 1 { - goto LABEL1 - } - if !flag38 { - goto LABEL1 - } - flag38 = false - ns.Delete(obj14) - ns.Delete(obj15) - ns.UnlockDoor(obj34) - ns.UnlockDoor(obj120) - ns.UnlockDoor(obj119) - ns.CancelDialog(obj115) - ns.CancelDialog(obj116) - ns.MoveObject(obj42, 2724, 3161) - ns.CreatureGuard(obj42, 2724, 3161, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - ns.SetDialog(obj49, ns.NORMAL, LydiaStart2, LydiaEnd2) - ns.SetDialog(obj17, ns.NEXT, QMStart4, QMEnd4) - ns.SetDialog(obj41, ns.NORMAL, DanStart1, DanEnd1) - ns.SetDialog(obj42, ns.NORMAL, JesseStart2, JesseEnd2) - ns.SetDialog(obj44, ns.NORMAL, EricStart1, EricEnd1) - ns.SetDialog(obj45, ns.NORMAL, JacobStart1, JacobEnd1) - ns.MoveObject(obj16, 2590, 3279) - ns.CreatureGuard(obj16, ns.GetObjectX(obj16), ns.GetObjectY(obj16), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - if ns.GetQuestStatus("PlayerInSewers") == 1 { - goto LABEL2 - } - ns.CreatureFollow(obj17, ns.GetHost()) - ns.StartDialog(obj17, ns.GetHost()) - goto LABEL3 -LABEL2: - ns.MoveObject(obj17, 2296, 3099) - ns.CreatureGuard(obj17, 2296, 3099, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) -LABEL3: - ns.SetShopkeeperText(obj43, "War02B.scr:BarTalk1") - ns.SetShopkeeperText(obj114, "War03b:Shopkeeper") - ns.ObjectGroupOn(gvar74) - ns.ObjectGroupOn(gvar75) - ns.ObjectGroupOn(gvar76) - ns.ObjectGroupOn(gvar77) - ns.ObjectOn(obj53) - ns.ObjectOn(obj54) - ns.ObjectOn(obj55) - ns.MoveObject(obj41, 3829, 3524) - ns.FrameTimer(1, DisableDudes) -LABEL1: - if ns.GetQuestStatus("War02A:EnteredGauntlet") != 2 { - goto LABEL4 - } - if !flag27 { - goto LABEL4 - } - flag27 = false - ns.LockDoor(obj33) - ns.LockDoor(obj34) - ns.SetDialog(obj41, ns.NORMAL, DanStart1, DanEnd1) - ns.SetDialog(obj42, ns.NORMAL, JesseStart2, JesseEnd2) - ns.SetDialog(obj44, ns.NORMAL, EricStart1, EricEnd1) - ns.SetDialog(obj45, ns.NORMAL, JacobStart1, JacobEnd1) - ns.ObjectGroupOn(gvar74) - ns.ObjectGroupOn(gvar75) - ns.ObjectGroupOn(gvar76) - ns.ObjectGroupOn(gvar77) - ns.ObjectOn(obj53) - ns.ObjectOn(obj54) - ns.ObjectOn(obj55) - ns.LockDoor(obj34) - ns.LockDoor(obj33) - ns.UnlockDoor(obj57) - ns.UnlockDoor(obj56) - ns.SetShopkeeperText(obj114, "War03b:Shopkeeper") - ns.CancelDialog(obj115) - ns.CancelDialog(obj116) - ns.ObjectGroupOn(gvar74) - PlayerExitSewers() -LABEL4: - return -} -func GateGuard1AStart() { - ns.LookAtObject(obj115, ns.GetHost()) - ns.Frozen(obj115, true) - ns.TellStory(ns.HumanMaleEatFood, "War01A.scr:GateGuard1Talk01") -} -func GateGuard1AEnd() { - ns.Frozen(obj115, false) - ns.SetDialog(obj115, ns.NORMAL, GateGuard1BStart, GateGuard1BEnd) -} -func GateGuard1BStart() { - ns.LookAtObject(obj115, ns.GetHost()) - ns.Frozen(obj115, true) - ns.TellStory(ns.HumanMaleEatFood, "War01A.scr:GateGuard1Talk02") -} -func GateGuard1BEnd() { - ns.Frozen(obj115, false) - ns.SetDialog(obj115, ns.NORMAL, GateGuard1BStart, GateGuard1BEnd) -} -func GateGuard2AStart() { - ns.LookAtObject(obj116, ns.GetHost()) - ns.Frozen(obj116, true) - ns.TellStory(ns.HumanMaleEatFood, "War01A.scr:GateGuard2Talk01") -} -func GateGuard2AEnd() { - ns.Frozen(obj116, false) - ns.SetDialog(obj116, ns.NORMAL, GateGuard2BStart, GateGuard2BEnd) -} -func GateGuard2BStart() { - ns.LookAtObject(obj116, ns.GetHost()) - ns.Frozen(obj116, true) - ns.TellStory(ns.HumanMaleEatFood, "War01A.scr:GateGuard2Talk02") -} -func GateGuard2BEnd() { - ns.Frozen(obj116, false) - ns.SetDialog(obj116, ns.NORMAL, GateGuard2AStart, GateGuard2AEnd) -} -func OpenGearDoor() { - if !ns.IsCaller(obj16) { - goto LABEL1 - } - ns.UnlockDoor(obj119) - ns.UnlockDoor(obj120) - ns.ObjectOff(ns.GetTrigger()) -LABEL1: - return -} -func CaptainStartTalk() { - ns.StartDialog(obj95, ns.GetHost()) -} -func CaptainStart1() { - ns.TellStory(ns.HumanMaleEatFood, "War01A.scr:CaptainTalkStart") -} -func CaptainEnd1() { - flag88 = true - ns.SetDialog(obj95, ns.NORMAL, CaptainStart2, CaptainEnd2) -} -func CaptainStart2() { - var ( - v0 int - v1 int - ) - v0 = ns.Random(1, 4) - v1 = v0 - if v1 == 1 { - goto LABEL1 - } - if v1 == 2 { - goto LABEL2 - } - if v1 == 3 { - goto LABEL3 - } - if v1 == 4 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - ns.TellStory(ns.HumanMaleEatFood, "War01a:CaptainTalk2aStart") - goto LABEL5 -LABEL2: - ns.TellStory(ns.HumanMaleEatFood, "War01a:CaptainTalk2bStart") - goto LABEL5 -LABEL3: - ns.TellStory(ns.HumanMaleEatFood, "War01a:CaptainTalk2cStart") - goto LABEL5 -LABEL4: - ns.TellStory(ns.HumanMaleEatFood, "War01a:CaptainTalk2eStart") - goto LABEL5 -LABEL5: - return -} -func CaptainEnd2() { - ns.SetDialog(obj95, ns.NORMAL, CaptainStart2, CaptainEnd2) -} -func KirikStart1() { - ns.TellStory(ns.HumanMaleEatFood, "War01A.scr:Guard1Talk01") -} -func KirikEnd1() { - ns.SetDialog(obj39, ns.NORMAL, KirikStart1, KirikEnd1) -} -func GiveXP() { - ns.ObjectGroupOff(gvar121) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 50) -} -func DisableDudes() { - ns.ObjectOff(obj41) -} -func IntroBatAttack() { - if !flag93 { - goto LABEL1 - } - if !ns.IsTrading() { - goto LABEL2 - } - ns.Frozen(gvar40, true) - ns.FrameTimer(10, ResetBat) -LABEL2: - ns.FrameTimer(10, IntroBatAttack) -LABEL1: - return -} -func ResetBat() { - if !flag93 { - goto LABEL1 - } - ns.Frozen(gvar40, false) -LABEL1: - return -} -func IntroBatDies() { - flag93 = false -} -func DestroyIntroBat() { - ns.Delete(gvar40) -} -func MapInitialize() { - obj95 = ns.Object("AirshipCaptain") - obj96 = ns.Object("Basket") - obj97 = ns.Object("BasketShadow") - obj106 = ns.Object("BarrelSign") - obj107 = ns.Object("WallSign") - obj108 = ns.Object("ChestSign") - obj109 = ns.Object("JumpSign") - obj110 = ns.Object("WellSign") - obj111 = ns.Object("AppleSign") - obj100 = ns.Object("DownGear") - obj101 = ns.Object("UpGear") - obj98 = ns.Object("UpToSurface") - obj99 = ns.Object("ElevatorDoor") - obj16 = ns.Object("F2Gearhart") - obj50 = ns.Object("Horrendous") - obj102 = ns.Object("MidCityGate1") - obj103 = ns.Object("MidCityGate2") - obj104 = ns.Object("GauntletDoorL") - obj105 = ns.Object("GauntletDoorR") - gvar73 = ns.Object("SecretSpider") - ns.ObjectOff(gvar73) - obj71 = ns.Object("MachRoomTrigger") - ns.ObjectOff(obj71) - obj72 = ns.Object("TalkWithHorTrigger") - ns.ObjectOff(obj72) - obj113 = ns.Object("CaveMusicTrigger") - gvar21 = ns.ObjectGroup("TownMusicTriggers") - ns.ObjectGroupOff(gvar21) - obj39 = ns.Object("Kirik") - gvar40 = ns.Object("IntroBat") - obj114 = ns.Object("F2Bull") - obj115 = ns.Object("Bruce") - obj116 = ns.Object("F6FireGuard10") - obj41 = ns.Object("Daniel") - obj42 = ns.Object("Jesse") - obj45 = ns.Object("Jacob") - obj44 = ns.Object("Eric") - obj46 = ns.Object("Tyler") - obj43 = ns.Object("Bing") - obj47 = ns.Object("Melissa") - obj48 = ns.Object("Evelyn") - obj49 = ns.Object("Lydia") - obj117 = ns.Object("F1Rogan") - obj59 = ns.Object("FireKnightGuard3") - obj60 = ns.Object("FireKnightGuard4") - obj17 = ns.Object("QuarterMaster") - obj10 = ns.Object("AppleBat1") - obj12 = ns.Object("AppleBat1A") - obj13 = ns.Object("AppleBat1B") - obj11 = ns.Object("AppleBat2") - obj14 = ns.Object("Kristine") - obj15 = ns.Object("Jennifer") - gvar118 = ns.Object("MasterUrchin") - obj53 = ns.Object("GearLight1") - obj54 = ns.Object("GearLight2") - obj55 = ns.Object("GearLight3") - obj119 = ns.Object("GearDoorR") - obj120 = ns.Object("GearDoorL") - obj51 = ns.Object("OrchardKey") - obj52 = ns.Object("SponsorshipLetter") - obj28 = ns.Object("SewerGear1") - obj29 = ns.Object("SewerGear2") - obj30 = ns.Object("Brick1") - obj31 = ns.Object("Brick2") - obj32 = ns.Object("SewerBottom") - obj33 = ns.Object("ExpressDoor") - obj34 = ns.Object("ServiceDoor") - obj57 = ns.Object("IxDoorR") - obj56 = ns.Object("IxDoorL") - obj58 = ns.Object("SewerExitTrigger") - obj61 = ns.Object("Goodies") - obj62 = ns.Object("HorGold") - obj63 = ns.Object("SturdyBoots") - obj64 = ns.Object("NiceCloak") - obj65 = ns.Object("BatScroll") - obj66 = ns.Object("LeechScroll") - obj67 = ns.Object("SpiderScroll") - obj68 = ns.Object("LargeSpiderScroll") - obj69 = ns.Object("TrollScroll") - obj70 = ns.Object("UrchinScroll") - obj112 = ns.Object("LightTrigger") - gvar74 = ns.ObjectGroup("Peds") - gvar18 = ns.ObjectGroup("FleePiece") - gvar19 = ns.ObjectGroup("FleePiece2") - gvar75 = ns.ObjectGroup("StreetLamps") - gvar76 = ns.ObjectGroup("StreetLamps2") - gvar77 = ns.ObjectGroup("LightGears") - gvar78 = ns.ObjectGroup("LightGears2") - gvar20 = ns.ObjectGroup("FleeTriggers") - gvar121 = ns.ObjectGroup("SecretAreaWow") - gvar79 = ns.ObjectGroup("SecretTrainingTriggers") - gvar80 = ns.ObjectGroup("SecretRoom2Triggers") - gvar81 = ns.ObjectGroup("PlayerGearTriggers") - gvar122 = ns.ObjectGroup("FireSwordFlames") - gvar123 = ns.WallGroup("SetPieceWalls") - wp22 = ns.Waypoint("PlayerSounds") - wp91 = ns.Waypoint("GearhartWP") - wp92 = ns.Waypoint("QMStartWP") - wp124 = ns.Waypoint("FireSnufWay") - gvar125 = ns.WaypointGroup("CaveWP") - ns.StoryPic(obj117, "WarriorPic") - ns.StoryPic(obj41, "MalePic5") - ns.StoryPic(obj42, "Townsman1Pic") - ns.StoryPic(obj44, "Townsman3Pic") - ns.StoryPic(obj17, "QuarterMasterPic") - ns.StoryPic(obj46, "IxGuard1Pic") - ns.StoryPic(obj49, "MaidenPic3") - ns.StoryPic(obj47, "MaidenPic2") - ns.StoryPic(obj48, "MaidenPic") - ns.StoryPic(obj45, "DrunkPic") - ns.StoryPic(obj16, "GearhartPic") - ns.StoryPic(obj95, "AirshipCaptainPic") - ns.StoryPic(obj39, "Warrior4Pic") - ns.StoryPic(obj14, "MaidenPic2") - ns.StoryPic(obj15, "MaidenPic") - ns.SetDialog(obj117, ns.NORMAL, FKG1Start, FKG1End) - ns.SetDialog(obj115, ns.NORMAL, GateGuard1AStart, GateGuard1AEnd) - ns.SetDialog(obj116, ns.NORMAL, GateGuard2AStart, GateGuard2AEnd) - ns.SetDialog(obj41, ns.NORMAL, DanStart1, DanEnd1) - ns.SetDialog(obj42, ns.NORMAL, JesseStart1, JesseEnd1) - ns.SetDialog(obj44, ns.NORMAL, EricStart1, EricEnd1) - ns.SetDialog(obj46, ns.NORMAL, TylerStart1, TylerEnd1) - ns.SetDialog(obj45, ns.NORMAL, JacobStart1, JacobEnd1) - ns.SetDialog(obj49, ns.NORMAL, LydiaStart1, LydiaEnd1) - ns.SetDialog(obj47, ns.NORMAL, MelStart1, MelEnd1) - ns.SetDialog(obj48, ns.NORMAL, EvelynStart1, EvelynEnd1) - ns.SetDialog(obj17, ns.NORMAL, QMStart1, QMEnd1) - ns.SetDialog(obj95, ns.NORMAL, CaptainStart1, CaptainEnd1) - ns.SetDialog(obj39, ns.NORMAL, KirikStart1, KirikEnd1) - ns.ObjectGroupOff(gvar18) - ns.ObjectGroupOff(gvar19) - ns.WayPointGroupOff(gvar125) - ns.ObjectGroupOff(gvar74) - ns.LockDoor(obj33) - ns.LockDoor(obj34) - ns.LockDoor(obj119) - ns.LockDoor(obj120) - ns.LockDoor(obj56) - ns.LockDoor(obj57) - ns.LockDoor(obj102) - ns.LockDoor(obj103) - ns.LockDoor(obj104) - ns.LockDoor(obj105) - ns.StoryPic(obj50, "HorrendousPic") - ns.StoryPic(obj115, "Warrior5Pic") - ns.StoryPic(obj116, "Warrior3Pic") - InitializeWizardSetpiece() - ns.StartupScreen(1) - ns.FrameTimer(3, gauntletQuest) - ns.FrameTimer(1, CaptainStartTalk) -} -func MapEntry() { - if ns.GetQuestStatus("War02A:EnteredGauntlet") != 1 { - goto LABEL1 - } - ns.Music(16, 100) -LABEL1: - if ns.GetQuestStatus("War02A:EnteredGauntlet") != 2 { - goto LABEL2 - } - ns.Music(16, 100) -LABEL2: - ns.FrameTimer(1, CreatureSetup) -} -func PlayerDeath() { - if ns.GetQuestStatus("War02A:EnteredGauntlet") != 1 { - goto LABEL1 - } - ns.DeathScreen(2) - goto LABEL2 -LABEL1: - if ns.GetQuestStatus("War02A:EnteredGauntlet") != 2 { - goto LABEL3 - } - ns.DeathScreen(3) - goto LABEL2 -LABEL3: - ns.DeathScreen(1) -LABEL2: - return -} -func WizardEnter() { - gvar133 = gvar127 - ns.Move(obj136, wp142) - ns.Move(obj139, wp143) -} -func JerrySpeaks() { - ns.LookAtObject(obj138, obj136) - ns.Chat(obj138, "War01A.scr:SetpieceGuard1Talk01") - ns.FrameTimer(60, WizardAttackJerry) -} -func WizardAttackJerry() { - gvar133 = gvar129 - ns.LookAtObject(obj136, obj138) - ns.LookAtObject(obj138, obj136) - ns.Chat(obj138, "War01A.scr:SetpieceGuard2Talk01") - ns.CastSpellObjectLocation(ns.SPELL_LIGHTNING, obj136, ns.GetObjectX(obj138), ns.GetObjectY(obj138)) - ns.FrameTimer(15, BryanAttackWizard) -} -func BryanAttackWizardAgain() { - ns.Attack(obj139, obj136) -} -func BryanSpeaks() { - ns.LookAtObject(obj139, obj137) - ns.LookAtObject(obj138, obj137) - ns.Chat(obj139, "War01A.scr:SetpieceGuard2Talk02") - ns.FrameTimer(80, WizardExit) -} -func WizardExit() { - ns.DestroyEveryChat() - ns.Move(obj139, wp146) - ns.CreatureFollow(obj137, obj139) - ns.CreatureFollow(obj138, obj137) - gvar133 = gvar131 - ns.FrameTimer(120, ReleasePlayer) -} -func ReleasePlayer() { - ns.Music(16, 100) - ns.WideScreen(false) - ns.MoveObject(obj138, ns.GetWaypointX(wp145), ns.GetWaypointY(wp145)) - ns.MoveObject(obj139, ns.GetWaypointX(wp145), ns.GetWaypointY(wp145)) - ns.MoveObject(obj137, ns.GetWaypointX(wp145), ns.GetWaypointY(wp145)) - ns.Frozen(ns.GetHost(), false) - ns.ObjectGroupOn(gvar74) - ns.NoWallSound(true) - ns.WallGroupOpen(gvar123) - ns.NoWallSound(false) - ns.FrameTimer(1, DisableGuys) -} -func DisableGuys() { - ns.ObjectOff(obj138) - ns.ObjectOff(obj139) - ns.ObjectOff(obj137) -} -func WizardReport() { - var v0 int - v0 = gvar133 - if v0 == gvar127 { - goto LABEL1 - } - goto LABEL2 -LABEL1: - ns.EnchantOff(obj136, ns.ENCHANT_INVISIBLE) - ns.LookAtObject(obj136, obj138) - gvar133 = gvar128 - ns.FrameTimer(15, JerrySpeaks) - goto LABEL2 -LABEL2: - return -} -func StopBryan() { - ns.CreatureIdle(obj139) -} -func SwapWizards() { - ns.Drop(obj136, obj141) - ns.AudioEvent(ns.WoodenWeaponDrop, wp144) - ns.MoveObject(obj137, ns.GetObjectX(obj136), ns.GetObjectY(obj136)) - ns.MoveObject(obj136, ns.GetWaypointX(wp145), ns.GetWaypointY(wp145)) -} -func WizardInjured() { - var v0 int - ivar134 += 1 - if !(ivar134 > 1) { - goto LABEL1 - } - v0 = gvar133 - if v0 == gvar129 { - goto LABEL2 - } - if v0 == gvar131 { - goto LABEL3 - } - goto LABEL1 -LABEL2: - ns.DestroyEveryChat() - ns.FrameTimer(5, SwapWizards) - ns.AudioEvent(ns.NPCHurt, wp144) - gvar133 = gvar130 - ns.CreatureIdle(obj136) - ns.FrameTimer(10, StopBryan) - ns.FrameTimer(20, BryanSpeaks) - goto LABEL1 -LABEL3: - if !ns.IsCaller(obj140) { - goto LABEL4 - } - ns.Damage(ns.GetTrigger(), 0, 1000, 0) -LABEL4: - goto LABEL1 -LABEL1: - return -} -func StartWizardSetpiece() { - if !(!flag135 && ns.IsCaller(ns.GetHost())) { - goto LABEL1 - } - if gvar40 == 0 { - goto LABEL2 - } - ns.Damage(gvar40, 0, 100, 0) - ns.FrameTimer(30, DestroyIntroBat) -LABEL2: - ns.Music(4, 100) - flag135 = true - ns.Frozen(ns.GetHost(), true) - ns.CreatureIdle(ns.GetHost()) - ns.WideScreen(true) - ns.MoveWaypoint(wp144, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.Delete(obj95) - ns.Delete(obj96) - ns.Delete(obj97) - ns.FrameTimer(45, WizardEnter) -LABEL1: - return -} -func BryanAttackWizard() { - ns.AudioEvent(ns.SwordsmanRecognize, wp144) - ns.Attack(obj139, obj136) - ns.FrameTimer(7, BryanAttackWizardAgain) -} -func Clear() { - ns.WideScreen(false) - ns.Frozen(ns.GetHost(), false) -} -func OnEvent(typ string) { - switch typ { - case "MapInitialize": - MapInitialize() - case "MapEntry": - MapEntry() - case "PlayerDeath": - PlayerDeath() - } -} diff --git a/examples/war02a/dummy_test.go b/examples/war02a/dummy_test.go deleted file mode 100644 index 28e7556..0000000 --- a/examples/war02a/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package war02a - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/war02a/war02a.go b/examples/war02a/war02a.go deleted file mode 100644 index af842a1..0000000 --- a/examples/war02a/war02a.go +++ /dev/null @@ -1,2313 +0,0 @@ -package war02a - -import ( - "strconv" - - "github.com/noxworld-dev/noxscript/ns/v3" -) - -var ( - ivar4 int - flag5 bool - flag6 bool - obj7 ns.ObjectID - obj8 ns.ObjectID - gvar9 ns.ObjectGroupID - wp10 ns.WaypointID - flag11 bool - flag12 bool - gvar13 ns.ObjectGroupID - gvar14 ns.ObjectGroupID - gvar15 ns.ObjectGroupID - obj16 ns.ObjectID - obj17 ns.ObjectID - obj18 ns.ObjectID - obj19 ns.ObjectID - obj20 ns.ObjectID - obj21 ns.ObjectID - obj22 ns.ObjectID - obj23 ns.ObjectID - obj24 ns.ObjectID - obj25 ns.ObjectID - obj26 ns.ObjectID - obj27 ns.ObjectID - obj28 ns.ObjectID - obj29 ns.ObjectID - obj30 ns.ObjectID - obj31 ns.ObjectID - obj32 ns.ObjectID - obj33 ns.ObjectID - obj34 ns.ObjectID - obj35 ns.ObjectID - obj36 ns.ObjectID - obj37 ns.ObjectID - obj38 ns.ObjectID - obj39 ns.ObjectID - obj40 ns.ObjectID - obj41 ns.ObjectID - obj42 ns.ObjectID - obj43 ns.ObjectID - obj44 ns.ObjectID - obj45 ns.ObjectID - obj46 ns.ObjectID - obj47 ns.ObjectID - obj48 ns.ObjectID - obj49 ns.ObjectID - obj50 ns.ObjectID - obj51 ns.ObjectID - obj52 ns.ObjectID - obj53 ns.ObjectID - obj54 [40]ns.ObjectID - wp55 ns.WaypointID - wp56 ns.WaypointID - wp57 ns.WaypointID - wp58 ns.WaypointID - wp59 ns.WaypointID - wp60 ns.WaypointID - wp61 ns.WaypointID - wp62 ns.WaypointID - wp63 ns.WaypointID - wp64 ns.WaypointID - wp65 ns.WaypointID - wp66 ns.WaypointID - wp67 ns.WaypointID - wp68 ns.WaypointID - wp69 ns.WaypointID - wp70 ns.WaypointID - wp71 ns.WaypointID - wp72 ns.WaypointID - wp73 ns.WaypointID - wp74 ns.WaypointID - wp75 ns.WaypointID - wp76 ns.WaypointID - wp77 ns.WaypointID - wp78 ns.WaypointID - wp79 ns.WaypointID - wp80 ns.WaypointID - wp81 ns.WaypointID - wp82 ns.WaypointID - wp83 ns.WaypointID - wp84 ns.WaypointID - wp85 ns.WaypointID - wp86 ns.WaypointID - wp87 ns.WaypointID - wp88 ns.WaypointID - wp89 ns.WaypointID - ivar90 int - obj91 ns.ObjectID - obj92 ns.ObjectID - obj93 ns.ObjectID - obj94 ns.ObjectID - obj95 ns.ObjectID - obj96 ns.ObjectID - obj97 ns.ObjectID - gvar98 ns.WallGroupID - gvar99 int - gvar100 int - gvar101 int - gvar102 int - gvar103 int - gvar104 int - gvar105 int - gvar106 int - gvar107 int - gvar108 int - gvar109 int - gvar110 int - gvar111 int - gvar112 int - gvar113 int - gvar114 int - gvar115 int - gvar116 int - gvar117 int - gvar118 int - gvar119 int - gvar120 int - gvar121 int - gvar122 int - gvar123 int - gvar124 int - gvar125 int - gvar126 int - gvar127 int - gvar128 int - gvar129 int - gvar130 int - gvar131 int - gvar132 int - gvar133 int - gvar134 int - gvar135 int - gvar136 int - gvar137 int - gvar138 int - flag139 bool - flag140 bool - flag141 bool - flag142 bool - flag143 bool - flag144 bool - flag145 bool - flag146 bool - flag147 bool - flag148 bool - flag149 bool - ivar150 int - ivar151 int - ivar152 int - ivar153 int - ivar154 int - ivar155 int - ivar156 int - ivar157 int - ivar158 int - ivar159 int - ivar160 int - ivar161 int - ivar162 int - ivar163 int - ivar164 int - ivar165 int - gvar166 int - gvar167 int - gvar168 int - gvar169 int - gvar170 int - gvar171 int - gvar172 int - gvar173 int - gvar174 int - gvar175 int - gvar176 int - gvar177 int - gvar178 int - gvar179 int - gvar180 int - gvar181 int - gvar182 int - gvar183 int - gvar184 int - gvar185 int - obj186 [8]ns.ObjectID - obj187 [8]ns.ObjectID - obj188 [8]ns.ObjectID - obj189 [8]ns.ObjectID - obj190 [8]ns.ObjectID - obj191 [8]ns.ObjectID - obj192 [8]ns.ObjectID - obj193 [8]ns.ObjectID - obj194 [8]ns.ObjectID - obj195 [8]ns.ObjectID - wp196 [8]ns.WaypointID - wp197 [8]ns.WaypointID - wp198 [8]ns.WaypointID - wp199 [8]ns.WaypointID - wp200 [8]ns.WaypointID - wp201 [8]ns.WaypointID - wp202 [8]ns.WaypointID - wp203 [8]ns.WaypointID - wp204 [8]ns.WaypointID - wp205 [8]ns.WaypointID - ivar206 int - obj207 ns.ObjectID - obj208 ns.ObjectID - obj209 ns.ObjectID - obj210 ns.ObjectID - obj211 ns.ObjectID - obj212 ns.ObjectID - obj213 ns.ObjectID - gvar214 ns.WallGroupID - flag215 bool - flag216 bool - gvar217 int - gvar218 int - ivar219 int - obj220 ns.ObjectID - obj221 ns.ObjectID - obj222 ns.ObjectID - obj223 ns.ObjectID - obj224 ns.ObjectID - obj225 ns.ObjectID - obj226 ns.ObjectID - obj227 ns.ObjectID - gvar228 ns.WallGroupID - ivar229 int - obj230 ns.ObjectID - obj231 ns.ObjectID - obj232 ns.ObjectID - gvar233 ns.ObjectGroupID - gvar234 ns.ObjectGroupID - gvar235 ns.WallGroupID - wp236 ns.WaypointID - flag237 bool - flag238 bool - gvar239 ns.ObjectGroupID - obj240 ns.ObjectID - obj241 ns.ObjectID - obj242 ns.ObjectID - obj243 ns.ObjectID - obj244 ns.ObjectID - obj245 ns.ObjectID - obj246 ns.ObjectID - obj247 ns.ObjectID - obj248 ns.ObjectID - obj249 ns.ObjectID - obj250 ns.ObjectID - obj251 ns.ObjectID - obj252 ns.ObjectID - obj253 ns.ObjectID - obj254 ns.ObjectID - obj255 ns.ObjectID - obj256 ns.ObjectID - obj257 ns.ObjectID - obj258 ns.ObjectID - obj259 ns.ObjectID - obj260 ns.ObjectID - obj261 ns.ObjectID - wp262 ns.WaypointID - wp263 ns.WaypointID - wp264 ns.WaypointID - wp265 ns.WaypointID - wp266 ns.WaypointID - wp267 ns.WaypointID - wp268 ns.WaypointID - wp269 ns.WaypointID - wp270 ns.WaypointID - wp271 ns.WaypointID - wp272 ns.WaypointID - wp273 ns.WaypointID - wp274 ns.WaypointID - wp275 ns.WaypointID - wp276 ns.WaypointID - wp277 ns.WaypointID - wp278 ns.WaypointID - wp279 ns.WaypointID - wp280 ns.WaypointID - wp281 ns.WaypointID - flag282 bool - obj283 ns.ObjectID - obj284 ns.ObjectID - gvar285 ns.ObjectGroupID -) - -func init() { - flag5 = true - flag6 = false - flag11 = true - flag12 = true - ivar90 = 0 - gvar99 = 0 - gvar100 = 1 - gvar101 = 2 - gvar102 = 3 - gvar103 = 0 - gvar104 = 1 - gvar105 = 2 - gvar106 = 3 - gvar107 = 0 - gvar108 = 1 - gvar109 = 2 - gvar110 = 3 - gvar111 = 0 - gvar112 = 1 - gvar113 = 2 - gvar114 = 3 - gvar115 = 0 - gvar116 = 1 - gvar117 = 2 - gvar118 = 3 - gvar119 = 0 - gvar120 = 1 - gvar121 = 2 - gvar122 = 3 - gvar123 = 0 - gvar124 = 1 - gvar125 = 2 - gvar126 = 3 - gvar127 = 0 - gvar128 = 1 - gvar129 = 2 - gvar130 = 3 - gvar131 = 0 - gvar132 = 1 - gvar133 = 2 - gvar134 = 3 - gvar135 = 0 - gvar136 = 1 - gvar137 = 2 - gvar138 = 3 - flag139 = true - flag140 = true - flag141 = true - flag142 = true - flag143 = true - flag144 = true - flag145 = true - flag146 = true - flag147 = true - flag148 = true - flag149 = true - gvar166 = gvar100 - gvar167 = gvar104 - gvar168 = gvar108 - gvar169 = gvar112 - gvar170 = gvar116 - gvar171 = gvar120 - gvar172 = gvar124 - gvar173 = gvar128 - gvar174 = gvar132 - gvar175 = gvar136 - gvar176 = gvar99 - gvar177 = gvar103 - gvar178 = gvar107 - gvar179 = gvar111 - gvar180 = gvar115 - gvar181 = gvar119 - gvar182 = gvar123 - gvar183 = gvar127 - gvar184 = gvar131 - gvar185 = gvar135 - ivar206 = 0 - flag215 = true - flag216 = true - ivar219 = 0 - ivar229 = 0 - flag237 = true - flag238 = false - flag282 = false -} -func secretTrigger() { - ns.MoveWaypoint(wp55, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretFound, wp55) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 150) -} -func PlayGauntletMusic() { - ns.Music(29, 100) -} -func initGauntletDoor() { - gvar14 = ns.ObjectGroup("GauntletGears") - ns.ObjectGroupOff(gvar14) - gvar13 = ns.ObjectGroup("GauntletDoorMovers") - obj16 = ns.Object("B1mover") - obj17 = ns.Object("B2mover") - obj18 = ns.Object("B3mover") - obj19 = ns.Object("B4mover") - obj20 = ns.Object("B5mover") - obj21 = ns.Object("B6mover") - obj22 = ns.Object("B7mover") - obj23 = ns.Object("B8mover") - obj24 = ns.Object("B9mover") - obj25 = ns.Object("B10mover") - obj26 = ns.Object("F1mover") - obj27 = ns.Object("F2mover") - obj28 = ns.Object("F3mover") - obj29 = ns.Object("F4mover") - obj30 = ns.Object("F5mover") - obj31 = ns.Object("F6mover") - obj32 = ns.Object("F7mover") - obj33 = ns.Object("F8mover") - obj34 = ns.Object("F9mover") - obj35 = ns.Object("F10mover") - wp56 = ns.Waypoint("B1way") - wp57 = ns.Waypoint("B2way") - wp58 = ns.Waypoint("B3way") - wp59 = ns.Waypoint("B4way") - wp60 = ns.Waypoint("B5way") - wp61 = ns.Waypoint("B6way") - wp62 = ns.Waypoint("B7way") - wp63 = ns.Waypoint("B8way") - wp64 = ns.Waypoint("B9way") - wp65 = ns.Waypoint("B10way") - wp66 = ns.Waypoint("B11way") - wp67 = ns.Waypoint("B12way") - wp68 = ns.Waypoint("B13way") - wp69 = ns.Waypoint("F1way") - wp70 = ns.Waypoint("F2way") - wp71 = ns.Waypoint("F3way") - wp72 = ns.Waypoint("F4way") - wp73 = ns.Waypoint("F5way") - wp74 = ns.Waypoint("F6way") - wp75 = ns.Waypoint("F7way") - wp76 = ns.Waypoint("F8way") - wp77 = ns.Waypoint("F9way") - wp78 = ns.Waypoint("F10way") - wp79 = ns.Waypoint("F11way") - wp80 = ns.Waypoint("F12way") - wp81 = ns.Waypoint("F13way") - ns.ObjectGroupOff(gvar233) - ns.LockDoor(obj283) - ns.LockDoor(obj284) -} -func gauntletGearsStop() { - ns.ObjectGroupOff(gvar14) -} -func openGauntlet() { - if flag6 { - goto LABEL1 - } - flag6 = true - ns.ObjectGroupOn(gvar14) - ns.FrameTimer(75, gauntletGearsStop) - ns.ObjectGroupOn(gvar13) - ns.Move(obj16, wp56) - ns.Move(obj17, wp57) - ns.Move(obj18, wp58) - ns.Move(obj19, wp59) - ns.Move(obj20, wp60) - ns.Move(obj21, wp61) - ns.Move(obj22, wp63) - ns.Move(obj23, wp64) - ns.Move(obj24, wp65) - ns.Move(obj25, wp66) - ns.Move(obj26, wp71) - ns.Move(obj27, wp72) - ns.Move(obj28, wp73) - ns.Move(obj29, wp74) - ns.Move(obj30, wp76) - ns.Move(obj31, wp77) - ns.Move(obj32, wp78) - ns.Move(obj33, wp79) - ns.Move(obj34, wp80) - ns.Move(obj35, wp81) - ns.FrameTimer(3, stoneGrinder) -LABEL1: - return -} -func closeGauntlet() { - if !flag6 { - goto LABEL1 - } - flag6 = false - ns.ObjectGroupOn(gvar14) - ns.FrameTimer(75, gauntletGearsStop) - ns.Move(obj16, wp58) - ns.Move(obj17, wp59) - ns.Move(obj18, wp60) - ns.Move(obj19, wp61) - ns.Move(obj20, wp62) - ns.Move(obj21, wp63) - ns.Move(obj22, wp65) - ns.Move(obj23, wp66) - ns.Move(obj24, wp67) - ns.Move(obj25, wp68) - ns.Move(obj26, wp69) - ns.Move(obj27, wp70) - ns.Move(obj28, wp71) - ns.Move(obj29, wp72) - ns.Move(obj30, wp74) - ns.Move(obj31, wp75) - ns.Move(obj32, wp76) - ns.Move(obj33, wp77) - ns.Move(obj34, wp78) - ns.Move(obj35, wp79) - ns.FrameTimer(10, stoneGrinder) -LABEL1: - return -} -func stoneGrinder() { - ns.MoveWaypoint(wp55, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.BoulderMove, wp55) - ns.AudioEvent(ns.SecretWallStoneOpen, wp69) - ns.AudioEvent(ns.BoulderMove, wp70) - ns.AudioEvent(ns.SecretWallStoneOpen, wp71) - ns.AudioEvent(ns.BoulderMove, wp72) - ns.AudioEvent(ns.SecretWallStoneOpen, wp73) - ns.AudioEvent(ns.BoulderMove, wp74) - ns.AudioEvent(ns.SecretWallStoneOpen, wp75) - ns.AudioEvent(ns.BoulderMove, wp76) - ns.AudioEvent(ns.SecretWallStoneOpen, wp77) - ns.AudioEvent(ns.BoulderMove, wp78) - ns.AudioEvent(ns.SecretWallStoneOpen, wp79) -} -func openingGauntletPiece() { - PlayGauntletMusic() - ns.WideScreen(true) - ns.Frozen(ns.GetHost(), true) - ns.LookAtObject(ns.GetHost(), obj42) - ns.CreatureGuard(obj42, 4982, 5036, ns.GetObjectX(obj44), ns.GetObjectY(obj44), 0) - ns.SetDialog(obj42, ns.NEXT, guardTalk2Start, guardTalk2End) - ns.StartDialog(obj42, ns.GetHost()) -} -func realHorrendousTalk1Start() { - ns.CreatureGuard(obj44, 4991, 4991, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - ns.TellStory(ns.DemonRecognize, "War02A.scr:RealTalk1Start") - ns.JournalEntry(ns.GetHost(), "War2Gauntlet", 2) -} -func realHorrendousTalk1End() { - ns.SetDialog(obj44, "FALSE", realHorrendousTalk2Start, realHorrendousTalk2End) - ns.CreatureGuard(obj44, 5071, 4979, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - ns.CreatureGuard(obj42, 4980, 5059, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - ns.CreatureGuard(obj7, 4922, 5014, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - ns.CreatureGuard(obj8, 5014, 4922, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - ns.WideScreen(false) - ns.Frozen(ns.GetHost(), false) -} -func realHorrendousTalk2Start() { - ns.TellStory(ns.DemonRecognize, "War02A.scr:RealTalk2Start") -} -func realHorrendousTalk2End() { - ns.SetDialog(obj44, "FALSE", realHorrendousTalk3Start, realHorrendousTalk3End) -} -func realHorrendousTalk3Start() { - ns.TellStory(ns.DemonRecognize, "War02A.scr:RealTalk3Start") -} -func realHorrendousTalk3End() { - ns.CancelDialog(obj44) -} -func guardTalk2Start() { - ns.TellStory(ns.SwordsmanRecognize, "War02A.scr:GuardSay1Start") -} -func guardTalk2End() { - ns.CancelDialog(obj42) - ns.SetDialog(obj44, "FALSE", realHorrendousTalk1Start, realHorrendousTalk1End) - ns.StartDialog(obj44, ns.GetHost()) -} -func horrendousTalk1Start() { - ns.TellStory(ns.DemonRecognize, "War02A.scr:HorrendousTalk1Start") -} -func horrendousTalk1End() { - ns.CancelDialog(obj43) - ns.LookAtObject(obj43, obj45) - ns.Frozen(ns.GetHost(), false) - ns.WideScreen(false) - ns.FrameTimer(5, chickenShirtTalk1Start) -} -func chickenShirtTalk1Start() { - ns.Chat(obj47, "War02A.scr:ChickenTalk1Start") - ns.FrameTimer(120, redShirtRunGauntlet) -} -func horrendousSay1() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - if !flag11 { - goto LABEL1 - } - ns.Music(0, 100) - ns.ObjectGroupOn(gvar15) - flag11 = false - ns.Frozen(ns.GetHost(), true) - ns.WideScreen(true) - ns.LockDoor(obj50) - ns.LockDoor(obj51) - ns.SetDialog(obj43, "FALSE", horrendousTalk1Start, horrendousTalk1End) - ns.StartDialog(obj43, ns.GetHost()) -LABEL1: - return -} -func redShirtRunGauntlet() { - ns.AudioEvent(ns.SwordsmanHurt, wp89) - ns.Chat(obj45, "War02A.scr:RedShirtRunGauntlet") - ns.FrameTimer(70, redShirtDies) -} -func redShirtDies() { - ns.AudioEvent(ns.BerserkerChargeInvoke, wp88) - ns.Wander(obj45) -} -func bonesFly() { - ns.AudioEvent(ns.HammerMissing, wp89) - ns.AudioEvent(ns.GolemHitting, wp89) - ns.Effect(ns.JIGGLE, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 10, 0) - ns.AudioEvent(ns.EmberDemonDie, wp88) - ns.AudioEvent(ns.SkeletonDie, wp89) - ivar4 = 0 - for { - if !(ivar4 < 40) { - goto LABEL1 - } - obj54[ivar4] = ns.CreateObject("ArmBone", wp88) - ns.PushObject(obj54[ivar4], -150, 1880, 3553) - ivar4 += 1 - } -LABEL1: - ivar4 = 0 - for { - if !(ivar4 < 40) { - goto LABEL3 - } - obj54[ivar4] = ns.CreateObject("LegBone", wp88) - ns.PushObject(obj54[ivar4], -150, 1880, 3553) - ivar4 += 1 - } -LABEL3: - ns.FrameTimer(30, chickenShirtRuns) - ns.FrameTimer(10, deadHead) -} -func deadHead() { - ns.Delete(obj45) - ns.AudioEvent("MechGolemHit", wp86) - ns.AudioEvent("SpikesDown", wp87) - ns.AudioEvent(ns.SkeletonDie, wp89) - ns.MoveObject(obj46, 1692, 3627) - ns.PushObject(obj46, -150, 1880, 3553) - ns.SetDialog(obj46, ns.NORMAL, deadTalk1Start, deadTalk1End) - ns.FrameTimer(40, chickenShirtRuns) -} -func deadTalk1Start() { - ns.TellStory("EmberDemonDies", "War02a:RedShirtDead") -} -func deadTalk1End() { - ns.CancelDialog(obj46) -} -func chickenShirtRuns() { - ns.Chat(obj47, "War02A.scr:ChickenShirtRuns") - chickenShirtCries1() - ns.CreatureGuard(obj47, 2033, 3833, 2035, 3905, 0) - ns.CancelDialog(obj47) - ns.SetDialog(obj47, ns.NORMAL, chickenTalk1Start, chickenTalk1End) - ns.FrameTimer(45, horrendousSay2) -} -func chickenShirtCries1() { - ns.AudioEvent(ns.UrchinRecognize, wp85) -} -func chickenTalk1Start() { - ns.TellStory(ns.UrchinRecognize, "War02A.scr:ChickenShirtRuns") -} -func chickenTalk1End() { - ns.SetDialog(obj47, ns.NORMAL, chickenTalk1Start, chickenTalk1End) -} -func horrendousSay2() { - ns.Music(29, 100) - ns.ObjectGroupOff(gvar15) - ns.Chat(obj43, "War02A.scr:HorrendousSay2") - ns.UnlockDoor(obj52) -} -func blockBash() { - ns.MoveWaypoint(wp55, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.HammerMissing, wp55) - ns.Effect(ns.JIGGLE, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 10, 0) -} -func blockSmash1() { - ns.ObjectOn(obj36) - ns.ObjectOn(obj37) -} -func blockSmash2() { - ns.ObjectOn(obj38) - ns.ObjectOn(obj39) -} -func blockSmash3() { - ns.ObjectOn(obj40) - ns.ObjectOn(obj41) -} -func releaseUrchins1() { - ns.WallGroupOpen(gvar98) - ns.LockDoor(obj93) - ns.LockDoor(obj94) - ns.ObjectOn(obj91) - ns.ObjectOn(obj92) - ns.ObjectOff(obj97) -} -func twoDeadUrchins() { - if !(ivar90 > 1) { - goto LABEL1 - } - ns.UnlockDoor(obj95) - ns.UnlockDoor(obj96) -LABEL1: - return -} -func flamesOn() { - if !flag139 { - goto LABEL1 - } - ivar4 = 0 - for { - if !(ivar4 < 8) { - goto LABEL2 - } - obj186[ivar4] = 0 - obj187[ivar4] = 0 - obj188[ivar4] = 0 - obj189[ivar4] = 0 - obj190[ivar4] = 0 - obj191[ivar4] = 0 - obj192[ivar4] = 0 - obj193[ivar4] = 0 - obj194[ivar4] = 0 - obj195[ivar4] = 0 - ivar4 += 1 - } -LABEL2: - flag139 = false - flag140 = true - flag141 = true - flag142 = true - flag143 = true - flag144 = true - flag145 = true - flag146 = true - flag147 = true - flag148 = true - flag149 = true - flameWalk() - ns.FrameTimer(4, flameWalk2) - ns.FrameTimer(8, flameWalk3) - ns.FrameTimer(12, flameWalk4) - ns.FrameTimer(16, flameWalk5) - ns.FrameTimer(20, flameWalk6) - ns.FrameTimer(24, flameWalk7) - ns.FrameTimer(28, flameWalk8) - ns.FrameTimer(32, flameWalk9) - ns.FrameTimer(36, flameWalk10) - ns.LockDoor(obj52) - ns.LockDoor(obj48) - ns.LockDoor(obj49) -LABEL1: - return -} -func flamesOff() { - flag140 = false - flag141 = false - flag142 = false - flag143 = false - flag144 = false - flag145 = false - flag146 = false - flag147 = false - flag148 = false - flag149 = false -} -func flameWalk() { - var v0 int - v0 = gvar166 - if v0 == gvar99 { - goto LABEL1 - } - if v0 == gvar100 { - goto LABEL2 - } - if v0 == gvar101 { - goto LABEL3 - } - if v0 == gvar102 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - ivar4 = 0 - for { - if !(ivar4 < 8) { - goto LABEL6 - } - ns.Delete(obj186[ivar4]) - obj186[ivar4] = 0 - ivar4 += 1 - } -LABEL6: - gvar166 = gvar100 - gvar176 = gvar99 - ivar156 = 60 - goto LABEL5 -LABEL2: - ivar4 = 0 - for { - if !(ivar4 < 8) { - goto LABEL8 - } - ns.Delete(obj186[ivar4]) - obj186[ivar4] = ns.CreateObject("SmallFlame", wp196[ivar4]) - ivar4 += 1 - } -LABEL8: - if gvar176 != gvar99 { - goto LABEL10 - } - gvar166 = gvar101 - ns.AudioEvent(ns.FireballCast, wp196[4]) - goto LABEL11 -LABEL10: - gvar166 = gvar99 -LABEL11: - gvar176 = gvar100 - ivar156 = 2 - goto LABEL5 -LABEL3: - ivar4 = 0 - for { - if !(ivar4 < 8) { - goto LABEL12 - } - ns.Delete(obj186[ivar4]) - obj186[ivar4] = ns.CreateObject("MediumFlame", wp196[ivar4]) - ivar4 += 1 - } -LABEL12: - if gvar176 != gvar100 { - goto LABEL14 - } - gvar166 = gvar102 - ns.AudioEvent(ns.DemonBreath, wp196[5]) - goto LABEL15 -LABEL14: - gvar166 = gvar100 - ns.AudioEvent(ns.FireExtinguish, wp196[4]) -LABEL15: - gvar176 = gvar101 - ivar156 = 2 - goto LABEL5 -LABEL4: - ivar4 = 0 - for { - if !(ivar4 < 8) { - goto LABEL16 - } - ns.Delete(obj186[ivar4]) - obj186[ivar4] = ns.CreateObject("Flame", wp196[ivar4]) - ivar4 += 1 - } -LABEL16: - gvar166 = gvar101 - gvar176 = gvar102 - ivar156 = 12 - goto LABEL5 -LABEL5: - if !flag140 { - goto LABEL18 - } - ns.FrameTimer(ivar156, flameWalk) - goto LABEL19 -LABEL18: - ivar154 = 0 - for { - if !(ivar154 < 8) { - goto LABEL19 - } - ns.Delete(obj186[ivar154]) - obj186[ivar154] = 0 - ivar154 += 1 - } -LABEL19: - return -} -func flameWalk2() { - var v0 int - v0 = gvar167 - if v0 == gvar103 { - goto LABEL1 - } - if v0 == gvar104 { - goto LABEL2 - } - if v0 == gvar105 { - goto LABEL3 - } - if v0 == gvar106 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - ivar150 = 0 - for { - if !(ivar150 < 8) { - goto LABEL6 - } - ns.Delete(obj187[ivar150]) - obj187[ivar150] = 0 - ivar150 += 1 - } -LABEL6: - gvar167 = gvar104 - gvar177 = gvar103 - ivar157 = 60 - goto LABEL5 -LABEL2: - ivar150 = 0 - for { - if !(ivar150 < 8) { - goto LABEL8 - } - ns.Delete(obj187[ivar150]) - obj187[ivar150] = ns.CreateObject("SmallFlame", wp197[ivar150]) - ivar150 += 1 - } -LABEL8: - if gvar177 != gvar103 { - goto LABEL10 - } - gvar167 = gvar105 - ns.AudioEvent(ns.FireballCast, wp197[4]) - goto LABEL11 -LABEL10: - gvar167 = gvar103 -LABEL11: - gvar177 = gvar104 - ivar157 = 2 - goto LABEL5 -LABEL3: - ivar150 = 0 - for { - if !(ivar150 < 8) { - goto LABEL12 - } - ns.Delete(obj187[ivar150]) - obj187[ivar150] = ns.CreateObject("MediumFlame", wp197[ivar150]) - ivar150 += 1 - } -LABEL12: - if gvar177 != gvar104 { - goto LABEL14 - } - gvar167 = gvar106 - ns.AudioEvent(ns.DemonBreath, wp197[5]) - goto LABEL15 -LABEL14: - gvar167 = gvar104 - ns.AudioEvent(ns.FireExtinguish, wp197[4]) -LABEL15: - gvar177 = gvar105 - ivar157 = 2 - goto LABEL5 -LABEL4: - ivar150 = 0 - for { - if !(ivar150 < 8) { - goto LABEL16 - } - ns.Delete(obj187[ivar150]) - obj187[ivar150] = ns.CreateObject("Flame", wp197[ivar150]) - ivar150 += 1 - } -LABEL16: - gvar167 = gvar105 - gvar177 = gvar106 - ivar157 = 12 - goto LABEL5 -LABEL5: - if !flag141 { - goto LABEL18 - } - ns.FrameTimer(ivar157, flameWalk2) - goto LABEL19 -LABEL18: - ivar154 = 0 - for { - if !(ivar154 < 8) { - goto LABEL19 - } - ns.Delete(obj187[ivar154]) - obj187[ivar154] = 0 - ivar154 += 1 - } -LABEL19: - return -} -func flameWalk3() { - var v0 int - v0 = gvar168 - if v0 == gvar107 { - goto LABEL1 - } - if v0 == gvar108 { - goto LABEL2 - } - if v0 == gvar109 { - goto LABEL3 - } - if v0 == gvar110 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - ivar151 = 0 - for { - if !(ivar151 < 8) { - goto LABEL6 - } - ns.Delete(obj188[ivar151]) - obj188[ivar151] = 0 - ivar151 += 1 - } -LABEL6: - gvar168 = gvar108 - gvar178 = gvar107 - ivar158 = 60 - goto LABEL5 -LABEL2: - ivar151 = 0 - for { - if !(ivar151 < 8) { - goto LABEL8 - } - ns.Delete(obj188[ivar151]) - obj188[ivar151] = ns.CreateObject("SmallFlame", wp198[ivar151]) - ivar151 += 1 - } -LABEL8: - if gvar178 != gvar107 { - goto LABEL10 - } - gvar168 = gvar109 - ns.AudioEvent(ns.FireballCast, wp198[4]) - goto LABEL11 -LABEL10: - gvar168 = gvar107 -LABEL11: - gvar178 = gvar108 - ivar158 = 2 - goto LABEL5 -LABEL3: - ivar151 = 0 - for { - if !(ivar151 < 8) { - goto LABEL12 - } - ns.Delete(obj188[ivar151]) - obj188[ivar151] = ns.CreateObject("MediumFlame", wp198[ivar151]) - ivar151 += 1 - } -LABEL12: - if gvar178 != gvar108 { - goto LABEL14 - } - gvar168 = gvar110 - ns.AudioEvent(ns.DemonBreath, wp198[5]) - goto LABEL15 -LABEL14: - gvar168 = gvar108 - ns.AudioEvent(ns.FireExtinguish, wp198[4]) -LABEL15: - gvar178 = gvar109 - ivar158 = 2 - goto LABEL5 -LABEL4: - ivar151 = 0 - for { - if !(ivar151 < 8) { - goto LABEL16 - } - ns.Delete(obj188[ivar151]) - obj188[ivar151] = ns.CreateObject("Flame", wp198[ivar151]) - ivar151 += 1 - } -LABEL16: - gvar168 = gvar109 - gvar178 = gvar110 - ivar158 = 12 - goto LABEL5 -LABEL5: - if !flag142 { - goto LABEL18 - } - ns.FrameTimer(ivar158, flameWalk3) - goto LABEL19 -LABEL18: - ivar154 = 0 - for { - if !(ivar154 < 8) { - goto LABEL19 - } - ns.Delete(obj188[ivar154]) - obj188[ivar154] = 0 - ivar154 += 1 - } -LABEL19: - return -} -func flameWalk4() { - var v0 int - v0 = gvar169 - if v0 == gvar111 { - goto LABEL1 - } - if v0 == gvar112 { - goto LABEL2 - } - if v0 == gvar113 { - goto LABEL3 - } - if v0 == gvar114 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - ivar152 = 0 - for { - if !(ivar152 < 8) { - goto LABEL6 - } - ns.Delete(obj189[ivar152]) - obj189[ivar152] = 0 - ivar152 += 1 - } -LABEL6: - gvar169 = gvar112 - gvar179 = gvar111 - ivar159 = 60 - goto LABEL5 -LABEL2: - ivar152 = 0 - for { - if !(ivar152 < 8) { - goto LABEL8 - } - ns.Delete(obj189[ivar152]) - obj189[ivar152] = ns.CreateObject("SmallFlame", wp199[ivar152]) - ivar152 += 1 - } -LABEL8: - if gvar179 != gvar111 { - goto LABEL10 - } - gvar169 = gvar113 - ns.AudioEvent(ns.FireballCast, wp199[4]) - goto LABEL11 -LABEL10: - gvar169 = gvar111 -LABEL11: - gvar179 = gvar112 - ivar159 = 2 - goto LABEL5 -LABEL3: - ivar152 = 0 - for { - if !(ivar152 < 8) { - goto LABEL12 - } - ns.Delete(obj189[ivar152]) - obj189[ivar152] = ns.CreateObject("MediumFlame", wp199[ivar152]) - ivar152 += 1 - } -LABEL12: - if gvar179 != gvar112 { - goto LABEL14 - } - gvar169 = gvar114 - ns.AudioEvent(ns.DemonBreath, wp199[5]) - goto LABEL15 -LABEL14: - gvar169 = gvar112 - ns.AudioEvent(ns.FireExtinguish, wp199[4]) -LABEL15: - gvar179 = gvar113 - ivar159 = 2 - goto LABEL5 -LABEL4: - ivar152 = 0 - for { - if !(ivar152 < 8) { - goto LABEL16 - } - ns.Delete(obj189[ivar152]) - obj189[ivar152] = ns.CreateObject("Flame", wp199[ivar152]) - ivar152 += 1 - } -LABEL16: - gvar169 = gvar113 - gvar179 = gvar114 - ivar159 = 12 - goto LABEL5 -LABEL5: - if !flag143 { - goto LABEL18 - } - ns.FrameTimer(ivar159, flameWalk4) - goto LABEL19 -LABEL18: - ivar154 = 0 - for { - if !(ivar154 < 8) { - goto LABEL19 - } - ns.Delete(obj189[ivar154]) - obj189[ivar154] = 0 - ivar154 += 1 - } -LABEL19: - return -} -func flameWalk5() { - var v0 int - v0 = gvar170 - if v0 == gvar115 { - goto LABEL1 - } - if v0 == gvar116 { - goto LABEL2 - } - if v0 == gvar117 { - goto LABEL3 - } - if v0 == gvar118 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - ivar153 = 0 - for { - if !(ivar153 < 8) { - goto LABEL6 - } - ns.Delete(obj190[ivar153]) - obj190[ivar153] = 0 - ivar153 += 1 - } -LABEL6: - gvar170 = gvar116 - gvar180 = gvar115 - ivar160 = 60 - goto LABEL5 -LABEL2: - ivar153 = 0 - for { - if !(ivar153 < 8) { - goto LABEL8 - } - ns.Delete(obj190[ivar153]) - obj190[ivar153] = ns.CreateObject("SmallFlame", wp200[ivar153]) - ivar153 += 1 - } -LABEL8: - if gvar180 != gvar115 { - goto LABEL10 - } - gvar170 = gvar117 - ns.AudioEvent(ns.FireballCast, wp200[4]) - goto LABEL11 -LABEL10: - gvar170 = gvar115 -LABEL11: - gvar180 = gvar116 - ivar160 = 2 - goto LABEL5 -LABEL3: - ivar153 = 0 - for { - if !(ivar153 < 8) { - goto LABEL12 - } - ns.Delete(obj190[ivar153]) - obj190[ivar153] = ns.CreateObject("MediumFlame", wp200[ivar153]) - ivar153 += 1 - } -LABEL12: - if gvar180 != gvar116 { - goto LABEL14 - } - gvar170 = gvar118 - ns.AudioEvent(ns.DemonBreath, wp200[5]) - goto LABEL15 -LABEL14: - gvar170 = gvar116 - ns.AudioEvent(ns.FireExtinguish, wp200[4]) -LABEL15: - gvar180 = gvar117 - ivar160 = 2 - goto LABEL5 -LABEL4: - ivar153 = 0 - for { - if !(ivar153 < 8) { - goto LABEL16 - } - ns.Delete(obj190[ivar153]) - obj190[ivar153] = ns.CreateObject("Flame", wp200[ivar153]) - ivar153 += 1 - } -LABEL16: - gvar170 = gvar117 - gvar180 = gvar118 - ivar160 = 12 - goto LABEL5 -LABEL5: - if !flag144 { - goto LABEL18 - } - ns.FrameTimer(ivar160, flameWalk5) - goto LABEL19 -LABEL18: - ivar154 = 0 - for { - if !(ivar154 < 8) { - goto LABEL19 - } - ns.Delete(obj190[ivar154]) - obj190[ivar154] = 0 - ivar154 += 1 - } -LABEL19: - return -} -func flameWalk6() { - var v0 int - v0 = gvar171 - if v0 == gvar119 { - goto LABEL1 - } - if v0 == gvar120 { - goto LABEL2 - } - if v0 == gvar121 { - goto LABEL3 - } - if v0 == gvar122 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - ivar154 = 0 - for { - if !(ivar154 < 8) { - goto LABEL6 - } - ns.Delete(obj191[ivar154]) - obj191[ivar154] = 0 - ivar154 += 1 - } -LABEL6: - gvar171 = gvar120 - gvar181 = gvar119 - ivar161 = 60 - goto LABEL5 -LABEL2: - ivar154 = 0 - for { - if !(ivar154 < 8) { - goto LABEL8 - } - ns.Delete(obj191[ivar154]) - obj191[ivar154] = ns.CreateObject("SmallFlame", wp201[ivar154]) - ivar154 += 1 - } -LABEL8: - if gvar181 != gvar119 { - goto LABEL10 - } - gvar171 = gvar121 - ns.AudioEvent(ns.FireballCast, wp201[4]) - goto LABEL11 -LABEL10: - gvar171 = gvar119 -LABEL11: - gvar181 = gvar120 - ivar161 = 2 - goto LABEL5 -LABEL3: - ivar154 = 0 - for { - if !(ivar154 < 8) { - goto LABEL12 - } - ns.Delete(obj191[ivar154]) - obj191[ivar154] = ns.CreateObject("MediumFlame", wp201[ivar154]) - ivar154 += 1 - } -LABEL12: - if gvar181 != gvar120 { - goto LABEL14 - } - gvar171 = gvar122 - ns.AudioEvent(ns.DemonBreath, wp201[5]) - goto LABEL15 -LABEL14: - gvar171 = gvar120 - ns.AudioEvent(ns.FireExtinguish, wp201[4]) -LABEL15: - gvar181 = gvar121 - ivar161 = 2 - goto LABEL5 -LABEL4: - ivar154 = 0 - for { - if !(ivar154 < 8) { - goto LABEL16 - } - ns.Delete(obj191[ivar154]) - obj191[ivar154] = ns.CreateObject("Flame", wp201[ivar154]) - ivar154 += 1 - } -LABEL16: - gvar171 = gvar121 - gvar181 = gvar122 - ivar161 = 12 - goto LABEL5 -LABEL5: - if !flag145 { - goto LABEL18 - } - ns.FrameTimer(ivar161, flameWalk6) - goto LABEL19 -LABEL18: - ivar154 = 0 - for { - if !(ivar154 < 8) { - goto LABEL19 - } - ns.Delete(obj191[ivar154]) - obj191[ivar154] = 0 - ivar154 += 1 - } -LABEL19: - return -} -func flameWalk7() { - var v0 int - v0 = gvar172 - if v0 == gvar123 { - goto LABEL1 - } - if v0 == gvar124 { - goto LABEL2 - } - if v0 == gvar125 { - goto LABEL3 - } - if v0 == gvar126 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - ivar154 = 0 - for { - if !(ivar154 < 8) { - goto LABEL6 - } - ns.Delete(obj192[ivar154]) - obj192[ivar154] = 0 - ivar154 += 1 - } -LABEL6: - gvar172 = gvar124 - gvar182 = gvar123 - ivar162 = 60 - goto LABEL5 -LABEL2: - ivar154 = 0 - for { - if !(ivar154 < 8) { - goto LABEL8 - } - ns.Delete(obj192[ivar154]) - obj192[ivar154] = ns.CreateObject("SmallFlame", wp202[ivar154]) - ivar154 += 1 - } -LABEL8: - if gvar182 != gvar123 { - goto LABEL10 - } - gvar172 = gvar125 - ns.AudioEvent(ns.FireballCast, wp202[4]) - goto LABEL11 -LABEL10: - gvar172 = gvar123 -LABEL11: - gvar182 = gvar124 - ivar162 = 2 - goto LABEL5 -LABEL3: - ivar154 = 0 - for { - if !(ivar154 < 8) { - goto LABEL12 - } - ns.Delete(obj192[ivar154]) - obj192[ivar154] = ns.CreateObject("MediumFlame", wp202[ivar154]) - ivar154 += 1 - } -LABEL12: - if gvar182 != gvar124 { - goto LABEL14 - } - gvar172 = gvar126 - ns.AudioEvent(ns.DemonBreath, wp202[5]) - goto LABEL15 -LABEL14: - gvar172 = gvar124 - ns.AudioEvent(ns.FireExtinguish, wp202[4]) -LABEL15: - gvar182 = gvar125 - ivar162 = 2 - goto LABEL5 -LABEL4: - ivar154 = 0 - for { - if !(ivar154 < 8) { - goto LABEL16 - } - ns.Delete(obj192[ivar154]) - obj192[ivar154] = ns.CreateObject("Flame", wp202[ivar154]) - ivar154 += 1 - } -LABEL16: - gvar172 = gvar125 - gvar182 = gvar126 - ivar162 = 12 - goto LABEL5 -LABEL5: - if !flag146 { - goto LABEL18 - } - ns.FrameTimer(ivar162, flameWalk7) - goto LABEL19 -LABEL18: - ivar154 = 0 - for { - if !(ivar154 < 8) { - goto LABEL19 - } - ns.Delete(obj192[ivar154]) - obj192[ivar154] = 0 - ivar154 += 1 - } -LABEL19: - return -} -func flameWalk8() { - var v0 int - v0 = gvar173 - if v0 == gvar127 { - goto LABEL1 - } - if v0 == gvar128 { - goto LABEL2 - } - if v0 == gvar129 { - goto LABEL3 - } - if v0 == gvar130 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - ivar155 = 0 - for { - if !(ivar155 < 8) { - goto LABEL6 - } - ns.Delete(obj193[ivar155]) - obj193[ivar155] = 0 - ivar155 += 1 - } -LABEL6: - gvar173 = gvar128 - gvar183 = gvar127 - ivar163 = 60 - goto LABEL5 -LABEL2: - ivar155 = 0 - for { - if !(ivar155 < 8) { - goto LABEL8 - } - ns.Delete(obj193[ivar155]) - obj193[ivar155] = ns.CreateObject("SmallFlame", wp203[ivar155]) - ivar155 += 1 - } -LABEL8: - if gvar183 != gvar127 { - goto LABEL10 - } - gvar173 = gvar129 - ns.AudioEvent(ns.FireballCast, wp203[4]) - goto LABEL11 -LABEL10: - gvar173 = gvar127 -LABEL11: - gvar183 = gvar128 - ivar163 = 2 - goto LABEL5 -LABEL3: - ivar155 = 0 - for { - if !(ivar155 < 8) { - goto LABEL12 - } - ns.Delete(obj193[ivar155]) - obj193[ivar155] = ns.CreateObject("MediumFlame", wp203[ivar155]) - ivar155 += 1 - } -LABEL12: - if gvar183 != gvar128 { - goto LABEL14 - } - gvar173 = gvar130 - ns.AudioEvent(ns.DemonBreath, wp203[5]) - goto LABEL15 -LABEL14: - gvar173 = gvar128 - ns.AudioEvent(ns.FireExtinguish, wp203[4]) -LABEL15: - gvar183 = gvar129 - ivar163 = 2 - goto LABEL5 -LABEL4: - ivar155 = 0 - for { - if !(ivar155 < 8) { - goto LABEL16 - } - ns.Delete(obj193[ivar155]) - obj193[ivar155] = ns.CreateObject("Flame", wp203[ivar155]) - ivar155 += 1 - } -LABEL16: - gvar173 = gvar129 - gvar183 = gvar130 - ivar163 = 12 - goto LABEL5 -LABEL5: - if !flag147 { - goto LABEL18 - } - ns.FrameTimer(ivar163, flameWalk8) - goto LABEL19 -LABEL18: - ivar154 = 0 - for { - if !(ivar154 < 8) { - goto LABEL19 - } - ns.Delete(obj193[ivar154]) - obj193[ivar154] = 0 - ivar154 += 1 - } -LABEL19: - return -} -func flameWalk9() { - var v0 int - v0 = gvar174 - if v0 == gvar131 { - goto LABEL1 - } - if v0 == gvar132 { - goto LABEL2 - } - if v0 == gvar133 { - goto LABEL3 - } - if v0 == gvar134 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - ivar154 = 0 - for { - if !(ivar154 < 8) { - goto LABEL6 - } - ns.Delete(obj194[ivar154]) - obj194[ivar154] = 0 - ivar154 += 1 - } -LABEL6: - gvar174 = gvar132 - gvar184 = gvar131 - ivar164 = 60 - goto LABEL5 -LABEL2: - ivar154 = 0 - for { - if !(ivar154 < 8) { - goto LABEL8 - } - ns.Delete(obj194[ivar154]) - obj194[ivar154] = ns.CreateObject("SmallFlame", wp204[ivar154]) - ivar154 += 1 - } -LABEL8: - if gvar184 != gvar131 { - goto LABEL10 - } - gvar174 = gvar133 - ns.AudioEvent(ns.FireballCast, wp203[4]) - goto LABEL11 -LABEL10: - gvar174 = gvar131 -LABEL11: - gvar184 = gvar132 - ivar164 = 2 - goto LABEL5 -LABEL3: - ivar154 = 0 - for { - if !(ivar154 < 8) { - goto LABEL12 - } - ns.Delete(obj194[ivar154]) - obj194[ivar154] = ns.CreateObject("MediumFlame", wp204[ivar154]) - ivar154 += 1 - } -LABEL12: - if gvar184 != gvar132 { - goto LABEL14 - } - gvar174 = gvar134 - ns.AudioEvent(ns.DemonBreath, wp204[5]) - goto LABEL15 -LABEL14: - gvar174 = gvar132 - ns.AudioEvent(ns.FireExtinguish, wp204[4]) -LABEL15: - gvar184 = gvar133 - ivar164 = 2 - goto LABEL5 -LABEL4: - ivar154 = 0 - for { - if !(ivar154 < 8) { - goto LABEL16 - } - ns.Delete(obj194[ivar154]) - obj194[ivar154] = ns.CreateObject("Flame", wp204[ivar154]) - ivar154 += 1 - } -LABEL16: - gvar174 = gvar133 - gvar184 = gvar134 - ivar164 = 12 - goto LABEL5 -LABEL5: - if !flag148 { - goto LABEL18 - } - ns.FrameTimer(ivar164, flameWalk9) - goto LABEL19 -LABEL18: - ivar154 = 0 - for { - if !(ivar154 < 8) { - goto LABEL19 - } - ns.Delete(obj194[ivar154]) - obj194[ivar154] = 0 - ivar154 += 1 - } -LABEL19: - return -} -func flameWalk10() { - var v0 int - v0 = gvar175 - if v0 == gvar135 { - goto LABEL1 - } - if v0 == gvar136 { - goto LABEL2 - } - if v0 == gvar137 { - goto LABEL3 - } - if v0 == gvar138 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - ivar154 = 0 - for { - if !(ivar154 < 8) { - goto LABEL6 - } - ns.Delete(obj195[ivar154]) - obj195[ivar154] = 0 - ivar154 += 1 - } -LABEL6: - gvar175 = gvar136 - gvar185 = gvar135 - ivar165 = 60 - goto LABEL5 -LABEL2: - ivar154 = 0 - for { - if !(ivar154 < 8) { - goto LABEL8 - } - ns.Delete(obj195[ivar154]) - obj195[ivar154] = ns.CreateObject("SmallFlame", wp205[ivar154]) - ivar154 += 1 - } -LABEL8: - if gvar185 != gvar135 { - goto LABEL10 - } - gvar175 = gvar137 - ns.AudioEvent(ns.FireballCast, wp205[4]) - goto LABEL11 -LABEL10: - gvar175 = gvar135 -LABEL11: - gvar185 = gvar136 - ivar165 = 2 - goto LABEL5 -LABEL3: - ivar154 = 0 - for { - if !(ivar154 < 8) { - goto LABEL12 - } - ns.Delete(obj195[ivar154]) - obj195[ivar154] = ns.CreateObject("MediumFlame", wp205[ivar154]) - ivar154 += 1 - } -LABEL12: - if gvar185 != gvar136 { - goto LABEL14 - } - gvar175 = gvar138 - ns.AudioEvent(ns.DemonBreath, wp205[5]) - goto LABEL15 -LABEL14: - gvar175 = gvar136 - ns.AudioEvent(ns.FireExtinguish, wp205[4]) -LABEL15: - gvar185 = gvar137 - ivar165 = 2 - goto LABEL5 -LABEL4: - ivar154 = 0 - for { - if !(ivar154 < 8) { - goto LABEL16 - } - ns.Delete(obj195[ivar154]) - obj195[ivar154] = ns.CreateObject("Flame", wp205[ivar154]) - ivar154 += 1 - } -LABEL16: - gvar175 = gvar137 - gvar185 = gvar138 - ivar165 = 12 - goto LABEL5 -LABEL5: - if !flag149 { - goto LABEL18 - } - ns.FrameTimer(ivar165, flameWalk10) - goto LABEL19 -LABEL18: - ivar154 = 0 - for { - if !(ivar154 < 8) { - goto LABEL19 - } - ns.Delete(obj195[ivar154]) - obj195[ivar154] = 0 - ivar154 += 1 - } -LABEL19: - return -} -func initFlameGrates() { - ivar4 = 0 - for { - if !(ivar4 < 8) { - goto LABEL1 - } - wp196[ivar4] = ns.Waypoint("FlameWay1-" + strconv.Itoa(ivar4+1)) - wp197[ivar4] = ns.Waypoint("FlameWay2-" + strconv.Itoa(ivar4+1)) - wp198[ivar4] = ns.Waypoint("FlameWay3-" + strconv.Itoa(ivar4+1)) - wp199[ivar4] = ns.Waypoint("FlameWay4-" + strconv.Itoa(ivar4+1)) - wp200[ivar4] = ns.Waypoint("FlameWay5-" + strconv.Itoa(ivar4+1)) - wp201[ivar4] = ns.Waypoint("FlameWay6-" + strconv.Itoa(ivar4+1)) - wp202[ivar4] = ns.Waypoint("FlameWay7-" + strconv.Itoa(ivar4+1)) - wp203[ivar4] = ns.Waypoint("FlameWay8-" + strconv.Itoa(ivar4+1)) - wp204[ivar4] = ns.Waypoint("FlameWay9-" + strconv.Itoa(ivar4+1)) - wp205[ivar4] = ns.Waypoint("FlameWay10-" + strconv.Itoa(ivar4+1)) - ivar4 += 1 - } -LABEL1: - return -} -func releaseUrchins2() { - ns.WallGroupOpen(gvar214) - ns.LockDoor(obj209) - ns.LockDoor(obj210) - ns.ObjectOn(obj207) - ns.ObjectOn(obj208) - ns.ObjectOff(obj213) -} -func urchins2Die() { - ivar206 += 1 - threeDeadUrchins() -} -func threeDeadUrchins() { - if !(ivar206 > 1) { - goto LABEL1 - } - ns.UnlockDoor(obj211) - ns.UnlockDoor(obj212) -LABEL1: - return -} -func skullHallOn1() { - if !flag215 { - goto LABEL1 - } - ns.CastSpellLocationLocation(ns.SPELL_FIREBALL, 2323, 2047, 2794, 2518) - ns.FrameTimer(75, skullHallOn1) -LABEL1: - return -} -func skullHallOff1() { - flag215 = false -} -func releaseArena3() { - ns.Music(4, 100) - ns.WallGroupOpen(gvar228) - ns.ObjectOn(obj224) - ns.ObjectOn(obj225) - ns.ObjectOn(obj226) - ns.LockDoor(obj220) - ns.LockDoor(obj221) - ns.ObjectOff(obj227) -} -func arena3Die() { - ivar219 += 1 - arena3DeathToll() -} -func arena3DeathToll() { - if !(ivar219 > 2) { - goto LABEL1 - } - ns.UnlockDoor(obj222) - ns.UnlockDoor(obj223) -LABEL1: - return -} -func lockArena4() { - ns.LockDoor(obj230) - ns.LockDoor(obj231) -} -func loadArena4() { - ns.ObjectGroupOn(gvar233) - lockArena4() - ns.ObjectOff(obj232) - ns.FrameTimer(10, arena4SpikesUp) - ns.FrameTimer(40, disableArena4Elevators) - ns.FrameTimer(90, openArena4Cages) -} -func disableArena4Elevators() { - ns.ObjectGroupOff(gvar233) -} -func openArena4Cages() { - ns.WallGroupOpen(gvar235) -} -func arena4Die() { - ivar229 += 1 - arena4DeathToll() - ns.FrameTimer(90, arena4SpikesDown) -} -func arena4DeathToll() { - if !(ivar229 > 0) { - goto LABEL1 - } - ns.Music(29, 100) - ns.UnlockDoor(obj231) - ns.UnlockDoor(obj240) -LABEL1: - return -} -func arena4SpikesUp() { - ns.ObjectGroupOn(gvar234) - ns.MoveWaypoint(wp55, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.FloorSpikesUp, wp55) -} -func arena4SpikesDown() { - ns.ObjectGroupOff(gvar234) - ns.MoveWaypoint(wp55, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.FloorSpikesDown, wp55) -} -func enableZipperOfDeath() { - flag238 = true - cascade1() - zipperNoise() - zipperNoise2() -} -func zipperNoise() { - if !flag238 { - goto LABEL1 - } - ns.AudioEvent(ns.SecretWallStoneOpen, wp262) - ns.AudioEvent(ns.BoulderRoll, wp264) - ns.AudioEvent(ns.BoulderRoll, wp265) - ns.AudioEvent(ns.SecretWallStoneOpen, wp266) - ns.AudioEvent(ns.EarthRumbleMajor, wp268) - ns.AudioEvent(ns.EarthRumbleMajor, wp270) - ns.AudioEvent(ns.EarthRumbleMajor, wp272) - ns.AudioEvent(ns.EarthRumbleMajor, wp274) - ns.AudioEvent(ns.SecretWallStoneOpen, wp276) - ns.AudioEvent(ns.BoulderRoll, wp278) - ns.AudioEvent(ns.BoulderRoll, wp279) - ns.AudioEvent(ns.SecretWallStoneOpen, wp280) - ns.AudioEvent(ns.SecretWallStoneOpen, wp281) - ns.FrameTimer(30, zipperNoise) -LABEL1: - return -} -func zipperNoise2() { - if !flag238 { - goto LABEL1 - } - ns.AudioEvent(ns.MechGolemPowerUp, wp270) - ns.AudioEvent(ns.MechGolemPowerUp, wp271) - ns.FrameTimer(5, zipperNoise2) -LABEL1: - return -} -func cascade1() { - ns.ObjectOn(obj261) - ns.ObjectOn(obj241) - ns.ObjectOn(obj242) - ns.FrameTimer(4, cascade2) -} -func cascade2() { - ns.ObjectOn(obj243) - ns.ObjectOn(obj244) - ns.FrameTimer(4, cascade3) -} -func cascade3() { - ns.ObjectOn(obj245) - ns.ObjectOn(obj246) - ns.FrameTimer(4, cascade4) -} -func cascade4() { - ns.ObjectOn(obj247) - ns.ObjectOn(obj248) - ns.FrameTimer(4, cascade5) -} -func cascade5() { - ns.ObjectOn(obj249) - ns.ObjectOn(obj250) - ns.FrameTimer(4, cascade6) -} -func cascade6() { - ns.ObjectOn(obj251) - ns.ObjectOn(obj252) - ns.FrameTimer(4, cascade7) -} -func cascade7() { - ns.ObjectOn(obj253) - ns.ObjectOn(obj254) - ns.FrameTimer(4, cascade8) -} -func cascade8() { - ns.ObjectOn(obj255) - ns.ObjectOn(obj256) - ns.FrameTimer(4, cascade9) -} -func cascade9() { - ns.ObjectOn(obj257) - ns.ObjectOn(obj258) - ns.FrameTimer(4, cascade10) -} -func cascade10() { - ns.ObjectOn(obj259) - ns.ObjectOn(obj260) -} -func endGauntletTalk1Start() { - ns.TellStory(ns.SwordsmanRecognize, "War02A.scr:HorrendousTalk3Start") -} -func endGauntletTalk1End() { - ns.CancelDialog(obj43) - ns.SetQuestStatus(1, "EnteredGauntlet") - ns.MoveWaypoint(wp55, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.FlagCapture, wp55) - ns.JournalEdit(ns.GetHost(), "War2Gauntlet", 4) - ns.Blind() - ns.FrameTimer(60, backToDunMir) -} -func backToDunMir() { - ns.WideScreen(false) - ns.Frozen(ns.GetHost(), false) - ns.MoveObject(ns.GetHost(), 5323, 5301) -} -func MapInitialize() { - ns.NoWallSound(false) - ns.Music(0, 100) - obj7 = ns.Object("GG1") - obj8 = ns.Object("GG2") - gvar9 = ns.ObjectGroup("FireKnights") - wp10 = ns.Waypoint("WarCryWay") - ns.FrameTimer(3, initGauntletDoor) - obj42 = ns.Object("F2Dant") - ns.StoryPic(obj42, "WarriorPic") - obj43 = ns.Object("F2Sargent") - ns.StoryPic(obj43, "Warrior3Pic") - obj44 = ns.Object("Horrendous") - ns.StoryPic(obj44, "HorrendousPic") - obj45 = ns.Object("RedShirt") - obj46 = ns.Object("F2RedShirt") - ns.StoryPic(obj46, "SkullPic") - ns.SetOwner(ns.GetHost(), obj46) - obj47 = ns.Object("F2ChickenShirt") - ns.StoryPic(obj47, "Townsman2Pic") - obj53 = ns.Object("GearRoom") - obj48 = ns.Object("FromAcademy1") - obj49 = ns.Object("FromAcademy2") - obj50 = ns.Object("ToGauntlet1") - obj51 = ns.Object("ToGauntlet2") - obj52 = ns.Object("GauntletEntrance") - obj36 = ns.Object("GSMover1") - obj37 = ns.Object("GSMover2") - obj38 = ns.Object("GSMover3") - obj39 = ns.Object("GSMover4") - obj40 = ns.Object("GSMover5") - obj41 = ns.Object("GSMover6") - wp55 = ns.Waypoint("PlayerAudio") - wp85 = ns.Waypoint("GearWay") - wp86 = ns.Waypoint("StereoRWay") - wp87 = ns.Waypoint("StereoLWay") - wp88 = ns.Waypoint("BoneCruncherWay") - wp89 = ns.Waypoint("ChickenRunsWay") - wp73 = ns.Waypoint("F5way") - wp75 = ns.Waypoint("F7way") - wp77 = ns.Waypoint("F9way") - wp82 = ns.Waypoint("GSWay1") - wp83 = ns.Waypoint("GSWay3") - wp84 = ns.Waypoint("GSWay5") - gvar15 = ns.ObjectGroup("GauntletEntrySounds") - ns.ObjectGroupOff(gvar15) - ns.LockDoor(obj53) - ns.LockDoor(obj48) - ns.LockDoor(obj49) - ns.LockDoor(obj52) - obj91 = ns.Object("Spider1a") - obj92 = ns.Object("Spider1b") - ns.ObjectOff(obj91) - ns.ObjectOff(obj92) - obj93 = ns.Object("Arena1Door1a") - obj94 = ns.Object("Arena1Door1b") - obj95 = ns.Object("Arena1Door2a") - obj96 = ns.Object("Arena1Door2b") - obj97 = ns.Object("Arena1Switch") - ns.LockDoor(obj95) - ns.LockDoor(obj96) - gvar98 = ns.WallGroup("Arena1Walls") - initFlameGrates() - obj207 = ns.Object("Urchin2a") - obj208 = ns.Object("Urchin2b") - ns.ObjectOff(obj207) - ns.ObjectOff(obj208) - obj209 = ns.Object("Arena2Door1a") - obj210 = ns.Object("Arena2Door1b") - obj211 = ns.Object("Arena2Door2a") - obj212 = ns.Object("Arena2Door2b") - obj213 = ns.Object("Arena2Switch") - ns.LockDoor(obj211) - ns.LockDoor(obj212) - gvar214 = ns.WallGroup("Arena2Walls") - obj220 = ns.Object("Arena3Door1a") - obj221 = ns.Object("Arena3Door1b") - obj222 = ns.Object("Arena3Door2a") - obj223 = ns.Object("Arena3Door2b") - obj224 = ns.Object("Arena3Urchin1") - obj225 = ns.Object("Arena3Urchin2") - obj226 = ns.Object("Arena3Urchin3") - obj227 = ns.Object("Arena3Switch") - ns.ObjectOff(obj224) - ns.ObjectOff(obj225) - ns.ObjectOff(obj226) - ns.LockDoor(obj222) - ns.LockDoor(obj223) - gvar228 = ns.WallGroup("Arena3Walls") - obj230 = ns.Object("Arena4Door1") - obj231 = ns.Object("Arena4Door2") - obj232 = ns.Object("Arena4Switch") - gvar233 = ns.ObjectGroup("Arena4Elevators") - gvar234 = ns.ObjectGroup("Arena4Spikes") - ns.ObjectGroupOff(gvar234) - gvar235 = ns.WallGroup("Arena4Cages") - wp236 = ns.Waypoint("UrchinSoundsWay") - gvar239 = ns.ObjectGroup("ZipperOfDeath") - ns.ObjectGroupOff(gvar239) - obj240 = ns.Object("ZipperDoor") - ns.LockDoor(obj240) - obj241 = ns.Object("am1") - obj242 = ns.Object("am2") - obj243 = ns.Object("am3") - obj244 = ns.Object("am4") - obj245 = ns.Object("am5") - obj246 = ns.Object("am6") - obj247 = ns.Object("am7") - obj248 = ns.Object("am8") - obj249 = ns.Object("am9") - obj250 = ns.Object("am10") - obj251 = ns.Object("am11") - obj252 = ns.Object("am12") - obj253 = ns.Object("am13") - obj254 = ns.Object("am14") - obj255 = ns.Object("am15") - obj256 = ns.Object("am16") - obj257 = ns.Object("am17") - obj258 = ns.Object("am18") - obj259 = ns.Object("am19") - obj260 = ns.Object("am20") - obj261 = ns.Object("asbm1") - wp262 = ns.Waypoint("arsw1") - wp263 = ns.Waypoint("arsw2") - wp264 = ns.Waypoint("arsw3") - wp265 = ns.Waypoint("arsw4") - wp266 = ns.Waypoint("arsw5") - wp267 = ns.Waypoint("arsw6") - wp268 = ns.Waypoint("arsw7") - wp269 = ns.Waypoint("arsw8") - wp270 = ns.Waypoint("arsw9") - wp271 = ns.Waypoint("arsw10") - wp272 = ns.Waypoint("arsw11") - wp273 = ns.Waypoint("arsw12") - wp274 = ns.Waypoint("arsw13") - wp275 = ns.Waypoint("arsw14") - wp276 = ns.Waypoint("arsw15") - wp277 = ns.Waypoint("arsw16") - wp278 = ns.Waypoint("arsw17") - wp279 = ns.Waypoint("arsw18") - wp280 = ns.Waypoint("arsw19") - wp281 = ns.Waypoint("arsw20") - obj283 = ns.Object("FromGauntlet1") - obj284 = ns.Object("FromGauntlet2") - gvar285 = ns.ObjectGroup("FinishGauntletTriggers") - ns.StartupScreen(2) -} -func PlayerDeath() { - ns.DeathScreen(2) -} -func openGauntSecret() { - ns.NoWallSound(false) - ns.WallOpen(ns.Wall(119, 191)) - ns.WallOpen(ns.Wall(120, 192)) -} -func urchins1Die() { - ivar90 += 1 - twoDeadUrchins() -} -func fireGrateReward() { - ns.GiveXp(ns.GetHost(), 100) -} -func fireballHallReward() { - ns.GiveXp(ns.GetHost(), 250) -} -func unlockExitDoor() { - ns.Music(22, 100) - ns.UnlockDoor(obj283) - ns.UnlockDoor(obj284) - flag282 = true - ns.GiveXp(ns.GetHost(), 2500) - ns.MoveObject(obj43, 5071, 4894) - ns.CreatureGuard(obj43, 5071, 4894, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - ns.MoveObject(obj44, 4335, 3151) - ns.MoveObject(obj42, 4335, 3151) -} -func finishGauntlet() { - if !flag282 { - goto LABEL1 - } - flag282 = false - ns.ObjectGroupOff(gvar285) - ns.LookAtObject(obj43, ns.GetHost()) - ns.WideScreen(true) - ns.Frozen(ns.GetHost(), true) - ns.SetDialog(obj43, "FALSE", endGauntletTalk1Start, endGauntletTalk1End) - ns.StartDialog(obj43, ns.GetHost()) -LABEL1: - return -} -func OnEvent(typ string) { - switch typ { - case "MapInitialize": - MapInitialize() - case "PlayerDeath": - PlayerDeath() - } -} diff --git a/examples/war02b/dummy_test.go b/examples/war02b/dummy_test.go deleted file mode 100644 index fcb5500..0000000 --- a/examples/war02b/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package war02b - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/war02b/war02b.go b/examples/war02b/war02b.go deleted file mode 100644 index 4e219a7..0000000 --- a/examples/war02b/war02b.go +++ /dev/null @@ -1,515 +0,0 @@ -package war02b - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - wp4 ns.WaypointID - ivar5 int - obj6 ns.ObjectID - obj7 ns.ObjectID - obj8 ns.ObjectID - obj9 ns.ObjectID - obj10 ns.ObjectID - obj11 ns.ObjectID - obj12 ns.ObjectID - obj13 ns.ObjectID - obj14 ns.ObjectID - obj15 ns.ObjectID - wp16 ns.WaypointID - wp17 ns.WaypointID - wp18 ns.WaypointID - wp19 ns.WaypointID - wp20 ns.WaypointID - wp21 ns.WaypointID - wp22 ns.WaypointID - wp23 ns.WaypointID - wp24 ns.WaypointID - wp25 ns.WaypointID - wp26 ns.WaypointID - wp27 ns.WaypointID - wp28 ns.WaypointID - wp29 ns.WaypointID - wp30 ns.WaypointID - wp31 ns.WaypointID - wp32 ns.WaypointID - gvar33 int - gvar34 int - gvar35 int - gvar36 int - gvar37 int - obj38 ns.ObjectID - wp39 ns.WaypointID - flag40 bool - gvar41 int - obj42 ns.ObjectID - obj43 ns.ObjectID - obj44 ns.ObjectID - obj45 ns.ObjectID - gvar46 ns.ObjectGroupID - gvar47 ns.ObjectGroupID - gvar48 ns.ObjectGroupID - wp49 ns.WaypointID - wp50 ns.WaypointID - wp51 ns.WaypointID - wp52 ns.WaypointID - wp53 ns.WaypointID - flag54 bool - flag55 bool - flag56 bool - flag57 bool - flag58 bool - obj59 ns.ObjectID - obj60 ns.ObjectID - obj61 ns.ObjectID - obj62 ns.ObjectID - obj63 ns.ObjectID - obj64 ns.ObjectID - obj65 ns.ObjectID - obj66 ns.ObjectID - obj67 ns.ObjectID - obj68 ns.ObjectID - obj69 ns.ObjectID - obj70 ns.ObjectID - obj71 ns.ObjectID - obj72 ns.ObjectID - obj73 ns.ObjectID - wp74 ns.WaypointID - wp75 ns.WaypointID - wp76 ns.WaypointID - wp77 ns.WaypointID - wp78 ns.WaypointID - wp79 ns.WaypointID - wp80 ns.WaypointID - wp81 ns.WaypointID - wp82 ns.WaypointID - wp83 ns.WaypointID - wp84 ns.WaypointID - wp85 ns.WaypointID - wp86 ns.WaypointID - wp87 ns.WaypointID - wp88 ns.WaypointID - wp89 ns.WaypointID - wp90 ns.WaypointID - wp91 ns.WaypointID -) - -func init() { - ivar5 = 60 - gvar33 = 0 - gvar34 = 1 - gvar35 = 2 - gvar36 = 3 - gvar37 = 4 - flag40 = false - gvar41 = gvar33 - flag54 = false - flag55 = false - flag56 = false - flag57 = false - flag58 = false -} -func PlayerDeath() { - ns.DeathScreen(2) -} -func MapShutdown() { - ns.SetQuestStatus(2, "War02A:EnteredGauntlet") -} -func BlockSecret() { - ns.MoveWaypoint(wp4, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretFound, wp4) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 100) -} -func OpenBlockSecretExit() { - ns.NoWallSound(false) - ns.WallOpen(ns.Wall(77, 157)) -} -func ResetSquishTrapSEG1() { - ns.Move(obj8, wp25) - ns.Move(obj9, wp26) - ns.Move(obj10, wp27) - ns.Move(obj11, wp28) - ns.Move(obj12, wp29) - ns.Move(obj13, wp30) - ns.Move(obj14, wp31) - ns.Move(obj15, wp32) - ns.AudioEvent(ns.BoulderMove, wp16) - ns.FrameTimer(20, ResetSquishTrapSEG2) -} -func ResetSquishTrapSEG2() { - ns.ObjectOn(obj6) - ns.ObjectOn(obj7) -} -func InitializeSquishBlocks() { - obj6 = ns.Object("SquishTrigger") - obj7 = ns.Object("BoomTrigger") - obj8 = ns.Object("SquishBlock01") - obj9 = ns.Object("SquishBlock02") - obj10 = ns.Object("SquishBlock03") - obj11 = ns.Object("SquishBlock04") - obj12 = ns.Object("SquishBlock05") - obj13 = ns.Object("SquishBlock06") - obj14 = ns.Object("SquishBlock07") - obj15 = ns.Object("SquishBlock08") - wp16 = ns.Waypoint("SquishAudioOrigin") - wp17 = ns.Waypoint("SquishWP01") - wp18 = ns.Waypoint("SquishWP02") - wp19 = ns.Waypoint("SquishWP03") - wp20 = ns.Waypoint("SquishWP04") - wp21 = ns.Waypoint("SquishWP05") - wp22 = ns.Waypoint("SquishWP06") - wp23 = ns.Waypoint("SquishWP07") - wp24 = ns.Waypoint("SquishWP08") - wp25 = ns.Waypoint("SquishWPHome01") - wp26 = ns.Waypoint("SquishWPHome02") - wp27 = ns.Waypoint("SquishWPHome03") - wp28 = ns.Waypoint("SquishWPHome04") - wp29 = ns.Waypoint("SquishWPHome05") - wp30 = ns.Waypoint("SquishWPHome06") - wp31 = ns.Waypoint("SquishWPHome07") - wp32 = ns.Waypoint("SquishWPHome08") -} -func Squish() { - ns.ObjectOff(obj6) - ns.Move(obj8, wp17) - ns.Move(obj9, wp18) - ns.Move(obj10, wp19) - ns.Move(obj11, wp20) - ns.Move(obj12, wp21) - ns.Move(obj13, wp22) - ns.Move(obj14, wp23) - ns.Move(obj15, wp24) - ns.AudioEvent(ns.BoulderMove, wp16) - ns.FrameTimer(ivar5, ResetSquishTrapSEG1) -} -func SquishBoom() { - if ns.IsCaller(obj10) { - goto LABEL1 - } - return -LABEL1: - ns.ObjectOff(obj7) - ns.AudioEvent(ns.HammerMissing, wp16) - ns.Effect(ns.JIGGLE, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 10, 0) -} -func GearhartDialogStart() { - var v0 int - ns.LookAtObject(obj38, ns.GetHost()) - ns.ObjectGroupOff(gvar48) - v0 = gvar41 - if v0 == gvar33 { - goto LABEL1 - } - if v0 == gvar34 { - goto LABEL2 - } - if v0 == gvar35 { - goto LABEL3 - } - if v0 == gvar36 { - goto LABEL4 - } - if v0 == gvar37 { - goto LABEL5 - } - goto LABEL6 -LABEL1: - ns.DestroyEveryChat() - ns.TellStory(ns.SwordsmanHurt, "War02a:GearhartTalk02") - goto LABEL6 -LABEL2: - ns.DestroyEveryChat() - ns.TellStory(ns.SwordsmanHurt, "War02a:GearhartTalk03") - goto LABEL6 -LABEL3: - ns.DestroyEveryChat() - ns.TellStory(ns.SwordsmanHurt, "War02a:GearhartTalk04") - goto LABEL6 -LABEL4: - ns.DestroyEveryChat() - ns.TellStory(ns.SwordsmanHurt, "War02a:GearhartTalk05") - goto LABEL6 -LABEL5: - ns.DestroyEveryChat() - ns.TellStory(ns.SwordsmanHurt, "War02a:GearhartTalk06") - goto LABEL6 -LABEL6: - return -} -func GearhartDialogEnd() { - var v0 int - ns.ObjectGroupOn(gvar48) - v0 = gvar41 - if v0 == gvar33 { - goto LABEL1 - } - if v0 == gvar34 { - goto LABEL2 - } - if v0 == gvar35 { - goto LABEL3 - } - if v0 == gvar36 { - goto LABEL4 - } - if v0 == gvar37 { - goto LABEL5 - } - goto LABEL6 -LABEL1: - ns.CancelDialog(obj38) - ns.CreatureGuard(obj38, ns.GetWaypointX(wp50), ns.GetWaypointY(wp50), ns.GetWaypointX(wp52), ns.GetWaypointY(wp52), 0) - ns.Pickup(ns.GetHost(), ns.Object("SilverKey01")) - ns.PrintToAll("GeneralPrint:GainedKey") - ns.AudioEvent(ns.KeyDrop, wp39) - gvar41 = gvar34 - goto LABEL6 -LABEL2: - flag55 = true - ns.CreatureGuard(obj38, ns.GetWaypointX(wp53), ns.GetWaypointY(wp53), ns.GetWaypointX(wp52), ns.GetWaypointY(wp52), 0) - gvar41 = gvar35 - goto LABEL6 -LABEL3: - goto LABEL6 -LABEL4: - goto LABEL6 -LABEL5: - flag56 = true - ns.CreatureFollow(obj38, ns.GetHost()) - ns.CancelDialog(obj38) - ns.ObjectOn(obj45) - goto LABEL6 -LABEL6: - return -} -func GearRoomMusic() { - ns.Music(26, 100) -} -func InitializeSwitchPuzzle() { - obj42 = ns.Object("ExitElevator") - obj43 = ns.Object("PlayerSwitch") - obj44 = ns.Object("GearhartSwitch") - obj45 = ns.Object("ExitTrigger") - gvar46 = ns.ObjectGroup("ElevatorSwitches") - gvar47 = ns.ObjectGroup("ElevatorGears") - wp49 = ns.Waypoint("FenceWP") - wp50 = ns.Waypoint("GateWP") - wp51 = ns.Waypoint("GearRoomEntranceWP") - wp52 = ns.Waypoint("PlayerSwitchWP") - wp53 = ns.Waypoint("GearhartSwitchWP") - wp39 = ns.Waypoint("SilverKeyWay") -} -func SetGearhartDialog() { - if !ns.IsCaller(obj38) { - goto LABEL1 - } - ns.StoryPic(obj38, "GearhartPic") - ns.SetDialog(obj38, "FALSE", GearhartDialogStart, GearhartDialogEnd) - ns.ObjectOff(ns.GetTrigger()) -LABEL1: - return -} -func GearhartCallForHelp() { - if !flag54 { - goto LABEL1 - } - return -LABEL1: - flag54 = true - ns.Chat(obj38, "War02a:GearhartTalk01") - ns.Move(obj38, wp49) - ns.StoryPic(obj38, "GearhartPic") - ns.SetDialog(obj38, "FALSE", GearhartDialogStart, GearhartDialogEnd) -} -func CheckForBothButtons() { - if flag55 { - goto LABEL1 - } - return -LABEL1: - if !(flag58 && flag57) { - goto LABEL2 - } - ns.Music(16, 100) - ns.ObjectOn(obj42) - ns.ObjectGroupOn(gvar47) - ns.ObjectGroupOff(gvar46) - gvar41 = gvar37 - ns.StartDialog(obj38, ns.GetHost()) -LABEL2: - return -} -func PlayerSwitchActivate() { - flag58 = true - CheckForBothButtons() -} -func PlayerSwitchDeactivate() { - flag58 = false -} -func GearhartSwitchActivate() { - if !ns.IsCaller(obj38) { - goto LABEL1 - } - ns.Chat(obj38, "War02a:GearhartTalk05") -LABEL1: - flag57 = true - CheckForBothButtons() -} -func GearhartSwitchDeactivate() { - flag57 = false -} -func LeaveGearRoom() { - if !ns.IsCaller(obj38) { - goto LABEL1 - } - ns.CreatureGuard(obj38, ns.GetWaypointX(wp51), ns.GetWaypointY(wp51), 0, 0, 0) -LABEL1: - return -} -func EnterGearRoom() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - if !flag56 { - goto LABEL1 - } - ns.CreatureFollow(obj38, ns.GetHost()) -LABEL1: - return -} -func gotoExit() { - if flag40 { - goto LABEL1 - } - ns.MoveObject(ns.GetHost(), 494, 610) -LABEL1: - return -} -func ExitSewers() { - ns.Frozen(ns.GetHost(), true) - ns.Blind() - ns.FrameTimer(60, gotoExit) -} -func Exit() { - flag40 = true - ns.Frozen(ns.GetHost(), false) -} -func sweepsOn123() { - if ns.IsObjectOn(obj59) { - goto LABEL1 - } - ns.ObjectOn(obj59) -LABEL1: - ns.MoveWaypoint(wp4, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.BoulderMove, wp4) - ns.ObjectOn(obj60) - ns.ObjectOn(obj61) - ns.ObjectOn(obj62) - ns.Move(obj60, wp75) - ns.Move(obj61, wp77) - ns.Move(obj62, wp79) -} -func sweepsOn456() { - ns.MoveWaypoint(wp4, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.BoulderMove, wp4) - ns.ObjectOn(obj63) - ns.ObjectOn(obj64) - ns.ObjectOn(obj65) - ns.Move(obj63, wp80) - ns.Move(obj64, wp82) - ns.Move(obj65, wp84) -} -func sweepsOn789() { - ns.MoveWaypoint(wp4, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.BoulderMove, wp4) - ns.ObjectOn(obj66) - ns.ObjectOn(obj67) - ns.ObjectOn(obj68) - ns.Move(obj66, wp87) - ns.Move(obj67, wp89) - ns.Move(obj68, wp91) -} -func sweepsOn10thru14() { - ns.ObjectOn(obj69) - ns.ObjectOn(obj70) - ns.ObjectOn(obj71) - ns.ObjectOn(obj72) - ns.ObjectOn(obj73) -} -func sweepsOff123() { - ns.Move(obj60, wp74) - ns.Move(obj61, wp76) - ns.Move(obj62, wp78) -} -func sweepsOff456() { - ns.Move(obj63, wp81) - ns.Move(obj64, wp83) - ns.Move(obj65, wp85) -} -func sweepsOff789() { - ns.Move(obj66, wp86) - ns.Move(obj67, wp88) - ns.Move(obj68, wp90) -} -func sweepsOff10thru14() { - ns.ObjectOff(obj69) - ns.ObjectOff(obj70) - ns.ObjectOff(obj71) - ns.ObjectOff(obj72) - ns.ObjectOff(obj73) -} -func MapInitialize() { - obj38 = ns.Object("F2Gearhart") - obj60 = ns.Object("SweeperMover1") - obj61 = ns.Object("SweeperMover2") - obj62 = ns.Object("SweeperMover3") - obj63 = ns.Object("SweeperMover4") - obj64 = ns.Object("SweeperMover5") - obj65 = ns.Object("SweeperMover6") - obj66 = ns.Object("SweeperMover7") - obj67 = ns.Object("SweeperMover8") - obj68 = ns.Object("SweeperMover9") - obj69 = ns.Object("SweeperMover10") - obj70 = ns.Object("SweeperMover11") - obj71 = ns.Object("SweeperMover12") - obj72 = ns.Object("SweeperMover13") - obj73 = ns.Object("SweeperMover14") - gvar48 = ns.ObjectGroup("EveryMonsterOnMap") - wp4 = ns.Waypoint("AudioOrigin") - wp74 = ns.Waypoint("SweeperWay1a") - wp75 = ns.Waypoint("SweeperWay1b") - wp76 = ns.Waypoint("SweeperWay2a") - wp77 = ns.Waypoint("SweeperWay2b") - wp78 = ns.Waypoint("SweeperWay3a") - wp79 = ns.Waypoint("SweeperWay3b") - wp80 = ns.Waypoint("SweeperWay4") - wp81 = ns.Waypoint("SweeperWay4a") - wp82 = ns.Waypoint("SweeperWay5") - wp83 = ns.Waypoint("SweeperWay5a") - wp84 = ns.Waypoint("SweeperWay6") - wp85 = ns.Waypoint("SweeperWay6a") - wp86 = ns.Waypoint("SweeperWay7") - wp87 = ns.Waypoint("SweeperWay7a") - wp88 = ns.Waypoint("SweeperWay8") - wp89 = ns.Waypoint("SweeperWay8a") - wp90 = ns.Waypoint("SweeperWay9") - wp91 = ns.Waypoint("SweeperWay9a") - obj59 = ns.Object("Spider01") - InitializeSwitchPuzzle() - InitializeSquishBlocks() -} -func MapEntry() { - ns.UnBlind() -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapShutdown": - MapShutdown() - case "MapInitialize": - MapInitialize() - case "MapEntry": - MapEntry() - } -} diff --git a/examples/war03a/dummy_test.go b/examples/war03a/dummy_test.go deleted file mode 100644 index 6675986..0000000 --- a/examples/war03a/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package war03a - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/war03a/war03a.go b/examples/war03a/war03a.go deleted file mode 100644 index ac0a5cd..0000000 --- a/examples/war03a/war03a.go +++ /dev/null @@ -1,437 +0,0 @@ -package war03a - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 ns.ObjectID - obj5 ns.ObjectID - obj6 ns.ObjectID - obj7 ns.ObjectID - obj8 ns.ObjectID - obj9 ns.ObjectID - obj10 ns.ObjectID - obj11 ns.ObjectID - obj12 ns.ObjectID - obj13 ns.ObjectID - obj14 ns.ObjectID - obj15 ns.ObjectID - obj16 ns.ObjectID - obj17 ns.ObjectID - obj18 ns.ObjectID - obj19 ns.ObjectID - obj20 ns.ObjectID - obj21 ns.ObjectID - gvar22 ns.ObjectGroupID - obj23 ns.ObjectID - obj24 ns.ObjectID - obj25 ns.ObjectID - obj26 ns.ObjectID - gvar27 ns.WallGroupID - gvar28 int - gvar29 int - gvar30 int - gvar31 int - gvar32 int - gvar33 int - gvar34 int - gvar35 int - gvar36 int - gvar37 int - gvar38 int - gvar39 int - gvar40 ns.ObjectGroupID - gvar41 ns.ObjectGroupID - gvar42 ns.ObjectGroupID - obj43 ns.ObjectID - obj44 ns.ObjectID - wp45 ns.WaypointID - wp46 ns.WaypointID - wp47 ns.WaypointID - flag48 bool -) - -func init() { - gvar28 = 0 - gvar29 = 1 - gvar30 = gvar28 - gvar31 = 0 - gvar32 = 1 - gvar33 = gvar31 - gvar34 = 0 - gvar35 = 1 - gvar36 = gvar34 - gvar37 = 0 - gvar38 = 1 - gvar39 = gvar37 - flag48 = true -} -func PlayerDeath() { - ns.DeathScreen(3) -} -func BanditAttack() { - ns.Chat(obj26, "War01A.scr:Bully1") -} -func HorrendousTalkStart() { - var v0 int - v0 = gvar30 - if v0 == gvar28 { - goto LABEL1 - } - if v0 == gvar29 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.TellStory(ns.SwordsmanHurt, "War03a:HorrendousSpeech") - gvar30 = gvar29 - goto LABEL3 -LABEL2: - ns.TellStory(ns.SwordsmanHurt, "War03a:HorrendousEnd") - goto LABEL3 -LABEL3: - return -} -func HorrendousTalkEnd() { - ns.JournalEntry(ns.GetHost(), "War03aIxQuest", 2) -} -func DunMirGuard1TalkStart() { - ns.LookAtObject(obj8, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War03a:DunMirGuard1") -} -func DunMirGuard1TalkEnd() { -} -func DunMirGuard2TalkStart() { - ns.LookAtObject(obj9, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War03a:DunMirGuard2") -} -func DunMirGuard2TalkEnd() { -} -func DunMirGuard3TalkStart() { - ns.TellStory(ns.SwordsmanHurt, "War03a:DunMirGuard3") -} -func DunMirGuard3TalkEnd() { -} -func MineGuardTalkStart() { - ns.LookAtObject(obj15, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War03a:MineGuard") -} -func MineGuardTalkEnd() { -} -func GalavaGuard1TalkStart() { - var v0 int - ns.LookAtObject(obj11, ns.GetHost()) - v0 = gvar33 - if v0 == gvar31 { - goto LABEL1 - } - if v0 == gvar32 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.TellStory(ns.SwordsmanHurt, "War03a:GalavaGuardWarn") - goto LABEL3 -LABEL2: - ns.TellStory(ns.SwordsmanHurt, "War03a:GalavaGuardEnd") - goto LABEL3 -LABEL3: - return -} -func GalavaGuard1TalkEnd() { - var v0 int - v0 = gvar33 - if v0 == gvar31 { - goto LABEL1 - } - if v0 == gvar32 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - goto LABEL3 -LABEL2: - goto LABEL3 -LABEL3: - return -} -func GalavaGuard2TalkStart() { - var v0 int - ns.LookAtObject(obj12, ns.GetHost()) - v0 = gvar33 - if v0 == gvar31 { - goto LABEL1 - } - if v0 == gvar32 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.TellStory(ns.SwordsmanHurt, "War03a:GalavaGuardEnd") - goto LABEL3 -LABEL2: - ns.TellStory(ns.SwordsmanHurt, "War03a:GalavaGuardEnd") - goto LABEL3 -LABEL3: - return -} -func GalavaGuard2TalkEnd() { - var v0 int - v0 = gvar33 - if v0 == gvar31 { - goto LABEL1 - } - if v0 == gvar32 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - goto LABEL3 -LABEL2: - goto LABEL3 -LABEL3: - return -} -func IxGuard1TalkStart() { - var v0 int - ns.LookAtObject(obj18, ns.GetHost()) - v0 = gvar36 - if v0 == gvar34 { - goto LABEL1 - } - if v0 == gvar35 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.TellStory(ns.SwordsmanHurt, "War03a:IxGuard1Intro") - goto LABEL3 -LABEL2: - ns.TellStory(ns.SwordsmanHurt, "War03a:IxGuard1End") - goto LABEL3 -LABEL3: - return -} -func IxGuard1TalkEnd() { - var v0 int - v0 = gvar36 - if v0 == gvar34 { - goto LABEL1 - } - if v0 == gvar35 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.UnlockDoor(obj20) - ns.UnlockDoor(obj21) - gvar36 = gvar35 - gvar39 = gvar38 - goto LABEL3 -LABEL2: - goto LABEL3 -LABEL3: - return -} -func IxGuard2TalkStart() { - var v0 int - ns.LookAtObject(obj19, ns.GetHost()) - v0 = gvar39 - if v0 == gvar37 { - goto LABEL1 - } - if v0 == gvar38 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.TellStory(ns.SwordsmanHurt, "War03a:IxGuard2Intro") - goto LABEL3 -LABEL2: - ns.TellStory(ns.SwordsmanHurt, "War03a:IxGuard2End") - goto LABEL3 -LABEL3: - return -} -func IxGuard2TalkEnd() { - var v0 int - v0 = gvar39 - if v0 == gvar37 { - goto LABEL1 - } - if v0 == gvar38 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.UnlockDoor(obj20) - ns.UnlockDoor(obj21) - gvar39 = gvar38 - gvar36 = gvar35 - goto LABEL3 -LABEL2: - goto LABEL3 -LABEL3: - return -} -func PlayWanderMusic() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Music(22, 100) -LABEL1: - return -} -func MapEntry() { - PlayWanderMusic() - ns.UnBlind() - if ns.GetQuestStatus("War03b:QuestComplete") != 1 { - goto LABEL1 - } - ns.CancelDialog(obj18) - ns.CancelDialog(obj19) -LABEL1: - return -} -func MapInitialize() { - obj4 = ns.Object("MissionTrig") - obj8 = ns.Object("Lance") - obj9 = ns.Object("Kenneth") - obj10 = ns.Object("Brigadin") - obj11 = ns.Object("Rastur") - obj12 = ns.Object("Kirik") - obj13 = ns.Object("GalavaGate1") - obj14 = ns.Object("GalavaGate2") - ns.LockDoor(obj13) - ns.LockDoor(obj14) - obj15 = ns.Object("Millard") - obj16 = ns.Object("MineDoor1") - obj17 = ns.Object("MineDoor2") - ns.LockDoor(obj16) - ns.LockDoor(obj17) - gvar22 = ns.ObjectGroup("GuardGroup") - obj18 = ns.Object("Janero") - obj19 = ns.Object("Horst") - obj20 = ns.Object("IxGate01") - obj21 = ns.Object("IxGate02") - ns.LockDoor(obj20) - ns.LockDoor(obj21) - obj23 = ns.Object("Loproc") - obj24 = ns.Object("BiffordByzanti") - obj25 = ns.Object("GarretByzanti") - ns.GroupSetOwner(ns.GetHost(), gvar22) - ns.SetOwner(ns.GetHost(), obj15) - ns.SetOwner(ns.GetHost(), obj10) - gvar40 = ns.ObjectGroup("WaspGroup1") - gvar41 = ns.ObjectGroup("WaspGroup2") - obj43 = ns.Object("Wolf01") - gvar42 = ns.ObjectGroup("FishGroup") - ns.GroupWander(gvar40) - ns.GroupWander(gvar41) - ns.Wander(obj43) - ns.GroupWander(gvar42) - obj44 = ns.Object("Osborn") - ns.Damage(obj44, 0, 200, 2) - ns.StoryPic(obj5, "HorrendousPic") - ns.SetDialog(obj5, ns.NORMAL, HorrendousTalkStart, HorrendousTalkEnd) - ns.StoryPic(obj8, "Warrior2Pic") - ns.SetDialog(obj8, ns.NORMAL, DunMirGuard1TalkStart, DunMirGuard1TalkEnd) - ns.StoryPic(obj9, "Warrior3Pic") - ns.SetDialog(obj9, ns.NORMAL, DunMirGuard2TalkStart, DunMirGuard2TalkEnd) - ns.StoryPic(obj10, "Warrior4Pic") - ns.SetDialog(obj10, ns.NORMAL, DunMirGuard3TalkStart, DunMirGuard3TalkEnd) - ns.StoryPic(obj11, "WizardGuard1Pic") - ns.SetDialog(obj11, ns.NORMAL, GalavaGuard1TalkStart, GalavaGuard1TalkEnd) - ns.StoryPic(obj12, "WizardGuard2Pic") - ns.SetDialog(obj12, ns.NORMAL, GalavaGuard2TalkStart, GalavaGuard2TalkEnd) - ns.StoryPic(obj15, "MalePic2") - ns.SetDialog(obj15, ns.NORMAL, MineGuardTalkStart, MineGuardTalkEnd) - ns.StoryPic(obj18, "IxGuard1Pic") - ns.SetDialog(obj18, ns.NORMAL, IxGuard1TalkStart, IxGuard1TalkEnd) - ns.StoryPic(obj19, "IxGuard2Pic") - ns.SetDialog(obj19, ns.NORMAL, IxGuard2TalkStart, IxGuard2TalkEnd) - obj6 = ns.Object("DMDoorL") - obj7 = ns.Object("DMDoorR") - ns.LockDoor(obj6) - ns.LockDoor(obj7) - obj26 = ns.Object("Bandit01") - gvar27 = ns.WallGroup("RogueSecretWallGroup") - wp45 = ns.Waypoint("Secret01WP") - wp46 = ns.Waypoint("Secret01aWP") - wp47 = ns.Waypoint("Secret02WP") -} -func SetHorrendous() { - ns.ObjectOff(obj5) - ns.MoveObject(obj5, 5569, 5071) -} -func ClearIxGuardDialog() { - ns.CancelDialog(obj18) - ns.CancelDialog(obj19) -} -func OpenRogueSecretWallGroup() { - ns.WallGroupOpen(gvar27) -} -func WolfIdle() { - ns.CreatureIdle(obj43) -} -func WaspIdle() { - ns.CreatureGroupIdle(gvar41) -} -func MonsterGoHome() { - r1 := ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) - if !r1 { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func PlaySubMusic() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Music(20, 100) -LABEL1: - return -} -func PlayActionMusic() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Music(5, 100) -LABEL1: - return -} -func RobberRecognize() { - if !(ns.IsCaller(ns.GetHost()) && flag48) { - goto LABEL1 - } - flag48 = false - ns.Attack(ns.GetTrigger(), ns.GetHost()) - ns.Chat(ns.GetTrigger(), "War01A.scr:Bully1") -LABEL1: - return -} -func RobberDie() { - ns.DestroyEveryChat() -} -func Secret01() { - ns.AudioEvent(ns.SecretFound, wp45) - ns.AudioEvent(ns.SecretFound, wp46) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 50) -} -func Secret02() { - ns.AudioEvent(ns.SecretFound, wp47) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 100) -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapEntry": - MapEntry() - case "MapInitialize": - MapInitialize() - } -} diff --git a/examples/war03b/dummy_test.go b/examples/war03b/dummy_test.go deleted file mode 100644 index e567376..0000000 --- a/examples/war03b/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package war03b - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/war03b/war03b.go b/examples/war03b/war03b.go deleted file mode 100644 index 1a2fedb..0000000 --- a/examples/war03b/war03b.go +++ /dev/null @@ -1,1059 +0,0 @@ -package war03b - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - gvar4 int - gvar5 int - gvar6 int - obj7 ns.ObjectID - obj8 ns.ObjectID - ivar9 int - gvar10 int - ivar11 int - gvar12 int - obj13 [2]ns.ObjectID - gvar14 ns.ObjectGroupID - obj15 ns.ObjectID - obj16 ns.ObjectID - wp17 ns.WaypointID - obj18 ns.ObjectID - obj19 ns.ObjectID - gvar20 ns.ObjectID - gvar21 ns.ObjectID - gvar22 ns.ObjectGroupID - obj23 ns.ObjectID - obj24 ns.ObjectID - obj25 ns.ObjectID - obj26 ns.ObjectID - obj27 ns.ObjectID - obj28 ns.ObjectID - obj29 ns.ObjectID - obj30 ns.ObjectID - obj31 ns.ObjectID - obj32 ns.ObjectID - obj33 ns.ObjectID - obj34 ns.ObjectID - obj35 ns.ObjectID - obj36 ns.ObjectID - obj37 ns.ObjectID - obj38 ns.ObjectID - obj39 ns.ObjectID - obj40 ns.ObjectID - obj41 ns.ObjectID - obj42 ns.ObjectID - gvar43 ns.ObjectGroupID - gvar44 ns.ObjectGroupID - gvar45 ns.ObjectGroupID - gvar46 ns.ObjectGroupID - obj47 ns.ObjectID - obj48 ns.ObjectID - obj49 ns.ObjectID - obj50 ns.ObjectID - obj51 ns.ObjectID - obj52 ns.ObjectID - obj53 ns.ObjectID - obj54 ns.ObjectID - wp55 ns.WaypointID - wp56 ns.WaypointID - wp57 ns.WaypointID - wp58 ns.WaypointID - gvar59 int - wp60 ns.WaypointID - gvar61 int - gvar62 int - gvar63 int - gvar64 int - gvar65 int - gvar66 int - gvar67 int - gvar68 int - gvar69 int - gvar70 int - gvar71 int - gvar72 int - gvar73 int - gvar74 int - gvar75 int - gvar76 int - gvar77 int - gvar78 int - gvar79 int - gvar80 int - gvar81 int - gvar82 int - gvar83 int - gvar84 int - gvar85 int - gvar86 int - gvar87 int - gvar88 int - gvar89 int - gvar90 int - gvar91 int - gvar92 int - gvar93 int - gvar94 int - gvar95 int - gvar96 int - gvar97 int - obj98 ns.ObjectID - gvar99 ns.WallGroupID - wp100 ns.WaypointID - wp101 ns.WaypointID - wp102 ns.WaypointID -) - -func init() { - gvar4 = 0 - gvar5 = 1 - gvar6 = 2 - ivar9 = 200 - gvar10 = 2 - ivar11 = 0 - gvar12 = gvar4 - gvar61 = 0 - gvar62 = 1 - gvar63 = 2 - gvar64 = 3 - gvar65 = gvar61 - gvar66 = 0 - gvar67 = 1 - gvar68 = 2 - gvar69 = 3 - gvar70 = gvar66 - gvar71 = 0 - gvar72 = 1 - gvar73 = gvar71 - gvar74 = 0 - gvar75 = 1 - gvar76 = gvar74 - gvar77 = 0 - gvar78 = 1 - gvar79 = gvar77 - gvar80 = 0 - gvar81 = 1 - gvar82 = gvar80 - gvar83 = 0 - gvar84 = 1 - gvar85 = gvar83 - gvar86 = 0 - gvar87 = 1 - gvar88 = gvar86 - gvar89 = 0 - gvar90 = 1 - gvar91 = 2 - gvar92 = 3 - gvar93 = gvar89 - gvar94 = 0 - gvar95 = 1 - gvar96 = 2 - gvar97 = gvar94 -} -func PlayerDeath() { - ns.DeathScreen(3) -} -func ReleaseCharmedWolf(a1 int) { - var v0 int - v0 = a1 - if v0 == 0 { - goto LABEL1 - } - if v0 == 1 { - goto LABEL2 - } - if v0 == 2 { - goto LABEL3 - } - if v0 == 3 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - ns.WallOpen(ns.Wall(128, 106)) - ns.CreatureFollow(obj13[a1], ns.GetHost()) - ns.PauseObject(obj13[a1], 30) - ns.AggressionLevel(obj13[a1], 0.83) - ns.MakeFriendly(obj13[a1]) - ns.BecomePet(obj13[a1]) - goto LABEL5 -LABEL2: - ns.WallOpen(ns.Wall(130, 104)) - ns.CreatureFollow(obj13[a1], ns.GetHost()) - ns.PauseObject(obj13[a1], 30) - ns.AggressionLevel(obj13[a1], 0.83) - ns.MakeFriendly(obj13[a1]) - ns.BecomePet(obj13[a1]) - goto LABEL5 -LABEL3: - ns.WallOpen(ns.Wall(55, 109)) - ns.EnchantOff(obj13[a1], ns.ENCHANT_INVULNERABLE) - ns.CreatureFollow(obj13[a1], ns.GetHost()) - ns.AggressionLevel(obj13[a1], 0.83) - ns.MakeFriendly(obj13[a1]) - ns.BecomePet(obj13[a1]) - goto LABEL5 -LABEL4: - ns.WallOpen(ns.Wall(53, 107)) - ns.EnchantOff(obj13[a1], ns.ENCHANT_INVULNERABLE) - ns.CreatureFollow(obj13[a1], ns.GetHost()) - ns.AggressionLevel(obj13[a1], 0.83) - ns.MakeFriendly(obj13[a1]) - ns.BecomePet(obj13[a1]) - goto LABEL5 -LABEL5: - return -} -func HenrickTalkStart() { - var v0 int - v0 = gvar12 - if v0 == gvar4 { - goto LABEL1 - } - if v0 == gvar5 { - goto LABEL2 - } - if v0 == gvar6 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - ns.LookAtObject(obj7, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War08b:HenrickSalesPitchA") - goto LABEL4 -LABEL2: - ns.LookAtObject(obj7, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War08b:HenrickSalesPitchB") - goto LABEL4 -LABEL3: - ns.LookAtObject(obj7, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War08b:HenrickNoMoreWolves") - goto LABEL4 -LABEL4: - return -} -func HenrickTalkEnd() { - var ( - v0 int - v1 int - v2 int - v3 int - v4 int - v5 int - v6 int - v7 int - ) - v0 = 0 - v1 = 0 - v2 = 1 - v3 = 2 - v4 = 0 - v7 = gvar12 - if v7 == gvar4 { - goto LABEL1 - } - if v7 == gvar5 { - goto LABEL2 - } - if v7 == gvar6 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - v1 = ns.GetAnswer(obj7) - v5 = v1 - if v5 == v2 { - goto LABEL5 - } - if v5 == v3 { - goto LABEL6 - } - if v5 == v4 { - goto LABEL7 - } - goto LABEL8 -LABEL5: - v0 = ns.GetGold(ns.GetHost()) - if !(v0 < ivar9) { - goto LABEL9 - } - ns.SetDialog(obj7, ns.NORMAL, NullDialogStart, ResetHenrickDialogChoice) - ns.TellStory(ns.SwordsmanHurt, "War08b:HenrickNotEnoughGold") - goto LABEL10 -LABEL9: - ns.ChangeGold(ns.GetHost(), -ivar9) - gvar12 = gvar5 - ReleaseCharmedWolf(ivar11) - ivar11 += 1 - ns.SetDialog(obj7, ns.NORMAL, NullDialogStart, ResetHenrickDialogChoice) - ns.TellStory(ns.SwordsmanHurt, "War08b:HenrickSaleSuccessful") -LABEL10: - goto LABEL8 -LABEL6: - goto LABEL8 -LABEL7: - goto LABEL8 -LABEL8: - goto LABEL4 -LABEL2: - v1 = ns.GetAnswer(obj7) - v6 = v1 - if v6 == v2 { - goto LABEL11 - } - if v6 == v3 { - goto LABEL12 - } - if v6 == v4 { - goto LABEL13 - } - goto LABEL14 -LABEL11: - v0 = ns.GetGold(ns.GetHost()) - if !(v0 < ivar9) { - goto LABEL15 - } - ns.SetDialog(obj7, ns.NORMAL, NullDialogStart, ResetHenrickDialogChoice) - ns.TellStory(ns.SwordsmanHurt, "War08b:HenrickNotEnoughGold") - goto LABEL16 -LABEL15: - ns.ChangeGold(ns.GetHost(), -ivar9) - ReleaseCharmedWolf(ivar11) - ivar11 += 1 - ns.SetDialog(obj7, ns.NORMAL, NullDialogStart, ResetHenrickDialogChoice) - ns.TellStory(ns.SwordsmanHurt, "War08b:HenrickSaleSuccessful") - if !(ivar11 >= 2) { - goto LABEL16 - } - gvar12 = gvar6 - ns.SetDialog(obj7, ns.NORMAL, HenrickTalkStart, HenrickTalkEnd) -LABEL16: - goto LABEL14 -LABEL12: - goto LABEL14 -LABEL13: - goto LABEL14 -LABEL14: - goto LABEL4 -LABEL3: - goto LABEL4 -LABEL4: - return -} -func NullDialogStart() { -} -func InitializeHenrick() { - ns.StoryPic(obj7, "HenrickPic") - ns.SetDialog(obj7, ns.YESNO, HenrickTalkStart, HenrickTalkEnd) -} -func ResetHenrickDialogChoice() { - ns.SetDialog(obj7, ns.YESNO, HenrickTalkStart, HenrickTalkEnd) -} -func AirshipCaptainAppear() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - ) - _ = v3 - _ = v2 - v0 = ns.GetWaypointX(wp55) - v1 = ns.GetWaypointY(wp55) - v2 = ns.GetWaypointX(wp57) - v3 = ns.GetWaypointY(wp57) - ns.MoveObject(obj54, v0, v1) - ns.FrameTimer(1, CaptainGuard) -} -func MayorPickup() { - ns.MoveObject(ns.Object("War03c:MayorScepter"), 4963, 453) - ns.Pickup(ns.GetHost(), obj19) -} -func MayorSpeaks() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - ) - v0 = ns.GetObjectX(obj15) - v1 = ns.GetObjectY(obj15) - v2 = ns.GetObjectX(ns.GetHost()) - v3 = ns.GetObjectY(ns.GetHost()) - if !(ns.Distance(v0, v1, v2, v3) < 150) { - goto LABEL1 - } - ns.LookAtObject(obj15, ns.GetHost()) - ns.StartDialog(obj15, ns.GetHost()) - goto LABEL2 -LABEL1: - ns.FrameTimer(22, MayorSpeaks) -LABEL2: - return -} -func MayorGuardTime() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - ) - v0 = ns.GetWaypointX(wp58) - v1 = ns.GetWaypointY(wp58) - v2 = ns.GetWaypointX(wp17) - v3 = ns.GetWaypointY(wp17) - ns.CreatureGuard(obj15, v0, v1, v2, v3, 0) - ns.StoryPic(obj15, "TheogrinPic") - ns.SetDialog(obj15, ns.NORMAL, MayorTalkStart, MayorTalkEnd) -} -func MayorTalkStart() { - var v0 int - if !ns.HasItem(ns.GetHost(), ns.Object("War03c:MayorScepter")) { - goto LABEL1 - } - gvar65 = gvar63 -LABEL1: - v0 = gvar65 - if v0 == gvar61 { - goto LABEL2 - } - if v0 == gvar62 { - goto LABEL3 - } - if v0 == gvar63 { - goto LABEL4 - } - if v0 == gvar64 { - goto LABEL5 - } - goto LABEL6 -LABEL2: - ns.LookAtObject(obj15, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War03b:MayorIntro") - goto LABEL6 -LABEL3: - ns.CreatureIdle(obj15) - ns.LookAtObject(obj15, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War03b:MayorPre") - goto LABEL6 -LABEL4: - ns.LookAtObject(obj15, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War03b:MayorPost") - goto LABEL6 -LABEL5: - ns.LookAtObject(obj15, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War03b:MayorPost2") - goto LABEL6 -LABEL6: - return -} -func MayorsGuardTalkStart() { - var v0 int - ns.LookAtObject(obj16, ns.GetHost()) - v0 = gvar93 - if v0 == gvar89 { - goto LABEL1 - } - if v0 == gvar90 { - goto LABEL2 - } - if v0 == gvar91 { - goto LABEL3 - } - if v0 == gvar92 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - ns.TellStory(ns.SwordsmanHurt, "War03b:MayorsGuardIntro") - goto LABEL5 -LABEL2: - ns.TellStory(ns.SwordsmanHurt, "War03b:MayorsGuardPre") - goto LABEL5 -LABEL3: - ns.TellStory(ns.SwordsmanHurt, "War03b:MayorsGuardPost") - goto LABEL5 -LABEL4: - ns.TellStory(ns.SwordsmanHurt, "War03b:MayorsGuardPost2") - goto LABEL5 -LABEL5: - return -} -func GatekeeperTalkStart() { - var v0 int - ns.LookAtObject(obj23, ns.GetHost()) - v0 = gvar88 - if v0 == gvar86 { - goto LABEL1 - } - if v0 == gvar87 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.TellStory(ns.SwordsmanHurt, "War03b:GatekeeperPre") - goto LABEL3 -LABEL2: - ns.TellStory(ns.SwordsmanHurt, "War03b:GatekeeperPost") - goto LABEL3 -LABEL3: - return -} -func BarkeeperTalkStart() { - var v0 int - ns.LookAtObject(obj24, ns.GetHost()) - v0 = gvar85 - if v0 == gvar83 { - goto LABEL1 - } - if v0 == gvar84 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.TellStory(ns.SwordsmanHurt, "War03b:BarkeeperPre") - goto LABEL3 -LABEL2: - ns.TellStory(ns.SwordsmanHurt, "War03b:BarkeeperPost") - goto LABEL3 -LABEL3: - return -} -func ContestGuardTalkStart() { - ns.LookAtObject(obj25, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War03b:ContestGuard") -} -func BridgeGuardTalkStart() { - var v0 int - ns.LookAtObject(obj36, ns.GetHost()) - v0 = gvar97 - if v0 == gvar94 { - goto LABEL1 - } - if v0 == gvar95 { - goto LABEL2 - } - if v0 == gvar96 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - ns.TellStory(ns.SwordsmanHurt, "War03b:BridgeGuardIntro") - goto LABEL4 -LABEL2: - ns.TellStory(ns.SwordsmanHurt, "War03b:BridgeGuardPre") - goto LABEL4 -LABEL3: - ns.TellStory(ns.SwordsmanHurt, "War03b:BridgeGuardPost") - goto LABEL4 -LABEL4: - return -} -func Townsman1TalkStart() { - var v0 int - ns.CreatureIdle(obj26) - ns.LookAtObject(obj26, ns.GetHost()) - v0 = gvar73 - if v0 == gvar71 { - goto LABEL1 - } - if v0 == gvar72 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.TellStory(ns.SwordsmanHurt, "War03b:T1Pre") - goto LABEL3 -LABEL2: - ns.TellStory(ns.SwordsmanHurt, "War03b:T1Post") - goto LABEL3 -LABEL3: - return -} -func Townsman2TalkStart() { - var v0 int - ns.CreatureIdle(obj27) - ns.LookAtObject(obj27, ns.GetHost()) - v0 = gvar76 - if v0 == gvar74 { - goto LABEL1 - } - if v0 == gvar75 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.TellStory(ns.SwordsmanHurt, "War03b:T2Pre") - goto LABEL3 -LABEL2: - ns.TellStory(ns.SwordsmanHurt, "War03b:T2Post") - goto LABEL3 -LABEL3: - return -} -func Townsman3TalkStart() { - var v0 int - ns.LookAtObject(obj28, ns.GetHost()) - v0 = gvar79 - if v0 == gvar77 { - goto LABEL1 - } - if v0 == gvar78 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.Chat(obj28, "War02a:NewTownsman1") - goto LABEL3 -LABEL2: - ns.Chat(obj28, "War02a:NewTownsman2") - goto LABEL3 -LABEL3: - return -} -func Townsman4TalkStart() { - var v0 int - ns.LookAtObject(obj29, ns.GetHost()) - v0 = gvar82 - if v0 == gvar80 { - goto LABEL1 - } - if v0 == gvar81 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.TellStory(ns.SwordsmanHurt, "War03b:T4Pre") - goto LABEL3 -LABEL2: - ns.TellStory(ns.SwordsmanHurt, "War03b:T4Post") - goto LABEL3 -LABEL3: - return -} -func AldwynTalkStart() { - var v0 int - ns.LookAtObject(obj33, ns.GetHost()) - if !ns.HasItem(ns.GetHost(), ns.Object("War03c:MayorScepter")) { - goto LABEL1 - } - gvar70 = gvar68 -LABEL1: - v0 = gvar70 - if v0 == gvar66 { - goto LABEL2 - } - if v0 == gvar67 { - goto LABEL3 - } - if v0 == gvar68 { - goto LABEL4 - } - if v0 == gvar69 { - goto LABEL5 - } - goto LABEL6 -LABEL2: - ns.TellStory(ns.SwordsmanHurt, "War03b:AldwynIntro") - goto LABEL6 -LABEL3: - ns.TellStory(ns.SwordsmanHurt, "War03b:AldwynPre") - goto LABEL6 -LABEL4: - ns.TellStory(ns.SwordsmanHurt, "War03b:AldwynPost") - goto LABEL6 -LABEL5: - ns.TellStory(ns.SwordsmanHurt, "War03b:AldwynPost2") - goto LABEL6 -LABEL6: - return -} -func AirshipCaptainTalkStart() { - ns.TellStory(ns.SwordsmanHurt, "War03b:AirshipCaptainIxSpeech") -} -func PlayerExit() { - var ( - v0 float32 - v1 float32 - ) - v0 = ns.GetWaypointX(wp56) - v1 = ns.GetWaypointY(wp56) - ns.MoveObject(ns.GetHost(), v0, v1) - ns.Frozen(ns.GetHost(), false) -} -func Maiden1TalkStart() { - ns.CreatureIdle(obj30) - ns.LookAtObject(obj30, ns.GetHost()) - ns.LookAtObject(obj30, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War03b:Maiden1") -} -func Maiden2TalkStart() { - ns.CreatureIdle(obj31) - ns.LookAtObject(obj31, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War03b:Maiden2") -} -func MayorTalkEnd() { - var v0 int - v0 = gvar65 - if v0 == gvar61 { - goto LABEL1 - } - if v0 == gvar62 { - goto LABEL2 - } - if v0 == gvar63 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - ns.Move(obj15, wp58) - ns.Print("Con01a:NewJournalEntry") - ns.JournalEntry(ns.GetHost(), "War03bGetScepter", 2) - ns.JournalEdit(ns.GetHost(), "War03aIxQuest", 4) - gvar65 = gvar62 - gvar93 = gvar90 - gvar97 = gvar95 - gvar88 = gvar86 - ns.CancelDialog(obj15) - goto LABEL4 -LABEL2: - ns.CreatureGuard(obj15, ns.GetWaypointX(wp58), ns.GetWaypointY(wp58), ns.GetWaypointX(wp17), ns.GetWaypointY(wp17), 0) - goto LABEL4 -LABEL3: - gvar65 = gvar64 - gvar93 = gvar92 - gvar70 = gvar69 - gvar20 = ns.GetLastItem(ns.GetHost()) - for { - if gvar20 == 0 { - goto LABEL5 - } - gvar21 = ns.GetPreviousItem(gvar20) - if gvar20 != ns.Object("War03c:MayorScepter") { - goto LABEL6 - } - ns.Delete(gvar20) - LABEL6: - gvar20 = gvar21 - } -LABEL5: - ns.Drop(obj15, obj19) - ns.FrameTimer(1, MayorPickup) - ns.JournalEdit(ns.GetHost(), "War03bGetScepter", 4) - ns.GiveXp(ns.GetHost(), 1000) - AirshipCaptainAppear() - goto LABEL4 -LABEL4: - return -} -func MayorsGuardTalkEnd() { -} -func GatekeeperTalkEnd() { -} -func BarkeeperTalkEnd() { -} -func ContestGuardTalkEnd() { -} -func BridgeGuardTalkEnd() { -} -func Townsman1TalkEnd() { - ns.Wander(obj26) -} -func Townsman2TalkEnd() { - ns.Wander(obj27) -} -func Townsman3TalkEnd() { - ns.Wander(obj28) -} -func Townsman4TalkEnd() { -} -func AldwynTalkEnd() { - var v0 int - v0 = gvar70 - if v0 == gvar66 { - goto LABEL1 - } - goto LABEL2 -LABEL1: - ns.Drop(obj33, obj34) - ns.Drop(obj33, obj35) - ns.FrameTimer(1, FieldGuidePickup) - gvar70 = gvar67 - goto LABEL2 -LABEL2: - return -} -func AirshipCaptainTalkEnd() { - ns.Frozen(ns.GetHost(), true) - ns.Blind() - ns.FrameTimer(60, PlayerExit) - ns.CancelDialog(obj54) -} -func PlayTownMusic() { - ns.Music(15, 100) -} -func Maiden1TalkEnd() { - ns.Wander(obj30) -} -func Maiden2TalkEnd() { -} -func JacobDialogStart() { - ns.LookAtObject(obj41, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "Con02A:JailerTalk01") -} -func JacobDialogEnd() { -} -func MapInitialize() { - obj42 = ns.Object("CaveDoor") - ns.LockDoor(obj42) - obj41 = ns.Object("Jacob") - wp60 = ns.Waypoint("WellWP") - gvar22 = ns.ObjectGroup("QuestTrigGroup") - obj15 = ns.Object("MayorTheogrin") - wp17 = ns.Waypoint("MayorLook") - obj18 = ns.Object("MayorScepter") - obj19 = ns.Object("MayorGift") - ns.Pickup(obj15, obj19) - wp58 = ns.Waypoint("MayorHome") - ns.Pickup(obj15, obj19) - gvar14 = ns.ObjectGroup("MayorTrigs") - obj37 = ns.Object("IxGuard1") - obj38 = ns.Object("IxGuard2") - obj23 = ns.Object("Geoff") - obj16 = ns.Object("Mayor's_Guard") - obj24 = ns.Object("Barkeeper") - obj39 = ns.Object("BelforByzanti") - obj40 = ns.Object("Mystic") - obj36 = ns.Object("BridgeGuard") - obj25 = ns.Object("ContestGuard") - obj26 = ns.Object("Seth") - obj27 = ns.Object("Rayner") - obj28 = ns.Object("Townsman3") - obj29 = ns.Object("Floyd") - obj7 = ns.Object("Henrick") - obj8 = ns.Object("Wolf1") - obj32 = ns.Object("Wolf2") - obj30 = ns.Object("F6Townswoman1") - obj31 = ns.Object("F6Townswoman4") - obj13[0] = ns.Object("Wolf1") - obj13[1] = ns.Object("Wolf2") - ns.Wander(obj26) - ns.Wander(obj27) - ns.Wander(obj28) - gvar43 = ns.ObjectGroupID(ns.Object("WaitTrig1")) // FIXME - gvar44 = ns.ObjectGroupID(ns.Object("WaitTrig2")) // FIXME - gvar45 = ns.ObjectGroupID(ns.Object("WaitTrig3")) // FIXME - gvar46 = ns.ObjectGroup("NPCs") - obj47 = ns.Object("IxGate01") - obj48 = ns.Object("IxGate02") - obj49 = ns.Object("IxGate03") - obj50 = ns.Object("IxGate04") - obj51 = ns.Object("TempDoorL") - obj52 = ns.Object("TempDoorR") - obj53 = ns.Object("AldwynDoor") - ns.LockDoor(obj49) - ns.LockDoor(obj50) - ns.LockDoor(obj51) - ns.LockDoor(obj52) - ns.LockDoor(obj53) - obj54 = ns.Object("AirshipCaptain") - wp55 = ns.Waypoint("AirshipCaptainWP") - wp57 = ns.Waypoint("AirshipCaptainLook") - wp56 = ns.Waypoint("ExitWP") - ns.GroupSetOwner(ns.GetHost(), gvar46) - ns.SetOwner(ns.GetHost(), obj15) - ns.SetOwner(ns.GetHost(), obj16) - ns.SetOwner(ns.GetHost(), obj36) - ns.SetOwner(ns.GetHost(), obj25) - ns.SetOwner(ns.GetHost(), obj24) - ns.SetOwner(ns.GetHost(), obj23) - ns.SetOwner(ns.GetHost(), obj33) - ns.SetOwner(ns.GetHost(), obj26) - ns.SetOwner(ns.GetHost(), obj27) - ns.SetOwner(ns.GetHost(), obj28) - ns.SetOwner(ns.GetHost(), obj29) - ns.SetOwner(ns.GetHost(), obj54) - ns.SetOwner(ns.GetHost(), obj37) - ns.SetOwner(ns.GetHost(), obj38) - ns.SetOwner(ns.GetHost(), obj39) - ns.SetOwner(ns.GetHost(), obj40) - ns.SetOwner(ns.GetHost(), obj8) - ns.SetOwner(ns.GetHost(), obj32) - ns.SetOwner(ns.GetHost(), obj7) - ns.SetOwner(ns.GetHost(), obj30) - ns.SetOwner(ns.GetHost(), obj31) - ns.SetOwner(ns.GetHost(), obj41) - ns.StoryPic(obj23, "MalePic10") - ns.SetDialog(obj23, ns.NORMAL, GatekeeperTalkStart, GatekeeperTalkEnd) - ns.StoryPic(obj15, "TheogrinPic") - ns.SetDialog(obj15, ns.NORMAL, MayorTalkStart, MayorTalkEnd) - ns.StoryPic(obj16, "Warrior3Pic") - ns.SetDialog(obj16, ns.NORMAL, MayorsGuardTalkStart, MayorsGuardTalkEnd) - ns.StoryPic(obj25, "MalePic4") - ns.SetDialog(obj25, ns.NORMAL, ContestGuardTalkStart, ContestGuardTalkEnd) - ns.StoryPic(obj36, "MalePic9") - ns.SetDialog(obj36, ns.NORMAL, BridgeGuardTalkStart, BridgeGuardTalkEnd) - ns.StoryPic(obj26, "Townsman1Pic") - ns.SetDialog(obj26, ns.NORMAL, Townsman1TalkStart, Townsman1TalkEnd) - ns.StoryPic(obj27, "Townsman2Pic") - ns.SetDialog(obj27, ns.NORMAL, Townsman2TalkStart, Townsman2TalkEnd) - ns.StoryPic(obj28, "Townsman3Pic") - ns.SetDialog(obj28, ns.NORMAL, Townsman3TalkStart, Townsman3TalkEnd) - ns.StoryPic(obj29, "Townsman3Pic") - ns.SetDialog(obj29, ns.NORMAL, Townsman4TalkStart, Townsman4TalkEnd) - ns.StoryPic(obj33, "AldwynPic") - ns.SetDialog(obj33, ns.NORMAL, AldwynTalkStart, AldwynTalkEnd) - ns.StoryPic(obj54, "AirshipCaptainPic") - ns.SetDialog(obj54, ns.NORMAL, AirshipCaptainTalkStart, AirshipCaptainTalkEnd) - ns.StoryPic(obj30, "MaidenPic2") - ns.SetDialog(obj30, ns.NORMAL, Maiden1TalkStart, Maiden1TalkEnd) - ns.StoryPic(obj31, "MaidenPic6") - ns.SetDialog(obj31, ns.NORMAL, Maiden2TalkStart, Maiden2TalkEnd) - ns.StoryPic(obj41, "WardenPic") - ns.SetDialog(obj41, ns.NORMAL, JacobDialogStart, JacobDialogEnd) - obj98 = ns.Object("Bookcase") - wp100 = ns.Waypoint("BookcaseWP") - gvar99 = ns.WallGroup("MayorSecretWallGroup") - wp101 = ns.Waypoint("Secret01WP") - wp102 = ns.Waypoint("Secret02WP") - InitializeHenrick() -} -func MapEntry() { - obj18 = ns.Object("War03c:MayorScepter") - ns.UnBlind() - PlayTownMusic() -} -func QuestSwitch() { - if !ns.HasItem(ns.GetHost(), ns.Object("War03c:MayorScepter")) { - goto LABEL1 - } - ns.ObjectGroupOff(gvar22) - gvar93 = gvar91 - ns.SetShopkeeperText(obj24, "War03b:BarkeeperPost") - gvar88 = gvar87 - gvar97 = gvar96 - gvar73 = gvar72 - gvar76 = gvar75 - gvar79 = gvar78 - gvar82 = gvar81 - ns.CancelDialog(obj31) - ns.SetQuestStatus(1, "QuestComplete") - ns.LockDoor(obj47) - ns.LockDoor(obj48) -LABEL1: - return -} -func MayorGreet() { - ns.CreatureFollow(obj15, ns.GetHost()) - ns.ObjectGroupOff(gvar14) - MayorSpeaks() -} -func EnableWaitTrigGroup1() { - ns.ObjectGroupOn(gvar43) -} -func Wait1() { - if !ns.IsCaller(obj26) { - goto LABEL1 - } - ns.PauseObject(obj26, 500) - ns.ObjectGroupOff(gvar43) -LABEL1: - return -} -func EnableWaitTrigGroup2() { - ns.ObjectGroupOn(gvar44) -} -func Wait2() { - if !ns.IsCaller(obj27) { - goto LABEL1 - } - ns.PauseObject(obj27, 500) - ns.ObjectGroupOff(gvar44) -LABEL1: - return -} -func EnableWaitTrigGroup3() { - ns.ObjectGroupOn(gvar45) -} -func Wait3() { - if !ns.IsCaller(obj28) { - goto LABEL1 - } - ns.PauseObject(obj28, 500) - ns.ObjectGroupOff(gvar45) -LABEL1: - return -} -func MonsterGoHome() { - if !ns.HasClass(ns.GetCaller(), ns.MONSTER) { - goto LABEL1 - } - ns.AggressionLevel(ns.GetCaller(), 0.16) - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func FieldGuidePickup() { - ns.Pickup(ns.GetHost(), obj34) - ns.Pickup(ns.GetHost(), obj35) -} -func CaptainGuard() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - ) - v0 = ns.GetWaypointX(wp55) - v1 = ns.GetWaypointY(wp55) - v2 = ns.GetWaypointX(wp57) - v3 = ns.GetWaypointY(wp57) - ns.CreatureGuard(obj54, v0, v1, v2, v3, 500) -} -func PlaySubMusic() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Music(18, 100) -LABEL1: - return -} -func PlayWanderMusic() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Music(17, 100) -LABEL1: - return -} -func OpenMayorSecretWallGroup() { - ns.Move(obj98, wp100) - ns.WallGroupOpen(gvar99) -} -func Secret01XP() { - ns.AudioEvent(ns.SecretFound, wp101) - ns.GiveXp(ns.GetHost(), 50) - ns.PrintToAll("GeneralPrint:SecretFound") -} -func Secret02XP() { - ns.AudioEvent(ns.SecretFound, wp102) - ns.GiveXp(ns.GetHost(), 50) - ns.PrintToAll("GeneralPrint:SecretFound") -} -func MakeAWish() { - var v0 int - v0 = ns.MaxHealth(ns.GetCaller()) - ns.RestoreHealth(ns.GetCaller(), v0-ns.CurrentHealth(ns.GetCaller())) - ns.PrintToAll("GeneralPrint:WellSignRefresh") - ns.AudioEvent(ns.RestoreHealthName, wp60) -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapInitialize": - MapInitialize() - case "MapEntry": - MapEntry() - } -} diff --git a/examples/war03c/dummy_test.go b/examples/war03c/dummy_test.go deleted file mode 100644 index 3c50ac0..0000000 --- a/examples/war03c/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package war03c - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/war03c/war03c.go b/examples/war03c/war03c.go deleted file mode 100644 index 26c42bf..0000000 --- a/examples/war03c/war03c.go +++ /dev/null @@ -1,460 +0,0 @@ -package war03c - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 ns.ObjectID - obj5 ns.ObjectID - obj6 ns.ObjectID - obj7 ns.ObjectID - gvar8 ns.ObjectGroupID - obj9 ns.ObjectID - gvar10 ns.WallGroupID - gvar11 ns.ObjectGroupID - wp12 ns.WaypointID - obj13 ns.ObjectID - obj14 ns.ObjectID - obj15 ns.ObjectID - wp16 ns.WaypointID - wp17 ns.WaypointID - wp18 ns.WaypointID - obj19 ns.ObjectID - gvar20 ns.ObjectGroupID - gvar21 ns.ObjectGroupID - obj22 ns.ObjectID - obj23 ns.ObjectID - obj24 ns.ObjectID - obj25 ns.ObjectID - obj26 ns.ObjectID - obj27 ns.ObjectID - obj28 ns.ObjectID - obj29 ns.ObjectID - obj30 ns.ObjectID - wp31 [6]ns.WaypointID - obj32 ns.ObjectID - wp33 ns.WaypointID - wp34 ns.WaypointID - wp35 ns.WaypointID - wp36 ns.WaypointID - wp37 ns.WaypointID - wp38 ns.WaypointID - wp39 ns.WaypointID - gvar40 int - gvar41 int - gvar42 int - gvar43 int - gvar44 int - gvar45 int - fvar46 float32 - obj47 ns.ObjectID - obj48 ns.ObjectID - obj49 ns.ObjectID - obj50 ns.ObjectID - obj51 ns.ObjectID - obj52 ns.ObjectID - obj53 ns.ObjectID - obj54 ns.ObjectID - gvar55 ns.ObjectGroupID - flag56 bool - flag57 bool - flag58 bool - flag59 bool - wp60 ns.WaypointID - wp61 ns.WaypointID - wp62 ns.WaypointID - wp63 ns.WaypointID - wp64 ns.WaypointID - wp65 ns.WaypointID - wp66 ns.WaypointID - wp67 ns.WaypointID - wp68 ns.WaypointID - wp69 ns.WaypointID -) - -func init() { - gvar40 = 0 - gvar41 = 1 - gvar42 = 2 - gvar43 = 3 - gvar44 = 4 - gvar45 = gvar40 - fvar46 = 50 - flag56 = false - flag57 = false - flag58 = false - flag59 = false -} -func PlayerDeath() { - ns.DeathScreen(3) -} -func KalenTalkStart() { - ns.TellStory(ns.SwordsmanHurt, "War03c:KalenSpeech") - ns.ObjectGroupOff(gvar20) -} -func KalenTalkEnd() { - var ( - v0 float32 - v1 float32 - ) - v0 = ns.GetWaypointX(wp16) - v1 = ns.GetWaypointY(wp16) - ns.AudioEvent(ns.NPCDie, wp16) - ns.AudioEvent(ns.MetalArmorDrop, wp17) - ns.AudioEvent(ns.LeatherArmorDrop, wp18) - ns.MoveObject(obj15, v0, v1) - ns.MoveObject(obj13, ns.GetWaypointX(wp17), ns.GetWaypointY(wp17)) - ns.MoveObject(obj14, ns.GetWaypointX(wp18), ns.GetWaypointY(wp18)) - ns.Damage(obj15, 0, 200, 12) - ns.ObjectGroupOn(gvar20) - ZombieAttack() - ns.Damage(obj19, 0, 200, 12) -} -func ZombieAttack() { - ns.WallGroupBreak(gvar10) - ns.GroupAggressionLevel(gvar11, 0.83) - ns.ObjectGroupOn(gvar21) - ns.MoveObject(obj22, 1848, 2581) - ns.MoveObject(obj23, 1848, 2581) - ns.MoveObject(obj24, 1904, 2710) - ns.MoveObject(obj25, 1904, 2710) - ns.MoveObject(obj26, 1988, 2624) - ns.MoveObject(obj27, 1988, 2624) - ns.MoveObject(obj28, 1976, 2534) - ns.MoveObject(obj29, 1793, 2708) -} -func UrchinGoHome() { - ns.GroupWander(gvar8) -} -func InitializeUrchinSetpiece() { - obj47 = ns.Object("Urchin01") - obj48 = ns.Object("Urchin02") - obj49 = ns.Object("Urchin03") - obj50 = ns.Object("Urchin04") - obj51 = ns.Object("ShamanDoor1") - obj52 = ns.Object("ShamanDoor2") - gvar55 = ns.ObjectGroup("OtherUrchins") - wp60 = ns.Waypoint("Urchin01SetpieceWP") - wp61 = ns.Waypoint("Urchin02SetpieceWP") - wp62 = ns.Waypoint("Urchin03SetpieceWP") - wp63 = ns.Waypoint("Urchin04SetpieceWP") - wp64 = ns.Waypoint("ShamanSetpieceWP") - wp65 = ns.Waypoint("UrchinSetpieceAudioOrigin") - wp66 = ns.Waypoint("ShamanExitWP") - wp67 = ns.Waypoint("ShamanFaceWP") - obj53 = ns.Object("ShamanBuddy1") - obj54 = ns.Object("ShamanBuddy2") - wp68 = ns.Waypoint("ShamanBuddy1WP") - wp69 = ns.Waypoint("ShamanBuddy2WP") -} -func PlaySubMusic() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Music(18, 100) -LABEL1: - return -} -func MapInitialize() { - gvar8 = ns.ObjectGroup("UrchinEntryGroup") - obj4 = ns.Object("ChamberDoor1") - obj5 = ns.Object("ChamberDoor2") - obj6 = ns.Object("ChamberDoor3") - obj7 = ns.Object("ZombieJailDoor") - ns.LockDoor(obj7) - ns.LockDoor(obj4) - ns.LockDoor(obj5) - ns.LockDoor(obj6) - obj9 = ns.Object("MayorScepter") - obj13 = ns.Object("KalenArmor") - obj14 = ns.Object("KalenBoots") - wp17 = ns.Waypoint("KalenArmorWP") - wp18 = ns.Waypoint("KalenBootsWP") - obj15 = ns.Object("KalenDead") - ns.Damage(obj15, 0, 200, 12) - obj19 = ns.Object("Kalen") - gvar20 = ns.ObjectGroup("KalenMonsterGroup") - wp16 = ns.Waypoint("KalenWP") - ns.SetOwner(ns.GetHost(), obj19) - ns.StoryPic(obj19, "WoundedWarriorPic") - ns.SetDialog(obj19, ns.NORMAL, KalenTalkStart, KalenTalkEnd) - gvar10 = ns.WallGroup("ZombieWallGroup") - wp12 = ns.Waypoint("ZombieSound") - gvar11 = ns.ObjectGroup("ZombieAmbushGroup") - gvar21 = ns.ObjectGroup("MonsterGroup1") - obj22 = ns.Object("Monster1") - obj23 = ns.Object("Monster2") - obj24 = ns.Object("Monster3") - obj25 = ns.Object("Monster4") - obj26 = ns.Object("Monster5") - obj27 = ns.Object("Monster6") - obj26 = ns.Object("Monster7") - obj27 = ns.Object("Monster8") - obj30 = ns.Object("Shaman") - wp31[0] = ns.Waypoint("ShamanWP1") - wp31[1] = ns.Waypoint("ShamanWP2") - wp31[2] = ns.Waypoint("ShamanWP3") - wp31[3] = ns.Waypoint("ShamanWP4") - wp31[4] = ns.Waypoint("ShamanWP5") - wp31[5] = ns.Waypoint("ShamanWP6") - obj32 = ns.Object("ShamanElevator") - InitializeUrchinSetpiece() - wp33 = ns.Waypoint("Secret01WP") - wp34 = ns.Waypoint("Secret02WP") - wp35 = ns.Waypoint("Secret03WP") - wp36 = ns.Waypoint("Secret04WP") - wp37 = ns.Waypoint("Secret05WP") - wp38 = ns.Waypoint("Secret06WP") - wp39 = ns.Waypoint("QuestAudioWP") -} -func MapEntry() { - ns.UnBlind() -} -func ShamanMove() { - var ( - v0 int - v1 float32 - v2 float32 - ) - v0 = ns.Random(0, 5) - v1 = ns.GetWaypointX(wp31[v0]) - v2 = ns.GetWaypointY(wp31[v0]) - ns.MoveObject(obj30, v1, v2) - ns.LookAtObject(obj30, obj32) -} -func UnlockChamberDoors() { - ns.UnlockDoor(obj4) - ns.UnlockDoor(obj5) - ns.UnlockDoor(obj6) -} -func MonsterGoHomeLobo() { - r1 := ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) - if !r1 { - goto LABEL1 - } - ns.AggressionLevel(ns.GetCaller(), 0) - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func MonsterGoHome() { - PlaySubMusic() - r1 := ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) - if !r1 { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func MonsterHostile() { - PlaySubMusic() - r1 := ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) - if !r1 { - goto LABEL1 - } - ns.AggressionLevel(ns.GetCaller(), 0.83) -LABEL1: - return -} -func MonsterGoHomePassive() { - r1 := ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) - if !r1 { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func MonsterGoHomeUrchin() { - if !(ns.HasClass(ns.GetCaller(), ns.MONSTER) == true && ns.HasSubclass(ns.GetCaller(), ns.SMALL_MONSTER) == true) { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func HostilizeMe() { - ns.AggressionLevel(ns.GetTrigger(), 0.83) -} -func PlayWanderMusic() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Music(17, 100) -LABEL1: - return -} -func AwardQuestXP() { - ns.AudioEvent(ns.SecretFound, wp39) - ns.GiveXp(ns.GetHost(), 100) -} -func Secret01XP() { - ns.AudioEvent(ns.SecretFound, wp33) - ns.GiveXp(ns.GetHost(), 25) - ns.PrintToAll("GeneralPrint:SecretFound") -} -func Secret02XP() { - ns.AudioEvent(ns.SecretFound, wp34) - ns.GiveXp(ns.GetHost(), 50) - ns.PrintToAll("GeneralPrint:SecretFound") -} -func Secret03XP() { - ns.AudioEvent(ns.SecretFound, wp35) - ns.GiveXp(ns.GetHost(), 100) - ns.PrintToAll("GeneralPrint:SecretFound") -} -func Secret04XP() { - ns.AudioEvent(ns.SecretFound, wp36) - ns.GiveXp(ns.GetHost(), 50) - ns.PrintToAll("GeneralPrint:SecretFound") -} -func Secret05XP() { - ns.AudioEvent(ns.SecretFound, wp37) - ns.GiveXp(ns.GetHost(), 25) - ns.PrintToAll("GeneralPrint:SecretFound") -} -func Secret06XP() { - ns.AudioEvent(ns.SecretFound, wp38) - ns.GiveXp(ns.GetHost(), 100) - ns.PrintToAll("GeneralPrint:SecretFound") -} -func FreezePlayer() { - ns.Frozen(ns.Object("War03b:Wolf1"), true) - ns.Frozen(ns.Object("War03b:Wolf2"), true) - ns.Frozen(ns.GetHost(), true) - ns.CreatureIdle(ns.GetHost()) - ns.WideScreen(true) - ns.FrameTimer(15, UrchinsEnter) -} -func UrchinsEnter() { - gvar45 = gvar41 - ns.Move(obj47, wp60) - ns.Move(obj48, wp61) - ns.Move(obj49, wp62) - ns.Move(obj50, wp63) -} -func CheckUrchins() { - if gvar45 == gvar41 { - goto LABEL1 - } - return -LABEL1: - if !(flag56 && flag57 && flag58 && flag59) { - goto LABEL2 - } - gvar45 = gvar42 - ns.FrameTimer(30, ShamanEnter) -LABEL2: - return -} -func ShamanEnter() { - ns.AudioEvent(ns.BigGong, wp65) - ns.Move(obj30, wp64) -} -func ShamanCommand() { - ns.AudioEvent(ns.UrchinShamanRecognize, wp65) - ns.WideScreen(false) - ns.Frozen(ns.Object("War03b:Wolf1"), false) - ns.Frozen(ns.Object("War03b:Wolf2"), false) - ns.Frozen(ns.GetHost(), false) - gvar45 = gvar44 - ns.FrameTimer(10, UrchinsAttack) - ns.FrameTimer(30, ShamanGuard) -} -func UrchinsAttack() { - ns.AggressionLevel(obj47, 0.83) - ns.Attack(obj47, ns.GetHost()) - ns.AggressionLevel(obj48, 0.83) - ns.Attack(obj48, ns.GetHost()) - ns.AggressionLevel(obj49, 0.83) - ns.Attack(obj49, ns.GetHost()) - ns.AggressionLevel(obj50, 0.83) - ns.Attack(obj50, ns.GetHost()) - ns.AggressionLevel(obj30, 0.5) - ns.ObjectGroupOn(gvar55) -} -func ShamanGuard() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - ) - v0 = ns.GetWaypointX(wp66) - v1 = ns.GetWaypointY(wp66) - v2 = ns.GetWaypointX(wp67) - v3 = ns.GetWaypointY(wp67) - ns.CreatureGuard(obj30, v0, v1, v2, v3, 400) -} -func StartUrchinSetpiece() { - ns.ObjectOff(ns.GetTrigger()) - ns.FrameTimer(1, FreezePlayer) -} -func Urchin01Report() { - if gvar45 == gvar41 { - goto LABEL1 - } - return -LABEL1: - ns.AudioEvent(ns.UrchinRecognize, wp65) - flag56 = true - CheckUrchins() -} -func Urchin02Report() { - if gvar45 == gvar41 { - goto LABEL1 - } - return -LABEL1: - flag57 = true - ns.AudioEvent(ns.UrchinRecognize, wp65) - CheckUrchins() -} -func Urchin03Report() { - if gvar45 == gvar41 { - goto LABEL1 - } - return -LABEL1: - flag58 = true - ns.AudioEvent(ns.UrchinRecognize, wp65) - CheckUrchins() -} -func Urchin04Report() { - if gvar45 == gvar41 { - goto LABEL1 - } - return -LABEL1: - flag59 = true - ns.AudioEvent(ns.UrchinRecognize, wp65) - CheckUrchins() -} -func ShamanReport() { - if gvar45 == gvar42 { - goto LABEL1 - } - return -LABEL1: - gvar45 = gvar43 - ns.FrameTimer(20, ShamanCommand) - ns.LockDoor(obj51) - ns.LockDoor(obj52) -} -func ReleaseShamans() { - ns.AudioEvent(ns.BigGong, wp65) - ns.UnlockDoor(obj51) - ns.UnlockDoor(obj52) - ns.Move(obj53, wp68) - ns.Move(obj54, wp69) -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapInitialize": - MapInitialize() - case "MapEntry": - MapEntry() - } -} diff --git a/examples/war04a/dummy_test.go b/examples/war04a/dummy_test.go deleted file mode 100644 index 1a35fd1..0000000 --- a/examples/war04a/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package war04a - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/war04a/war04a.go b/examples/war04a/war04a.go deleted file mode 100644 index 17c3106..0000000 --- a/examples/war04a/war04a.go +++ /dev/null @@ -1,230 +0,0 @@ -package war04a - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - ivar4 int - ivar5 int - gvar6 int - fvar7 float32 - obj8 ns.ObjectID - obj9 ns.ObjectID - obj10 ns.ObjectID - obj11 ns.ObjectID - obj12 ns.ObjectID - obj13 ns.ObjectID - wp14 ns.WaypointID - wp15 ns.WaypointID - wp16 ns.WaypointID - wp17 ns.WaypointID - gvar18 int - gvar19 int - gvar20 int - gvar21 ns.ObjectGroupID - gvar22 ns.ObjectGroupID - obj23 ns.ObjectID - wp24 ns.WaypointID -) - -func init() { - ivar4 = 50 - ivar5 = 20 - gvar6 = 1 - fvar7 = 5 - gvar18 = 0 - gvar19 = 1 - gvar20 = gvar18 -} -func CloseBlockTrap01() { - ns.ObjectOff(obj12) - ns.Move(obj8, wp14) - ns.Move(obj9, wp15) - ns.FrameTimerWithArg(ivar5, 1, BlockTrapBoom) - ns.FrameTimerWithArg(ivar4, 1, ResetBlockTrap) -} -func CloseBlockTrap02() { - ns.ObjectOff(obj13) - ns.Move(obj10, wp16) - ns.Move(obj11, wp17) - ns.FrameTimerWithArg(ivar5, 2, BlockTrapBoom) - ns.FrameTimerWithArg(ivar4, 2, ResetBlockTrap) -} -func BlockTrapLoop() { - var v0 int - v0 = gvar6 - if v0 == 1 { - goto LABEL1 - } - if v0 == 2 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - CloseBlockTrap01() - gvar6 = 2 - goto LABEL3 -LABEL2: - CloseBlockTrap02() - gvar6 = 1 - goto LABEL3 -LABEL3: - ns.FrameTimer(30, BlockTrapLoop) -} -func InitializeBlockTrap() { - obj8 = ns.Object("SpikeBlock01") - obj9 = ns.Object("SpikeBlock02") - obj10 = ns.Object("SpikeBlock03") - obj11 = ns.Object("SpikeBlock04") - wp14 = ns.Waypoint("BlockWP01") - wp15 = ns.Waypoint("BlockWP02") - wp16 = ns.Waypoint("BlockWP03") - wp17 = ns.Waypoint("BlockWP04") - obj12 = ns.Object("BlockTrap01Trigger") - obj13 = ns.Object("BlockTrap02Trigger") - BlockTrapLoop() -} -func BlockTrapBoom(a1 int) { - var v0 int - v0 = a1 - if v0 == 1 { - goto LABEL1 - } - if v0 == 2 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.AudioEvent(ns.HammerMissing, wp14) - ns.Effect(ns.JIGGLE, ns.GetWaypointX(wp14), ns.GetWaypointY(wp14), fvar7, 0) - goto LABEL3 -LABEL2: - ns.AudioEvent(ns.HammerMissing, wp16) - ns.Effect(ns.JIGGLE, ns.GetWaypointX(wp16), ns.GetWaypointY(wp16), fvar7, 0) - goto LABEL3 -LABEL3: - return -} -func ResetBlockTrap(a1 int) { - var v0 int - v0 = a1 - if v0 == 1 { - goto LABEL1 - } - if v0 == 2 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.ObjectOn(obj12) - ns.AudioEvent(ns.TriggerReleased, wp14) - goto LABEL3 -LABEL2: - ns.ObjectOn(obj13) - ns.AudioEvent(ns.TriggerReleased, wp16) - goto LABEL3 -LABEL3: - return -} -func PlayerDeath() { - ns.DeathScreen(4) -} -func CaptainDialogStart() { - var v0 int - v0 = gvar20 - if v0 == gvar18 { - goto LABEL1 - } - if v0 == gvar19 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.TellStory(ns.SwordsmanHurt, "Con04a:CaptainGreet") - goto LABEL3 -LABEL2: - ns.TellStory(ns.SwordsmanHurt, "Con04a:CaptainIdle") - goto LABEL3 -LABEL3: - return -} -func CaptainDialogEnd() { - var v0 int - v0 = gvar20 - if v0 == gvar18 { - goto LABEL1 - } - if v0 == gvar19 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.JournalEntry(ns.GetHost(), "Chapter4SearchCrypts", 2) - ns.PrintToAll("Con01a:NewJournalEntry") - gvar20 = gvar19 - goto LABEL3 -LABEL2: - goto LABEL3 -LABEL3: - return -} -func StartCaptainConversation() { - ns.SetDialog(obj23, ns.NORMAL, CaptainDialogStart, CaptainDialogEnd) - ns.StartDialog(obj23, ns.GetHost()) -} -func PlayOutdoorMusic() { - ns.Music(22, 100) -} -func MapInitialize() { - gvar21 = ns.ObjectGroup("Secret2Triggers") - gvar22 = ns.ObjectGroup("Fish") - obj23 = ns.Object("Airship_Captain") - wp24 = ns.Waypoint("SecretAudioOrigin") - ns.StoryPic(obj23, "AirshipCaptainPic") - ns.SetOwner(ns.GetHost(), obj23) - ns.GroupWander(gvar22) - InitializeBlockTrap() - PlayOutdoorMusic() - ns.StartupScreen(4) - ns.FrameTimer(5, StartCaptainConversation) -} -func OpenSecretPassageWalls() { - ns.WallOpen(ns.Wall(129, 137)) -} -func ExitMessage() { - ns.PrintToAll("War04a:ExitMessage") -} -func ClearScreen() { - ns.ImmediateBlind() -} -func PlayUndergroundMusic() { - ns.Music(20, 100) -} -func SecretSFX() { - ns.MoveWaypoint(wp24, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretFound, wp24) -} -func FoundSecret1() { - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 25) - SecretSFX() -} -func FoundSecret2() { - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 100) - ns.ObjectGroupOff(gvar21) - SecretSFX() -} -func FoundSecret3() { - ns.ObjectOff(ns.GetTrigger()) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 100) - SecretSFX() -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapInitialize": - MapInitialize() - } -} diff --git a/examples/war04b/dummy_test.go b/examples/war04b/dummy_test.go deleted file mode 100644 index 7b87ada..0000000 --- a/examples/war04b/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package war04b - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/war04b/war04b.go b/examples/war04b/war04b.go deleted file mode 100644 index 04d562c..0000000 --- a/examples/war04b/war04b.go +++ /dev/null @@ -1,776 +0,0 @@ -package war04b - -import ( - "strconv" - - "github.com/noxworld-dev/noxscript/ns/v3" -) - -var ( - obj4 ns.ObjectID - obj5 ns.ObjectID - obj6 ns.ObjectID - gvar7 int - gvar8 int - gvar9 int - gvar10 int - gvar11 int - gvar12 int - gvar13 int - gvar14 int - gvar15 int - gvar16 int - gvar17 int - gvar18 int - flag19 bool - flag20 bool - flag21 bool - flag22 bool - flag23 bool - ivar24 int - ivar25 int - gvar26 int - gvar27 int - gvar28 int - obj29 [13]ns.ObjectID - obj30 [13]ns.ObjectID - ivar31 int - obj32 [56]ns.ObjectID - obj33 ns.ObjectID - obj34 ns.ObjectID - obj35 ns.ObjectID - obj36 ns.ObjectID - obj37 ns.ObjectID - obj38 ns.ObjectID - obj39 ns.ObjectID - obj40 ns.ObjectID - obj41 ns.ObjectID - obj42 ns.ObjectID - obj43 ns.ObjectID - obj44 ns.ObjectID - obj45 ns.ObjectID - obj46 ns.ObjectID - obj47 ns.ObjectID - obj48 ns.ObjectID - gvar49 ns.ObjectGroupID - gvar50 ns.WallGroupID - wp51 ns.WaypointID - wp52 ns.WaypointID - wp53 ns.WaypointID - wp54 ns.WaypointID - wp55 ns.WaypointID - wp56 [56]ns.WaypointID - wp57 ns.WaypointID - gvar58 ns.WaypointGroupID - gvar59 ns.WaypointGroupID - gvar60 ns.WaypointGroupID -) - -func init() { - gvar7 = 0 - gvar8 = 1 - gvar9 = 2 - gvar10 = 3 - gvar11 = 0 - gvar12 = 1 - gvar13 = 2 - gvar14 = 3 - gvar15 = 4 - gvar16 = 5 - gvar17 = 6 - gvar18 = 7 - flag19 = false - flag20 = true - flag21 = false - flag22 = false - flag23 = false - ivar24 = 0 - ivar25 = 0 - gvar26 = gvar12 - gvar27 = 0 - gvar28 = gvar7 - ivar31 = 120 -} -func InitializeSniperRoom() { - obj4 = ns.Object("ExitGate") - obj5 = ns.Object("SkeliGate01") - obj6 = ns.Object("SkeliGate02") - ns.LockDoor(obj4) - ns.LockDoor(obj5) - ns.LockDoor(obj6) -} -func UnlockExitGate() { - ns.UnlockDoor(obj4) - ns.UnlockDoor(obj5) - ns.UnlockDoor(obj6) -} -func setUpFlameLever() { - if !flag19 { - goto LABEL1 - } - return -LABEL1: - flag19 = true - gvar26 = gvar12 - ivar25 = 2 - ivar24 = 0 - for { - if !(ivar24 < 56) { - goto LABEL2 - } - obj32[ivar24] = 0 - ivar24 += 1 - } -LABEL2: - flameLever() -} -func flameLever() { - var v0 int - if !flag19 { - goto LABEL1 - } - v0 = gvar26 - if v0 == gvar12 { - goto LABEL2 - } - if v0 == gvar13 { - goto LABEL3 - } - if v0 == gvar14 { - goto LABEL4 - } - if v0 == gvar15 { - goto LABEL5 - } - if v0 == gvar16 { - goto LABEL6 - } - if v0 == gvar17 { - goto LABEL7 - } - if v0 == gvar18 { - goto LABEL8 - } - if v0 == gvar11 { - goto LABEL9 - } - goto LABEL10 -LABEL2: - ivar24 = 0 - for { - if !(ivar24 < 56) { - goto LABEL11 - } - ns.Delete(obj32[ivar24]) - obj32[ivar24] = ns.CreateObject("SmallFlame", wp56[ivar24]) - ivar24 += 1 - } -LABEL11: - gvar26 = gvar13 - ns.AudioEvent(ns.FireballCast, wp54) - ns.AudioEvent(ns.FireballCast, wp55) - ivar25 = 2 - goto LABEL10 -LABEL3: - ivar24 = 0 - for { - if !(ivar24 < 56) { - goto LABEL13 - } - ns.Delete(obj32[ivar24]) - obj32[ivar24] = ns.CreateObject("MediumFlame", wp56[ivar24]) - ivar24 += 1 - } -LABEL13: - gvar26 = gvar14 - ns.AudioEvent(ns.DemonBreath, wp54) - ns.AudioEvent(ns.DemonBreath, wp55) - ivar25 = 2 - goto LABEL10 -LABEL4: - ivar24 = 0 - for { - if !(ivar24 < 56) { - goto LABEL15 - } - ns.Delete(obj32[ivar24]) - obj32[ivar24] = ns.CreateObject("Flame", wp56[ivar24]) - ivar24 += 1 - } -LABEL15: - gvar26 = gvar15 - ivar25 = 2 - goto LABEL10 -LABEL5: - ivar24 = 0 - for { - if !(ivar24 < 56) { - goto LABEL17 - } - ns.Delete(obj32[ivar24]) - obj32[ivar24] = ns.CreateObject("LargeFlame", wp56[ivar24]) - ivar24 += 1 - } -LABEL17: - gvar26 = gvar16 - ivar25 = 150 - goto LABEL10 -LABEL6: - ivar24 = 0 - for { - if !(ivar24 < 56) { - goto LABEL19 - } - ns.Delete(obj32[ivar24]) - obj32[ivar24] = ns.CreateObject("Flame", wp56[ivar24]) - ivar24 += 1 - } -LABEL19: - gvar26 = gvar17 - ivar25 = 2 - goto LABEL10 -LABEL7: - ivar24 = 0 - for { - if !(ivar24 < 56) { - goto LABEL21 - } - ns.Delete(obj32[ivar24]) - obj32[ivar24] = ns.CreateObject("MediumFlame", wp56[ivar24]) - ivar24 += 1 - } -LABEL21: - gvar26 = gvar18 - ns.AudioEvent(ns.FireExtinguish, wp54) - ns.AudioEvent(ns.FireExtinguish, wp55) - ivar25 = 2 - goto LABEL10 -LABEL8: - ivar24 = 0 - for { - if !(ivar24 < 56) { - goto LABEL23 - } - ns.Delete(obj32[ivar24]) - obj32[ivar24] = ns.CreateObject("SmallFlame", wp56[ivar24]) - ivar24 += 1 - } -LABEL23: - gvar26 = gvar11 - ivar25 = 2 - goto LABEL10 -LABEL9: - ivar24 = 0 - for { - if !(ivar24 < 56) { - goto LABEL25 - } - ns.Delete(obj32[ivar24]) - obj32[ivar24] = 0 - ivar24 += 1 - } -LABEL25: - gvar26 = gvar12 - flag19 = false - goto LABEL10 -LABEL10: - ns.FrameTimer(ivar25, flameLever) -LABEL1: - return -} -func skullHallOn() { - if !flag20 { - goto LABEL1 - } - ns.CastSpellLocationLocation(ns.SPELL_FIREBALL, 3012, 2229, 3185, 2403) - ns.CastSpellLocationLocation(ns.SPELL_FIREBALL, 2896, 2346, 3070, 2517) - ns.FrameTimer(60, skullHallOn) -LABEL1: - return -} -func Zombie1Rise() { - var ( - v0 float32 - v1 float32 - ) - _ = v1 - _ = v0 - v0 = ns.GetObjectX(obj41) - v1 = ns.GetObjectY(obj41) - ns.RaiseZombie(obj41) - ns.AudioEvent(ns.ZombieRecognize, ns.Waypoint("ZombieAttackWP")) - ns.LookAtObject(obj33, obj41) -} -func Zombie2Rise() { - var ( - v0 float32 - v1 float32 - ) - _ = v1 - _ = v0 - v0 = ns.GetObjectX(obj42) - v1 = ns.GetObjectY(obj42) - ns.RaiseZombie(obj42) - ns.AudioEvent(ns.ZombieRecognize, ns.Waypoint("ZombieAttackWP")) - ns.LookAtObject(obj33, obj42) -} -func Zombie3Rise() { - var ( - v0 float32 - v1 float32 - ) - _ = v1 - _ = v0 - v0 = ns.GetObjectX(obj43) - v1 = ns.GetObjectY(obj43) - ns.RaiseZombie(obj43) - ns.AudioEvent(ns.ZombieRecognize, ns.Waypoint("ZombieAttackWP")) - ns.LookAtObject(obj33, obj43) -} -func ZombieAttackHecubah() { - ns.WayPointGroupOn(gvar59) - ns.WayPointGroupOff(gvar58) - ns.HitLocation(obj41, ns.GetWaypointX(ns.Waypoint("ZombieAttackWP")), ns.GetWaypointY(ns.Waypoint("ZombieAttackWP"))) - ns.HitLocation(obj42, ns.GetWaypointX(ns.Waypoint("ZombieAttackWP")), ns.GetWaypointY(ns.Waypoint("ZombieAttackWP"))) - ns.HitLocation(obj43, ns.GetWaypointX(ns.Waypoint("ZombieAttackWP")), ns.GetWaypointY(ns.Waypoint("ZombieAttackWP"))) -} -func HecubahEncounterSEG4() { - ns.SetDialog(obj33, ns.NORMAL, HecubahDialogStart, HecubahDialogEnd) - gvar28 = gvar10 - ns.StartDialog(obj33, ns.GetHost()) -} -func HecubahEncounterSEG3() { - ns.SetDialog(obj34, ns.NEXT, HecubahDialogStart, HecubahDialogEnd) - gvar28 = gvar9 - ns.StartDialog(obj34, ns.GetHost()) -} -func hecGone() { - if !ns.IsCaller(obj33) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.MoveObject(obj33, ns.GetWaypointX(wp53), ns.GetWaypointY(wp53)) - ns.ObjectOff(obj33) -LABEL1: - return -} -func ReleasePlayer() { - if !ns.IsCaller(obj33) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.LockDoor(obj39) - ns.LockDoor(obj40) - ns.NoWallSound(true) - ns.WallGroupOpen(gvar50) - ns.NoWallSound(false) - ns.WideScreen(false) - ns.Frozen(ns.GetHost(), false) - ns.Frozen(ns.Object("War03b:Wolf1"), false) - ns.Frozen(ns.Object("War03b:Wolf2"), false) - ns.SetDialog(obj34, ns.NORMAL, necroTalkStart, necroTalkEnd) - gvar27 = 5 - ns.StartDialog(obj34, ns.GetHost()) -LABEL1: - return -} -func necroDies() { - ns.UnlockDoor(obj39) - ns.UnlockDoor(obj40) - ns.CancelDialog(obj34) - ns.SetDialog(obj34, ns.NORMAL, necroTalkStart, necroTalkEnd) - gvar27 = 4 - ns.StartDialog(obj34, ns.GetHost()) -} -func necroTalkStart() { - var v0 int - v0 = gvar27 - if v0 == 1 { - goto LABEL1 - } - if v0 == 2 { - goto LABEL2 - } - if v0 == 3 { - goto LABEL3 - } - if v0 == 4 { - goto LABEL4 - } - if v0 == 5 { - goto LABEL5 - } - goto LABEL6 -LABEL1: - ns.TellStory(ns.DemonRecognize, "Con04a:NecroTaunts") - ns.Frozen(obj34, true) - ns.Frozen(obj41, true) - ns.Frozen(obj43, true) - goto LABEL6 -LABEL2: - ns.TellStory(ns.DemonRecognize, "Con04a:NecroGloats") - ns.Frozen(obj34, true) - ns.Frozen(obj41, true) - ns.Frozen(obj43, true) - goto LABEL6 -LABEL3: - ns.TellStory(ns.DemonRecognize, "Con04a:NecroThreatens2") - ns.Frozen(obj34, true) - ns.Frozen(obj41, true) - ns.Frozen(obj43, true) - goto LABEL6 -LABEL4: - ns.WayPointGroupOff(gvar59) - ns.WayPointGroupOn(gvar60) - ns.LookAtObject(obj34, ns.GetHost()) - ns.TellStory(ns.DemonRecognize, "Con04a:NecroDies") - ns.Frozen(obj34, true) - ns.Frozen(obj41, true) - ns.Frozen(obj43, true) - goto LABEL6 -LABEL5: - ns.AggressionLevel(obj34, 0.83) - ns.TellStory(ns.DemonRecognize, "Con04a:NecroThreatens") - ns.LookAtObject(obj34, ns.GetHost()) - ns.Frozen(obj34, true) - ns.Frozen(obj41, true) - ns.Frozen(obj43, true) - goto LABEL6 -LABEL6: - return -} -func necroTalkEnd() { - ns.CancelDialog(obj34) - ns.Frozen(obj34, false) - ns.Frozen(obj41, false) - ns.Frozen(obj43, false) - if gvar27 != 4 { - goto LABEL1 - } - ns.JournalEdit(ns.GetHost(), "Chapter4SearchCrypts", 4) - ns.JournalEntry(ns.GetHost(), "Chapter4Escape", 2) - ns.PrintToAll("Con02a:ObjectiveComplete") - ns.PrintToAll("Con01a:NewJournalEntry") -LABEL1: - return -} -func HecubahShootZombie1() { - ns.LookAtObject(obj33, obj41) - ns.CastSpellObjectObject(ns.SPELL_FIREBALL, obj33, obj41) - ns.FrameTimer(30, HecubahShootZombie2) -} -func HecubahShootZombie2() { - ns.LookAtObject(obj33, obj42) - ns.CastSpellObjectObject(ns.SPELL_FIREBALL, obj33, obj42) - ns.FrameTimer(30, HecubahShootZombie3) -} -func HecubahShootZombie3() { - ns.LookAtObject(obj33, obj43) - ns.CastSpellObjectObject(ns.SPELL_FIREBALL, obj33, obj43) - ns.FrameTimer(30, HecubahEncounterSEG3) -} -func ZombieInjured() { - ns.Damage(ns.GetTrigger(), 0, 100, 1) -} -func InitializeFistTraps() { - obj30[0] = ns.Object("FistTrap01") - obj30[1] = ns.Object("FistTrap02") - obj30[2] = ns.Object("FistTrap03") - obj30[3] = ns.Object("FistTrap04") - obj30[4] = ns.Object("FistTrap05") - obj30[5] = ns.Object("FistTrap06") - obj30[6] = ns.Object("FistTrap07") - obj30[7] = ns.Object("FistTrap08") - obj30[8] = ns.Object("FistTrap09") - obj30[9] = ns.Object("FistTrap10") - obj30[10] = ns.Object("FistTrap11") - obj30[11] = ns.Object("FistTrap12") - obj30[12] = ns.Object("FistTrap13") - obj29[0] = ns.Object("FistTrapLight01") - obj29[1] = ns.Object("FistTrapLight02") - obj29[2] = ns.Object("FistTrapLight03") - obj29[3] = ns.Object("FistTrapLight04") - obj29[4] = ns.Object("FistTrapLight05") - obj29[5] = ns.Object("FistTrapLight06") - obj29[6] = ns.Object("FistTrapLight07") - obj29[7] = ns.Object("FistTrapLight08") - obj29[8] = ns.Object("FistTrapLight09") - obj29[9] = ns.Object("FistTrapLight10") - obj29[10] = ns.Object("FistTrapLight11") - obj29[11] = ns.Object("FistTrapLight12") - obj29[12] = ns.Object("FistTrapLight13") -} -func MapInitialize() { - ivar24 = 0 - for { - if !(ivar24 < 56) { - goto LABEL1 - } - wp56[ivar24] = ns.Waypoint("FlameWay" + strconv.Itoa(ivar24+1)) - ivar24 += 1 - } -LABEL1: - obj33 = ns.Object("Hecubah") - obj34 = ns.Object("Necromancer") - obj35 = ns.Object("EntranceGate1") - obj36 = ns.Object("EntranceGate2") - obj37 = ns.Object("EntranceGate3") - obj38 = ns.Object("EntranceGate4") - obj39 = ns.Object("PitGate1") - obj40 = ns.Object("PitGate2") - obj41 = ns.Object("DeadZombie1") - obj42 = ns.Object("DeadZombie2") - obj43 = ns.Object("DeadZombie3") - obj44 = ns.Object("Zombie01") - obj45 = ns.Object("Zombie02") - obj46 = ns.Object("Zombie03") - obj47 = ns.Object("FlameLever1") - obj48 = ns.Object("FlameLever2") - gvar49 = ns.ObjectGroup("Zombies") - gvar50 = ns.WallGroup("InvisibleBlockWall") - wp52 = ns.Waypoint("SecretAudioOrigin") - wp54 = ns.Waypoint("FlameSound1") - wp55 = ns.Waypoint("FlameSound2") - wp51 = ns.Waypoint("AudioOrigin") - wp57 = ns.Waypoint("WP") - wp53 = ns.Waypoint("HecubahStorage") - gvar58 = ns.WaypointGroup("BeforeSetpieceWay") - gvar59 = ns.WaypointGroup("SetpieceWay") - gvar60 = ns.WaypointGroup("AfterSetpieceWay") - ns.WayPointGroupOff(gvar59) - ns.WayPointGroupOff(gvar60) - ns.Damage(obj41, 0, 100, 0) - ns.Damage(obj42, 0, 100, 0) - ns.Damage(obj43, 0, 100, 0) - ns.ZombieStayDown(obj41) - ns.ZombieStayDown(obj42) - ns.ZombieStayDown(obj43) - ns.StoryPic(obj34, "NecromancerPic") - InitializeFistTraps() - InitializeSniperRoom() -} -func PlayerDeath() { - ns.DeathScreen(4) -} -func ToggleSkullHall() { - if !flag20 { - goto LABEL1 - } - flag20 = false - goto LABEL2 -LABEL1: - flag20 = true - skullHallOn() -LABEL2: - return -} -func HecubahDialogStart() { - var v0 int - v0 = gvar28 - if v0 == gvar7 { - goto LABEL1 - } - if v0 == gvar8 { - goto LABEL2 - } - if v0 == gvar9 { - goto LABEL3 - } - if v0 == gvar10 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - ns.TellStory(ns.GhostRecognize, "War04a:Hecubah") - goto LABEL5 -LABEL2: - ns.TellStory(ns.GhostRecognize, "War04a:HecubahSEG2") - goto LABEL5 -LABEL3: - ns.LookAtObject(obj34, ns.GetHost()) - ns.TellStory(ns.DemonRecognize, "Con04a:NecroWarnsHec") - goto LABEL5 -LABEL4: - ns.LookAtObject(obj33, ns.GetHost()) - ns.TellStory(ns.GhostRecognize, "War04a:HecubahSEG3") - goto LABEL5 -LABEL5: - return -} -func HecubahDialogEnd() { - var ( - v0 float32 - v1 float32 - v4 ns.WaypointID - v5 int - ) - _ = v1 - _ = v0 - v5 = gvar28 - if v5 == gvar7 { - goto LABEL1 - } - if v5 == gvar8 { - goto LABEL2 - } - if v5 == gvar9 { - goto LABEL3 - } - if v5 == gvar10 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - ns.FrameTimer(20, Zombie2Rise) - ns.FrameTimer(45, Zombie1Rise) - ns.FrameTimer(60, Zombie3Rise) - ns.FrameTimer(60, ZombieAttackHecubah) - gvar28 = gvar8 - ns.CancelDialog(obj33) - goto LABEL5 -LABEL2: - ns.LookAtObject(obj33, obj42) - gvar28 = gvar9 - ns.CancelDialog(obj33) - ns.AggressionLevel(obj41, 0) - ns.AggressionLevel(obj42, 0) - ns.AggressionLevel(obj43, 0) - ns.PushObject(obj41, 40, ns.GetObjectX(obj33), ns.GetObjectY(obj33)) - ns.PushObject(obj42, 40, ns.GetObjectX(obj33), ns.GetObjectY(obj33)) - ns.PushObject(obj43, 40, ns.GetObjectX(obj33), ns.GetObjectY(obj33)) - ns.SetOwner(obj39, obj41) - ns.SetOwner(obj39, obj42) - ns.SetOwner(obj39, obj43) - ns.SetCallback(obj41, 7, ZombieInjured) - ns.SetCallback(obj42, 7, ZombieInjured) - ns.SetCallback(obj43, 7, ZombieInjured) - ns.FrameTimer(20, HecubahShootZombie1) - goto LABEL5 -LABEL3: - gvar28 = gvar10 - ns.CancelDialog(obj34) - ns.FrameTimer(5, HecubahEncounterSEG4) - goto LABEL5 -LABEL4: - v4 = ns.Waypoint("WP") - v0 = ns.GetObjectX(obj33) - v1 = ns.GetObjectY(obj33) - ns.CreatureIdle(obj34) - ns.UnlockDoor(obj35) - ns.UnlockDoor(obj36) - ns.LockDoor(obj37) - ns.LockDoor(obj38) - ns.ObjectOn(obj33) - ns.Move(obj33, v4) - flag22 = true - ns.CancelDialog(obj33) - goto LABEL5 -LABEL5: - return -} -func AttackSuccessful() { - ns.SetDialog(obj33, ns.NEXT, HecubahDialogStart, HecubahDialogEnd) - ns.StartDialog(obj33, ns.GetHost()) -} -func HecubahEncounterSEG2() { - ns.StoryPic(obj33, "HecubahPic") - ns.SetDialog(obj33, ns.NEXT, HecubahDialogStart, HecubahDialogEnd) - ns.StartDialog(obj33, ns.GetHost()) -} -func HecubahEncounterSEG1() { - if !(!flag21 && ns.IsCaller(ns.GetHost())) { - goto LABEL1 - } - flag21 = true - ns.Frozen(ns.GetHost(), true) - ns.Frozen(ns.Object("War03b:Wolf1"), true) - ns.Frozen(ns.Object("War03b:Wolf2"), true) - ns.WideScreen(true) - ns.FrameTimer(60, HecubahEncounterSEG2) -LABEL1: - return -} -func ResetFistTrap(a1 int) { - ns.ObjectOn(obj29[a1]) - ns.ObjectOn(obj30[a1]) - ns.MoveWaypoint(wp51, ns.GetObjectX(obj30[a1]), ns.GetObjectY(obj30[a1])) - ns.AudioEvent(ns.TriggerReleased, wp51) -} -func DropFist(a1 int) { - ns.CastSpellObjectLocation(ns.SPELL_FIST, obj30[a1], ns.GetObjectX(obj30[a1]), ns.GetObjectY(obj30[a1])) - ns.ObjectOff(obj30[a1]) - ns.ObjectOff(obj29[a1]) - ns.FrameTimerWithArg(ivar31, a1, ResetFistTrap) -} -func ActivateFistTrap01() { - DropFist(0) -} -func ActivateFistTrap02() { - DropFist(1) -} -func ActivateFistTrap03() { - DropFist(2) -} -func ActivateFistTrap04() { - DropFist(3) -} -func ActivateFistTrap05() { - DropFist(4) -} -func ActivateFistTrap06() { - DropFist(5) -} -func ActivateFistTrap07() { - DropFist(6) -} -func ActivateFistTrap08() { - DropFist(7) -} -func ActivateFistTrap09() { - DropFist(8) -} -func ActivateFistTrap10() { - DropFist(9) -} -func ActivateFistTrap11() { - DropFist(10) -} -func ActivateFistTrap12() { - DropFist(11) -} -func ActivateFistTrap13() { - DropFist(12) -} -func NoEnemys() { - r1 := ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) - if !r1 { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func SecretSFX() { - ns.MoveWaypoint(wp52, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretFound, wp52) -} -func FoundSecret01() { - ns.ObjectOff(ns.GetTrigger()) - ns.GiveXp(ns.GetHost(), 100) - ns.PrintToAll("GeneralPrint:SecretFound") - SecretSFX() -} -func FoundSecret02() { - ns.ObjectOff(ns.GetTrigger()) - ns.GiveXp(ns.GetHost(), 75) - ns.PrintToAll("GeneralPrint:SecretFound") - SecretSFX() -} -func OnEvent(typ string) { - switch typ { - case "MapInitialize": - MapInitialize() - case "PlayerDeath": - PlayerDeath() - } -} diff --git a/examples/war04c/dummy_test.go b/examples/war04c/dummy_test.go deleted file mode 100644 index 1995052..0000000 --- a/examples/war04c/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package war04c - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/war04c/war04c.go b/examples/war04c/war04c.go deleted file mode 100644 index 13ce779..0000000 --- a/examples/war04c/war04c.go +++ /dev/null @@ -1,923 +0,0 @@ -package war04c - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - gvar4 ns.WallGroupID - obj5 ns.ObjectID - obj6 ns.ObjectID - ivar7 int - ivar8 int - fvar9 float32 - obj10 ns.ObjectID - obj11 ns.ObjectID - obj12 ns.ObjectID - obj13 ns.ObjectID - obj14 ns.ObjectID - obj15 ns.ObjectID - obj16 ns.ObjectID - obj17 ns.ObjectID - obj18 ns.ObjectID - obj19 ns.ObjectID - obj20 ns.ObjectID - obj21 ns.ObjectID - obj22 ns.ObjectID - obj23 ns.ObjectID - obj24 ns.ObjectID - obj25 ns.ObjectID - wp26 ns.WaypointID - wp27 ns.WaypointID - wp28 ns.WaypointID - wp29 ns.WaypointID - wp30 ns.WaypointID - wp31 ns.WaypointID - wp32 ns.WaypointID - wp33 ns.WaypointID - wp34 ns.WaypointID - wp35 ns.WaypointID - wp36 ns.WaypointID - wp37 ns.WaypointID - wp38 ns.WaypointID - wp39 ns.WaypointID - wp40 ns.WaypointID - wp41 ns.WaypointID - gvar42 ns.ObjectGroupID - gvar43 ns.ObjectGroupID - gvar44 ns.ObjectGroupID - obj45 [13]ns.ObjectID - obj46 [13]ns.ObjectID - ivar47 int - wp48 ns.WaypointID - obj49 ns.ObjectID - obj50 ns.ObjectID - obj51 ns.ObjectID - obj52 ns.ObjectID - obj53 ns.ObjectID - obj54 ns.ObjectID - wp55 ns.WaypointID - wp56 ns.WaypointID - gvar57 ns.WallGroupID - gvar58 ns.WallGroupID - flag59 bool - flag60 bool - gvar61 int - gvar62 int - gvar63 int - obj64 ns.ObjectID - obj65 ns.ObjectID - obj66 ns.ObjectID - obj67 ns.ObjectID - obj68 ns.ObjectID - obj69 ns.ObjectID - wp70 [4]ns.WaypointID - wp71 ns.WaypointID - wp72 ns.WaypointID - flag73 bool - flag74 bool - ivar75 int - wp76 ns.WaypointID - gvar77 ns.ObjectGroupID - ivar78 int - ivar79 int - ivar80 int - ivar81 int - ivar82 int - ivar83 int - ivar84 int - ivar85 int - ivar86 int - ivar87 int - ivar88 int - gvar89 int - gvar90 int - obj91 ns.ObjectID - obj92 ns.ObjectID - obj93 ns.ObjectID - obj94 ns.ObjectID - obj95 ns.ObjectID - obj96 ns.ObjectID - obj97 ns.ObjectID - obj98 ns.ObjectID - obj99 ns.ObjectID - obj100 ns.ObjectID - obj101 ns.ObjectID -) - -func init() { - ivar7 = 50 - ivar8 = 20 - fvar9 = 5 - ivar47 = 120 - flag59 = false - flag60 = false - gvar61 = 0 - gvar62 = 1 - gvar63 = gvar62 - flag73 = false - flag74 = false - ivar75 = 0 - ivar78 = 0 - ivar79 = 0 - ivar80 = 0 - ivar81 = 0 - ivar82 = 0 - ivar83 = 0 - ivar84 = 0 - ivar85 = 0 - ivar86 = 0 - ivar87 = 0 - ivar88 = 0 - gvar89 = 0 - gvar90 = 0 -} -func InitializeSkeletonAmbush() { - gvar4 = ns.WallGroup("SkeletonAmbushWalls") -} -func SkeletonAmbush() { - ns.WallGroupBreak(gvar4) -} -func SkeletonAmbushTimer() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.FrameTimer(45, SkeletonAmbush) -LABEL1: - return -} -func EnablePitTrapElevator01() { - ns.ObjectOff(ns.GetTrigger()) - ns.ObjectOn(ns.Object("PitTrapElevator01")) -} -func EnablePitTrapElevator02() { - ns.ObjectOff(ns.GetTrigger()) - ns.ObjectOn(ns.Object("PitTrapElevator02")) -} -func OpenPitElevatorWalls01() { - ns.ObjectOff(ns.GetTrigger()) - ns.WallGroupOpen(ns.WallGroup("PitTrapElevatorWalls01")) -} -func OpenPitElevatorWalls02() { - ns.ObjectOff(ns.GetTrigger()) - ns.WallGroupOpen(ns.WallGroup("PitTrapElevatorWalls02")) -} -func ZombieAmbush() { - ns.ObjectOff(ns.GetTrigger()) - ns.WallGroupBreak(ns.WallGroup("ZombieAmbushWalls")) -} -func InitializeHallwayArrowTraps() { - obj5 = ns.Object("HallwayArrowTrap01") - obj6 = ns.Object("HallwayArrowTrap02") -} -func ResetHallwayArrowTrap01() { - ns.ObjectOff(obj5) -} -func ResetHallwayArrowTrap02() { - ns.ObjectOff(obj6) -} -func ActivateHallwayArrowTrap01() { - ns.ObjectOn(obj5) - ns.FrameTimer(1, ResetHallwayArrowTrap01) -} -func ActivateHallwayArrowTrap02() { - ns.ObjectOn(obj6) - ns.FrameTimer(1, ResetHallwayArrowTrap02) -} -func InitializeBlockTrap() { - obj10 = ns.Object("SpikeBlock01") - obj11 = ns.Object("SpikeBlock02") - obj12 = ns.Object("SpikeBlock03") - obj13 = ns.Object("SpikeBlock04") - obj14 = ns.Object("SpikeBlock05") - obj15 = ns.Object("SpikeBlock06") - obj16 = ns.Object("SpikeBlock07") - obj17 = ns.Object("SpikeBlock08") - obj18 = ns.Object("SpikeBlock09") - obj19 = ns.Object("SpikeBlock10") - obj20 = ns.Object("SpikeBlock11") - obj21 = ns.Object("SpikeBlock12") - obj22 = ns.Object("SpikeBlock13") - obj23 = ns.Object("SpikeBlock14") - obj24 = ns.Object("SpikeBlock15") - obj25 = ns.Object("SpikeBlock16") - wp26 = ns.Waypoint("BlockWP01") - wp27 = ns.Waypoint("BlockWP02") - wp28 = ns.Waypoint("BlockWP03") - wp29 = ns.Waypoint("BlockWP04") - wp30 = ns.Waypoint("BlockWP05") - wp31 = ns.Waypoint("BlockWP06") - wp32 = ns.Waypoint("BlockWP07") - wp33 = ns.Waypoint("BlockWP08") - wp34 = ns.Waypoint("BlockWP09") - wp35 = ns.Waypoint("BlockWP10") - wp36 = ns.Waypoint("BlockWP11") - wp37 = ns.Waypoint("BlockWP12") - wp38 = ns.Waypoint("BlockWP13") - wp39 = ns.Waypoint("BlockWP14") - wp40 = ns.Waypoint("BlockWP15") - wp41 = ns.Waypoint("BlockWP16") - gvar42 = ns.ObjectGroup("BlockTrap01Triggers") - gvar43 = ns.ObjectGroup("BlockTrap02Triggers") - gvar44 = ns.ObjectGroup("BlockTrap03Triggers") -} -func BlockTrapBoom(a1 int) { - var v0 int - v0 = a1 - if v0 == 1 { - goto LABEL1 - } - if v0 == 2 { - goto LABEL2 - } - if v0 == 3 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - ns.AudioEvent(ns.HammerMissing, wp28) - ns.Effect(ns.JIGGLE, ns.GetWaypointX(wp28), ns.GetWaypointY(wp28), fvar9, 0) - goto LABEL4 -LABEL2: - ns.AudioEvent(ns.HammerMissing, wp34) - ns.Effect(ns.JIGGLE, ns.GetWaypointX(wp34), ns.GetWaypointY(wp34), fvar9, 0) - goto LABEL4 -LABEL3: - ns.AudioEvent(ns.HammerMissing, wp38) - ns.Effect(ns.JIGGLE, ns.GetWaypointX(wp38), ns.GetWaypointY(wp38), fvar9, 0) - goto LABEL4 -LABEL4: - return -} -func ResetBlockTrap(a1 int) { - var v0 int - v0 = a1 - if v0 == 1 { - goto LABEL1 - } - if v0 == 2 { - goto LABEL2 - } - if v0 == 3 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - ns.ObjectGroupOn(gvar42) - ns.AudioEvent(ns.TriggerReleased, wp28) - goto LABEL4 -LABEL2: - ns.ObjectGroupOn(gvar43) - ns.AudioEvent(ns.TriggerReleased, wp34) - goto LABEL4 -LABEL3: - ns.ObjectGroupOn(gvar44) - ns.AudioEvent(ns.TriggerReleased, wp38) - goto LABEL4 -LABEL4: - return -} -func CloseBlockTrap01() { - ns.ObjectGroupOff(gvar42) - ns.Move(obj10, wp26) - ns.Move(obj11, wp27) - ns.Move(obj12, wp28) - ns.Move(obj13, wp29) - ns.Move(obj14, wp30) - ns.Move(obj15, wp31) - ns.FrameTimerWithArg(ivar8, 1, BlockTrapBoom) - ns.FrameTimerWithArg(ivar7, 1, ResetBlockTrap) -} -func CloseBlockTrap02() { - ns.ObjectGroupOff(gvar43) - ns.Move(obj16, wp32) - ns.Move(obj17, wp33) - ns.Move(obj18, wp34) - ns.Move(obj19, wp35) - ns.Move(obj20, wp36) - ns.Move(obj21, wp37) - ns.FrameTimerWithArg(ivar8, 2, BlockTrapBoom) - ns.FrameTimerWithArg(ivar7, 2, ResetBlockTrap) -} -func CloseBlockTrap03() { - ns.ObjectGroupOff(gvar44) - ns.Move(obj22, wp38) - ns.Move(obj23, wp39) - ns.Move(obj24, wp40) - ns.Move(obj25, wp41) - ns.FrameTimerWithArg(ivar8, 3, BlockTrapBoom) - ns.FrameTimerWithArg(ivar7, 3, ResetBlockTrap) -} -func InitializeFistTraps() { - obj46[0] = ns.Object("FistTrap01") - obj46[1] = ns.Object("FistTrap02") - obj46[2] = ns.Object("FistTrap03") - obj46[3] = ns.Object("FistTrap04") - obj46[4] = ns.Object("FistTrap05") - obj46[5] = ns.Object("FistTrap06") - obj46[6] = ns.Object("FistTrap07") - obj46[7] = ns.Object("FistTrap08") - obj46[8] = ns.Object("FistTrap09") - obj46[9] = ns.Object("FistTrap10") - obj46[10] = ns.Object("FistTrap11") - obj46[11] = ns.Object("FistTrap12") - obj46[12] = ns.Object("FistTrap13") - obj45[0] = ns.Object("FistTrapLight01") - obj45[1] = ns.Object("FistTrapLight02") - obj45[2] = ns.Object("FistTrapLight03") - obj45[3] = ns.Object("FistTrapLight04") - obj45[4] = ns.Object("FistTrapLight05") - obj45[5] = ns.Object("FistTrapLight06") - obj45[6] = ns.Object("FistTrapLight07") - obj45[7] = ns.Object("FistTrapLight08") - obj45[8] = ns.Object("FistTrapLight09") - obj45[9] = ns.Object("FistTrapLight10") - obj45[10] = ns.Object("FistTrapLight11") - obj45[11] = ns.Object("FistTrapLight12") - obj45[12] = ns.Object("FistTrapLight13") -} -func ResetFistTrap(a1 int) { - ns.ObjectOn(obj45[a1]) - ns.ObjectOn(obj46[a1]) - ns.MoveWaypoint(wp48, ns.GetObjectX(obj46[a1]), ns.GetObjectY(obj46[a1])) - ns.AudioEvent(ns.TriggerReleased, wp48) -} -func DropFist(a1 int) { - ns.CastSpellObjectLocation(ns.SPELL_FIST, obj46[a1], ns.GetObjectX(obj46[a1]), ns.GetObjectY(obj46[a1])) - ns.ObjectOff(obj46[a1]) - ns.ObjectOff(obj45[a1]) - ns.FrameTimerWithArg(ivar47, a1, ResetFistTrap) -} -func ActivateFistTrap01() { - DropFist(0) -} -func ActivateFistTrap02() { - DropFist(1) -} -func ActivateFistTrap03() { - DropFist(2) -} -func ActivateFistTrap04() { - DropFist(3) -} -func ActivateFistTrap05() { - DropFist(4) -} -func ActivateFistTrap06() { - DropFist(5) -} -func ActivateFistTrap07() { - DropFist(6) -} -func ActivateFistTrap08() { - DropFist(7) -} -func ActivateFistTrap09() { - DropFist(8) -} -func ActivateFistTrap10() { - DropFist(9) -} -func ActivateFistTrap11() { - DropFist(10) -} -func ActivateFistTrap12() { - DropFist(11) -} -func ActivateFistTrap13() { - DropFist(12) -} -func EnableGuardian() { - ns.WideScreen(false) - ns.AudioEvent(ns.SwordsmanRecognize, wp48) - ns.Frozen(ns.GetHost(), false) - ns.AggressionLevel(obj53, 0.83) - ns.NoWallSound(false) -} -func GuardianEnterFX() { - ns.MoveWaypoint(wp48, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.WallDestroyedStone, wp48) - ns.Effect(ns.JIGGLE, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 10, 0) -} -func GuardianMoveToArena() { - ns.Move(obj53, wp55) -} -func InitializeGuardian() { - obj53 = ns.Object("Guardian") - obj49 = ns.Object("RightGuardianGate") - obj50 = ns.Object("LeftGuardianGate") - obj51 = ns.Object("RightGuardianDoor") - obj52 = ns.Object("LeftGuardianDoor") - obj54 = ns.Object("GuardianDoorTrigger") - wp55 = ns.Waypoint("GuardianArena") - wp56 = ns.Waypoint("GuardianDoorWP") - gvar57 = ns.WallGroup("GuardianWalls") - gvar58 = ns.WallGroup("GuardianDestructableWalls") - ns.LockDoor(obj49) - ns.LockDoor(obj50) -} -func GuardianEnter() { - if !(!flag59 && ns.IsCaller(ns.GetHost())) { - goto LABEL1 - } - ns.MusicPushEvent() - ns.Music(26, 100) - ns.LockDoor(obj51) - ns.LockDoor(obj52) - ns.ObjectOn(obj54) - flag59 = true - ns.WideScreen(true) - ns.Frozen(ns.GetHost(), true) - ns.FrameTimer(60, GuardianMoveToArena) - ns.FrameTimer(30, GuardianEnterFX) -LABEL1: - return -} -func BreakGuardianWalls() { - ns.ObjectOff(ns.GetTrigger()) - ns.NoWallSound(true) - ns.AudioEvent(ns.WallDestroyedStone, wp48) - ns.Effect(ns.JIGGLE, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 10, 0) - ns.WallGroupOpen(gvar57) - ns.WallGroupBreak(gvar58) -} -func GuardianArrivesInArena() { - if !ns.IsCaller(obj53) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.LookAtObject(obj53, ns.GetHost()) - ns.ObjectOff(obj54) - ns.FrameTimer(30, EnableGuardian) -LABEL1: - return -} -func GuardianDie() { - if flag60 { - goto LABEL1 - } - flag60 = true - ns.UnlockDoor(obj50) - ns.UnlockDoor(obj49) - ns.UnlockDoor(obj52) - ns.UnlockDoor(obj51) - ns.MoveWaypoint(wp48, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.FlagDrop, wp48) - ns.PrintToAll("War04d:WarriorDie") - ns.GiveXp(ns.GetHost(), 700) - ns.MusicPopEvent() -LABEL1: - return -} -func ClearGuardianDoor() { - if ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.MoveObject(ns.GetCaller(), ns.GetWaypointX(wp56), ns.GetWaypointY(wp56)) -LABEL1: - return -} -func EnableKeeper() { - ns.LookAtObject(obj64, ns.GetHost()) - ns.AggressionLevel(obj64, 0.83) -} -func InitializeKeeper() { - obj64 = ns.Object("Keeper") - obj65 = ns.Object("LeftKeeperEntranceDoor") - obj66 = ns.Object("RightKeeperEntranceDoor") - obj67 = ns.Object("LeftKeeperExitDoor") - obj68 = ns.Object("RightKeeperExitDoor") - obj69 = ns.Object("KeeperDoorTrigger") - wp70[0] = ns.Waypoint("BlinkWP1") - wp70[1] = ns.Waypoint("BlinkWP2") - wp70[2] = ns.Waypoint("BlinkWP3") - wp70[3] = ns.Waypoint("BlinkWP4") - wp71 = ns.Waypoint("KeeperEnterWP") - wp72 = ns.Waypoint("KeeperDoorWP") - ns.LockDoor(obj67) - ns.LockDoor(obj68) -} -func EnemyGoHome() { - r1 := ns.IsAttackedBy(ns.GetHost(), ns.GetCaller()) - if !(r1 && ns.GetCaller() != obj64) { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func GoInvisible() { - var ( - v0 int - v1 float32 - v2 float32 - v3 float32 - v4 float32 - v5 [4]float32 - v6 float32 - v7 int - ) - v6 = 0 - v7 = 0 - ivar75 += 1 - if gvar63 != gvar62 { - goto LABEL1 - } - gvar63 = gvar61 - return - goto LABEL2 -LABEL1: - gvar63 = gvar62 -LABEL2: - v3 = ns.GetObjectX(obj64) - v4 = ns.GetObjectY(obj64) - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL3 - } - v5[v0] = ns.Distance(v3, v4, ns.GetWaypointX(wp70[v0]), ns.GetWaypointY(wp70[v0])) - v0 += 1 - } -LABEL3: - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL5 - } - if !(v5[v0] > v6) { - goto LABEL6 - } - v6 = v5[v0] - v7 = v0 - LABEL6: - v0 += 1 - } -LABEL5: - if !(ns.CurrentHealth(obj64) > 0) { - goto LABEL8 - } - v1 = ns.GetWaypointX(wp70[v7]) - v2 = ns.GetWaypointY(wp70[v7]) - if !(ivar75 >= 4) { - goto LABEL9 - } - ivar75 = 0 - ns.Enchant(obj64, ns.ENCHANT_INVISIBLE, 3) -LABEL9: - ns.Effect(ns.TELEPORT, v3, v4, 0, 0) - ns.MoveWaypoint(wp48, v3, v4) - ns.AudioEvent(ns.BlinkCast, wp48) - ns.Effect(ns.SMOKE_BLAST, v1, v2, 0, 0) - ns.MoveObject(obj64, v1, v2) -LABEL8: - return -} -func DisableKeeperDoorTrigger() { - ns.ObjectOff(obj69) -} -func KeeperEnter() { - var ( - v0 float32 - v1 float32 - ) - v0 = ns.GetWaypointX(wp71) - v1 = ns.GetWaypointY(wp71) - if !(ns.IsCaller(ns.GetHost()) && flag74 == false) { - goto LABEL1 - } - ns.ObjectOn(obj69) - ns.MusicPushEvent() - ns.Music(4, 100) - flag74 = true - ns.Effect(ns.TELEPORT, v0, v1, 0, 0) - ns.AudioEvent(ns.TeleportIn, wp71) - ns.MoveObject(obj64, v0, v1) - ns.LockDoor(obj65) - ns.LockDoor(obj66) - ns.FrameTimer(1, EnableKeeper) - ns.FrameTimer(30, DisableKeeperDoorTrigger) -LABEL1: - return -} -func KeeperDie() { - if flag73 { - goto LABEL1 - } - ns.MusicPopEvent() - flag73 = true - ns.MoveWaypoint(wp48, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.FlagCapture, wp48) - ns.PrintToAll("War04f:WizardDie") - ns.GiveXp(ns.GetHost(), 1000) - ns.UnlockDoor(obj68) - ns.UnlockDoor(obj67) - ns.UnlockDoor(obj66) - ns.UnlockDoor(obj65) -LABEL1: - return -} -func ClearKeeperDoor() { - if ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.MoveObject(ns.GetCaller(), ns.GetWaypointX(wp72), ns.GetWaypointY(wp72)) -LABEL1: - return -} -func InitializeSkullGuns() { - obj91 = ns.Object("ArrowTrap01") - obj92 = ns.Object("ArrowTrap02") - obj93 = ns.Object("ArrowTrap03") - obj94 = ns.Object("ArrowTrap04") - obj95 = ns.Object("ArrowTrap05") - obj96 = ns.Object("ArrowTrap06") - obj97 = ns.Object("ArrowTrap07") - obj98 = ns.Object("ArrowTrap08") - obj99 = ns.Object("ArrowTrap09") - obj100 = ns.Object("ArrowTrap10") - obj101 = ns.Object("ArrowTrap11") -} -func InitializeMonsterGroups() { - gvar77 = ns.ObjectGroup("MonsterGroup01") -} -func MapInitialize() { - wp48 = ns.Waypoint("AudioOrigin") - wp76 = ns.Waypoint("SecretAudioOrigin") - InitializeSkullGuns() - InitializeSkeletonAmbush() - InitializeGuardian() - InitializeKeeper() - InitializeFistTraps() - InitializeHallwayArrowTraps() - InitializeMonsterGroups() - InitializeBlockTrap() -} -func PlayerDeath() { - ns.DeathScreen(4) -} -func EnableMonsterGroup01() { - ns.ObjectOff(ns.GetTrigger()) - ns.ObjectGroupOn(gvar77) -} -func SecretSFX() { - ns.MoveWaypoint(wp76, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretFound, wp76) -} -func Secret01Found() { - ns.ObjectOff(ns.GetTrigger()) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 100) - ns.AggressionLevel(ns.Object("Secret01Spider"), 0.83) - SecretSFX() -} -func Secret02Found() { - ns.ObjectOff(ns.GetTrigger()) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 50) - SecretSFX() -} -func CheckRows(a1 int) { - var v0 int - v0 = a1 - if v0 == 1 { - goto LABEL1 - } - if v0 == 2 { - goto LABEL2 - } - if v0 == 3 { - goto LABEL3 - } - if v0 == 4 { - goto LABEL4 - } - if v0 == 5 { - goto LABEL5 - } - if v0 == 6 { - goto LABEL6 - } - if v0 == 7 { - goto LABEL7 - } - if v0 == 8 { - goto LABEL8 - } - if v0 == 9 { - goto LABEL9 - } - if v0 == 10 { - goto LABEL10 - } - if v0 == 11 { - goto LABEL11 - } - goto LABEL12 -LABEL1: - if !(ivar78 > 0) { - goto LABEL13 - } - ns.ObjectOn(obj91) - goto LABEL14 -LABEL13: - ns.ObjectOff(obj91) -LABEL14: - goto LABEL12 -LABEL2: - if !(ivar79 > 0) { - goto LABEL15 - } - ns.ObjectOn(obj92) - goto LABEL16 -LABEL15: - ns.ObjectOff(obj92) -LABEL16: - goto LABEL12 -LABEL3: - if !(ivar80 > 0) { - goto LABEL17 - } - ns.ObjectOn(obj93) - goto LABEL18 -LABEL17: - ns.ObjectOff(obj93) -LABEL18: - goto LABEL12 -LABEL4: - if !(ivar81 > 0) { - goto LABEL19 - } - ns.ObjectOn(obj94) - goto LABEL20 -LABEL19: - ns.ObjectOff(obj94) -LABEL20: - goto LABEL12 -LABEL5: - if !(ivar82 > 0) { - goto LABEL21 - } - ns.ObjectOn(obj95) - goto LABEL22 -LABEL21: - ns.ObjectOff(obj95) -LABEL22: - goto LABEL12 -LABEL6: - if !(ivar83 > 0) { - goto LABEL23 - } - ns.ObjectOn(obj96) - goto LABEL24 -LABEL23: - ns.ObjectOff(obj96) -LABEL24: - goto LABEL12 -LABEL7: - if !(ivar84 > 0) { - goto LABEL25 - } - ns.ObjectOn(obj97) - goto LABEL26 -LABEL25: - ns.ObjectOff(obj97) -LABEL26: - goto LABEL12 -LABEL8: - if !(ivar85 > 0) { - goto LABEL27 - } - ns.ObjectOn(obj98) - goto LABEL28 -LABEL27: - ns.ObjectOff(obj98) -LABEL28: - goto LABEL12 -LABEL9: - if !(ivar86 > 0) { - goto LABEL29 - } - ns.ObjectOn(obj99) - goto LABEL30 -LABEL29: - ns.ObjectOff(obj99) -LABEL30: - goto LABEL12 -LABEL10: - if !(ivar87 > 0) { - goto LABEL31 - } - ns.ObjectOn(obj100) - goto LABEL32 -LABEL31: - ns.ObjectOff(obj100) -LABEL32: - goto LABEL12 -LABEL11: - if !(ivar88 > 0) { - goto LABEL33 - } - ns.ObjectOn(obj101) - goto LABEL34 -LABEL33: - ns.ObjectOff(obj101) -LABEL34: - goto LABEL12 -LABEL12: - return -} -func ActivateRow01() { - ivar78 += 1 - CheckRows(1) -} -func DisableRow01() { - ivar78 -= 1 - CheckRows(1) -} -func ActivateRow02() { - ivar79 += 1 - CheckRows(2) -} -func DisableRow02() { - ivar79 -= 1 - CheckRows(2) -} -func ActivateRow03() { - ivar80 += 1 - CheckRows(3) -} -func DisableRow03() { - ivar80 -= 1 - CheckRows(3) -} -func ActivateRow04() { - ivar81 += 1 - CheckRows(4) -} -func DisableRow04() { - ivar81 -= 1 - CheckRows(4) -} -func ActivateRow05() { - ivar82 += 1 - CheckRows(5) -} -func DisableRow05() { - ivar82 -= 1 - CheckRows(5) -} -func ActivateRow06() { - ivar83 += 1 - CheckRows(6) -} -func DisableRow06() { - ivar83 -= 1 - CheckRows(6) -} -func ActivateRow07() { - ivar84 += 1 - CheckRows(7) -} -func DisableRow07() { - ivar84 -= 1 - CheckRows(7) -} -func ActivateRow08() { - ivar85 += 1 - CheckRows(8) -} -func DisableRow08() { - ivar85 -= 1 - CheckRows(8) -} -func ActivateRow09() { - ivar86 += 1 - CheckRows(9) -} -func DisableRow09() { - ivar86 -= 1 - CheckRows(9) -} -func ActivateRow10() { - ivar87 += 1 - CheckRows(10) -} -func DisableRow10() { - ivar87 -= 1 - CheckRows(10) -} -func ActivateRow11() { - ivar88 += 1 - CheckRows(11) -} -func DisableRow11() { - ivar88 -= 1 - CheckRows(11) -} -func OnEvent(typ string) { - switch typ { - case "MapInitialize": - MapInitialize() - case "PlayerDeath": - PlayerDeath() - } -} diff --git a/examples/war05a/dummy_test.go b/examples/war05a/dummy_test.go deleted file mode 100644 index a0609dc..0000000 --- a/examples/war05a/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package war05a - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/war05a/war05a.go b/examples/war05a/war05a.go deleted file mode 100644 index e610207..0000000 --- a/examples/war05a/war05a.go +++ /dev/null @@ -1,2108 +0,0 @@ -package war05a - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - gvar4 int - gvar5 int - gvar6 int - gvar7 int - gvar8 int - gvar9 int - gvar10 int - gvar11 int - gvar12 int - gvar13 int - gvar14 int - gvar15 int - gvar16 int - gvar17 int - gvar18 int - gvar19 int - gvar20 int - gvar21 int - gvar22 int - gvar23 int - gvar24 int - gvar25 int - gvar26 int - gvar27 int - gvar28 int - gvar29 int - gvar30 int - gvar31 int - gvar32 int - gvar33 int - wp34 ns.WaypointID - wp35 ns.WaypointID - wp36 ns.WaypointID - wp37 ns.WaypointID - wp38 ns.WaypointID - wp39 ns.WaypointID - wp40 ns.WaypointID - wp41 ns.WaypointID - obj42 ns.ObjectID - obj43 ns.ObjectID - obj44 ns.ObjectID - obj45 ns.ObjectID - obj46 ns.ObjectID - obj47 ns.ObjectID - obj48 ns.ObjectID - obj49 ns.ObjectID - obj50 ns.ObjectID - obj51 ns.ObjectID - obj52 ns.ObjectID - obj53 ns.ObjectID - obj54 ns.ObjectID - obj55 ns.ObjectID - obj56 ns.ObjectID - obj57 ns.ObjectID - obj58 ns.ObjectID - obj59 ns.ObjectID - obj60 ns.ObjectID - obj61 ns.ObjectID - obj62 ns.ObjectID - obj63 ns.ObjectID - obj64 ns.ObjectID - obj65 ns.ObjectID - obj66 ns.ObjectID - gvar67 ns.ObjectGroupID - flag68 bool - ivar69 int - gvar70 int - gvar71 int - gvar72 int - gvar73 int - gvar74 int - gvar75 int - gvar76 int - gvar77 int - gvar78 int - gvar79 int - gvar80 int - gvar81 int - gvar82 int - gvar83 int - gvar84 int - gvar85 int - gvar86 int - flag87 bool - obj88 ns.ObjectID - obj89 ns.ObjectID - obj90 ns.ObjectID - obj91 ns.ObjectID - obj92 ns.ObjectID - obj93 ns.ObjectID - obj94 ns.ObjectID - obj95 ns.ObjectID - obj96 ns.ObjectID - obj97 ns.ObjectID - obj98 ns.ObjectID - obj99 ns.ObjectID - obj100 ns.ObjectID - obj101 ns.ObjectID - obj102 ns.ObjectID - obj103 ns.ObjectID - obj104 ns.ObjectID - obj105 ns.ObjectID - obj106 ns.ObjectID - obj107 ns.ObjectID - obj108 ns.ObjectID - obj109 ns.ObjectID - obj110 ns.ObjectID - obj111 ns.ObjectID - obj112 ns.ObjectID - obj113 ns.ObjectID - obj114 ns.ObjectID - obj115 ns.ObjectID - obj116 ns.ObjectID - obj117 ns.ObjectID - obj118 ns.ObjectID - obj119 ns.ObjectID - obj120 ns.ObjectID - obj121 ns.ObjectID - obj122 ns.ObjectID - obj123 ns.ObjectID - obj124 ns.ObjectID - obj125 ns.ObjectID - obj126 ns.ObjectID - obj127 ns.ObjectID - obj128 ns.ObjectID - obj129 ns.ObjectID - obj130 ns.ObjectID - obj131 ns.ObjectID - obj132 ns.ObjectID - obj133 ns.ObjectID - obj134 ns.ObjectID - obj135 ns.ObjectID - obj136 ns.ObjectID - obj137 ns.ObjectID - obj138 ns.ObjectID - obj139 ns.ObjectID - obj140 ns.ObjectID - obj141 ns.ObjectID - obj142 ns.ObjectID - obj143 ns.ObjectID - obj144 ns.ObjectID - obj145 ns.ObjectID - wp146 int - wp147 int - obj148 ns.ObjectID - obj149 ns.ObjectID - obj150 ns.ObjectID - obj151 ns.ObjectID - obj152 ns.ObjectID - obj153 ns.ObjectID - obj154 ns.ObjectID - obj155 ns.ObjectID - obj156 ns.ObjectID - obj157 ns.ObjectID - obj158 ns.ObjectID - obj159 ns.ObjectID - obj160 ns.ObjectID - obj161 ns.ObjectID - obj162 ns.ObjectID - obj163 ns.ObjectID - obj164 ns.ObjectID - obj165 ns.ObjectID - obj166 ns.ObjectID - obj167 ns.ObjectID - obj168 ns.ObjectID - obj169 ns.ObjectID - obj170 ns.ObjectID - obj171 ns.ObjectID - obj172 ns.ObjectID - obj173 ns.ObjectID - obj174 ns.ObjectID - gvar175 int - gvar176 int - gvar177 int - gvar178 int - obj179 ns.ObjectID - obj180 ns.ObjectID - obj181 ns.ObjectID - obj182 ns.ObjectID - obj183 ns.ObjectID - obj184 ns.ObjectID - obj185 ns.ObjectID - obj186 ns.ObjectID - obj187 ns.ObjectID - gvar188 int - wp189 ns.WaypointID - wp190 ns.WaypointID - wp191 ns.WaypointID - wp192 ns.WaypointID - wp193 ns.WaypointID - wp194 ns.WaypointID - wp195 ns.WaypointID - obj196 ns.ObjectID - obj197 ns.ObjectID - obj198 ns.ObjectID - obj199 ns.ObjectID - gvar200 int - gvar201 int - gvar202 int - gvar203 int - wp204 ns.WaypointID - wp205 ns.WaypointID - wp206 ns.WaypointID - wp207 ns.WaypointID - wp208 ns.WaypointID - wp209 ns.WaypointID - wp210 ns.WaypointID - wp211 ns.WaypointID - wp212 ns.WaypointID - wp213 ns.WaypointID - wp214 ns.WaypointID - wp215 ns.WaypointID - wp216 ns.WaypointID - wp217 ns.WaypointID - wp218 ns.WaypointID - wp219 ns.WaypointID - wp220 ns.WaypointID - wp221 ns.WaypointID - wp222 ns.WaypointID - wp223 ns.WaypointID - wp224 ns.WaypointID - wp225 ns.WaypointID - wp226 ns.WaypointID - wp227 ns.WaypointID - wp228 ns.WaypointID - ivar229 int - gvar230 int - gvar231 int - gvar232 int - gvar233 int - gvar234 int -) - -func init() { - gvar4 = 0 - gvar5 = 1 - gvar6 = 2 - gvar7 = 3 - gvar8 = 4 - gvar9 = 5 - gvar10 = 0 - gvar11 = 1 - gvar12 = 0 - gvar13 = 1 - gvar14 = 0 - gvar15 = 1 - gvar16 = 2 - gvar17 = 3 - gvar18 = 4 - gvar19 = 5 - gvar20 = 0 - gvar21 = 1 - gvar22 = 2 - gvar23 = 3 - gvar24 = 0 - gvar25 = 1 - gvar26 = 2 - gvar27 = 3 - gvar28 = 0 - gvar29 = 1 - gvar30 = 2 - gvar31 = 3 - gvar32 = 0 - gvar33 = 1 - flag68 = false - ivar69 = 0 - gvar70 = gvar4 - gvar71 = gvar10 - gvar72 = gvar12 - gvar73 = gvar20 - gvar74 = gvar14 - gvar75 = gvar24 - gvar76 = gvar28 - gvar77 = gvar32 - gvar84 = 0 - gvar85 = 0 - gvar86 = 0 - ivar229 = 0 - gvar230 = 0 - gvar231 = 1 - gvar232 = 2 - gvar233 = 3 - gvar234 = gvar230 -} -func OgreDeath() { - ivar69 += 1 - if !ns.IsTrigger(obj51) { - goto LABEL1 - } - ns.CreatureGuard(obj130, ns.GetWaypointX(wp191), ns.GetWaypointY(wp191), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) -LABEL1: - if !(ivar69 >= 7) { - goto LABEL2 - } - SetTownDialog() - ns.Music(23, 100) -LABEL2: - return -} -func SetTownDialog() { - ns.SetDialog(obj179, ns.NORMAL, Villager1Start, Villager1End) - ns.StoryPic(obj179, "MalePic8") - ns.SetDialog(obj180, ns.NORMAL, Villager2Start, Villager2End) - ns.StoryPic(obj180, "MalePic3") - ns.SetDialog(obj181, ns.NORMAL, Villager3Start, Villager3End) - ns.StoryPic(obj181, "MalePic2") - ns.SetDialog(obj182, ns.NORMAL, Villager4Start, Villager4End) - ns.StoryPic(obj182, "MalePic14") - ns.SetDialog(obj183, ns.NORMAL, Villager5Start, Villager5End) - ns.StoryPic(obj183, "MalePic9") - ns.SetDialog(obj130, ns.NORMAL, FarmerSavedStart, FarmerSavedEnd) -} -func CheckFlame() { - if !ns.IsObjectOn(obj66) { - goto LABEL1 - } - ns.PrintToAll("Flame Exists") - goto LABEL2 -LABEL1: - ns.PrintToAll("Flame all gone :(") -LABEL2: - return -} -func FarmerSavedStart() { - ns.TellStory(ns.HumanMaleEatFood, "Wiz05A.scr:FarmerIdle") -} -func FarmerSavedEnd() { - ns.SetDialog(obj130, ns.NORMAL, FarmerSavedStart, FarmerSavedEnd) -} -func BearGoAway() { - if !ns.IsCaller(obj59) { - goto LABEL1 - } - flag68 = true - ns.GoBackHome(obj59) -LABEL1: - return -} -func BearReport() { - if !flag68 { - goto LABEL1 - } - ns.AggressionLevel(obj59, 0.5) - ns.CreatureGuard(obj59, ns.GetWaypointX(wp41), ns.GetWaypointY(wp41), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 300) - flag68 = false -LABEL1: - return -} -func KillCorpses() { - ns.FrameTimer(30, KillCorpses2) -} -func DisableVillagers() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - ) - v0 = ns.GetWaypointX(wp191) - v1 = ns.GetWaypointY(wp191) - v2 = ns.GetWaypointX(wp192) - v3 = ns.GetWaypointY(wp192) - ns.CreatureGuard(obj130, v0, v1, v2, v3, 0) -} -func LockDoors() { - ns.LockDoor(obj198) - ns.LockDoor(obj199) - ns.LockDoor(obj196) - ns.LockDoor(obj197) -} -func SwordsmanStart() { - var v0 int - ns.Frozen(obj144, true) - ns.CreatureIdle(obj144) - ns.LookAtObject(obj144, ns.GetHost()) - v0 = gvar72 - if v0 == gvar12 { - goto LABEL1 - } - if v0 == gvar13 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.LookAtObject(obj144, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:SwordsmanGreeting") - goto LABEL3 -LABEL2: - ns.LookAtObject(obj144, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:SwordsmanEnd") - goto LABEL3 -LABEL3: - return -} -func SwordsmanEnd() { - var v0 int - ns.Frozen(obj144, false) - ns.CreatureGuard(obj144, ns.GetWaypointX(wp189), ns.GetWaypointY(wp189), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 240) - v0 = gvar72 - if v0 == gvar12 { - goto LABEL1 - } - if v0 == gvar13 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.FrameTimer(1, SwordsmanTriggerC) - gvar72 = gvar13 - goto LABEL3 -LABEL2: - ns.LookAtDirection(obj144, ns.NE) - goto LABEL3 -LABEL3: - return -} -func DrunkStart() { - ns.LookAtObject(ns.GetTrigger(), ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:DrunkGreeting") -} -func DrunkEnd() { - ns.LookAtDirection(ns.GetTrigger(), ns.NW) -} -func FarmerStart() { - var ( - v0 float32 - v1 float32 - v2 int - ) - v2 = gvar70 - if v2 == gvar4 { - goto LABEL1 - } - if v2 == gvar5 { - goto LABEL2 - } - if v2 == gvar6 { - goto LABEL3 - } - if v2 == gvar7 { - goto LABEL4 - } - if v2 == gvar8 { - goto LABEL5 - } - if v2 == gvar9 { - goto LABEL6 - } - goto LABEL7 -LABEL1: - if !ns.HasItem(ns.GetHost(), obj127) { - goto LABEL8 - } - gvar70 = gvar7 - ns.SetDialog(obj130, ns.NORMAL, FarmerStart, FarmerEnd) - FarmerStart() - goto LABEL7 - goto LABEL2 -LABEL8: - ns.CreatureIdle(obj130) - ns.LookAtObject(obj130, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:FarmerGreeting") - goto LABEL7 -LABEL2: - ns.CreatureIdle(obj130) - ns.LookAtObject(obj130, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:FarmerGreeting") - goto LABEL7 -LABEL3: - ns.CreatureIdle(obj130) - ns.LookAtObject(obj130, ns.GetHost()) - if !ns.HasItem(ns.GetHost(), obj127) { - goto LABEL9 - } - v0 = ns.GetWaypointX(wp191) - v1 = ns.GetWaypointY(wp191) - ns.AudioEvent(ns.CurePoisonCast, wp191) - ns.AudioEvent(ns.CurePoisonEffect, wp191) - ns.Effect(ns.BLUE_SPARKS, v0, v1, 0, 0) - gvar70 = gvar7 - FarmerStart() - goto LABEL4 -LABEL9: - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:FarmerWaiting") - goto LABEL7 -LABEL4: - ns.CreatureIdle(obj130) - ns.LookAtObject(obj130, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:FarmerReturned") - goto LABEL7 -LABEL5: - ns.CreatureIdle(obj130) - ns.LookAtObject(obj130, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:FarmerIdle") - goto LABEL7 -LABEL6: - if !ns.HasItem(ns.GetHost(), obj127) { - goto LABEL10 - } - gvar70 = gvar7 - FarmerStart() - goto LABEL7 -LABEL10: - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:FarmerHuffy") - goto LABEL7 -LABEL7: - return -} -func FarmerEnd() { - var ( - v0 int - v1 int - v2 int - v3 ns.ObjectID - v4 int - ) - v0 = 0 - v1 = 1 - v2 = 2 - v3 = 0 - v0 = ns.GetAnswer(obj130) - v4 = gvar70 - if v4 == gvar4 { - goto LABEL1 - } - if v4 == gvar5 { - goto LABEL2 - } - if v4 == gvar6 { - goto LABEL3 - } - if v4 == gvar7 { - goto LABEL4 - } - if v4 == gvar8 { - goto LABEL5 - } - if v4 == gvar9 { - goto LABEL6 - } - goto LABEL7 -LABEL1: - if v0 != v1 { - goto LABEL8 - } - gvar70 = gvar6 - ns.SetDialog(obj130, ns.NORMAL, FarmerStart, FarmerEnd) - ns.PrintToAll("Con01a:NewJournalEntry") - ns.JournalEntry(ns.GetHost(), "War05Quest8", 2) - goto LABEL7 - goto LABEL2 -LABEL8: - if v0 != v2 { - goto LABEL9 - } - ns.SetDialog(obj130, ns.YESNO, FarmerStart, FarmerEnd) - gvar70 = gvar5 - goto LABEL7 - goto LABEL2 -LABEL9: - if obj130 != v3 { - goto LABEL2 - } - gvar70 = gvar4 -LABEL2: - if v0 != v1 { - goto LABEL10 - } - gvar70 = gvar6 - ns.SetDialog(obj130, ns.NORMAL, FarmerStart, FarmerEnd) - ns.PrintToAll("Con01a:NewJournalEntry") - ns.JournalEntry(ns.GetHost(), "War05Quest8", 2) - goto LABEL7 - goto LABEL3 -LABEL10: - if v0 != v2 { - goto LABEL11 - } - ns.SetDialog(obj130, ns.NORMAL, FarmerStart, FarmerEnd) - gvar70 = gvar9 - goto LABEL7 - goto LABEL3 -LABEL11: - if obj130 != v3 { - goto LABEL3 - } - gvar70 = gvar4 -LABEL3: - goto LABEL7 -LABEL4: - ns.PrintToAll("War05A.scr:ObjectiveComplete") - ns.JournalEdit(ns.GetHost(), "War05Quest8", 4) - ns.GiveXp(ns.GetHost(), 250) - ns.Drop(obj130, obj125) - ns.Drop(obj130, obj126) - ns.Delete(obj127) - EndCurse() - gvar70 = gvar8 - goto LABEL7 -LABEL5: - goto LABEL7 -LABEL6: - goto LABEL7 -LABEL7: - return -} -func HoundStart() { - ns.CreatureIdle(obj131) - ns.LookAtObject(obj131, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:HoundGreeting") -} -func HoundEnd() { - ns.SetRoamFlag(obj131, 2) - ns.Wander(obj131) -} -func FarmerWifeStart() { - var v0 int - v0 = gvar71 - if v0 == gvar10 { - goto LABEL1 - } - if v0 == gvar11 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.LookAtObject(obj132, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:FarmerWifeGreeting") - goto LABEL3 -LABEL2: - ns.LookAtObject(obj132, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:FarmerWifeIdle") - goto LABEL3 -LABEL3: - return -} -func FarmerWifeEnd() { - var v0 int - v0 = gvar71 - if v0 == gvar10 { - goto LABEL1 - } - if v0 == gvar11 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - gvar71 = gvar11 - LetterBoxOff() - ns.Frozen(ns.GetHost(), false) - goto LABEL3 -LABEL2: - goto LABEL3 -LABEL3: - return -} -func IngridStart() { - var ( - v0 float32 - v1 float32 - v2 int - ) - v2 = gvar76 - if v2 == gvar28 { - goto LABEL1 - } - if v2 == gvar29 { - goto LABEL2 - } - if v2 == gvar30 { - goto LABEL3 - } - if v2 == gvar31 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:IngridGreeting") - goto LABEL5 -LABEL2: - if gvar84 != 1 { - goto LABEL6 - } - v0 = ns.GetWaypointX(wp204) - v1 = ns.GetWaypointY(wp204) - ns.AudioEvent(ns.CurePoisonCast, wp204) - ns.AudioEvent(ns.CurePoisonEffect, wp204) - ns.Effect(ns.BLUE_SPARKS, v0, v1, 0, 0) - gvar76 = gvar30 - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:IngridWaiting") - goto LABEL5 - goto LABEL3 -LABEL6: - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:IngridWaiting") - goto LABEL5 -LABEL3: - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:IngridReturned") - goto LABEL5 -LABEL4: - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:IngridIdle") - goto LABEL5 -LABEL5: - return -} -func IngridEnd() { - var v0 int - v0 = gvar76 - if v0 == gvar28 { - goto LABEL1 - } - if v0 == gvar29 { - goto LABEL2 - } - if v0 == gvar30 { - goto LABEL3 - } - if v0 == gvar31 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - gvar76 = gvar29 - ns.SetDialog(obj92, ns.NORMAL, IngridStart, IngridEnd) - ns.StartDialog(obj93, ns.GetHost()) - goto LABEL5 -LABEL2: - goto LABEL5 -LABEL3: - gvar76 = gvar31 - goto LABEL5 -LABEL4: - goto LABEL5 -LABEL5: - return -} -func CaptainStart() { - var v2 int - v2 = gvar77 - if v2 == gvar32 { - goto LABEL1 - } - if v2 == gvar33 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:CaptainGreeting") - goto LABEL3 -LABEL2: - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:CaptainWaiting") - goto LABEL3 -LABEL3: - return -} -func CaptainEnd() { - var v0 int - v0 = gvar77 - if v0 == gvar32 { - goto LABEL1 - } - if v0 == gvar33 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - gvar77 = gvar33 - ns.StartupScreen(5) - Ingrid4() - ns.FrameTimer(1, HorvathAppears4) - goto LABEL3 -LABEL2: - goto LABEL3 -LABEL3: - return -} -func MaidenStart() { - var ( - v0 float32 - v1 float32 - v2 int - ) - _ = v1 - _ = v0 - v2 = gvar75 - if v2 == gvar24 { - goto LABEL1 - } - if v2 == gvar25 { - goto LABEL2 - } - if v2 == gvar26 { - goto LABEL3 - } - if v2 == gvar27 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - if !ns.HasItem(ns.GetHost(), obj129) { - goto LABEL6 - } - gvar75 = gvar26 - ns.SetDialog(obj128, ns.NORMAL, MaidenStart, MaidenEnd) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:MaidenReturned") - goto LABEL5 - goto LABEL2 -LABEL6: - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:MaidenGreeting") - goto LABEL5 -LABEL2: - if !ns.HasItem(ns.GetHost(), obj129) { - goto LABEL7 - } - v0 = ns.GetWaypointX(wp209) - v1 = ns.GetWaypointY(wp209) - gvar75 = gvar26 - ns.SetDialog(obj128, ns.NORMAL, MaidenStart, MaidenEnd) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:MaidenReturned") - goto LABEL5 - goto LABEL3 -LABEL7: - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:MaidenWaiting") - goto LABEL5 -LABEL3: - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:MaidenReturned") - goto LABEL5 -LABEL4: - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:MaidenIdle") - goto LABEL5 -LABEL5: - return -} -func MaidenEnd() { - var ( - v0 int - v1 int - v2 int - v3 int - v4 int - ) - _ = v3 - _ = v2 - _ = v1 - v0 = 0 - v1 = 1 - v2 = 2 - v3 = 0 - v0 = ns.GetAnswer(obj128) - v4 = gvar75 - if v4 == gvar24 { - goto LABEL1 - } - if v4 == gvar25 { - goto LABEL2 - } - if v4 == gvar26 { - goto LABEL3 - } - if v4 == gvar27 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - if v0 != 1 { - goto LABEL6 - } - gvar75 = gvar25 - ns.SetDialog(obj128, ns.NORMAL, MaidenStart, MaidenEnd) - ns.JournalEntry(ns.GetHost(), "War05Quest7", 2) - ns.PrintToAll("Con01a:NewJournalEntry") - goto LABEL5 -LABEL6: - if v0 != 2 { - goto LABEL7 - } - gvar75 = gvar24 - ns.SetDialog(obj128, ns.YESNO, MaidenStart, MaidenEnd) - goto LABEL5 -LABEL7: - if v0 != 0 { - goto LABEL2 - } - gvar75 = gvar24 - ns.SetDialog(obj128, ns.YESNO, MaidenStart, MaidenEnd) - goto LABEL5 -LABEL2: - ns.SetDialog(obj128, ns.NORMAL, MaidenStart, MaidenEnd) - goto LABEL5 -LABEL3: - gvar75 = gvar27 - ns.PrintToAll("War05A.scr:ObjectiveComplete") - ns.GiveXp(ns.GetHost(), 250) - ns.JournalEdit(ns.GetHost(), "War05Quest7", 4) - ns.Delete(obj129) - ns.Pickup(ns.GetHost(), obj123) - ns.SetDialog(obj128, ns.NORMAL, MaidenStart, MaidenEnd) - goto LABEL5 -LABEL4: - ns.SetDialog(obj128, ns.NORMAL, MaidenStart, MaidenEnd) - goto LABEL5 -LABEL5: - return -} -func BartenderStart() { - ns.Frozen(obj95, true) - ns.LookAtObject(obj95, ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj95) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:BartenderGreeting") -} -func BartenderEnd() { - ns.Frozen(obj95, false) - ns.LookAtDirection(obj95, ns.SE) -} -func EndCurse() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 float32 - v5 float32 - v6 float32 - v7 float32 - v8 float32 - v9 float32 - ) - _ = v7 - _ = v6 - _ = v3 - _ = v2 - _ = v1 - _ = v0 - v8 = ns.GetWaypointX(wp191) - v9 = ns.GetWaypointY(wp191) - v0 = ns.GetWaypointX(wp212) - v1 = ns.GetWaypointY(wp212) - v2 = ns.GetWaypointX(wp210) - v3 = ns.GetWaypointY(wp210) - v6 = ns.GetWaypointX(wp211) - v7 = ns.GetWaypointY(wp211) - v4 = ns.GetObjectX(obj131) - v5 = ns.GetObjectY(obj131) - ns.Frozen(ns.GetHost(), true) - LetterBoxOn() - ns.AudioEvent(ns.CurePoisonCast, wp191) - ns.AudioEvent(ns.CurePoisonEffect, wp191) - ns.Effect(ns.LIGHTNING, v8, v9, v4, v5) - ns.FrameTimer(10, EndCurse2) -} -func EndCurse2() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 float32 - v5 float32 - v6 float32 - v7 float32 - v8 float32 - v9 float32 - ) - _ = v7 - _ = v6 - _ = v3 - _ = v2 - _ = v1 - _ = v0 - v8 = ns.GetWaypointX(wp191) - v9 = ns.GetWaypointY(wp191) - v0 = ns.GetWaypointX(wp212) - v1 = ns.GetWaypointY(wp212) - v2 = ns.GetWaypointX(wp210) - v3 = ns.GetWaypointY(wp210) - v6 = ns.GetWaypointX(wp211) - v7 = ns.GetWaypointY(wp211) - v4 = ns.GetObjectX(obj131) - v5 = ns.GetObjectY(obj131) - ns.Effect(ns.LIGHTNING, v8, v9, v4, v5) - ns.FrameTimer(7, EndCurse3) -} -func EndCurse3() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 float32 - v5 float32 - v6 float32 - v7 float32 - v8 float32 - v9 float32 - ) - _ = v7 - _ = v6 - _ = v3 - _ = v2 - _ = v1 - _ = v0 - v8 = ns.GetWaypointX(wp191) - v9 = ns.GetWaypointY(wp191) - v0 = ns.GetWaypointX(wp212) - v1 = ns.GetWaypointY(wp212) - v2 = ns.GetWaypointX(wp210) - v3 = ns.GetWaypointY(wp210) - v6 = ns.GetWaypointX(wp211) - v7 = ns.GetWaypointY(wp211) - v4 = ns.GetObjectX(obj131) - v5 = ns.GetObjectY(obj131) - ns.Effect(ns.LIGHTNING, v8, v9, v4, v5) - ns.FrameTimer(3, EndCurse4) -} -func EndCurse4() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 float32 - v5 float32 - v6 float32 - v7 float32 - v8 float32 - v9 float32 - ) - v8 = ns.GetWaypointX(wp191) - v9 = ns.GetWaypointY(wp191) - v0 = ns.GetWaypointX(wp212) - v1 = ns.GetWaypointY(wp212) - v2 = ns.GetWaypointX(wp210) - v3 = ns.GetWaypointY(wp210) - v6 = ns.GetWaypointX(wp211) - v7 = ns.GetWaypointY(wp211) - v4 = ns.GetObjectX(obj131) - v5 = ns.GetObjectY(obj131) - ns.Effect(ns.BLUE_SPARKS, v4, v5, 0, 0) - ns.MoveObject(obj131, v0, v1) - ns.MoveObject(obj132, v4, v5) - ns.CreatureGuard(obj132, v2, v3, v6, v7, 0) - ns.CreatureGuard(obj130, v8, v9, v8, v9, 0) -} -func EndCurse5() { - ns.LookAtObject(obj132, ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj132) - ns.StartDialog(obj132, ns.GetHost()) -} -func FrogStart() { - var v0 int - v0 = gvar73 - if v0 == gvar20 { - goto LABEL1 - } - if v0 == gvar21 { - goto LABEL2 - } - if v0 == gvar22 { - goto LABEL3 - } - if v0 == gvar23 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - ns.LookAtObject(obj134, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:FrogGreeting") - ns.Frozen(obj134, false) - ns.ObjectOff(obj136) - ns.ObjectOff(obj137) - ns.ObjectOff(obj138) - ns.ObjectOn(obj134) - ns.CreatureFollow(obj134, ns.GetHost()) - goto LABEL5 -LABEL2: - ns.LookAtObject(obj134, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:FrogFollowing") - goto LABEL5 -LABEL3: - ns.LookAtObject(obj134, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:FrogThanks") - goto LABEL5 -LABEL4: - ns.LookAtObject(obj134, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:FrogIdle") - goto LABEL5 -LABEL5: - return -} -func FrogEnd() { - var v0 int - v0 = gvar73 - if v0 == gvar20 { - goto LABEL1 - } - if v0 == gvar21 { - goto LABEL2 - } - if v0 == gvar22 { - goto LABEL3 - } - if v0 == gvar23 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - gvar73 = gvar21 - goto LABEL5 -LABEL2: - goto LABEL5 -LABEL3: - gvar73 = gvar23 - goto LABEL5 -LABEL4: - goto LABEL5 -LABEL5: - return -} -func FrogGuard() { - gvar73 = gvar22 - ns.Enchant(obj134, ns.ENCHANT_INVULNERABLE, 0) - gvar86 = 1 -} -func Villager1Start() { - ns.Frozen(obj179, true) - ns.CreatureIdle(obj179) - ns.LookAtObject(obj179, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "Con05:Townsman9Talk01") -} -func Villager1End() { - ns.Frozen(obj179, false) - ns.SetRoamFlag(obj179, 32) - ns.Wander(obj179) -} -func Villager2Start() { - ns.Frozen(obj180, true) - ns.CreatureIdle(obj180) - ns.LookAtObject(obj180, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "Con05:Townsman10Talk01") -} -func Villager2End() { - ns.Frozen(obj180, false) - ns.SetRoamFlag(obj180, 32) - ns.Wander(obj180) -} -func Villager3Start() { - ns.Frozen(obj181, true) - ns.CreatureIdle(obj181) - ns.LookAtObject(obj181, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "Con05:Townsman11Talk01") -} -func Villager3End() { - ns.Frozen(obj181, false) - ns.SetRoamFlag(obj181, 32) - ns.Wander(obj181) -} -func Villager4Start() { - ns.Frozen(obj182, true) - ns.CreatureIdle(obj182) - ns.LookAtObject(obj182, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "Con05:Townsman11Talk02") -} -func Villager4End() { - ns.Frozen(obj182, false) - ns.SetRoamFlag(obj182, 32) - ns.Wander(obj182) -} -func Villager5Start() { - ns.Frozen(obj183, true) - ns.CreatureIdle(obj183) - ns.LookAtObject(obj183, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:VillagerGreeting") -} -func Villager5End() { - ns.Frozen(obj183, false) - ns.SetRoamFlag(obj183, 32) - ns.Wander(obj183) -} -func SadVillagerStart() { - var ( - v0 float32 - v1 float32 - v2 int - ) - _ = v1 - _ = v0 - v2 = gvar74 - if v2 == gvar14 { - goto LABEL1 - } - if v2 == gvar15 { - goto LABEL2 - } - if v2 == gvar16 { - goto LABEL3 - } - if v2 == gvar17 { - goto LABEL4 - } - if v2 == gvar18 { - goto LABEL5 - } - if v2 == gvar19 { - goto LABEL6 - } - goto LABEL7 -LABEL1: - ns.CreatureIdle(obj133) - ns.LookAtObject(obj133, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:SadVillagerGreeting") - goto LABEL7 -LABEL2: - ns.CreatureIdle(obj133) - ns.LookAtObject(obj133, ns.GetHost()) - if gvar86 != 1 { - goto LABEL8 - } - v0 = ns.GetWaypointX(wp206) - v1 = ns.GetWaypointY(wp206) - ns.AudioEvent(ns.CurePoisonCast, wp206) - ns.AudioEvent(ns.CurePoisonEffect, wp206) - gvar74 = gvar16 - ns.SetDialog(obj133, ns.NEXT, SadVillagerStart, SadVillagerEnd) - ns.CreatureFollow(obj134, obj133) - SadVillagerStart() - goto LABEL3 -LABEL8: - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:SadVillagerWaiting") - goto LABEL7 -LABEL3: - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:SadVillagerReturned") - goto LABEL7 -LABEL4: - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:SadVillagerIdle") - goto LABEL7 -LABEL5: - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:SadVillagerDead") - goto LABEL7 -LABEL6: - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:SadVillagerDeadIdle") - goto LABEL7 -LABEL7: - return -} -func SadVillagerEnd() { - var ( - v0 int - v1 int - v2 int - v3 int - v4 int - ) - _ = v3 - _ = v2 - _ = v1 - _ = v0 - v0 = 0 - v1 = 1 - v2 = 2 - v3 = 0 - v0 = ns.GetAnswer(obj133) - v4 = gvar74 - if v4 == gvar14 { - goto LABEL1 - } - if v4 == gvar15 { - goto LABEL2 - } - if v4 == gvar16 { - goto LABEL3 - } - if v4 == gvar17 { - goto LABEL4 - } - if v4 == gvar18 { - goto LABEL5 - } - if v4 == gvar19 { - goto LABEL6 - } - goto LABEL7 -LABEL1: - v0 = 1 - if 1 == 0 { - goto LABEL8 - } - gvar74 = gvar15 - ns.SetDialog(obj133, ns.NORMAL, SadVillagerStart, SadVillagerEnd) - ns.JournalEntry(ns.GetHost(), "War05Quest9", 2) - ns.PrintToAll("Con01a:NewJournalEntry") - goto LABEL7 -LABEL8: - v0 = 2 - if 2 == 0 { - goto LABEL9 - } - gvar74 = gvar14 - ns.SetDialog(obj133, ns.YESNO, SadVillagerStart, SadVillagerEnd) - goto LABEL7 -LABEL9: - v0 = 0 - if 0 == 0 { - goto LABEL2 - } - gvar74 = gvar14 - ns.SetDialog(obj133, ns.YESNO, SadVillagerStart, SadVillagerEnd) - goto LABEL7 -LABEL2: - ns.SetDialog(obj133, ns.NORMAL, SadVillagerStart, SadVillagerEnd) - goto LABEL7 -LABEL3: - gvar74 = gvar17 - ns.SetDialog(obj133, ns.NORMAL, SadVillagerStart, SadVillagerEnd) - ns.PrintToAll("War05A.scr:ObjectiveComplete") - ns.JournalEdit(ns.GetHost(), "War05Quest9", 4) - ns.GiveXp(ns.GetHost(), 250) - ns.Drop(obj133, obj124) - ns.FrameTimer(1, FrogThanksPlayer) - ns.FrameTimer(1, SadVillagerGuard) - goto LABEL7 -LABEL4: - ns.SetDialog(obj133, ns.NORMAL, SadVillagerStart, SadVillagerEnd) - goto LABEL7 -LABEL5: - gvar74 = gvar19 - ns.Move(obj133, wp206) - ns.SetCallback(obj133, 9, DummyBump) - ns.JournalDelete(ns.GetHost(), "War05Quest9") - ns.PrintToAll("War05A.scr:ObjectiveFailed") - ns.SetDialog(obj133, ns.NORMAL, SadVillagerStart, SadVillagerEnd) - goto LABEL7 -LABEL6: - ns.CancelDialog(obj133) - goto LABEL7 -LABEL7: - return -} -func OwnVillagers() { - ns.FrameTimer(1, OwnVillagers2) -} -func OwnVillagers2() { - ns.SetOwner(ns.GetHost(), obj134) - ns.SetOwner(ns.GetHost(), obj93) - ns.SetOwner(ns.GetHost(), obj92) - ns.Frozen(obj179, true) - ns.Frozen(obj180, true) - ns.Frozen(obj181, true) - ns.Frozen(obj182, true) - ns.Frozen(obj183, true) - ns.Frozen(obj184, true) - ns.Frozen(obj185, true) - ns.Frozen(obj186, true) - ns.Frozen(obj187, true) - ns.Frozen(obj50, true) - ns.Frozen(obj51, true) - ns.Frozen(obj130, true) - ns.Frozen(obj48, true) - ns.Frozen(obj49, true) - ns.Frozen(obj54, true) - ns.Frozen(obj55, true) - ns.RetreatLevel(obj47, 0) - ns.RetreatLevel(obj48, 0) - ns.RetreatLevel(obj49, 0) - ns.RetreatLevel(obj50, 0) - ns.RetreatLevel(obj51, 0) -} -func KillCorpses2() { - ns.Damage(obj148, 0, 300, 5) - ns.Damage(obj149, 0, 300, 5) - ns.Damage(obj150, 0, 300, 5) - ns.Damage(obj151, 0, 300, 5) - ns.Damage(obj152, 0, 300, 5) - ns.Damage(obj153, 0, 300, 5) - ns.Damage(obj154, 0, 300, 5) - ns.Damage(obj155, 0, 300, 5) - ns.Damage(obj156, 0, 300, 5) - ns.Damage(obj157, 0, 300, 5) - ns.Damage(obj158, 0, 300, 5) - ns.Damage(obj159, 0, 300, 5) - ns.Damage(obj160, 0, 300, 5) - ns.Damage(obj161, 0, 300, 5) - ns.Damage(obj162, 0, 300, 5) - ns.Damage(obj163, 0, 300, 0) - ns.Damage(obj164, 0, 300, 0) - ns.Damage(obj165, 0, 300, 0) - ns.Damage(obj143, 0, 300, 0) - ns.Damage(obj45, 0, 300, 0) - ns.Damage(obj46, 0, 300, 0) - ns.Damage(obj60, 0, 300, 0) - ns.Damage(obj61, 0, 300, 0) - ns.Damage(obj62, 0, 300, 0) - ns.Damage(obj63, 0, 300, 0) - ns.Damage(obj64, 0, 300, 0) - ns.Damage(obj65, 0, 300, 0) -} -func VillagePath() { - ns.SetRoamFlag(obj179, 32) - ns.SetRoamFlag(obj180, 32) - ns.SetRoamFlag(obj181, 32) - ns.SetRoamFlag(obj182, 32) - ns.SetRoamFlag(obj183, 32) - ns.Wander(obj179) - ns.Wander(obj180) - ns.Wander(obj181) - ns.Wander(obj182) - ns.Wander(obj183) -} -func PickUpObjects() { -} -func StartSwordsmanTrigger() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.FrameTimer(1, SwordsmanTrigger) -LABEL1: - return -} -func SwordsmanTrigger() { - ns.AggressionLevel(obj144, 0.83) - ns.AggressionLevel(obj56, 0.83) - ns.AggressionLevel(obj47, 0.83) - ns.Attack(obj47, obj144) -} -func SwordsmanTriggerB() { - gvar72 = gvar12 - ns.SetDialog(obj144, ns.NORMAL, SwordsmanStart, SwordsmanEnd) - ns.StoryPic(obj144, "Warrior8Pic") - ns.FrameTimer(1, SwordsmanTriggerC) -} -func SwordsmanTriggerC() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - ) - v0 = ns.GetWaypointX(wp189) - v1 = ns.GetWaypointY(wp189) - v2 = ns.GetWaypointX(wp190) - v3 = ns.GetWaypointY(wp190) - ns.CreatureGuard(obj144, v0, v1, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 240) - ns.CreatureGuard(obj56, v2, v3, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 240) -} -func SwordsmanTriggerD() { -} -func ShopKeeperGuard() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - ) - v0 = ns.GetWaypointX(wp225) - v1 = ns.GetWaypointY(wp225) - v2 = ns.GetWaypointX(wp226) - v3 = ns.GetWaypointY(wp226) - ns.CreatureGuard(obj96, v0, v1, v2, v3, 0) - ns.FrameTimer(1, GypsyGuard) -} -func BartenderGuard() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - ) - v0 = ns.GetWaypointX(wp227) - v1 = ns.GetWaypointY(wp227) - v2 = ns.GetWaypointX(wp228) - v3 = ns.GetWaypointY(wp228) - ns.CreatureGuard(obj95, v0, v1, v2, v3, 0) - ns.FrameTimer(1, SadVillagerGuard) -} -func GypsyGuard() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - ) - v0 = ns.GetWaypointX(wp223) - v1 = ns.GetWaypointY(wp223) - v2 = ns.GetWaypointX(wp224) - v3 = ns.GetWaypointY(wp224) - ns.CreatureGuard(obj94, v0, v1, v2, v3, 0) - ns.FrameTimer(1, BartenderGuard) -} -func SadVillagerGuard() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - ) - v0 = ns.GetWaypointX(wp206) - v1 = ns.GetWaypointY(wp206) - v2 = ns.GetWaypointX(wp207) - v3 = ns.GetWaypointY(wp207) - ns.CreatureGuard(obj133, v0, v1, v2, v3, 0) -} -func OpenGates() { - ns.WallOpen(ns.Wall(88, 34)) - ns.WallOpen(ns.Wall(87, 35)) - ns.WallOpen(ns.Wall(88, 36)) - ns.WallOpen(ns.Wall(89, 35)) - ns.PrintToAll("War05A.scr:CityGatesOpen") -} -func CloseGates() { - ns.WallClose(ns.Wall(88, 34)) - ns.WallClose(ns.Wall(87, 35)) - ns.WallClose(ns.Wall(88, 36)) - ns.WallClose(ns.Wall(89, 35)) - ns.PrintToAll("War05A.scr:CityGatesClosed") -} -func PlayerDeath() { - ns.DeathScreen(5) -} -func MapEntry() { - ns.Music(23, 100) - ns.Frozen(ns.GetHost(), false) - LetterBoxOff() - if ns.GetQuestStatus("War05B:ChicksSaved") != 1 { - goto LABEL1 - } - ns.Delete(obj93) - ns.Delete(obj92) -LABEL1: - flag87 = true -} -func NoBump() { - flag87 = false - ns.FrameTimer(90, YesBump) -} -func YesBump() { - flag87 = true -} -func BumpVillager() { -} -func LetterBoxOn() { - ns.WideScreen(true) -} -func LetterBoxOff() { - ns.WideScreen(false) -} -func FrogThanksPlayer() { - ns.StartDialog(obj134, ns.GetHost()) -} -func DummyBump() { -} -func FreePlayer() { - ns.Frozen(ns.GetHost(), false) -} -func HorvathAppears() { - ns.Frozen(ns.GetHost(), true) - LetterBoxOn() - ns.FrameTimer(30, HorvathAppears2) - ns.FrameTimer(1, VillagePath) -} -func HorvathAppears2() { - ns.Move(obj93, wp213) - ns.FrameTimer(45, HorvathAppears3) -} -func HorvathAppears3() { - ns.Frozen(obj93, true) - ns.CreatureIdle(obj93) - ns.CreatureIdle(ns.GetHost()) - ns.LookAtObject(obj93, ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj93) - ns.StartDialog(obj93, ns.GetHost()) -} -func HorvathAppears4() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - ) - v0 = ns.GetWaypointX(wp215) - v1 = ns.GetWaypointY(wp215) - v2 = ns.GetWaypointX(wp213) - v3 = ns.GetWaypointY(wp213) - ns.Frozen(obj93, false) - ns.CreatureGuard(obj93, v0, v1, v2, v3, 0) - LetterBoxOff() - ns.FrameTimer(45, HorvathAppears5) -} -func HorvathAppears5() { - ns.Frozen(ns.GetHost(), false) -} -func Ingrid1() { - ns.ObjectOff(obj120) - ns.ObjectOff(obj121) - ns.ObjectOff(obj122) - ns.Frozen(ns.GetHost(), true) - ns.CreatureIdle(ns.GetHost()) - LetterBoxOn() - ns.Move(obj92, wp204) - ns.Move(obj93, wp213) -} -func Ingrid2() { - ns.Chat(obj92, "War05A.scr:IngridScream") -} -func Ingrid3() { - if !ns.IsCaller(obj92) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.Frozen(obj92, true) - ns.CreatureIdle(obj92) - ns.LookAtObject(ns.GetHost(), obj92) - ns.LookAtObject(obj92, ns.GetHost()) - ns.Frozen(obj93, true) - ns.CreatureIdle(obj93) - ns.LookAtObject(obj93, ns.GetHost()) - ns.DestroyChat(obj92) - ns.StartDialog(obj92, ns.GetHost()) -LABEL1: - return -} -func Ingrid4() { - ns.Frozen(obj92, false) - ns.Move(obj92, wp205) - ns.FrameTimer(30, Ingrid5) -} -func Ingrid5() { - ns.JournalEntry(ns.GetHost(), "War05Quest4", 2) - ns.PrintToAll("Con01a:NewJournalEntry") - ns.Frozen(ns.GetHost(), false) -} -func Ingrid6() { - ns.CreatureGuard(obj92, ns.GetObjectX(obj92), ns.GetObjectY(obj92), ns.GetObjectX(ns.GetHost()), ns.GetObjectX(ns.GetHost()), 0) -} -func MapInitialize() { - wp34 = ns.Waypoint("WoundedRefugeeWayPoint") - wp35 = ns.Waypoint("WoundedRefugeeWayPoint2") - wp36 = ns.Waypoint("DeadGuyWP") - wp39 = ns.Waypoint("PlayerSounds") - wp37 = ns.Waypoint("LunchOgre1WP") - wp38 = ns.Waypoint("LunchOgre2WP") - wp40 = ns.Waypoint("WellWP") - wp41 = ns.Waypoint("SecretBearWP") - obj42 = ns.Object("WoundedRefugee") - obj43 = ns.Object("WoundedRefugee2") - obj44 = ns.Object("Antidote") - obj45 = ns.Object("Kill") - obj46 = ns.Object("Kill2") - obj47 = ns.Object("FirstOgre") - obj48 = ns.Object("LunchOgre1") - obj49 = ns.Object("LunchOgre2") - obj50 = ns.Object("TownOgre1") - obj51 = ns.Object("TownOgre2") - obj55 = ns.Object("DeadGuy") - obj56 = ns.Object("Swordsman2") - obj57 = ns.Object("Archer1") - obj58 = ns.Object("Archer2") - obj54 = ns.Object("BruteBoss") - obj52 = ns.Object("MoreOgre1") - obj53 = ns.Object("MoreOgre2") - obj59 = ns.Object("SecretBear") - obj60 = ns.Object("Bubbles1") - obj61 = ns.Object("Bubbles2") - obj62 = ns.Object("Bubbles3") - obj63 = ns.Object("Bubbles4") - obj64 = ns.Object("Bubbles5") - obj65 = ns.Object("Bubbles6") - obj66 = ns.Object("TestFlame") - gvar67 = ns.ObjectGroup("OgreAttackTriggers") - obj93 = ns.Object("W5Captain") - obj92 = ns.Object("W5Ingrid") - obj95 = ns.Object("W5Bartender") - obj96 = ns.Object("W5ShopKeeper") - obj94 = ns.Object("W5Gypsy") - obj120 = ns.Object("CaptainTrigger1") - obj121 = ns.Object("CaptainTrigger2") - obj122 = ns.Object("CaptainTrigger3") - obj97 = ns.Object("BartenderTrigger1") - obj98 = ns.Object("BartenderTrigger2") - obj99 = ns.Object("ShopKeeperTrigger1") - obj100 = ns.Object("ShopKeeperTrigger2") - obj101 = ns.Object("GypsyTrigger1") - obj102 = ns.Object("GypsyTrigger2") - obj103 = ns.Object("GypsyTrigger3") - obj104 = ns.Object("GypsyTrigger4") - obj105 = ns.Object("GypsyTrigger5") - obj106 = ns.Object("GypsyTrigger6") - obj107 = ns.Object("GypsyTrigger7") - obj108 = ns.Object("GypsyTrigger8") - obj109 = ns.Object("GypsyTrigger9") - obj110 = ns.Object("GypsyEndTrigger1") - obj111 = ns.Object("GypsyEndTrigger2") - obj112 = ns.Object("GypsyEndTrigger3") - obj113 = ns.Object("GypsyEndTrigger4") - obj114 = ns.Object("GypsyEndTrigger5") - obj115 = ns.Object("GypsyEndTrigger6") - obj116 = ns.Object("GypsyEndTrigger7") - obj117 = ns.Object("GypsyEndTrigger8") - obj118 = ns.Object("GypsyEndTrigger9") - obj144 = ns.Object("W5Swordsman") - obj145 = ns.Object("W5Swordsman2") - wp146 = int(ns.Object("SwordsmanTrigger1")) - wp147 = int(ns.Object("SwordsmanTrigger2")) - obj143 = ns.Object("KeyGuy") - obj140 = ns.Object("W5Drunk1") - obj141 = ns.Object("W5Drunk2") - obj142 = ns.Object("W5Drunk3") - obj123 = ns.Object("MaidenReward") - obj124 = ns.Object("SadVillagerReward") - obj125 = ns.Object("FarmerReward1") - obj126 = ns.Object("FarmerReward2") - obj130 = ns.Object("W5Farmer") - obj131 = ns.Object("W5Hound") - obj132 = ns.Object("W5FarmerWife") - obj133 = ns.Object("W5SadVillager") - obj134 = ns.Object("W5Frog") - obj135 = ns.Object("FrogTrigger") - obj136 = ns.Object("FrogTrigger1") - obj137 = ns.Object("FrogTrigger2") - obj138 = ns.Object("FrogTrigger3") - obj139 = ns.Object("FrogTrigger4") - obj127 = ns.Object("FarmerStaff") - obj88 = ns.Object("AutoSave1Trigger") - obj89 = ns.Object("AutoSave2Trigger") - obj90 = ns.Object("AutoSave3Trigger") - obj91 = ns.Object("AutoSave4Trigger") - obj148 = ns.Object("Corpse1") - obj149 = ns.Object("Corpse2") - obj150 = ns.Object("Corpse3") - obj151 = ns.Object("Corpse4") - obj152 = ns.Object("Corpse5") - obj153 = ns.Object("Corpse6") - obj154 = ns.Object("Corpse7") - obj155 = ns.Object("Corpse8") - obj156 = ns.Object("Corpse9") - obj157 = ns.Object("Corpse10") - obj158 = ns.Object("Corpse11") - obj159 = ns.Object("Corpse12") - obj160 = ns.Object("Corpse13") - obj161 = ns.Object("Corpse14") - obj162 = ns.Object("Corpse15") - obj119 = ns.Object("JackLine5Trigger") - obj163 = ns.Object("OgreCorpse1") - obj164 = ns.Object("OgreCorpse2") - obj165 = ns.Object("OgreCorpse3") - obj128 = ns.Object("W5Maiden") - obj129 = ns.Object("MaidenObject") - obj123 = ns.Object("MaidenReward") - obj166 = ns.Object("Ogre1") - obj167 = ns.Object("Ogre2") - obj168 = ns.Object("Ogre3") - obj169 = ns.Object("Ogre4") - obj170 = ns.Object("Ogre5") - obj171 = ns.Object("Ogre6") - obj172 = ns.Object("Ogre7") - obj173 = ns.Object("Ogre8") - obj174 = ns.Object("Ogre9") - obj174 = ns.Object("Ogre10") - obj174 = ns.Object("Ogre11") - obj174 = ns.Object("Ogre12") - obj174 = ns.Object("Ogre13") - obj196 = ns.Object("HouseDoor1") - obj197 = ns.Object("HouseDoor1") - obj198 = ns.Object("CryptDoor1") - obj199 = ns.Object("CryptDoor2") - obj179 = ns.Object("W5Villager1") - obj180 = ns.Object("W5Villager2") - obj181 = ns.Object("W5Villager3") - obj182 = ns.Object("W5Villager4") - obj183 = ns.Object("W5Villager5") - obj184 = ns.Object("W5Villager6") - obj185 = ns.Object("W5Villager7") - obj186 = ns.Object("W5Villager8") - obj187 = ns.Object("W5Villager9") - wp190 = ns.Waypoint("Swordsman2WayPoint") - wp189 = ns.Waypoint("SwordsmanWayPoint") - wp146 = int(ns.Waypoint("SwordsmanTrigger1")) - wp147 = int(ns.Waypoint("SwordsmanTrigger2")) - wp204 = ns.Waypoint("IngridWayPoint") - wp205 = ns.Waypoint("IngridWayPoint2") - wp213 = ns.Waypoint("HorvathWayPoint") - wp214 = ns.Waypoint("HorvathWayPoint2") - wp215 = ns.Waypoint("HorvathAppears") - wp209 = ns.Waypoint("MaidenWayPoint") - wp191 = ns.Waypoint("FarmerWayPoint") - wp192 = ns.Waypoint("Farmer2WayPoint") - wp210 = ns.Waypoint("FarmerWifeWayPoint") - wp211 = ns.Waypoint("FarmerWife2WayPoint") - wp193 = ns.Waypoint("HoundWayPoint") - wp212 = ns.Waypoint("Hound2WayPoint") - wp208 = ns.Waypoint("WoundedVillagerWayPoint") - wp222 = ns.Waypoint("MaidenRewardWayPoint") - wp206 = ns.Waypoint("SadVillagerWayPoint") - wp207 = ns.Waypoint("SadVillagerWayPoint2") - wp194 = ns.Waypoint("FrogWayPoint1") - wp195 = ns.Waypoint("FrogWayPoint2") - wp216 = ns.Waypoint("Villager1Goal") - wp217 = ns.Waypoint("Villager2Goal") - wp218 = ns.Waypoint("Villager3Goal") - wp219 = ns.Waypoint("Villager4Goal") - wp220 = ns.Waypoint("Villager5Goal") - wp223 = ns.Waypoint("GypsyWayPoint") - wp224 = ns.Waypoint("GypsyWayPoint2") - wp225 = ns.Waypoint("ShopKeeperWayPoint") - wp226 = ns.Waypoint("ShopKeeperWayPoint2") - wp227 = ns.Waypoint("BartenderWayPoint") - wp228 = ns.Waypoint("BartenderWayPoint2") - wp221 = ns.Waypoint("PlayerStartWayPoint") - ns.SetDialog(obj140, ns.NORMAL, DrunkStart, DrunkEnd) - ns.StoryPic(obj140, "Townsman3Pic") - ns.SetDialog(obj141, ns.NORMAL, DrunkStart, DrunkEnd) - ns.StoryPic(obj141, "Townsman2Pic") - ns.SetDialog(obj142, ns.NORMAL, DrunkStart, DrunkEnd) - ns.StoryPic(obj142, "Townsman1Pic") - ns.StoryPic(obj130, "ThaviusPic") - ns.SetDialog(obj131, ns.NORMAL, HoundStart, HoundEnd) - ns.StoryPic(obj131, "WolfPic") - ns.SetDialog(obj133, ns.YESNO, SadVillagerStart, SadVillagerEnd) - ns.StoryPic(obj133, "Townsman3Pic") - ns.SetDialog(obj134, ns.NORMAL, FrogStart, FrogEnd) - ns.StoryPic(obj134, "FrogPic") - ns.SetDialog(obj92, ns.NEXT, IngridStart, IngridEnd) - ns.StoryPic(obj92, "IngridPic") - ns.SetDialog(obj93, ns.NORMAL, CaptainStart, CaptainEnd) - ns.StoryPic(obj93, "AirshipCaptainPic") - ns.SetDialog(obj132, ns.NORMAL, FarmerWifeStart, FarmerWifeEnd) - ns.StoryPic(obj132, "MaidenPic") - ns.SetDialog(obj128, ns.YESNO, MaidenStart, MaidenEnd) - ns.StoryPic(obj128, "MaidenPic") - ns.Frozen(obj134, true) - DisableVillagers() - KillCorpses() - LockDoors() - OwnVillagers() - HoundEnd() - ShopKeeperGuard() -} -func KeepOut() { - r1 := ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) - if !r1 { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func FrogReturned() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - ) - if !ns.IsCaller(obj134) { - goto LABEL1 - } - v0 = ns.GetWaypointX(wp194) - v1 = ns.GetWaypointY(wp194) - v2 = ns.GetWaypointX(wp195) - v3 = ns.GetWaypointY(wp195) - ns.ObjectOff(obj135) - ns.CreatureGuard(obj134, v0, v1, v2, v3, 0) - gvar74 = gvar15 -LABEL1: - return -} -func FrogDeath() { - gvar86 = 2 - gvar74 = gvar18 - ns.CancelDialog(obj134) -} -func AutoSave1() { - ns.AutoSave() - ns.ObjectOff(obj88) -} -func AutoSave2() { - ns.AutoSave() - ns.ObjectOff(obj89) -} -func AutoSave3() { - ns.AutoSave() - ns.FrameTimer(1, VillagePath) - ns.ObjectOff(obj90) -} -func AutoSave4() { - ns.AutoSave() - ns.ObjectOff(obj91) -} -func SecretFound() { - ns.PrintToAll("War05A.scr:Secret") - ns.MoveWaypoint(wp39, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.AudioEvent(ns.SecretFound, wp39) - ns.GiveXp(ns.GetHost(), 250) -} -func Hint() { - ns.PrintToAll("Journal:War05Hint1") - ns.JournalEntry(ns.GetHost(), "War05Hint1", 4) -} -func CrapFile() { -} -func OgreAttackStart() { - ns.ObjectGroupOff(gvar67) - UnfreezeAll() - ns.Music(26, 100) - ns.ObjectOn(obj52) - ns.ObjectOn(obj53) - ns.Frozen(obj48, false) - ns.Frozen(obj49, false) - ns.Frozen(obj55, false) - ns.Attack(obj55, obj48) - ns.Attack(obj48, obj55) - ns.Attack(obj49, obj55) -} -func DeadGuyArrive() { - if !ns.IsCaller(obj55) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.Frozen(obj55, true) - ns.Frozen(obj48, true) - ns.Frozen(obj49, true) - ns.CreatureIdle(obj55) - ns.CreatureIdle(obj48) - ns.CreatureIdle(obj49) - ns.LookAtObject(obj48, obj55) - ns.LookAtObject(obj55, obj49) - ns.LookAtObject(obj49, obj55) - ns.SecondTimer(2, OgresAttackDeadGuy) -LABEL1: - return -} -func OgresAttackDeadGuy() { - ns.Frozen(obj55, false) - ns.Frozen(obj48, false) - ns.Frozen(obj49, false) - ns.Frozen(obj54, false) - ns.Attack(obj55, obj49) - ns.Attack(obj48, obj55) - ns.Attack(obj49, obj55) -} -func DeadGuyDie() { - ns.AggressionLevel(obj48, 0.83) - ns.AggressionLevel(obj49, 0.83) -} -func LunchOgreReport() { - if !(ns.CurrentHealth(obj55) > 0) { - goto LABEL1 - } - ns.Attack(ns.GetTrigger(), obj55) -LABEL1: - return -} -func LunchOgre1Trigger() { - if !ns.IsCaller(obj48) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ivar229 += 1 - ns.AggressionLevel(obj48, 0.83) -LABEL1: - return -} -func LunchOgre2Trigger() { - if !ns.IsCaller(obj49) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ivar229 += 1 - ns.AggressionLevel(obj49, 0.83) -LABEL1: - return -} -func UnfreezeAll() { - ns.Frozen(ns.GetHost(), false) - ns.Frozen(obj179, false) - ns.Frozen(obj180, false) - ns.Frozen(obj181, false) - ns.Frozen(obj182, false) - ns.Frozen(obj183, false) - ns.Frozen(obj184, false) - ns.Frozen(obj185, false) - ns.Frozen(obj186, false) - ns.Frozen(obj187, false) - ns.Frozen(obj50, false) - ns.Frozen(obj51, false) - ns.Frozen(obj130, false) - ns.Frozen(obj54, false) - ns.Wander(obj130) - ns.CreatureFollow(obj51, obj130) -} -func GoAway() { - r1 := ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) - if !r1 { - goto LABEL1 - } - if !(ns.CurrentHealth(ns.GetCaller()) > 0) { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func MakeAWish() { - var v0 int - v0 = ns.MaxHealth(ns.GetCaller()) - ns.RestoreHealth(ns.GetCaller(), v0-ns.CurrentHealth(ns.GetCaller())) - ns.PrintToAll("GeneralPrint:WellSignRefresh") - ns.AudioEvent(ns.RestoreHealthName, wp40) -} -func KillWoundedRefugee2() { - ns.Damage(obj42, 0, 15, 5) -} -func WoundedRefugeeStart() { - var ( - v0 float32 - v1 float32 - v2 int - ) - v2 = gvar234 - if v2 == gvar230 { - goto LABEL1 - } - if v2 == gvar231 { - goto LABEL2 - } - if v2 == gvar232 { - goto LABEL3 - } - if v2 == gvar233 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - ns.TellStory(ns.SwordsmanHurt, "War05A:WoundedRefugeeGreeting") - goto LABEL5 -LABEL2: - if !ns.HasItem(ns.GetHost(), obj44) { - goto LABEL6 - } - v0 = ns.GetWaypointX(wp34) - v1 = ns.GetWaypointY(wp34) - ns.AudioEvent(ns.CurePoisonCast, wp34) - ns.AudioEvent(ns.CurePoisonEffect, wp34) - ns.Delete(obj42) - obj42 = obj43 - ns.MoveObject(obj42, v0, v1) - gvar234 = gvar232 - WoundedRefugeeStart() - goto LABEL3 -LABEL6: - ns.TellStory(ns.SwordsmanHurt, "War05A:WoundedRefugeeWaiting") - goto LABEL5 -LABEL3: - ns.TellStory(ns.SwordsmanHurt, "War05A:WoundedRefugeeHealed") - gvar234 = gvar232 - goto LABEL5 -LABEL4: - ns.TellStory(ns.SwordsmanHurt, "War05A:WoundedRefugeeIdle") - goto LABEL5 -LABEL5: - return -} -func WoundedRefugeeEnd() { - var v0 int - v0 = gvar234 - if v0 == gvar230 { - goto LABEL1 - } - if v0 == gvar231 { - goto LABEL2 - } - if v0 == gvar232 { - goto LABEL3 - } - if v0 == gvar233 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - gvar234 = gvar231 - goto LABEL5 -LABEL2: - goto LABEL5 -LABEL3: - gvar234 = gvar233 - ns.Move(obj42, wp35) - goto LABEL5 -LABEL4: - goto LABEL5 -LABEL5: - return -} -func KillWoundedRefugee() { - ns.FrameTimer(30, KillWoundedRefugee2) -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapEntry": - MapEntry() - case "MapInitialize": - MapInitialize() - } -} diff --git a/examples/war05b/dummy_test.go b/examples/war05b/dummy_test.go deleted file mode 100644 index 723c085..0000000 --- a/examples/war05b/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package war05b - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/war05b/war05b.go b/examples/war05b/war05b.go deleted file mode 100644 index 8ae3021..0000000 --- a/examples/war05b/war05b.go +++ /dev/null @@ -1,615 +0,0 @@ -package war05b - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 ns.ObjectID - gvar5 ns.WallGroupID - obj6 ns.ObjectID - obj7 ns.ObjectID - obj8 ns.ObjectID - obj9 ns.ObjectID - obj10 ns.ObjectID - wp11 ns.WaypointID - gvar12 int - gvar13 int - gvar14 int - gvar15 int - gvar16 int - gvar17 int - gvar18 int - gvar19 int - gvar20 int - gvar21 int - gvar22 int - gvar23 int - gvar24 int - ivar25 int - flag26 bool - flag27 bool - flag28 bool - obj29 ns.ObjectID - obj30 ns.ObjectID - obj31 ns.ObjectID - obj32 ns.ObjectID - obj33 ns.ObjectID - obj34 ns.ObjectID - obj35 ns.ObjectID - obj36 ns.ObjectID - obj37 ns.ObjectID - obj38 ns.ObjectID - obj39 ns.ObjectID - obj40 ns.ObjectID - obj41 ns.ObjectID - obj42 ns.ObjectID - obj43 ns.ObjectID - obj44 ns.ObjectID - obj45 ns.ObjectID - obj46 ns.ObjectID - obj47 ns.ObjectID - obj48 ns.ObjectID - obj49 ns.ObjectID - gvar50 ns.ObjectGroupID - gvar51 ns.ObjectGroupID - gvar52 ns.WallGroupID - wp53 ns.WaypointID - wp54 ns.WaypointID - wp55 ns.WaypointID - wp56 ns.WaypointID - wp57 ns.WaypointID - wp58 ns.WaypointID - wp59 ns.WaypointID - wp60 ns.WaypointID - wp61 ns.WaypointID - wp62 ns.WaypointID - wp63 ns.WaypointID - wp64 ns.WaypointID - wp65 ns.WaypointID - wp66 ns.WaypointID - wp67 ns.WaypointID - wp68 ns.WaypointID - wp69 ns.WaypointID - gvar70 ns.ObjectGroupID -) - -func init() { - gvar12 = 0 - gvar13 = 1 - gvar14 = 2 - gvar15 = 3 - gvar16 = 4 - gvar17 = 5 - gvar18 = 6 - gvar19 = 7 - gvar20 = 8 - gvar21 = gvar12 - gvar22 = gvar14 - gvar23 = gvar16 - gvar24 = gvar19 - ivar25 = 0 - flag26 = false - flag27 = false - flag28 = false -} -func StopElevator() { - ns.ObjectOff(obj4) - ns.FrameTimer(60, LowerKeyProtectWalls) -} -func LowerKeyProtectWalls() { - ns.NoWallSound(true) - ns.WallGroupOpen(gvar5) - ns.NoWallSound(false) -} -func RaiseKey() { - ns.ObjectOn(obj4) - ns.FrameTimer(5, StopElevator) -} -func UnlockMainGates() { - ns.ObjectOff(obj8) - ns.UnlockDoor(obj6) - ns.UnlockDoor(obj7) -} -func DefendCage() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Attack(ns.GetTrigger(), ns.GetHost()) -LABEL1: - return -} -func ReturnToPost() { - if !(ns.IsCaller(obj9) || ns.IsCaller(obj10)) { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func SecretFound() { - ns.PrintToAll("GeneralPrint:SecretFound") - ns.MoveWaypoint(wp11, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.AudioEvent(ns.SecretFound, wp11) - ns.GiveXp(ns.GetHost(), 40) -} -func CallForGuards() { - ns.Frozen(obj45, true) - ns.CreatureIdle(obj45) - ns.SetDialog(obj45, ns.NEXT, KingStart, KingEnd) - ns.StoryPic(obj45, "OgreWarlordPic") - ns.StartDialog(obj45, ns.GetHost()) -} -func ProtectTheKing() { - LetterBoxOff() - ns.ObjectGroupOn(gvar70) - ns.Frozen(ns.GetHost(), false) - ns.EnchantOff(obj45, ns.ENCHANT_INVULNERABLE) - ns.ClearOwner(obj45) - ns.Frozen(obj45, false) - ns.ObjectOn(obj46) - ns.ObjectOn(obj47) - ns.ObjectOn(obj48) - ns.AggressionLevel(obj45, 0.5) - ns.MoveObject(obj46, ns.GetWaypointX(wp65), ns.GetWaypointY(wp65)) - ns.MoveObject(obj47, ns.GetWaypointX(wp66), ns.GetWaypointY(wp66)) - ns.MoveObject(obj48, ns.GetWaypointX(wp67), ns.GetWaypointY(wp67)) - ns.Wander(obj46) - ns.Wander(obj47) - ns.CreatureGuard(obj48, ns.GetWaypointX(wp68), ns.GetWaypointY(wp68), ns.GetWaypointX(wp64), ns.GetWaypointY(wp64), 0) -} -func KingStart() { - var v0 int - v0 = gvar24 - if v0 == gvar19 { - goto LABEL1 - } - if v0 == gvar20 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.TellStory(ns.SwordsmanHurt, "Con05:OgreTalk07") - ns.LookAtObject(obj45, ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj45) - goto LABEL3 -LABEL2: - ns.TellStory(ns.SwordsmanHurt, "Con05:OgreTalk08") - goto LABEL3 -LABEL3: - return -} -func KingEnd() { - var v0 int - v0 = gvar24 - if v0 == gvar19 { - goto LABEL1 - } - if v0 == gvar20 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - gvar24 = gvar20 - ns.StartDialog(obj45, ns.GetHost()) - goto LABEL3 -LABEL2: - ns.CancelDialog(obj45) - ProtectTheKing() - ns.CreatureGuard(obj45, ns.GetWaypointX(wp64), ns.GetWaypointY(wp64), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 500) - goto LABEL3 -LABEL3: - return -} -func CaptainStart() { - var v0 int - v0 = gvar21 - if v0 == gvar12 { - goto LABEL1 - } - if v0 == gvar13 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.LookAtObject(obj37, ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj37) - ns.TellStory(ns.SwordsmanHurt, "War05B.scr:CaptainWaiting") - goto LABEL3 -LABEL2: - ns.LookAtObject(obj37, ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj37) - ns.TellStory(ns.SwordsmanHurt, "War05B.scr:CaptainSuccess3") - goto LABEL3 -LABEL3: - return -} -func CaptainEnd() { - var v0 int - v0 = gvar21 - if v0 == gvar12 { - goto LABEL1 - } - if v0 == gvar13 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - goto LABEL3 -LABEL2: - ns.JournalEdit(ns.GetHost(), "War05Quest4", 4) - ns.CancelDialog(obj37) - gvar23 = gvar18 - ns.SetDialog(obj38, ns.NORMAL, IngridStart, IngridEnd) - ns.StartDialog(obj38, ns.GetHost()) - goto LABEL3 -LABEL3: - return -} -func LetterBoxOn() { - ns.WideScreen(true) -} -func LetterBoxOff() { - ns.WideScreen(false) -} -func PlayerDeath() { - ns.DeathScreen(5) -} -func MaidenStart() { - var v0 int - v0 = gvar22 - if v0 == gvar14 { - goto LABEL1 - } - if v0 == gvar15 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.TellStory(ns.SwordsmanHurt, "War05B.scr:MaidenFollowing") - goto LABEL3 -LABEL2: - ns.TellStory(ns.SwordsmanHurt, "War05B.scr:MaidenRescued") - goto LABEL3 -LABEL3: - return -} -func MaidenEnd() { - var v0 int - v0 = gvar22 - if v0 == gvar14 { - goto LABEL1 - } - if v0 == gvar15 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - goto LABEL3 -LABEL2: - goto LABEL3 -LABEL3: - return -} -func RescueMaidens() { - ns.ObjectOff(obj34) - ns.SetQuestStatus(1, "ChicksSaved") - LetterBoxOn() - ns.Frozen(ns.GetHost(), true) - ns.CreatureFollow(obj30, ns.GetHost()) - ns.CreatureFollow(obj31, ns.GetHost()) - ns.CreatureFollow(obj32, ns.GetHost()) - ns.CreatureFollow(obj33, ns.GetHost()) - ns.CreatureFollow(obj29, ns.GetHost()) - ns.SetDialog(obj29, ns.NORMAL, SisterStart, SisterEnd) - ns.StoryPic(obj29, "GlyndaPic") - ns.LookAtObject(obj29, ns.GetHost()) - ns.StartDialog(obj29, ns.GetHost()) - ns.StoryPic(obj30, "MaidenPic") - ns.StoryPic(obj31, "MaidenPic2") - ns.StoryPic(obj32, "MaidenPic3") - ns.StoryPic(obj33, "MaidenPic4") -} -func SisterStart() { - var v0 int - v0 = gvar23 - if v0 == gvar16 { - goto LABEL1 - } - if v0 == gvar17 { - goto LABEL2 - } - if v0 == gvar18 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - ns.LookAtObject(obj29, ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj29) - ns.TellStory(ns.SwordsmanHurt, "War05B.scr:SisterFreed") - goto LABEL4 -LABEL2: - ns.LookAtObject(obj29, ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj29) - ns.TellStory(ns.SwordsmanHurt, "War05B.scr:SisterFollowing3") - goto LABEL4 -LABEL3: - ns.LookAtObject(obj29, ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj29) - ns.TellStory(ns.SwordsmanHurt, "War05B.scr:SisterIdle") - goto LABEL4 -LABEL4: - return -} -func SisterEnd() { - var v0 int - v0 = gvar23 - if v0 == gvar16 { - goto LABEL1 - } - if v0 == gvar17 { - goto LABEL2 - } - if v0 == gvar18 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - LetterBoxOff() - ns.Frozen(ns.GetHost(), false) - ns.BecomePet(obj30) - ns.BecomePet(obj31) - ns.BecomePet(obj32) - ns.BecomePet(obj33) - ns.BecomePet(obj29) - MoveNPCs() - gvar23 = gvar17 - ns.SetQuestStatus(1, "MaidensRescued") - ns.CancelDialog(obj29) - goto LABEL4 -LABEL2: - goto LABEL4 -LABEL3: - ns.SetDialog(obj38, ns.NORMAL, IngridStart, IngridEnd) - ns.StartDialog(obj38, ns.GetHost()) - goto LABEL4 -LABEL4: - return -} -func MoveNPCs() { - ns.MoveObject(obj37, ns.GetWaypointX(wp53), ns.GetWaypointY(wp53)) - ns.CreatureGuard(obj37, ns.GetWaypointX(wp53), ns.GetWaypointY(wp53), ns.GetWaypointX(wp57), ns.GetWaypointY(wp57), 0) - ns.MoveObject(obj38, ns.GetWaypointX(wp63), ns.GetWaypointY(wp63)) - ns.CreatureGuard(obj38, ns.GetWaypointX(wp63), ns.GetWaypointY(wp63), ns.GetWaypointX(wp57), ns.GetWaypointY(wp57), 0) - ns.MoveObject(obj41, ns.GetWaypointX(wp54), ns.GetWaypointY(wp54)) - ns.CreatureGuard(obj41, ns.GetWaypointX(wp54), ns.GetWaypointY(wp54), ns.GetWaypointX(wp56), ns.GetWaypointY(wp56), 0) - ns.MoveObject(obj42, ns.GetWaypointX(wp55), ns.GetWaypointY(wp55)) - ns.CreatureGuard(obj42, ns.GetWaypointX(wp55), ns.GetWaypointY(wp55), ns.GetWaypointX(wp56), ns.GetWaypointY(wp56), 0) -} -func FinalScene() { - LetterBoxOn() - ns.Frozen(ns.GetHost(), true) - gvar21 = gvar13 - ns.SetDialog(obj37, ns.NEXT, CaptainStart, CaptainEnd) - ns.StartDialog(obj37, ns.GetHost()) -} -func IngridStart() { - ns.LookAtObject(obj38, ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj38) - ns.TellStory(ns.SwordsmanHurt, "War05B.scr:IngridReturned") -} -func IngridEnd() { - ns.Pickup(ns.GetHost(), obj40) - ns.Pickup(ns.GetHost(), obj39) - ns.CancelDialog(obj38) - MissionComplete() -} -func MissionComplete() { - ns.GiveXp(ns.GetHost(), 1000) - ns.Blind() - ns.FrameTimer(45, Victory) -} -func Victory() { - ns.Frozen(ns.GetHost(), false) - LetterBoxOff() - ns.MoveObject(ns.GetHost(), ns.GetWaypointX(wp69), ns.GetWaypointY(wp69)) -} -func MaidenDeath() { - ns.PrintToAll("War05B.scr:MaidenDeath") - ns.DeathScreen(5) -} -func MapInitialize() { - obj6 = ns.Object("MainGate1") - obj7 = ns.Object("MainGate2") - obj8 = ns.Object("MainGateSwitch") - obj43 = ns.Object("TownGate1") - obj44 = ns.Object("TownGate2") - obj29 = ns.Object("W5Sister") - obj30 = ns.Object("W5Maiden1") - obj31 = ns.Object("W5Maiden2") - obj32 = ns.Object("W5Maiden3") - obj33 = ns.Object("W5Maiden4") - obj34 = ns.Object("SetMaidenDialogTrigger") - obj35 = ns.Object("CellDoor") - obj36 = ns.Object("CellDoorSwitch") - obj41 = ns.Object("Soldier1") - obj42 = ns.Object("Soldier2") - obj37 = ns.Object("W5Captain") - obj38 = ns.Object("W5Ingrid") - obj39 = ns.Object("PotionGift") - obj40 = ns.Object("GoldGift") - obj45 = ns.Object("OgreKing") - obj49 = ns.Object("CallForGuardsTrigger") - obj4 = ns.Object("KeyElevator") - obj46 = ns.Object("Guard1") - obj47 = ns.Object("Guard2") - obj48 = ns.Object("Guard3") - obj9 = ns.Object("CageGuard1") - obj10 = ns.Object("CageGuard2") - gvar50 = ns.ObjectGroup("KingTriggerGroup") - gvar51 = ns.ObjectGroup("CaveEnemies") - gvar70 = ns.ObjectGroup("WarlordOgres") - gvar52 = ns.WallGroup("LordSafetyWalls") - gvar5 = ns.WallGroup("KeyProtectWalls") - wp64 = ns.Waypoint("OgreKingWaypoint") - wp53 = ns.Waypoint("CaptainWP") - wp54 = ns.Waypoint("Soldier1WP") - wp55 = ns.Waypoint("Soldier2WP") - wp56 = ns.Waypoint("SoldierLook") - wp57 = ns.Waypoint("FaceWP") - wp58 = ns.Waypoint("WP1") - wp59 = ns.Waypoint("WP2") - wp60 = ns.Waypoint("WP3") - wp61 = ns.Waypoint("WP4") - wp62 = ns.Waypoint("SisterWP") - wp63 = ns.Waypoint("IngridWP") - wp65 = ns.Waypoint("Guard1WP") - wp66 = ns.Waypoint("Guard2WP") - wp67 = ns.Waypoint("Guard3WP") - wp68 = ns.Waypoint("Guard3SpotWP") - wp69 = ns.Waypoint("MapExit") - wp11 = ns.Waypoint("PlayerSounds") - ns.StoryPic(obj37, "AirshipCaptainPic") - ns.SetDialog(obj37, ns.NORMAL, CaptainStart, CaptainEnd) - ns.StoryPic(obj38, "IngridPic") - ns.LockDoor(obj35) - ns.LockDoor(obj6) - ns.LockDoor(obj7) -} -func KeepOut() { - r1 := ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) - if !r1 { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func Activate() { - flag26 = true - ns.ObjectGroupOff(gvar50) - ns.ObjectOn(obj49) - ns.Frozen(ns.GetHost(), true) - ns.ObjectGroupOff(gvar70) - ns.FrameTimer(1, LetterBoxOn) - ns.NoWallSound(true) - ns.WallGroupOpen(gvar52) - ns.NoWallSound(false) - ns.Move(obj45, wp64) -} -func PummelPlayer() { - ns.HitLocation(ns.GetTrigger(), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) -} -func MapEntry() { - ns.Frozen(ns.GetHost(), false) - ns.WideScreen(false) - ns.Music(7, 100) - if ns.GetQuestStatus("MaidensRescued") != 1 { - goto LABEL1 - } - obj30 = ns.Object("War05B:W5Maiden1") - obj31 = ns.Object("War05B:W5Maiden2") - obj32 = ns.Object("War05B:W5Maiden3") - obj33 = ns.Object("War05B:W5Maiden4") - obj29 = ns.Object("War05B:W5Sister") - ns.SetCallback(obj30, 5, MaidenDeath) - ns.SetCallback(obj31, 5, MaidenDeath) - ns.SetCallback(obj32, 5, MaidenDeath) - ns.SetCallback(obj33, 5, MaidenDeath) - ns.SetCallback(obj29, 5, MaidenDeath) -LABEL1: - return -} -func FadeOut() { - ns.Frozen(ns.GetHost(), true) - ns.CreatureIdle(ns.GetHost()) - ns.Blind() -} -func UnlockCellDoor() { - ns.ObjectOff(obj36) - ns.UnlockDoor(obj35) - ns.PrintToAll("War05B.scr:OgreCageUnlocked") -} -func PlayerLeft() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - flag28 = false -LABEL1: - return -} -func CheckRescue() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - flag28 = true - if ns.GetQuestStatus("MaidensRescued") != 1 { - goto LABEL1 - } - ns.CancelDialog(obj29) - ns.Enchant(obj30, ns.ENCHANT_INVULNERABLE, 0) - ns.Enchant(obj31, ns.ENCHANT_INVULNERABLE, 0) - ns.Enchant(obj32, ns.ENCHANT_INVULNERABLE, 0) - ns.Enchant(obj33, ns.ENCHANT_INVULNERABLE, 0) - ns.Enchant(obj29, ns.ENCHANT_INVULNERABLE, 0) - FinalScene() -LABEL1: - return -} -func CheckRescue2() { - if !ns.IsCaller(obj30) { - goto LABEL1 - } - ns.BecomeEnemy(ns.GetCaller()) - ns.CreatureGuard(ns.GetCaller(), ns.GetWaypointX(wp58), ns.GetWaypointY(wp58), ns.GetWaypointX(wp57), ns.GetWaypointY(wp57), 0) - ns.CancelDialog(obj30) - ivar25 += 1 -LABEL1: - if !ns.IsCaller(obj31) { - goto LABEL2 - } - ns.BecomeEnemy(ns.GetCaller()) - ns.CreatureGuard(ns.GetCaller(), ns.GetWaypointX(wp59), ns.GetWaypointY(wp59), ns.GetWaypointX(wp57), ns.GetWaypointY(wp57), 0) - ns.CancelDialog(obj31) - ivar25 += 1 -LABEL2: - if !ns.IsCaller(obj32) { - goto LABEL3 - } - ns.BecomeEnemy(ns.GetCaller()) - ns.CreatureGuard(ns.GetCaller(), ns.GetWaypointX(wp60), ns.GetWaypointY(wp60), ns.GetWaypointX(wp57), ns.GetWaypointY(wp57), 0) - ns.CancelDialog(obj32) - ivar25 += 1 -LABEL3: - if !ns.IsCaller(obj33) { - goto LABEL4 - } - ns.BecomeEnemy(ns.GetCaller()) - ns.CreatureGuard(ns.GetCaller(), ns.GetWaypointX(wp61), ns.GetWaypointY(wp61), ns.GetWaypointX(wp57), ns.GetWaypointY(wp57), 0) - ns.CancelDialog(obj33) - ivar25 += 1 -LABEL4: - if !ns.IsCaller(obj29) { - goto LABEL5 - } - ns.BecomeEnemy(ns.GetCaller()) - ns.CreatureGuard(ns.GetCaller(), ns.GetWaypointX(wp62), ns.GetWaypointY(wp62), ns.GetWaypointX(wp57), ns.GetWaypointY(wp57), 0) - ns.CancelDialog(obj29) - ivar25 += 1 -LABEL5: - r26 := ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) - if !r26 { - goto LABEL6 - } - ns.GoBackHome(ns.GetCaller()) -LABEL6: - return -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapInitialize": - MapInitialize() - case "MapEntry": - MapEntry() - } -} diff --git a/examples/war05c/dummy_test.go b/examples/war05c/dummy_test.go deleted file mode 100644 index 3f6da13..0000000 --- a/examples/war05c/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package war05c - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/war05c/war05c.go b/examples/war05c/war05c.go deleted file mode 100644 index 391a389..0000000 --- a/examples/war05c/war05c.go +++ /dev/null @@ -1,543 +0,0 @@ -package war05c - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - gvar4 ns.WallGroupID - gvar5 ns.WallGroupID - gvar6 ns.WallGroupID - obj7 ns.ObjectID - obj8 ns.ObjectID - obj9 ns.ObjectID - obj10 ns.ObjectID - obj11 ns.ObjectID - obj12 ns.ObjectID - obj13 ns.ObjectID - obj14 ns.ObjectID - obj15 ns.ObjectID - obj16 ns.ObjectID - obj17 ns.ObjectID - obj18 ns.ObjectID - obj19 ns.ObjectID - obj20 ns.ObjectID - obj21 ns.ObjectID - obj22 ns.ObjectID - obj23 ns.ObjectID - obj24 ns.ObjectID - obj25 ns.ObjectID - obj26 ns.ObjectID - obj27 ns.ObjectID - obj28 ns.ObjectID - obj29 ns.ObjectID - obj30 ns.ObjectID - obj31 ns.ObjectID - obj32 ns.ObjectID - obj33 ns.ObjectID - obj34 ns.ObjectID - obj35 ns.ObjectID - obj36 ns.ObjectID - wp37 ns.WaypointID - wp38 ns.WaypointID - wp39 ns.WaypointID - wp40 ns.WaypointID - wp41 ns.WaypointID - wp42 ns.WaypointID - wp43 ns.WaypointID - wp44 ns.WaypointID - wp45 ns.WaypointID - wp46 ns.WaypointID - wp47 ns.WaypointID - wp48 ns.WaypointID - wp49 ns.WaypointID - wp50 ns.WaypointID - wp51 ns.WaypointID - gvar52 ns.ObjectGroupID - obj53 ns.ObjectID - obj54 ns.ObjectID - obj55 ns.ObjectID - obj56 ns.ObjectID - obj57 ns.ObjectID - obj58 ns.ObjectID - obj59 ns.ObjectID - obj60 ns.ObjectID - obj61 ns.ObjectID - gvar62 int - gvar63 ns.WallGroupID - obj64 ns.ObjectID - obj65 ns.ObjectID - obj66 ns.ObjectID - obj67 ns.ObjectID - obj68 ns.ObjectID - obj69 ns.ObjectID - obj70 ns.ObjectID - obj71 ns.ObjectID - obj72 ns.ObjectID - obj73 ns.ObjectID - obj74 ns.ObjectID - obj75 ns.ObjectID - obj76 ns.ObjectID - obj77 ns.ObjectID - obj78 ns.ObjectID - obj79 ns.ObjectID - obj80 ns.ObjectID - obj81 ns.ObjectID - obj82 ns.ObjectID - obj83 ns.ObjectID - obj84 ns.ObjectID - obj85 ns.ObjectID - obj86 ns.ObjectID - obj87 ns.ObjectID - obj88 ns.ObjectID - obj89 ns.ObjectID - obj90 ns.ObjectID - obj91 ns.ObjectID - obj92 ns.ObjectID - obj93 ns.ObjectID - obj94 ns.ObjectID - obj95 ns.ObjectID - obj96 ns.ObjectID - obj97 ns.ObjectID - obj98 ns.ObjectID - obj99 ns.ObjectID - gvar100 ns.WallGroupID - wp101 ns.WaypointID - wp102 ns.WaypointID - wp103 ns.WaypointID - wp104 ns.WaypointID - wp105 ns.WaypointID - wp106 ns.WaypointID - wp107 ns.WaypointID - wp108 ns.WaypointID - wp109 ns.WaypointID - wp110 ns.WaypointID - wp111 ns.WaypointID - wp112 ns.WaypointID - wp113 ns.WaypointID - wp114 ns.WaypointID - wp115 ns.WaypointID - wp116 ns.WaypointID - wp117 ns.WaypointID - wp118 ns.WaypointID - wp119 ns.WaypointID - wp120 ns.WaypointID - wp121 ns.WaypointID - wp122 ns.WaypointID - wp123 ns.WaypointID - wp124 ns.WaypointID - gvar125 int - obj126 ns.ObjectID - obj127 ns.ObjectID - obj128 ns.ObjectID - obj129 ns.ObjectID - wp130 ns.WaypointID - wp131 ns.WaypointID - obj132 ns.ObjectID - obj133 ns.ObjectID - obj134 ns.ObjectID - obj135 ns.ObjectID - wp136 ns.WaypointID - wp137 ns.WaypointID -) - -func DisableElevators() { - ns.ObjectOff(obj24) - ns.ObjectOff(obj25) - ns.ObjectOff(obj26) - ns.ObjectOff(obj27) - ns.ObjectOff(obj28) - ns.ObjectOff(obj29) -} -func EnableSkeletons() { - ns.AggressionLevel(obj30, 0.83) - ns.AggressionLevel(obj31, 0.83) - ns.AggressionLevel(obj32, 0.83) - ns.AggressionLevel(obj33, 0.83) - ns.AggressionLevel(obj34, 0.83) - ns.AggressionLevel(obj35, 0.83) -} -func BreakWalls1() { - ns.WallGroupOpen(gvar4) -} -func EnableElevators1() { - ns.ObjectOn(obj24) - ns.ObjectOn(obj25) - ns.ObjectOn(obj26) - ns.ObjectOn(obj27) - ns.ObjectOn(obj28) - ns.ObjectOn(obj29) - ns.FrameTimer(20, SkeletonGoal) - EnableSkeletons() -} -func SkeletonGoal() { - ns.Move(obj30, wp51) - ns.Move(obj31, wp51) - ns.Move(obj32, wp51) - ns.Move(obj33, wp51) - ns.Move(obj34, wp51) - ns.Move(obj35, wp51) -} -func EndTrap1() { - ns.Move(obj9, wp41) - ns.Move(obj10, wp42) - ns.Move(obj11, wp43) - ns.Move(obj12, wp44) - ns.ObjectOff(obj36) - ns.AudioEvent(ns.EarthRumbleMinor, wp37) - ns.AudioEvent(ns.SecretWallSecret, wp37) -} -func OpenGates() { - ns.WallOpen(ns.Wall(96, 208)) - ns.WallOpen(ns.Wall(95, 209)) - ns.WallOpen(ns.Wall(94, 210)) -} -func CloseBlocks() { - ns.Move(obj7, wp45) - ns.Move(obj8, wp46) - ns.AudioEvent(ns.BoulderMove, wp38) - ns.AudioEvent(ns.EarthRumbleMinor, wp38) - ns.AudioEvent(ns.SecretWallOpen, wp38) - ns.AudioEvent(ns.StoneBlockMove, wp38) -} -func OpenBlocks() { - ns.ObjectOff(ns.GetTrigger()) - ns.Move(obj7, wp39) - ns.Move(obj8, wp40) - ns.AudioEvent(ns.BoulderMove, wp38) - ns.AudioEvent(ns.EarthRumbleMinor, wp38) - ns.AudioEvent(ns.SecretWallOpen, wp38) - ns.AudioEvent(ns.StoneBlockMove, wp38) -} -func Trap1() { - ns.ObjectOff(obj13) - ns.ObjectOff(obj14) - ns.ObjectOff(obj15) - ns.ObjectOff(obj16) - ns.ObjectOff(obj17) - ns.Move(obj9, wp47) - ns.Move(obj10, wp48) - ns.Move(obj11, wp49) - ns.Move(obj12, wp50) - ns.AudioEvent(ns.EarthRumbleMajor, wp50) - ns.SecondTimer(1, BreakWalls1) - ns.SecondTimer(2, EnableElevators1) - ns.Music(27, 100) -} -func CloseBlocks2() { - ns.Move(obj7, wp45) - ns.Move(obj8, wp46) - ns.Move(obj9, wp47) - ns.Move(obj10, wp48) -} -func LockCellDoors() { - ns.LockDoor(obj73) - ns.LockDoor(obj74) - ns.LockDoor(obj75) - ns.LockDoor(obj76) - ns.LockDoor(obj77) - ns.LockDoor(obj78) - ns.LockDoor(obj79) - ns.LockDoor(obj80) - ns.LockDoor(obj81) - ns.LockDoor(obj82) - ns.LockDoor(obj83) - ns.LockDoor(obj84) -} -func EnableSpikes() { - ns.Move(obj86, wp113) - ns.Move(obj87, wp114) - ns.Move(obj88, wp115) - ns.Move(obj89, wp116) - ns.Move(obj90, wp117) - ns.Move(obj91, wp118) - ns.Move(obj92, wp119) - ns.Move(obj93, wp120) - ns.Move(obj94, wp121) - ns.Move(obj95, wp122) - ns.Move(obj96, wp123) - ns.Move(obj97, wp124) - ns.FrameTimer(50, DisableSpikes) -} -func DisableSpikes() { - ns.Move(obj86, wp101) - ns.Move(obj87, wp102) - ns.Move(obj88, wp103) - ns.Move(obj89, wp104) - ns.Move(obj90, wp105) - ns.Move(obj91, wp106) - ns.Move(obj92, wp107) - ns.Move(obj93, wp108) - ns.Move(obj94, wp109) - ns.Move(obj95, wp110) - ns.Move(obj96, wp111) - ns.Move(obj97, wp112) - ns.FrameTimer(50, EnableSpikes) -} -func EnableGears() { - ns.ObjectOn(obj64) - ns.ObjectOn(obj65) - ns.SecondTimer(2, DisableGears) -} -func DisableGears() { - ns.ObjectOff(obj64) - ns.ObjectOff(obj65) -} -func KillSkeleton7() { - ns.Damage(obj72, 0, 1000, 0) -} -func MaidenDeath() { - ns.PrintToAll("War05B.scr:MaidenDeath") - ns.DeathScreen(5) -} -func LetterBoxOff() { - ns.WideScreen(false) -} -func PlayerDeath() { - ns.PrintToAll("War05A.scr:PlayerDeath") - ns.Blind() - ns.FrameTimer(30, ChapterFail2) -} -func SpikeNoise1() { - ns.AudioEvent(ns.EarthRumbleMajor, wp122) - ns.AudioEvent(ns.EarthRumbleMajor, wp116) - ns.FrameTimer(60, SpikeNoise1) -} -func MapInitialize() { - wp136 = ns.Waypoint("Secret01WP") - wp137 = ns.Waypoint("Secret02WP") - gvar52 = ns.ObjectGroup("BatEntryGroup") - obj58 = ns.Object("Bear1") - obj98 = ns.Object("Ogre1") - obj99 = ns.Object("Ogre2") - gvar63 = ns.WallGroup("ScorpionWallGroup") - obj7 = ns.Object("Block1") - obj8 = ns.Object("Block2") - obj9 = ns.Object("Block3") - obj10 = ns.Object("Block4") - obj11 = ns.Object("Block5") - obj12 = ns.Object("Block6") - obj18 = ns.Object("BlockMover1") - obj19 = ns.Object("BlockMover2") - obj20 = ns.Object("BlockMover3") - obj21 = ns.Object("BlockMover4") - obj22 = ns.Object("BlockMover5") - obj23 = ns.Object("BlockMover6") - obj132 = ns.Object("SilverKeyTrigger1") - obj133 = ns.Object("SilverKeyTrigger2") - obj134 = ns.Object("SilverKeyTrigger3") - obj135 = ns.Object("SilverKeyTrigger4") - gvar100 = ns.WallGroup("SilverKeyWallGroup") - obj126 = ns.Object("Grunt1") - obj127 = ns.Object("Grunt2") - obj128 = ns.Object("Grunt3") - obj129 = ns.Object("Grunt4") - gvar4 = ns.WallGroup("AmbushWallGroup") - obj66 = ns.Object("Pit1") - obj67 = ns.Object("Pit2") - obj68 = ns.Object("Pit3") - obj69 = ns.Object("Pit4") - obj70 = ns.Object("Pit5") - obj71 = ns.Object("Pit6") - obj24 = ns.Object("Elevator1") - obj25 = ns.Object("Elevator2") - obj26 = ns.Object("Elevator3") - obj27 = ns.Object("Elevator4") - obj28 = ns.Object("Elevator5") - obj29 = ns.Object("Elevator6") - obj30 = ns.Object("Skeleton1") - obj31 = ns.Object("Skeleton2") - obj32 = ns.Object("Skeleton3") - obj33 = ns.Object("Skeleton4") - obj34 = ns.Object("Skeleton5") - obj35 = ns.Object("Skeleton6") - obj72 = ns.Object("Skeleton7") - obj36 = ns.Object("EndTrapTrigger") - obj64 = ns.Object("Gear1") - obj65 = ns.Object("Gear2") - obj13 = ns.Object("Plate1") - obj14 = ns.Object("Plate2") - obj15 = ns.Object("Plate3") - obj16 = ns.Object("Plate4") - obj17 = ns.Object("Plate5") - obj86 = ns.Object("Spike1") - obj87 = ns.Object("Spike2") - obj88 = ns.Object("Spike3") - obj89 = ns.Object("Spike4") - obj90 = ns.Object("Spike5") - obj91 = ns.Object("Spike6") - obj92 = ns.Object("Spike7") - obj93 = ns.Object("Spike8") - obj94 = ns.Object("Spike9") - obj95 = ns.Object("Spike10") - obj96 = ns.Object("Spike11") - obj97 = ns.Object("Spike12") - obj73 = ns.Object("CellDoor1") - obj74 = ns.Object("CellDoor2") - obj75 = ns.Object("CellDoor3") - obj76 = ns.Object("CellDoor4") - obj77 = ns.Object("CellDoor5") - obj78 = ns.Object("CellDoor6") - obj79 = ns.Object("CellDoor7") - obj80 = ns.Object("CellDoor8") - obj81 = ns.Object("CellDoor9") - obj82 = ns.Object("CellDoor10") - obj83 = ns.Object("CellDoor11") - obj84 = ns.Object("CellDoor12") - obj85 = ns.Object("CellLever") - wp39 = ns.Waypoint("BlockOpen1") - wp45 = ns.Waypoint("BlockClosed1") - wp40 = ns.Waypoint("BlockOpen2") - wp46 = ns.Waypoint("BlockClosed2") - wp41 = ns.Waypoint("BlockOpen3") - wp47 = ns.Waypoint("BlockClosed3") - wp42 = ns.Waypoint("BlockOpen4") - wp48 = ns.Waypoint("BlockClosed4") - wp43 = ns.Waypoint("BlockOpen5") - wp49 = ns.Waypoint("BlockClosed5") - wp44 = ns.Waypoint("BlockOpen6") - wp50 = ns.Waypoint("BlockClosed6") - wp130 = ns.Waypoint("Gates1WP") - wp131 = ns.Waypoint("Gates2WP") - gvar5 = ns.WallGroup("Gates1") - gvar6 = ns.WallGroup("Gates2") - wp38 = ns.Waypoint("BlockAudio1WP") - wp101 = ns.Waypoint("Spike1Open") - wp102 = ns.Waypoint("Spike2Open") - wp103 = ns.Waypoint("Spike3Open") - wp104 = ns.Waypoint("Spike4Open") - wp105 = ns.Waypoint("Spike5Open") - wp106 = ns.Waypoint("Spike6Open") - wp107 = ns.Waypoint("Spike7Open") - wp108 = ns.Waypoint("Spike8Open") - wp109 = ns.Waypoint("Spike9Open") - wp110 = ns.Waypoint("Spike10Open") - wp111 = ns.Waypoint("Spike11Open") - wp112 = ns.Waypoint("Spike12Open") - wp113 = ns.Waypoint("Spike1Closed") - wp114 = ns.Waypoint("Spike2Closed") - wp115 = ns.Waypoint("Spike3Closed") - wp116 = ns.Waypoint("Spike4Closed") - wp117 = ns.Waypoint("Spike5Closed") - wp118 = ns.Waypoint("Spike6Closed") - wp119 = ns.Waypoint("Spike7Closed") - wp120 = ns.Waypoint("Spike8Closed") - wp121 = ns.Waypoint("Spike9Closed") - wp122 = ns.Waypoint("Spike10Closed") - wp123 = ns.Waypoint("Spike11Closed") - wp124 = ns.Waypoint("Spike12Closed") - wp51 = ns.Waypoint("SkeletonGoal") - wp37 = ns.Waypoint("EndTrapAudioWP") - OpenGates() - CloseBlocks() - LockCellDoors() - KillSkeleton7() - ns.Move(obj11, wp49) - ns.Move(obj12, wp50) - EnableSpikes() -} -func BatsHostilize() { - ns.GroupAggressionLevel(gvar52, 0.83) -} -func BearHostilize() { - ns.AggressionLevel(obj58, 0.83) -} -func OgresHostilize() { - ns.AggressionLevel(obj98, 0.83) - ns.AggressionLevel(obj99, 0.83) -} -func DestroyWalls() { - ns.WallGroupBreak(gvar63) - ns.Attack(obj59, ns.GetHost()) - ns.Attack(obj60, ns.GetHost()) - ns.Attack(obj61, ns.GetHost()) -} -func OpenCellDoors() { - ns.UnlockDoor(obj73) - ns.UnlockDoor(obj74) - ns.UnlockDoor(obj75) - ns.UnlockDoor(obj76) - ns.UnlockDoor(obj77) - ns.UnlockDoor(obj78) - ns.UnlockDoor(obj79) - ns.UnlockDoor(obj80) - ns.UnlockDoor(obj81) - ns.UnlockDoor(obj82) - ns.UnlockDoor(obj83) - ns.UnlockDoor(obj84) - ns.ObjectOff(obj85) - EnableGears() -} -func ToggleGates1() { - ns.AudioEvent(ns.FireBallExplode, wp130) - ns.WallGroupOpen(gvar5) -} -func ToggleGates2() { - ns.AudioEvent(ns.FireBallExplode, wp131) - ns.WallGroupOpen(gvar6) -} -func ChapterFail2() { - ns.EnchantOff(ns.GetHost(), ns.ENCHANT_INVULNERABLE) - ns.DeathScreen(5) -} -func SilverKeyTrap() { - ns.ObjectOff(obj132) - ns.ObjectOff(obj133) - ns.ObjectOff(obj134) - ns.ObjectOff(obj135) - ns.WallGroupBreak(gvar100) - ns.AggressionLevel(obj126, 0.83) - ns.AggressionLevel(obj127, 0.83) - ns.AggressionLevel(obj128, 0.83) - ns.AggressionLevel(obj129, 0.83) -} -func MapEntry() { - ns.UnBlind() - LetterBoxOff() - ns.Frozen(ns.GetHost(), false) - if ns.GetQuestStatus("MaidensRescued") != 1 { - goto LABEL1 - } - obj53 = ns.Object("War05B:W5Maiden1") - obj54 = ns.Object("War05B:W5Maiden2") - obj55 = ns.Object("War05B:W5Maiden3") - obj56 = ns.Object("War05B:W5Maiden4") - obj57 = ns.Object("War05B:W5Sister") - ns.SetCallback(obj53, 5, MaidenDeath) - ns.SetCallback(obj54, 5, MaidenDeath) - ns.SetCallback(obj55, 5, MaidenDeath) - ns.SetCallback(obj56, 5, MaidenDeath) - ns.SetCallback(obj57, 5, MaidenDeath) -LABEL1: - return -} -func PlaySubMusic() { - ns.Music(20, 100) -} -func MonsterGoHome() { - r1 := ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) - if !r1 { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func Secret01() { - ns.AudioEvent(ns.SecretFound, wp136) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 50) -} -func Secret02() { - ns.AudioEvent(ns.SecretFound, wp137) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 100) -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapInitialize": - MapInitialize() - case "MapEntry": - MapEntry() - } -} diff --git a/examples/war06a/dummy_test.go b/examples/war06a/dummy_test.go deleted file mode 100644 index 950cb62..0000000 --- a/examples/war06a/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package war06a - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/war06a/war06a.go b/examples/war06a/war06a.go deleted file mode 100644 index bcf123f..0000000 --- a/examples/war06a/war06a.go +++ /dev/null @@ -1,606 +0,0 @@ -package war06a - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 ns.ObjectID - obj5 ns.ObjectID - obj6 ns.ObjectID - obj7 ns.ObjectID - obj8 ns.ObjectID - obj9 ns.ObjectID - obj10 ns.ObjectID - wp11 ns.WaypointID - gvar12 ns.ObjectGroupID - gvar13 ns.ObjectGroupID - gvar14 ns.ObjectGroupID - gvar15 ns.ObjectGroupID - flag16 bool - flag17 bool - obj18 ns.ObjectID - obj19 ns.ObjectID - gvar20 ns.WallGroupID - wp21 ns.WaypointID - flag22 bool - ivar23 int - obj24 ns.ObjectID - obj25 ns.ObjectID - obj26 ns.ObjectID - obj27 ns.ObjectID - obj28 ns.ObjectID - obj29 ns.ObjectID - gvar30 ns.ObjectGroupID - gvar31 ns.ObjectGroupID - gvar32 ns.ObjectGroupID - gvar33 ns.ObjectGroupID - flag34 bool - obj35 ns.ObjectID - obj36 ns.ObjectID - obj37 ns.ObjectID - obj38 ns.ObjectID - obj39 ns.ObjectID - obj40 ns.ObjectID - obj41 ns.ObjectID - obj42 ns.ObjectID - gvar43 ns.ObjectGroupID - wp44 ns.WaypointID - wp45 ns.WaypointID - obj46 ns.ObjectID - ivar47 int - flag48 bool - obj49 ns.ObjectID - obj50 ns.ObjectID - obj51 ns.ObjectID - obj52 ns.ObjectID - obj53 ns.ObjectID - obj54 ns.ObjectID - obj55 ns.ObjectID - obj56 ns.ObjectID - obj57 ns.ObjectID - obj58 ns.ObjectID - obj59 ns.ObjectID - obj60 ns.ObjectID - wp61 ns.WaypointID - gvar62 ns.ObjectGroupID -) - -func init() { - flag16 = false - flag17 = true - flag22 = false - ivar23 = 0 - flag34 = true - flag48 = true -} -func KillTownie() { - ns.AudioEvent(ns.HumanMaleDie, wp11) - ns.MoveObject(obj4, ns.GetWaypointX(wp11), ns.GetWaypointY(wp11)) - ns.MoveObject(obj6, 4071, 1828) - ns.MoveObject(obj7, 3999, 1844) -} -func townieTalk1Start() { - ns.ObjectGroupOff(gvar15) - ns.TellStory(ns.UrchinRecognize, "War06a:TownspeopleSpeak3") -} -func townieTalk1End() { - ns.ObjectGroupOn(gvar15) - ns.CancelDialog(obj4) - ns.Delete(obj5) - ns.FrameTimer(1, KillTownie) -} -func EnableSkeletonGroup() { - ns.ObjectOff(ns.GetTrigger()) - ns.ObjectGroupOn(gvar13) -} -func captainVanishes() { - ns.ObjectOff(ns.GetTrigger()) - ns.Delete(obj10) - ns.Delete(obj8) - ns.Delete(obj9) - ns.ObjectGroupOn(gvar12) - EnableSkeletonGroup() -} -func GuardiansAttack() { - ns.ObjectOn(obj24) - ns.ObjectOn(obj18) - ns.AggressionLevel(obj24, 0.83) - ns.Attack(obj24, obj18) - ns.ObjectOn(obj25) - ns.ObjectOn(obj19) - ns.AggressionLevel(obj25, 0.83) - ns.Attack(obj25, obj18) - ns.ObjectOn(obj26) - ns.AggressionLevel(obj26, 0.83) - ns.Attack(obj26, obj19) - ns.AggressionLevel(obj18, 0.83) - ns.Attack(obj18, obj24) - ns.AggressionLevel(obj19, 0.83) - ns.Attack(obj19, obj26) -} -func Guardian01DialogStart() { - ns.TellStory(ns.SwordsmanHurt, "War06a:CityGuardSpeak1") -} -func Guardian01DialogEnd() { - ns.NoWallSound(true) - ns.WallGroupOpen(gvar20) - ns.NoWallSound(false) - ns.CancelDialog(obj18) - ns.BecomePet(obj18) - ns.BecomePet(obj19) - ns.CreatureFollow(obj18, ns.GetHost()) - ns.CreatureFollow(obj19, ns.GetHost()) - ns.Frozen(ns.GetHost(), false) - ns.WideScreen(false) - ns.ObjectGroupOn(gvar14) - ns.ObjectGroupOn(gvar13) -} -func Zombie1Rise() { - var ( - v0 float32 - v1 float32 - ) - v0 = ns.GetObjectX(obj24) - v1 = ns.GetObjectY(obj24) - ns.RaiseZombie(obj24) - ns.MoveWaypoint(wp21, v0, v1) - ns.AudioEvent(ns.ZombieRecognize, ns.Waypoint("AudioOrigin")) -} -func Zombie2Rise() { - var ( - v0 float32 - v1 float32 - ) - v0 = ns.GetObjectX(obj25) - v1 = ns.GetObjectY(obj25) - ns.RaiseZombie(obj25) - ns.MoveWaypoint(wp21, v0, v1) - ns.AudioEvent(ns.ZombieRecognize, ns.Waypoint("AudioOrigin")) -} -func Zombie3Rise() { - var ( - v0 float32 - v1 float32 - ) - v0 = ns.GetObjectX(obj26) - v1 = ns.GetObjectY(obj26) - ns.RaiseZombie(obj26) - ns.MoveWaypoint(wp21, v0, v1) - ns.AudioEvent(ns.ZombieRecognize, ns.Waypoint("AudioOrigin")) -} -func SetpieceZombieDie() { - ivar23 += 1 - if !(ivar23 >= 3) { - goto LABEL1 - } - ns.StoryPic(obj18, "WarriorPic") - ns.SetDialog(obj18, ns.NORMAL, Guardian01DialogStart, Guardian01DialogEnd) - ns.LookAtObject(obj18, ns.GetHost()) - ns.LookAtObject(obj19, ns.GetHost()) - ns.StartDialog(obj18, ns.GetHost()) - ns.SetCallback(obj24, 5, NullCallback) - ns.SetCallback(obj25, 5, NullCallback) - ns.SetCallback(obj26, 5, NullCallback) -LABEL1: - return -} -func SetZombieDieCallbacks() { - ns.SetCallback(obj24, 5, SetpieceZombieDie) - ns.SetCallback(obj25, 5, SetpieceZombieDie) - ns.SetCallback(obj26, 5, SetpieceZombieDie) -} -func NullCallback() { -} -func InitializeGuardianSetpiece() { - obj24 = ns.Object("SetpieceZombie01") - obj25 = ns.Object("SetpieceZombie02") - obj26 = ns.Object("SetpieceZombie03") - ns.Damage(obj24, 0, 100, 0) - ns.Damage(obj25, 0, 100, 0) - ns.Damage(obj26, 0, 100, 0) - ns.ZombieStayDown(obj24) - ns.ZombieStayDown(obj25) - ns.ZombieStayDown(obj26) - ns.FrameTimer(30, SetZombieDieCallbacks) -} -func StartGuardianSetpiece() { - if !(ns.IsCaller(ns.GetHost()) && !flag22) { - goto LABEL1 - } - flag22 = true - ns.CreatureIdle(ns.GetHost()) - ns.Frozen(ns.GetHost(), true) - ns.WideScreen(true) - ns.FrameTimer(15, Zombie1Rise) - ns.FrameTimer(25, Zombie2Rise) - ns.FrameTimer(20, Zombie3Rise) - ns.FrameTimer(45, GuardiansAttack) - ns.ObjectGroupOff(gvar13) -LABEL1: - return -} -func TurnOffLights() { - ns.ObjectGroupToggle(gvar30) - ns.ObjectGroupToggle(gvar31) - ns.ObjectGroupToggle(gvar32) - ns.ObjectGroupToggle(gvar33) - ns.ObjectToggle(obj27) - ns.ObjectToggle(obj28) - ns.ObjectToggle(obj29) -} -func PlayerDeath() { - ns.DeathScreen(6) -} -func captainTalk() { - ns.StartDialog(obj10, ns.GetHost()) -} -func captainTalk1Start() { - ns.Frozen(ns.GetHost(), true) - ns.TellStory(ns.ArcherRecognize, "Con01a:CaptainProd") -} -func captainTalk1End() { - ns.Frozen(ns.GetHost(), false) - ns.SetDialog(obj10, ns.NORMAL, captainTalk1Start, captainTalk1End) -} -func undeadBreakIn() { - ns.WallBreak(ns.Wall(220, 118)) - ns.WallBreak(ns.Wall(219, 119)) - ns.WallBreak(ns.Wall(220, 120)) -} -func KirikEnd1() { - ns.SetDialog(obj42, ns.NORMAL, KirikStart1, KirikEnd1) -} -func KirikStart1() { - ns.TellStory(ns.HumanMaleEatFood, "War01A.scr:Guard1Talk01") -} -func SecretRoom() { - ns.MoveWaypoint(wp44, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretFound, wp44) - ns.ObjectGroupOff(gvar43) - ns.GiveXp(ns.GetHost(), 100) - ns.PrintToAll("GeneralPrint:SecretFound") -} -func InitializeTownspeople() { - obj49 = ns.Object("Townsman1") - obj50 = ns.Object("Townsman2") - obj51 = ns.Object("Townsman3") - obj52 = ns.Object("Townsman4") - obj53 = ns.Object("Townsman5") - obj54 = ns.Object("Townsman6") - obj55 = ns.Object("Townswoman1") - obj56 = ns.Object("Townswoman2") - obj57 = ns.Object("Townswoman3") - obj58 = ns.Object("Townswoman4") - obj59 = ns.Object("Townswoman5") - obj60 = ns.Object("Townswoman6") - wp61 = ns.Waypoint("TownspeopleStorage") - gvar62 = ns.ObjectGroup("Townspeople") - ns.FrameTimer(15, OwnTownspeople) -} -func NewJournalEntry() { - ns.JournalEntry(ns.GetHost(), "War6Fortress", 2) - ns.PrintToAll("Con01a:NewJournalEntry") -} -func MapInitialize() { - obj10 = ns.Object("Captain") - obj8 = ns.Object("Basket") - obj9 = ns.Object("BasketShadow") - obj4 = ns.Object("Townie1") - obj7 = ns.Object("DeadGuyBoots") - obj6 = ns.Object("DeadGuyChain") - obj5 = ns.Object("F6Elite2") - obj35 = ns.Object("GauntletDoorR") - obj36 = ns.Object("GauntletDoorL") - obj37 = ns.Object("IxDoorR") - obj38 = ns.Object("IxDoorL") - obj18 = ns.Object("F6FireGuard10") - obj19 = ns.Object("F6FireGuard7") - obj39 = ns.Object("F6FireGuard9") - obj40 = ns.Object("F2Fire6") - obj41 = ns.Object("F2Fire8") - obj27 = ns.Object("GearLight1") - obj28 = ns.Object("GearLight2") - obj29 = ns.Object("GearLight3") - obj42 = ns.Object("Kirik") - ns.SetOwner(ns.GetHost(), obj42) - ns.SetOwner(ns.GetHost(), obj5) - gvar12 = ns.ObjectGroup("ZombieGroupA") - gvar13 = ns.ObjectGroup("SkeletonGroup01") - gvar30 = ns.ObjectGroup("StreetLamps") - gvar31 = ns.ObjectGroup("StreetLamps2") - gvar32 = ns.ObjectGroup("LightGears") - gvar33 = ns.ObjectGroup("LightGears2") - gvar43 = ns.ObjectGroup("SecretRoom2Triggers") - gvar14 = ns.ObjectGroup("EveryMonsterOnMap") - gvar15 = ns.ObjectGroup("FleemanMonsters") - wp11 = ns.Waypoint("TownieWP") - wp21 = ns.Waypoint("AudioOrigin") - wp44 = ns.Waypoint("PlayerSounds") - wp45 = ns.Waypoint("WellWP") - gvar20 = ns.WallGroup("GrdnStpcWalls") - ns.StoryPic(obj10, "AirshipCaptainPic") - ns.SetDialog(obj10, ns.NORMAL, captainTalk1Start, captainTalk1End) - ns.StoryPic(obj5, "WoundedWarriorPic") - ns.SetDialog(obj5, ns.NORMAL, townieTalk1Start, townieTalk1End) - ns.StoryPic(obj42, "Warrior4Pic") - ns.SetDialog(obj42, ns.NORMAL, KirikStart1, KirikEnd1) - ns.LockDoor(obj35) - ns.LockDoor(obj36) - ns.LockDoor(obj37) - ns.LockDoor(obj38) - InitializeGuardianSetpiece() - InitializeTownspeople() - ns.StartupScreen(6) - ns.FrameTimer(15, NewJournalEntry) - ns.Music(16, 100) - ns.FrameTimer(1, captainTalk) - ns.Damage(obj4, 0, 100, 0) -} -func NoEnemys() { - r1 := ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) - if !r1 { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func MonstersGoHome() { - r1 := ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) - if !r1 { - goto LABEL1 - } - ns.AggressionLevel(ns.GetCaller(), 0.16) - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func OwnTownspeople() { - ns.GroupSetOwner(ns.GetHost(), gvar62) - ns.StoryPic(obj18, "WarriorPic") - ns.StoryPic(obj19, "WarriorPic") - ns.StoryPic(obj39, "WarriorPic") - ns.SetDialog(obj39, ns.NORMAL, fireKnightsTalk1Start, fireKnightsTalk1End) - ns.StoryPic(obj40, "Warrior2Pic") - ns.SetDialog(obj40, ns.NORMAL, fireKnightsTalk2Start, fireKnightsTalk2End) - ns.StoryPic(obj41, "Warrior3Pic") - ns.SetDialog(obj41, ns.NORMAL, fireKnightsTalk3Start, fireKnightsTalk3End) -} -func fireKnightsRecognize() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ivar47 = ns.Random(1, 3) - if ivar47 != 1 { - goto LABEL2 - } - ns.StoryPic(ns.GetTrigger(), "WarriorPic") - ns.SetDialog(ns.GetTrigger(), ns.NORMAL, fireKnightsTalk1Start, fireKnightsTalk1End) -LABEL2: - if ivar47 != 2 { - goto LABEL3 - } - ns.StoryPic(ns.GetTrigger(), "Warrior2Pic") - ns.SetDialog(ns.GetTrigger(), ns.NORMAL, fireKnightsTalk2Start, fireKnightsTalk2End) -LABEL3: - if ivar47 != 3 { - goto LABEL1 - } - ns.StoryPic(ns.GetTrigger(), "Warrior3Pic") - ns.SetDialog(ns.GetTrigger(), ns.NORMAL, fireKnightsTalk3Start, fireKnightsTalk3End) -LABEL1: - return -} -func fireKnightsTalk1Start() { - ns.Frozen(ns.GetHost(), true) - ns.ObjectGroupOff(gvar14) - ns.TellStory(ns.SwordsmanRecognize, "War06a:CityGuardSpeak1") -} -func fireKnightsTalk1End() { - ns.Frozen(ns.GetHost(), false) - ns.ObjectGroupOn(gvar14) - ns.SetCallback(ns.GetTrigger(), 3, NullCallback) - ns.CancelDialog(ns.GetTrigger()) - ns.BecomePet(ns.GetTrigger()) - ns.CreatureFollow(ns.GetTrigger(), ns.GetHost()) - ns.AggressionLevel(ns.GetTrigger(), 0.83) -} -func fireKnightsTalk2Start() { - ns.Frozen(ns.GetHost(), true) - ns.ObjectGroupOff(gvar14) - ns.TellStory(ns.SwordsmanRecognize, "War06a:CityGuardSpeak2") -} -func fireKnightsTalk2End() { - ns.Frozen(ns.GetHost(), false) - ns.ObjectGroupOn(gvar14) - ns.SetCallback(ns.GetTrigger(), 3, NullCallback) - ns.CancelDialog(ns.GetTrigger()) - ns.BecomePet(ns.GetTrigger()) - ns.CreatureFollow(ns.GetTrigger(), ns.GetHost()) - ns.AggressionLevel(ns.GetTrigger(), 0.83) -} -func fireKnightsTalk3Start() { - ns.Frozen(ns.GetHost(), true) - ns.ObjectGroupOff(gvar14) - ns.TellStory(ns.SwordsmanRecognize, "War06a:CityGuardSpeak3") -} -func fireKnightsTalk3End() { - ns.Frozen(ns.GetHost(), false) - ns.ObjectGroupOn(gvar14) - ns.SetCallback(ns.GetTrigger(), 3, NullCallback) - ns.CancelDialog(ns.GetTrigger()) - ns.CreatureFollow(ns.GetTrigger(), ns.GetHost()) - ns.BecomePet(ns.GetTrigger()) - ns.AggressionLevel(ns.GetTrigger(), 0.83) -} -func fireKnightsStayTalkInit() { - if !(ns.IsCaller(obj18) || ns.IsCaller(obj19) || ns.IsCaller(obj39) || ns.IsCaller(obj40) || ns.IsCaller(obj41)) { - goto LABEL1 - } - if !ns.IsVisibleTo(ns.GetCaller(), ns.GetHost()) { - goto LABEL2 - } - ns.CreatureIdle(ns.GetCaller()) - ns.BecomeEnemy(ns.GetCaller()) - ns.CreatureGuard(ns.GetCaller(), ns.GetObjectX(ns.GetCaller()), ns.GetObjectY(ns.GetCaller()), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 150) - ns.AggressionLevel(ns.GetCaller(), 0.5) - ns.Wander(ns.GetCaller()) - if !flag48 { - goto LABEL3 - } - flag48 = false - obj46 = ns.GetCaller() - ns.SetDialog(ns.GetCaller(), ns.NORMAL, fireKnightsStayTalkStart, fireKnightsStayTalkEnd) - if !(!ns.IsTalking() && !ns.IsTrading()) { - goto LABEL3 - } - ns.StartDialog(ns.GetCaller(), ns.GetHost()) -LABEL3: - goto LABEL4 -LABEL2: - ns.AggressionLevel(ns.GetCaller(), 0.5) - ns.Wander(ns.GetCaller()) -LABEL4: - goto LABEL5 -LABEL1: - ns.AggressionLevel(ns.GetCaller(), 0.5) - ns.Wander(ns.GetCaller()) -LABEL5: - return -} -func fireKnightsStayTalkStart() { - ns.TellStory(ns.SwordsmanRecognize, "Con06:SaveDunMir06Warrior") -} -func fireKnightsStayTalkEnd() { - ns.CancelDialog(obj46) -} -func townsMenRecognize() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ivar47 = ns.Random(1, 3) - if ivar47 != 1 { - goto LABEL2 - } - ns.StoryPic(ns.GetTrigger(), "Townsman1Pic") - ns.SetDialog(ns.GetTrigger(), ns.NORMAL, townsmenTalk1Start, townsmenTalk1End) -LABEL2: - if ivar47 != 2 { - goto LABEL3 - } - ns.StoryPic(ns.GetTrigger(), "Townsman2Pic") - ns.SetDialog(ns.GetTrigger(), ns.NORMAL, townsmenTalk2Start, townsmenTalk2End) -LABEL3: - if ivar47 != 3 { - goto LABEL1 - } - ns.StoryPic(ns.GetTrigger(), "Townsman3Pic") - ns.SetDialog(ns.GetTrigger(), ns.NORMAL, townsmenTalk3Start, townsmenTalk3End) -LABEL1: - return -} -func townsmenTalk1Start() { - ns.Frozen(ns.GetHost(), true) - ns.ObjectGroupOff(gvar14) - ns.TellStory(ns.UrchinRecognize, "War06a:TownspeopleSpeak1") -} -func townsmenTalk1End() { - ns.Frozen(ns.GetHost(), false) - ns.ObjectGroupOn(gvar14) -} -func townsmenTalk2Start() { - ns.Frozen(ns.GetHost(), true) - ns.ObjectGroupOff(gvar14) - ns.TellStory(ns.UrchinRecognize, "War06a:TownspeopleSpeak2") -} -func townsmenTalk2End() { - ns.Frozen(ns.GetHost(), false) - ns.ObjectGroupOn(gvar14) -} -func townsmenTalk3Start() { - ns.Frozen(ns.GetHost(), true) - ns.ObjectGroupOff(gvar14) - ns.TellStory(ns.UrchinRecognize, "War06a:TownspeopleSpeak3") -} -func townsmenTalk3End() { - ns.Frozen(ns.GetHost(), false) - ns.ObjectGroupOn(gvar14) -} -func townsWomenRecognize() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ivar47 = ns.Random(1, 3) - if ivar47 != 1 { - goto LABEL2 - } - ns.StoryPic(ns.GetTrigger(), "MaidenPic") - ns.SetDialog(ns.GetTrigger(), ns.NORMAL, townsWomenTalk1Start, townsWomenTalk1End) -LABEL2: - if ivar47 != 2 { - goto LABEL3 - } - ns.StoryPic(ns.GetTrigger(), "MaidenPic2") - ns.SetDialog(ns.GetTrigger(), ns.NORMAL, townsWomenTalk2Start, townsWomenTalk2End) -LABEL3: - if ivar47 != 3 { - goto LABEL1 - } - ns.StoryPic(ns.GetTrigger(), "MaidenPic3") - ns.SetDialog(ns.GetTrigger(), ns.NORMAL, townsWomenTalk3Start, townsWomenTalk3End) -LABEL1: - return -} -func townsWomenTalk1Start() { - ns.Frozen(ns.GetHost(), true) - ns.ObjectGroupOff(gvar14) - ns.TellStory(ns.GhostRecognize, "War06a:WomenSpeak1") -} -func townsWomenTalk1End() { - ns.Frozen(ns.GetHost(), false) - ns.ObjectGroupOn(gvar14) -} -func townsWomenTalk2Start() { - ns.Frozen(ns.GetHost(), true) - ns.ObjectGroupOff(gvar14) - ns.TellStory(ns.GhostRecognize, "War06a:WomenSpeak1") -} -func townsWomenTalk2End() { - ns.Frozen(ns.GetHost(), false) - ns.ObjectGroupOn(gvar14) -} -func townsWomenTalk3Start() { - ns.Frozen(ns.GetHost(), true) - ns.ObjectGroupOff(gvar14) - ns.TellStory(ns.GhostRecognize, "War06a:WomenSpeak1") -} -func townsWomenTalk3End() { - ns.Frozen(ns.GetHost(), false) - ns.ObjectGroupOn(gvar14) -} -func leavingDunMir() { - if !(ns.IsCaller(obj49) || ns.IsCaller(obj50) || ns.IsCaller(obj51) || ns.IsCaller(obj52) || ns.IsCaller(obj53) || ns.IsCaller(obj54) || ns.IsCaller(obj55) || ns.IsCaller(obj56) || ns.IsCaller(obj57) || ns.IsCaller(obj58) || ns.IsCaller(obj59) || ns.IsCaller(obj60)) { - goto LABEL1 - } - ns.MoveObject(ns.GetCaller(), ns.GetWaypointX(wp61), ns.GetWaypointY(wp61)) - ns.ObjectOff(ns.GetCaller()) -LABEL1: - return -} -func flee() { - ns.Wander(ns.GetTrigger()) -} -func MakeAWish() { - var v0 int - v0 = ns.MaxHealth(ns.GetCaller()) - ns.RestoreHealth(ns.GetCaller(), v0-ns.CurrentHealth(ns.GetCaller())) - ns.PrintToAll("GeneralPrint:WellSignRefresh") - ns.AudioEvent(ns.RestoreHealthName, wp45) -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapInitialize": - MapInitialize() - } -} diff --git a/examples/war06b/dummy_test.go b/examples/war06b/dummy_test.go deleted file mode 100644 index 096221e..0000000 --- a/examples/war06b/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package war06b - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/war06b/war06b.go b/examples/war06b/war06b.go deleted file mode 100644 index e75c757..0000000 --- a/examples/war06b/war06b.go +++ /dev/null @@ -1,874 +0,0 @@ -package war06b - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - gvar4 int - gvar5 int - gvar6 int - gvar7 int - gvar8 int - flag9 bool - flag10 bool - flag11 bool - flag12 bool - flag13 bool - flag14 bool - fvar15 float32 - fvar16 float32 - ivar17 int - ivar18 int - gvar19 int - gvar20 int - obj21 ns.ObjectID - obj22 ns.ObjectID - obj23 ns.ObjectID - obj24 ns.ObjectID - obj25 ns.ObjectID - obj26 ns.ObjectID - obj27 ns.ObjectID - obj28 ns.ObjectID - obj29 ns.ObjectID - obj30 ns.ObjectID - obj31 ns.ObjectID - obj32 ns.ObjectID - obj33 ns.ObjectID - obj34 ns.ObjectID - obj35 ns.ObjectID - obj36 ns.ObjectID - obj37 ns.ObjectID - obj38 ns.ObjectID - obj39 ns.ObjectID - obj40 ns.ObjectID - obj41 ns.ObjectID - obj42 ns.ObjectID - obj43 ns.ObjectID - obj44 ns.ObjectID - obj45 ns.ObjectID - obj46 ns.ObjectID - obj47 ns.ObjectID - obj48 ns.ObjectID - obj49 ns.ObjectID - obj50 ns.ObjectID - obj51 ns.ObjectID - obj52 ns.ObjectID - obj53 ns.ObjectID - gvar54 ns.ObjectID - obj55 ns.ObjectID - obj56 ns.ObjectID - obj57 ns.ObjectID - obj58 ns.ObjectID - obj59 ns.ObjectID - obj60 ns.ObjectID - obj61 ns.ObjectID - obj62 ns.ObjectID - obj63 ns.ObjectID - obj64 ns.ObjectID - gvar65 ns.ObjectGroupID - gvar66 ns.ObjectGroupID - gvar67 ns.ObjectGroupID - gvar68 ns.ObjectGroupID - gvar69 ns.ObjectGroupID - gvar70 ns.ObjectGroupID - gvar71 ns.ObjectGroupID - gvar72 ns.WallGroupID - gvar73 ns.WallGroupID - gvar74 ns.WallGroupID - gvar75 ns.WallGroupID - gvar76 ns.WallGroupID - gvar77 ns.WallGroupID - wp78 ns.WaypointID - wp79 ns.WaypointID - wp80 ns.WaypointID - wp81 ns.WaypointID - wp82 ns.WaypointID - wp83 ns.WaypointID - wp84 ns.WaypointID - wp85 ns.WaypointID - wp86 ns.WaypointID - wp87 ns.WaypointID - wp88 ns.WaypointID - wp89 ns.WaypointID - wp90 ns.WaypointID - wp91 ns.WaypointID - flag92 bool - flag93 bool - flag94 bool - flag95 bool - ivar96 int - ivar97 int - obj98 ns.ObjectID - gvar99 int - gvar100 int - gvar101 int - gvar102 int - wp103 ns.WaypointID -) - -func init() { - gvar4 = 0 - gvar5 = 1 - gvar6 = 2 - gvar7 = 3 - gvar8 = 4 - flag9 = true - flag10 = true - flag11 = true - flag12 = true - flag13 = false - flag14 = true - ivar17 = 0 - ivar18 = 0 - gvar19 = 0 - gvar20 = gvar4 - flag92 = true - flag93 = false - flag94 = true - flag95 = false - ivar96 = 76 - ivar97 = 70 -} -func NullCallback() { -} -func fireKnightsRecognize() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ivar17 = ns.Random(1, 3) - if ivar17 != 1 { - goto LABEL2 - } - ns.StoryPic(ns.GetTrigger(), "WarriorPic") - ns.SetDialog(ns.GetTrigger(), ns.NORMAL, fireKnightsTalk1Start, fireKnightsTalk1End) -LABEL2: - if ivar17 != 2 { - goto LABEL3 - } - ns.StoryPic(ns.GetTrigger(), "Warrior2Pic") - ns.SetDialog(ns.GetTrigger(), ns.NORMAL, fireKnightsTalk2Start, fireKnightsTalk2End) -LABEL3: - if ivar17 != 3 { - goto LABEL1 - } - ns.StoryPic(ns.GetTrigger(), "Warrior3Pic") - ns.SetDialog(ns.GetTrigger(), ns.NORMAL, fireKnightsTalk3Start, fireKnightsTalk3End) -LABEL1: - return -} -func fireKnightsTalk1Start() { - ns.Frozen(ns.GetHost(), true) - ns.ObjectGroupOff(gvar67) - ns.TellStory(ns.SwordsmanRecognize, "War06a:CityGuardSpeak1") -} -func fireKnightsTalk1End() { - ns.Frozen(ns.GetHost(), false) - ns.ObjectGroupOn(gvar67) - ns.SetCallback(ns.GetTrigger(), 3, NullCallback) - ns.CancelDialog(ns.GetTrigger()) - ns.BecomePet(ns.GetTrigger()) - ns.CreatureFollow(ns.GetTrigger(), ns.GetHost()) - ns.AggressionLevel(ns.GetTrigger(), 0.83) -} -func fireKnightsTalk2Start() { - ns.Frozen(ns.GetHost(), true) - ns.ObjectGroupOff(gvar67) - ns.TellStory(ns.SwordsmanRecognize, "War06a:CityGuardSpeak2") -} -func fireKnightsTalk2End() { - ns.Frozen(ns.GetHost(), false) - ns.ObjectGroupOn(gvar67) - ns.SetCallback(ns.GetTrigger(), 3, NullCallback) - ns.CancelDialog(ns.GetTrigger()) - ns.BecomePet(ns.GetTrigger()) - ns.CreatureFollow(ns.GetTrigger(), ns.GetHost()) - ns.AggressionLevel(ns.GetTrigger(), 0.83) -} -func fireKnightsTalk3Start() { - ns.Frozen(ns.GetHost(), true) - ns.ObjectGroupOff(gvar67) - ns.TellStory(ns.SwordsmanRecognize, "War06a:CityGuardSpeak3") -} -func fireKnightsTalk3End() { - ns.Frozen(ns.GetHost(), false) - ns.ObjectGroupOn(gvar67) - ns.SetCallback(ns.GetTrigger(), 3, NullCallback) - ns.CancelDialog(ns.GetTrigger()) - ns.CreatureFollow(ns.GetTrigger(), ns.GetHost()) - ns.BecomePet(ns.GetTrigger()) - ns.AggressionLevel(ns.GetTrigger(), 0.83) -} -func ownFriends() { - ns.JournalEntry(ns.GetHost(), "War6Horrendous", 2) - ns.JournalEdit(ns.GetHost(), "War6Fortress", 4) - ns.SetOwner(ns.GetHost(), obj21) - ns.SetOwner(ns.GetHost(), obj27) - ns.SetOwner(ns.GetHost(), obj28) - ns.SetOwner(ns.GetHost(), obj29) - ns.SetOwner(ns.GetHost(), obj30) - ns.StoryPic(obj31, "WarriorPic") - ns.SetDialog(obj31, ns.NORMAL, fireKnightsTalk1Start, fireKnightsTalk1End) - ns.StoryPic(obj32, "Warrior2Pic") - ns.SetDialog(obj32, ns.NORMAL, fireKnightsTalk2Start, fireKnightsTalk2End) - ns.StoryPic(obj33, "Warrior3Pic") - ns.SetDialog(obj33, ns.NORMAL, fireKnightsTalk3Start, fireKnightsTalk3End) - ns.StoryPic(obj34, "WarriorPic") - ns.SetDialog(obj34, ns.NORMAL, fireKnightsTalk1Start, fireKnightsTalk1End) -} -func secretArea() { - ns.MoveWaypoint(wp78, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretFound, wp78) - ns.GiveXp(ns.GetHost(), 500) -} -func toggleMainGates() { - if gvar19 != 0 { - goto LABEL1 - } - gvar19 = 1 - openMainGates() - goto LABEL2 -LABEL1: - gvar19 = 0 - closeMainGates() -LABEL2: - ns.AudioEvent(ns.SecretWallStoneClose, wp84) - ns.AudioEvent(ns.BoulderMove, wp84) -} -func openMainGates() { - ns.Move(obj50, wp80) - ns.Move(obj51, wp81) - ns.Move(obj52, wp82) - ns.Move(obj53, wp83) -} -func closeMainGates() { - ns.Move(obj50, wp84) - ns.Move(obj51, wp85) - ns.Move(obj52, wp86) - ns.Move(obj53, wp87) -} -func deathToDoorStops() { - ns.Delete(ns.GetCaller()) -} -func startHorrendousTalk() { - ns.LookAtObject(ns.GetHost(), obj21) - ns.StartDialog(obj21, ns.GetHost()) -} -func faceHorrendous() { - ns.LookAtObject(ns.GetTrigger(), obj21) -} -func horrendousDie() { - ns.JournalEntry(ns.GetHost(), "War6Necro", 2) - ns.JournalEdit(ns.GetHost(), "War6Horrendous", 4) - ns.JournalDelete(ns.GetHost(), "War6Fortress") - flag14 = false - ns.MoveObject(obj22, ns.GetObjectX(obj21), ns.GetObjectY(obj21)) - fvar15 = ns.GetObjectX(obj21) - 55 - fvar16 = ns.GetObjectY(obj21) + 20 - ns.MoveObject(obj21, 1161, 2794) - ns.SetDialog(gvar54, ns.NORMAL, hecubahTalk4Start, hecubahTalk4End) - ns.StartDialog(gvar54, ns.GetHost()) - ns.FrameTimer(110, horrendousDying) -} -func horrendousDying() { - ns.MoveObject(obj23, ns.GetObjectX(obj22), ns.GetObjectY(obj22)) - ns.Delete(obj22) - ns.FrameTimer(15, horrendousDropHalberd) -} -func horrendousDropHalberd() { - ns.MoveObject(obj26, ns.GetObjectX(obj23)-10, ns.GetObjectY(obj23)+5) -} -func horrendousDead() { - ns.Music(28, 100) - ns.WideScreen(false) - ns.MoveObject(obj24, ns.GetObjectX(obj23), ns.GetObjectY(obj23)) - ns.Delete(obj23) - ns.AudioEvent(ns.DemonDie, wp90) - if gvar54 == 0 { - goto LABEL1 - } - ns.Delete(gvar54) -LABEL1: - return -} -func horrendousSpeak() { - ns.Music(0, 100) - ns.WideScreen(true) - ns.SetDialog(obj21, ns.NORMAL, horrendousTalk1Start, horrendousTalk1End) - ns.StartDialog(obj21, ns.GetHost()) -} -func horrendousTalk1Start() { - ns.ObjectGroupOn(gvar71) - ns.Frozen(ns.GetHost(), true) - ns.LockDoor(obj35) - ns.LockDoor(obj36) - ns.LockDoor(obj37) - ns.GroupPauseObject(gvar67, 10) - ns.ObjectGroupOff(gvar67) - ns.TellStory(ns.DemonRecognize, "War06a:BoastfulHorrendous") -} -func horrendousTalk1End() { - ns.CancelDialog(obj21) - ns.SetDialog(gvar54, ns.NEXT, hecubahTalk1Start, hecubahTalk1End) - ns.FrameTimer(30, hecubahBustIn) -} -func horrendousTalk2Start() { - ns.TellStory(ns.DemonRecognize, "War06a:HorrendousVsHec") -} -func horrendousTalk2End() { - ns.SetDialog(obj21, ns.NEXT, horrendousTalk3Start, horrendousTalk3End) - ns.FrameTimer(30, startHorrendousTalk) -} -func horrendousTalk3Start() { - ns.TellStory(ns.DemonRecognize, "War06a:ChallengingHec") -} -func horrendousTalk3End() { - ns.CancelDialog(obj21) - ns.SetDialog(gvar54, ns.NEXT, hecubahTalk2Start, hecubahTalk2End) - ns.FrameTimer(30, startHecubahTalk) -} -func horrendousTalk5Start() { - ns.LookAtObject(ns.GetHost(), obj23) - ns.TellStory(ns.DemonRecognize, "War06a:HecDefeatsHorrendous") -} -func horrendousTalk5End() { - ns.CancelDialog(obj21) - ns.SetDialog(gvar54, ns.NEXT, hecubahTalk5Start, hecubahTalk5End) - ns.FrameTimer(30, startHecubahTalk) -} -func horrendousTalk6Start() { - ns.TellStory(ns.DemonRecognize, "War06a:HorrendousPride") -} -func horrendousTalk6End() { - ns.ObjectGroupOn(gvar67) - ns.EnchantOff(ns.GetHost(), ns.ENCHANT_INVULNERABLE) - ns.CancelDialog(obj21) - horrendousDead() - ns.Frozen(ns.GetHost(), false) - ns.ObjectGroupOn(gvar67) - ns.AggressionLevel(obj56, 0.83) - ns.AggressionLevel(obj57, 0.83) - ns.AggressionLevel(obj58, 0.83) - ns.AggressionLevel(obj59, 0.83) - ns.AggressionLevel(obj60, 0.83) - ns.AggressionLevel(obj61, 0.83) - ns.AggressionLevel(obj62, 0.83) - ns.AggressionLevel(obj63, 0.83) - ns.AggressionLevel(obj64, 0.83) -} -func talkToHorrendous() { - ns.SetDialog(obj21, ns.NORMAL, horrendousTalk6Start, horrendousTalk6End) - ns.StartDialog(obj21, ns.GetHost()) -} -func killMusic() { - ns.Music(0, 100) -} -func startHecubahTalk() { - ns.LookAtObject(ns.GetHost(), gvar54) - ns.StartDialog(gvar54, ns.GetHost()) -} -func hecubahBustIn() { - ns.ObjectGroupOff(gvar71) - ns.ObjectGroupOn(gvar66) - ns.NoWallSound(true) - ns.WallGroupOpen(gvar72) - ns.NoWallSound(false) - ns.Delete(obj46) - ns.Delete(obj47) - ns.Delete(obj48) - ns.Delete(obj49) - ns.FrameTimer(10, hecubahBreakIn) -} -func hecubahBreakIn() { - ns.WallGroupBreak(gvar73) - ns.Enchant(obj21, ns.ENCHANT_VILLAIN, 0) - ns.ObjectGroupOn(gvar69) - ns.AggressionLevel(gvar54, 0) - ns.AggressionLevel(obj55, 0) - ns.AggressionLevel(obj56, 0) - ns.AggressionLevel(obj57, 0) - ns.AggressionLevel(obj58, 0) - ns.AggressionLevel(obj59, 0) - ns.AggressionLevel(obj60, 0) - ns.AggressionLevel(obj61, 0) - ns.AggressionLevel(obj62, 0) - ns.AggressionLevel(obj63, 0) - ns.AggressionLevel(obj64, 0) - ns.Wander(gvar54) - ns.StartDialog(gvar54, ns.GetHost()) -} -func hecKillsEveryone() { - if !(ns.IsCaller(gvar54) || ns.IsCaller(obj55)) { - goto LABEL1 - } - ns.Music(28, 75) - ns.FrameTimer(3, hecIsKilling) -LABEL1: - return -} -func isHecKilling() { - if !flag9 { - goto LABEL1 - } - ns.FrameTimer(3, hecIsKilling) -LABEL1: - return -} -func hecIsKilling() { - var v0 int - if !flag10 { - goto LABEL1 - } - flag9 = false - ns.LookAtObject(ns.GetHost(), gvar54) - v0 = gvar20 - if v0 == gvar4 { - goto LABEL2 - } - if v0 == gvar5 { - goto LABEL3 - } - if v0 == gvar6 { - goto LABEL4 - } - if v0 == gvar7 { - goto LABEL5 - } - if v0 == gvar8 { - goto LABEL6 - } - goto LABEL7 -LABEL2: - ns.LookAtObject(gvar54, obj21) - ns.LookAtObject(ns.GetHost(), obj21) - ns.AudioEvent(ns.DeathRayCast, wp90) - ns.Effect(ns.DEATH_RAY, ns.GetObjectX(gvar54), ns.GetObjectY(gvar54), ns.GetObjectX(obj21), ns.GetObjectY(obj21)) - ns.Damage(obj21, 0, 1000, 0) - gvar20 = gvar5 - goto LABEL7 -LABEL3: - ns.LookAtObject(gvar54, obj27) - ns.LookAtObject(ns.GetHost(), obj27) - ns.AudioEvent(ns.DeathRayCast, wp90) - ns.Effect(ns.DEATH_RAY, ns.GetObjectX(gvar54), ns.GetObjectY(gvar54), ns.GetObjectX(obj27), ns.GetObjectY(obj27)) - ns.Damage(obj27, 0, 1000, 0) - gvar20 = gvar6 - goto LABEL7 -LABEL4: - ns.LookAtObject(gvar54, obj28) - ns.LookAtObject(ns.GetHost(), obj28) - ns.AudioEvent(ns.DeathRayCast, wp90) - ns.Effect(ns.DEATH_RAY, ns.GetObjectX(gvar54), ns.GetObjectY(gvar54), ns.GetObjectX(obj28), ns.GetObjectY(obj28)) - ns.Damage(obj28, 0, 1000, 0) - gvar20 = gvar7 - goto LABEL7 -LABEL5: - ns.LookAtObject(gvar54, obj29) - ns.LookAtObject(ns.GetHost(), obj29) - ns.AudioEvent(ns.DeathRayCast, wp90) - ns.Effect(ns.DEATH_RAY, ns.GetObjectX(gvar54), ns.GetObjectY(gvar54), ns.GetObjectX(obj29), ns.GetObjectY(obj29)) - ns.Damage(obj29, 0, 1000, 0) - gvar20 = gvar8 - goto LABEL7 -LABEL6: - ns.LookAtObject(gvar54, obj30) - ns.LookAtObject(ns.GetHost(), obj30) - ns.AudioEvent(ns.DeathRayCast, wp90) - ns.Effect(ns.DEATH_RAY, ns.GetObjectX(gvar54), ns.GetObjectY(gvar54), ns.GetObjectX(obj30), ns.GetObjectY(obj30)) - ns.Damage(obj30, 0, 1000, 0) - flag10 = false - goto LABEL7 -LABEL7: - ns.FrameTimer(15, hecIsKilling) -LABEL1: - ns.LookAtObject(ns.GetHost(), gvar54) -} -func hecubahTalk1Start() { - ns.TellStory(ns.GhostRecognize, "War06a:HecubahThreat") -} -func hecubahTalk1End() { - ns.CancelDialog(gvar54) - ns.SetDialog(obj21, ns.NEXT, horrendousTalk2Start, horrendousTalk2End) - ns.FrameTimer(30, startHorrendousTalk) -} -func hecubahTalk2Start() { - ns.TellStory(ns.GhostRecognize, "War06a:HecubahAccepts") -} -func hecubahTalk2End() { - ns.CancelDialog(gvar54) - ns.Enchant(ns.GetHost(), ns.ENCHANT_INVULNERABLE, 0) - ns.ObjectOn(obj38) - ns.FrameTimer(240, isHecKilling) -} -func hecubahTalk4Start() { - ns.ObjectOff(gvar54) - ns.TellStory(ns.GhostRecognize, "War06a:HecubahWins") -} -func hecubahTalk4End() { - ns.SetDialog(obj21, ns.NEXT, horrendousTalk5Start, horrendousTalk5End) - ns.FrameTimer(30, startHorrendousTalk) - ns.CancelDialog(gvar54) -} -func hecubahTalk5Start() { - ns.TellStory(ns.GhostRecognize, "War06a:HecubahToNecro") -} -func hecubahTalk5End() { - ns.CancelDialog(gvar54) - ns.ObjectOn(obj55) - ns.AggressionLevel(obj55, 0) - ns.Walk(obj55, ns.GetWaypointX(wp79), ns.GetWaypointY(wp79)) - ns.SetDialog(obj55, ns.NEXT, necromancerTalk1Start, necromancerTalk1End) - ns.FrameTimer(90, startNecromancerTalk) -} -func hecubahTalk6Start() { - ns.TellStory(ns.GhostRecognize, "War06a:HecThreatJack") -} -func hecubahTalk6End() { - ns.CancelDialog(gvar54) - ns.ObjectOn(gvar54) - ns.AggressionLevel(gvar54, 0) - ns.Walk(gvar54, 931, 3036) - ns.SetDialog(obj55, ns.NEXT, necromancerTalk2Start, necromancerTalk2End) - ns.FrameTimer(30, startNecromancerTalk) -} -func endFightMusic() { - ns.Music(27, 100) -} -func startNecromancerTalk() { - ns.LookAtObject(ns.GetHost(), obj55) - ns.StartDialog(obj55, ns.GetHost()) -} -func necromancerTalk1Start() { - ns.CreatureIdle(obj55) - ns.LookAtObject(obj55, obj21) - ns.TellStory(ns.EmberDemonRecognize, "War06a:NecroMockHorren") -} -func necromancerTalk1End() { - ns.CancelDialog(obj55) - ns.Pickup(obj55, obj26) - ns.SetDialog(gvar54, ns.NEXT, hecubahTalk6Start, hecubahTalk6End) - ns.FrameTimer(30, startHecubahTalk) -} -func necromancerTalk2Start() { - ns.TellStory(ns.EmberDemonRecognize, "War06a:NecroThreatJack") -} -func necromancerTalk2End() { - ns.CancelDialog(obj55) - ns.ObjectOn(obj55) - ns.AggressionLevel(obj55, 0) - ns.Walk(obj55, 931, 3036) - ns.FrameTimer(200, killMusic) - ns.FrameTimer(240, talkToHorrendous) -} -func getHalberd() { - ns.Pickup(ns.GetHost(), obj26) - ns.FrameTimer(8, necroDies2) -} -func FreezePlayer() { - ns.Music(20, 100) - ns.CreatureIdle(obj55) - ns.LookAtObject(ns.GetHost(), obj55) - ns.LookAtObject(obj55, ns.GetHost()) - ns.Frozen(ns.GetHost(), true) - ns.Delete(obj56) - ns.Delete(obj57) - ns.Delete(obj58) - ns.Delete(obj59) - ns.Delete(obj60) - ns.Delete(obj61) - ns.Delete(obj62) - ns.Delete(obj63) - ns.Delete(obj64) - ns.FrameTimer(15, necroSetPiece) -} -func necroSetPiece() { - ns.WideScreen(true) - ns.ObjectOff(obj55) - ns.SetDialog(obj55, ns.NORMAL, necromancerTalk3Start, necromancerTalk3End) - ns.StartDialog(obj55, ns.GetHost()) -} -func wallWalk() { - if ivar17 != 0 { - goto LABEL1 - } - ns.AudioEvent(ns.SpellPhonemeUpLeft, wp103) -LABEL1: - if ivar17 != 1 { - goto LABEL2 - } - ns.AudioEvent(ns.SpellPhonemeUp, wp103) -LABEL2: - if ivar17 != 2 { - goto LABEL3 - } - ns.AudioEvent(ns.SpellPhonemeUpRight, wp103) -LABEL3: - if !(ivar17 < 49) { - goto LABEL4 - } - ns.WallClose(ns.Wall(ivar96, ivar97)) - ivar17 += 1 - ivar96 -= 1 - ivar97 -= 1 - ns.FrameTimer(6, wallWalk) -LABEL4: - return -} -func releasePlayer() { - ns.NoWallSound(false) - ns.CastSpellLocationLocation("SUMMON_SKELETON_LORD", ns.GetObjectX(obj55), ns.GetObjectY(obj55), 1575, 1506) - ns.CastSpellLocationLocation("SUMMON_SKELETON_LORD", ns.GetObjectX(obj55), ns.GetObjectY(obj55), 1702, 1506) - ns.Frozen(ns.GetHost(), false) -} -func lowerNecroWall() { - ns.NoWallSound(true) - ns.WallGroupOpen(gvar74) -} -func necromancerTalk3Start() { - ns.GroupPauseObject(gvar67, 10) - ns.ObjectGroupOff(gvar67) - ns.TellStory(ns.ZombieRecognize, "War06a:NecroAttackJack") -} -func necromancerTalk3End() { - ns.ObjectGroupOn(gvar67) - ns.CancelDialog(obj55) - ns.WideScreen(false) - ns.ObjectOn(obj55) - ns.Frozen(obj55, false) - ns.Wander(obj55) - ns.FrameTimer(10, wallWalk) - ns.FrameTimer(50, releasePlayer) - ns.FrameTimer(60, lowerNecroWall) -} -func necromancerTalk4Start() { - ns.GroupPauseObject(gvar67, 10) - ns.ObjectGroupOff(gvar67) - ns.TellStory(ns.ZombieRecognize, "War06a:NecroDies") -} -func necromancerTalk4End() { - ns.ObjectGroupOn(gvar67) - ns.CancelDialog(obj55) - ns.Frozen(obj55, false) - ns.GroupDamage(gvar68, 0, 1000, 0) - ns.FrameTimer(2, getHalberd) -} -func necroDies() { - ivar18 += 1 - flag92 = false - ns.LookAtObject(obj55, ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj55) - ns.Frozen(obj55, true) - ns.MoveObject(obj26, 1310, 2900) - ns.SetDialog(obj55, ns.NORMAL, necromancerTalk4Start, necromancerTalk4End) - ns.StartDialog(obj55, ns.GetHost()) -} -func necroDies2() { - if !(ivar18 > 4) { - goto LABEL1 - } - if !ns.HasItem(ns.GetHost(), obj26) { - goto LABEL2 - } - ns.JournalEdit(ns.GetHost(), "War6Necro", 4) - ns.Frozen(ns.GetHost(), true) - ns.FrameTimer(45, exitFade) - goto LABEL3 -LABEL2: - ns.FrameTimer(3, necroDies2) -LABEL3: - goto LABEL4 -LABEL1: - ns.FrameTimer(3, necroDies2) -LABEL4: - return -} -func exitFade() { - ns.Blind() - ns.FrameTimer(60, exitTile) -} -func exitTile() { - ns.Frozen(ns.GetHost(), false) - ns.MoveObject(ns.GetHost(), 5394, 2955) -} -func MapInitialize() { - obj21 = ns.Object("Horrendous") - obj22 = ns.Object("Horrendous_") - obj23 = ns.Object("Horrendous__") - obj24 = ns.Object("Horrendous___") - obj25 = ns.Object("Horrendous____") - obj26 = ns.Object("OblivionHalberd") - obj27 = ns.Object("EliteGuard1") - obj28 = ns.Object("EliteGuard2") - obj29 = ns.Object("EliteGuard3") - obj30 = ns.Object("EliteGuard4") - obj31 = ns.Object("F2Fire6") - obj32 = ns.Object("F6FireGuard1") - obj33 = ns.Object("F6FireGuard4") - obj34 = ns.Object("F6Guard8") - obj35 = ns.Object("ArenaDoor1") - obj36 = ns.Object("ArenaDoor2") - obj37 = ns.Object("ArenaDoor3") - obj38 = ns.Object("KillTrigger") - ns.ObjectOff(obj38) - obj39 = ns.Object("CellDoor1") - obj40 = ns.Object("CellDoor2") - obj41 = ns.Object("CellDoor3") - obj42 = ns.Object("CellDoor4") - obj43 = ns.Object("CellDoor5") - obj44 = ns.Object("CellDoor6") - obj45 = ns.Object("CellDoor7") - obj46 = ns.Object("BreakInObject1") - obj47 = ns.Object("BreakInObject2") - obj48 = ns.Object("BreakInObject3") - obj49 = ns.Object("BreakInObject4") - gvar54 = ns.Object("Hecubah") - obj55 = ns.Object("Necromancer") - obj56 = ns.Object("UndeadWar1") - obj57 = ns.Object("UndeadWar2") - obj58 = ns.Object("UndeadWar3") - obj59 = ns.Object("UndeadWar4") - obj60 = ns.Object("SkeLord1") - obj61 = ns.Object("SkeLord2") - obj62 = ns.Object("SkeLord3") - obj63 = ns.Object("SkeLord4") - obj64 = ns.Object("SkeLord5") - obj50 = ns.Object("FG1Mover") - obj51 = ns.Object("FG2Mover") - obj52 = ns.Object("FG3Mover") - obj53 = ns.Object("FG4Mover") - gvar65 = ns.ObjectGroup("NecroGuards") - ns.ObjectGroupOff(gvar65) - gvar66 = ns.ObjectGroup("Wolves") - ns.ObjectGroupOff(gvar66) - gvar67 = ns.ObjectGroup("EveryMonsterOnMap") - gvar68 = ns.ObjectGroup("EveryMonsterOnMap2") - gvar69 = ns.ObjectGroup("PartyCrashers") - gvar70 = ns.ObjectGroup("HecBreakInObjects") - gvar71 = ns.ObjectGroup("DoorStopTriggers") - ns.ObjectGroupOff(gvar71) - gvar72 = ns.WallGroup("HecBreakIn") - gvar73 = ns.WallGroup("HecBreakDown") - gvar74 = ns.WallGroup("NecroWall") - gvar75 = ns.WallGroup("NecroExitWall") - gvar76 = ns.WallGroup("WizardCages") - gvar77 = ns.WallGroup("DeathCage") - wp78 = ns.Waypoint("PlayerSounds") - wp79 = ns.Waypoint("NecroSpotWP") - wp80 = ns.Waypoint("FG1Open") - wp81 = ns.Waypoint("FG2Open") - wp82 = ns.Waypoint("FG3Open") - wp83 = ns.Waypoint("FG4Open") - wp84 = ns.Waypoint("FG1Closed") - wp85 = ns.Waypoint("FG2Closed") - wp86 = ns.Waypoint("FG3Closed") - wp87 = ns.Waypoint("FG4Closed") - wp88 = ns.Waypoint("UpStairs") - wp89 = ns.Waypoint("DownStairs") - wp90 = ns.Waypoint("NecroNoise") - wp91 = ns.Waypoint("WellWP") - obj55 = ns.Object("Necromancer") - obj98 = ns.Object("Halberd") - wp103 = ns.Waypoint("SewerChase") - ns.StoryPic(obj55, "BlackWizardPic") - ns.StoryPic(obj21, "HorrendousPic") - ns.StoryPic(gvar54, "HecubahPic") - ns.StoryPic(obj55, "NecromancerPic") - ns.AggressionLevel(obj21, 0) - ns.AggressionLevel(obj27, 0) - ns.AggressionLevel(obj28, 0) - ns.AggressionLevel(obj29, 0) - ns.AggressionLevel(obj30, 0) - ns.ObjectGroupOff(gvar69) - ns.LockDoor(obj39) - ns.LockDoor(obj40) - ns.LockDoor(obj41) - ns.LockDoor(obj42) - ns.LockDoor(obj43) - ns.LockDoor(obj44) - ns.LockDoor(obj45) - ns.FrameTimer(3, ownFriends) -} -func PlayerDeath() { - ns.DeathScreen(6) -} -func unlockCells() { - ns.UnlockDoor(obj39) - ns.UnlockDoor(obj40) - ns.UnlockDoor(obj41) - ns.UnlockDoor(obj42) - ns.UnlockDoor(obj43) - ns.UnlockDoor(obj44) - ns.UnlockDoor(obj45) -} -func lockCells() { - ns.LockDoor(obj39) - ns.LockDoor(obj40) - ns.LockDoor(obj41) - ns.LockDoor(obj42) - ns.LockDoor(obj43) - ns.LockDoor(obj44) - ns.LockDoor(obj45) -} -func setNecroPosition() { - if !ns.IsCaller(obj55) { - goto LABEL1 - } - ns.Frozen(obj55, true) - ns.MoveObject(obj55, 1776, 1502) -LABEL1: - if !ns.IsCaller(gvar54) { - goto LABEL2 - } - if gvar54 == 0 { - goto LABEL2 - } - ns.Delete(gvar54) -LABEL2: - return -} -func setupNecroSetPiece() { - ns.ObjectOff(ns.GetTrigger()) - ns.PauseObject(ns.GetTrigger(), 10) - ns.FrameTimer(1, FreezePlayer) -} -func setNecroPosition2() { - if !ns.IsCaller(obj55) { - goto LABEL1 - } - ns.MoveObject(obj55, 5057, 3809) -LABEL1: - return -} -func necroGuard() { - ns.CreatureGuard(obj55, 5057, 3809, 5232, 3991, 500) - ns.AggressionLevel(obj55, 0.5) - ns.ObjectGroupOn(gvar65) -} -func necroGuardDies() { - ivar18 += 1 -} -func NecroInjured() { - if ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.RestoreHealth(obj55, 14) - if !(ns.CurrentHealth(obj55) < 50) { - goto LABEL1 - } - ns.RestoreHealth(obj55, 50) -LABEL1: - return -} -func MakeAWish() { - var v0 int - v0 = ns.MaxHealth(ns.GetCaller()) - ns.RestoreHealth(ns.GetCaller(), v0-ns.CurrentHealth(ns.GetCaller())) - ns.PrintToAll("GeneralPrint:WellSignRefresh") - ns.AudioEvent(ns.RestoreHealthName, wp91) -} -func OnEvent(typ string) { - switch typ { - case "MapInitialize": - MapInitialize() - case "PlayerDeath": - PlayerDeath() - } -} diff --git a/examples/war07a/dummy_test.go b/examples/war07a/dummy_test.go deleted file mode 100644 index 8d08ccf..0000000 --- a/examples/war07a/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package war07a - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/war07a/war07a.go b/examples/war07a/war07a.go deleted file mode 100644 index aaae57b..0000000 --- a/examples/war07a/war07a.go +++ /dev/null @@ -1,2517 +0,0 @@ -package war07a - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - wp4 ns.WaypointID - obj5 [100]ns.ObjectID - obj6 ns.ObjectID - obj7 ns.ObjectID - obj8 ns.ObjectID - obj9 ns.ObjectID - obj10 ns.ObjectID - obj11 ns.ObjectID - obj12 ns.ObjectID - obj13 ns.ObjectID - obj14 ns.ObjectID - obj15 ns.ObjectID - obj16 ns.ObjectID - obj17 ns.ObjectID - obj18 ns.ObjectID - obj19 ns.ObjectID - obj20 ns.ObjectID - obj21 ns.ObjectID - obj22 ns.ObjectID - obj23 ns.ObjectID - obj24 ns.ObjectID - obj25 ns.ObjectID - obj26 ns.ObjectID - obj27 ns.ObjectID - obj28 ns.ObjectID - obj29 ns.ObjectID - obj30 ns.ObjectID - obj31 ns.ObjectID - obj32 ns.ObjectID - obj33 ns.ObjectID - obj34 ns.ObjectID - obj35 ns.ObjectID - obj36 ns.ObjectID - obj37 ns.ObjectID - obj38 ns.ObjectID - obj39 ns.ObjectID - obj40 ns.ObjectID - obj41 ns.ObjectID - obj42 ns.ObjectID - obj43 ns.ObjectID - obj44 ns.ObjectID - obj45 ns.ObjectID - obj46 ns.ObjectID - obj47 ns.ObjectID - obj48 ns.ObjectID - obj49 ns.ObjectID - obj50 ns.ObjectID - obj51 ns.ObjectID - obj52 ns.ObjectID - gvar53 ns.ObjectGroupID - obj54 ns.ObjectID - obj55 ns.ObjectID - obj56 ns.ObjectID - obj57 ns.ObjectID - obj58 ns.ObjectID - obj59 ns.ObjectID - obj60 ns.ObjectID - obj61 ns.ObjectID - obj62 ns.ObjectID - gvar63 ns.WallGroupID - gvar64 ns.WallGroupID - flag65 bool - flag66 bool - flag67 bool - flag68 bool - flag69 bool - flag70 bool - flag71 bool - flag72 bool - flag73 bool - flag74 bool - flag75 bool - flag76 bool - flag77 bool - flag78 bool - flag79 bool - flag80 bool - flag81 bool - flag82 bool - flag83 bool - flag84 bool - flag85 bool - flag86 bool - flag87 bool - flag88 bool - flag89 bool - flag90 bool - flag91 bool - flag92 bool - flag93 bool - gvar94 int - gvar95 int - gvar96 int - gvar97 int - gvar98 int - gvar99 int - gvar100 int - gvar101 int - gvar102 int - ivar103 int - gvar104 int - ivar105 int - ivar106 int - ivar107 int - gvar108 int - gvar109 int - fvar110 float32 - fvar111 float32 - fvar112 float32 - fvar113 float32 - fvar114 float32 - fvar115 float32 - fvar116 float32 - fvar117 float32 - gvar118 int - gvar119 int - gvar120 int - gvar121 int - gvar122 int - gvar123 int - gvar124 int - gvar125 int - gvar126 int - gvar127 int - gvar128 int - gvar129 int - gvar130 int - wp131 ns.WaypointID - wp132 ns.WaypointID - wp133 ns.WaypointID - gvar134 ns.WaypointGroupID - gvar135 ns.WaypointGroupID - wp136 ns.WaypointID - wp137 ns.WaypointID - wp138 ns.WaypointID - wp139 ns.WaypointID - wp140 ns.WaypointID - wp141 ns.WaypointID - gvar142 int - gvar143 int - gvar144 int - gvar145 int - gvar146 int - gvar147 int - gvar148 int - gvar149 int - gvar150 int - gvar151 int - ivar152 int - ivar153 int - ivar154 int - flag155 bool - gvar156 int - flag157 bool - flag158 bool - flag159 bool - flag160 bool - flag161 bool - flag162 bool -) - -func init() { - flag65 = false - flag66 = false - flag67 = false - flag68 = false - flag69 = false - flag70 = false - flag71 = false - flag72 = false - flag73 = false - flag74 = false - flag75 = false - flag76 = false - flag77 = false - flag78 = false - flag79 = false - flag80 = false - flag81 = false - flag82 = false - flag83 = false - flag84 = false - flag85 = false - flag86 = false - flag87 = false - flag88 = false - flag89 = false - flag90 = false - flag92 = false - flag93 = false - gvar94 = 0 - gvar95 = 0 - gvar96 = 0 - gvar97 = 0 - gvar98 = 0 - gvar99 = 0 - gvar100 = 0 - gvar101 = 0 - gvar102 = 0 - ivar103 = 0 - gvar104 = 0 - ivar105 = 0 - ivar106 = 0 - gvar108 = 100 - gvar118 = 0 - gvar119 = 1 - gvar120 = 2 - gvar121 = 3 - gvar122 = 0 - gvar123 = 1 - gvar124 = 2 - gvar125 = 3 - gvar126 = 0 - gvar127 = 1 - gvar128 = 2 - gvar129 = 3 - gvar142 = 0 - gvar143 = 1 - gvar144 = 2 - gvar145 = 3 - gvar146 = 4 - gvar147 = 5 - gvar148 = gvar142 - gvar149 = 0 - gvar150 = 1 - gvar151 = gvar149 - ivar152 = 0 - ivar153 = 0 - ivar154 = 0 - flag155 = true - flag157 = false - flag158 = false - flag159 = false - flag160 = false - flag161 = false - flag162 = false - flag91 = false -} -func CreatureSetup() { - ivar107 = ns.CurrentHealth(obj38) - ivar106 = 0 - for { - if !(ivar106 < 100) { - goto LABEL1 - } - obj5[ivar106] = 0 - ivar106 += 1 - } -LABEL1: - ns.Pickup(obj22, obj59) - ns.SetOwner(ns.GetHost(), obj23) - ns.SetOwner(ns.GetHost(), obj24) - ns.SetOwner(ns.GetHost(), obj11) - ns.SetOwner(ns.GetHost(), obj6) - ns.SetOwner(ns.GetHost(), obj7) - ns.SetOwner(ns.GetHost(), obj8) - ns.SetOwner(obj22, obj33) - ns.SetOwner(obj22, obj28) - ns.SetOwner(obj22, obj26) - ns.SetOwner(obj22, obj25) - ns.SetOwner(obj22, obj27) - ns.SetOwner(obj22, obj29) - ns.SetOwner(obj22, obj30) - ns.SetOwner(obj22, obj31) - ns.SetOwner(obj22, obj21) - ns.SetOwner(ns.GetHost(), obj36) - ns.Wander(obj38) - ns.CreatureGuard(obj12, ns.GetObjectX(obj12), ns.GetObjectY(obj12), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - ns.CreatureGuard(obj16, ns.GetObjectX(obj16), ns.GetObjectY(obj16), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - ns.CreatureGuard(obj31, ns.GetObjectX(obj31), ns.GetObjectY(obj31), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - fvar110 = ns.GetObjectX(obj14) - fvar111 = ns.GetObjectY(obj14) - fvar112 = ns.GetObjectX(obj9) - fvar113 = ns.GetObjectY(obj9) - fvar114 = ns.GetObjectX(obj12) - fvar115 = ns.GetObjectY(obj12) - fvar116 = ns.GetObjectX(obj16) - fvar117 = ns.GetObjectY(obj16) - ns.Music(17, 100) -} -func PlayerChurchEnter() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - flag82 = true - goto LABEL2 -LABEL1: - ns.Wander(ns.GetCaller()) -LABEL2: - return -} -func PlayerChurchExit() { - flag82 = false - if !flag81 { - goto LABEL1 - } - flag81 = false - ns.CreatureHunt(obj25) - ns.CreatureHunt(obj28) - ns.CreatureHunt(obj27) - ns.CreatureHunt(obj26) - ns.CreatureHunt(obj29) - ns.CreatureHunt(obj30) -LABEL1: - return -} -func PlayerSneakExit() { - flag82 = false -} -func DrunkRecognize() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - if gvar100 != gvar118 { - goto LABEL1 - } - if !(ns.CurrentHealth(obj31) > 0) { - goto LABEL1 - } - ns.SetDialog(obj31, ns.NORMAL, DrunkStart, DrunkEnd) - gvar100 = gvar119 - ns.CreatureFollow(obj31, ns.GetHost()) - ns.StartDialog(obj31, ns.GetHost()) -LABEL1: - if !ns.IsCaller(obj22) { - goto LABEL2 - } - if !(flag72 == false && flag68 == false) { - goto LABEL2 - } - if !(ns.CurrentHealth(obj22) > 0) { - goto LABEL2 - } - ns.CreatureFollow(obj22, ns.GetHost()) -LABEL2: - return -} -func DrunkReport() { - if !flag93 { - goto LABEL1 - } - flag93 = false - ns.Wander(obj31) -LABEL1: - return -} -func DrunkAttacks() { - var ( - v0 int - v1 int - ) - if gvar100 != gvar119 { - goto LABEL1 - } - if !(ns.CurrentHealth(obj31) > 0) { - goto LABEL1 - } - v0 = ns.Random(1, 5) - v1 = v0 - if v1 == 1 { - goto LABEL2 - } - if v1 == 2 { - goto LABEL3 - } - if v1 == 3 { - goto LABEL4 - } - if v1 == 4 { - goto LABEL5 - } - if v1 == 5 { - goto LABEL6 - } - goto LABEL7 -LABEL2: - ns.Chat(obj31, "War07A.scr:DrunkardTaunt01") - goto LABEL7 -LABEL3: - ns.Chat(obj31, "War07A.scr:DrunkardTaunt02") - goto LABEL7 -LABEL4: - ns.Chat(obj31, "War07A.scr:DrunkardTaunt03") - goto LABEL7 -LABEL5: - ns.Chat(obj31, "War07A.scr:DrunkardTaunt04") - goto LABEL7 -LABEL6: - ns.Chat(obj31, "War07A.scr:DrunkardTaunt05") - goto LABEL7 -LABEL7: - ns.Attack(obj31, ns.GetHost()) - ns.SecondTimer(5, DrunkAttacks) -LABEL1: - return -} -func DrunkInjured() { - if flag72 { - goto LABEL1 - } - if !(ns.CurrentHealth(obj31) > 0) { - goto LABEL2 - } - if flag74 { - goto LABEL3 - } - flag74 = true - ns.Chat(obj31, "War07A.scr:DrunkardHelp01") -LABEL3: - gvar100 = gvar120 - ns.AggressionLevel(obj22, 0.16) - ns.AggressionLevel(obj31, 0.16) - if !(ns.CurrentHealth(obj22) > 0) { - goto LABEL2 - } - ns.CreatureFollow(obj31, obj22) -LABEL2: - goto LABEL4 -LABEL1: - ns.AggressionLevel(obj31, 0.83) -LABEL4: - return -} -func DrunkDied() { - ns.DestroyEveryChat() - flag68 = true - ns.MoveObject(obj9, ns.GetWaypointX(wp137), ns.GetWaypointY(wp137)) - ns.MoveObject(obj12, ns.GetWaypointX(wp139), ns.GetWaypointY(wp139)) - ns.MoveObject(obj16, ns.GetWaypointX(wp138), ns.GetWaypointY(wp138)) - ns.MoveObject(obj14, ns.GetWaypointX(wp136), ns.GetWaypointY(wp136)) - ns.CancelDialog(obj22) - if gvar102 != gvar126 { - goto LABEL1 - } - gvar102 = gvar127 - ns.AggressionLevel(obj28, 0.16) - ns.AggressionLevel(obj27, 0.16) - ns.AggressionLevel(obj25, 0.16) - ns.AggressionLevel(obj26, 0.16) - ns.AggressionLevel(obj29, 0.16) - ns.AggressionLevel(obj30, 0.16) - goto LABEL2 -LABEL1: - gvar102 = gvar128 -LABEL2: - return -} -func DrunkStart() { - ns.Frozen(ns.GetHost(), true) - ns.CreatureIdle(ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj31) - ns.TellStory(ns.HumanMaleEatFood, "War07A.scr:DrunkardIntro01") -} -func DrunkEnd() { - ns.Frozen(ns.GetHost(), false) - ns.CancelDialog(obj31) - ns.AggressionLevel(obj31, 0.5) - ns.Attack(obj31, ns.GetHost()) - ns.SecondTimer(3, DrunkAttacks) -} -func DrunkLoseSight() { - if !(gvar100 == gvar119 && flag72 == false && flag70 == false) { - goto LABEL1 - } - ns.AggressionLevel(obj31, 0.16) - ns.CreatureFollow(obj31, obj22) - gvar100 = gvar120 - flag74 = false -LABEL1: - return -} -func PutPeopleInJail() { - IndexPlayerInventory() - flag71 = true - ns.PrintToAll("War07A.scr:TimePass") - ns.MoveObject(ns.GetHost(), 3741, 5350) - ns.MoveObject(obj22, 3774, 5385) - ns.AggressionLevel(obj22, 0) - ns.LookAtObject(obj22, ns.GetHost()) - flag72 = true - if !(ns.CurrentHealth(obj31) > 0) { - goto LABEL1 - } - ns.AggressionLevel(obj31, 0.16) - ns.Wander(obj31) -LABEL1: - ns.UnBlind() - WardenJailCellTalk() -} -func GetRandomMobYell() { - var v0 int - ivar105 = ns.Random(1, ivar103) - v0 = ivar105 - if v0 == 1 { - goto LABEL1 - } - if v0 == 2 { - goto LABEL2 - } - if v0 == 3 { - goto LABEL3 - } - if v0 == 4 { - goto LABEL4 - } - if v0 == 5 { - goto LABEL5 - } - if v0 == 6 { - goto LABEL6 - } - goto LABEL7 -LABEL1: - if !(flag75 == true && ns.CurrentHealth(obj25) > 0) { - goto LABEL8 - } - ns.Chat(obj25, "War07A.scr:MobYell") - ns.AggressionLevel(obj25, 0.83) - ns.AggressionLevel(obj28, 0.83) - ns.AggressionLevel(obj27, 0.83) - ns.AggressionLevel(obj26, 0.83) - ns.AggressionLevel(obj29, 0.83) - ns.AggressionLevel(obj30, 0.83) - ns.Attack(obj25, ns.GetHost()) - ns.Attack(obj28, ns.GetHost()) - ns.Attack(obj27, ns.GetHost()) - ns.Attack(obj26, ns.GetHost()) - ns.Attack(obj29, ns.GetHost()) - ns.Attack(obj30, ns.GetHost()) - flag80 = true - goto LABEL9 -LABEL8: - if flag80 { - goto LABEL9 - } - ns.FrameTimer(1, GetRandomMobYell) -LABEL9: - goto LABEL7 -LABEL2: - if !(flag73 == true && ns.CurrentHealth(obj28) > 0) { - goto LABEL10 - } - ns.Chat(obj28, "War07A.scr:MobYell") - ns.AggressionLevel(obj25, 0.83) - ns.AggressionLevel(obj28, 0.83) - ns.AggressionLevel(obj27, 0.83) - ns.AggressionLevel(obj26, 0.83) - ns.AggressionLevel(obj29, 0.83) - ns.AggressionLevel(obj30, 0.83) - ns.Attack(obj25, ns.GetHost()) - ns.Attack(obj28, ns.GetHost()) - ns.Attack(obj27, ns.GetHost()) - ns.Attack(obj26, ns.GetHost()) - ns.Attack(obj29, ns.GetHost()) - ns.Attack(obj30, ns.GetHost()) - flag80 = true - goto LABEL11 -LABEL10: - if flag80 { - goto LABEL11 - } - ns.FrameTimer(1, GetRandomMobYell) -LABEL11: - goto LABEL7 -LABEL3: - if !(flag76 == true && ns.CurrentHealth(obj26) > 0) { - goto LABEL12 - } - ns.Chat(obj26, "War07A.scr:MobYell") - ns.AggressionLevel(obj25, 0.83) - ns.AggressionLevel(obj28, 0.83) - ns.AggressionLevel(obj27, 0.83) - ns.AggressionLevel(obj26, 0.83) - ns.AggressionLevel(obj29, 0.83) - ns.AggressionLevel(obj30, 0.83) - ns.Attack(obj25, ns.GetHost()) - ns.Attack(obj28, ns.GetHost()) - ns.Attack(obj27, ns.GetHost()) - ns.Attack(obj26, ns.GetHost()) - ns.Attack(obj29, ns.GetHost()) - ns.Attack(obj30, ns.GetHost()) - flag80 = true - goto LABEL13 -LABEL12: - if flag80 { - goto LABEL13 - } - ns.FrameTimer(1, GetRandomMobYell) -LABEL13: - goto LABEL7 -LABEL4: - if !(flag77 == true && ns.CurrentHealth(obj27) > 0) { - goto LABEL14 - } - ns.Chat(obj27, "War07A.scr:MobYell") - ns.AggressionLevel(obj25, 0.83) - ns.AggressionLevel(obj28, 0.83) - ns.AggressionLevel(obj27, 0.83) - ns.AggressionLevel(obj26, 0.83) - ns.AggressionLevel(obj29, 0.83) - ns.AggressionLevel(obj30, 0.83) - ns.Attack(obj25, ns.GetHost()) - ns.Attack(obj28, ns.GetHost()) - ns.Attack(obj27, ns.GetHost()) - ns.Attack(obj26, ns.GetHost()) - ns.Attack(obj29, ns.GetHost()) - ns.Attack(obj30, ns.GetHost()) - flag80 = true - goto LABEL15 -LABEL14: - if flag80 { - goto LABEL15 - } - ns.FrameTimer(1, GetRandomMobYell) -LABEL15: - goto LABEL7 -LABEL5: - if !(flag78 == true && ns.CurrentHealth(obj29) > 0) { - goto LABEL16 - } - ns.Chat(obj29, "War07A.scr:MobYell") - ns.AggressionLevel(obj25, 0.83) - ns.AggressionLevel(obj28, 0.83) - ns.AggressionLevel(obj27, 0.83) - ns.AggressionLevel(obj26, 0.83) - ns.AggressionLevel(obj29, 0.83) - ns.AggressionLevel(obj30, 0.83) - ns.Attack(obj25, ns.GetHost()) - ns.Attack(obj28, ns.GetHost()) - ns.Attack(obj27, ns.GetHost()) - ns.Attack(obj26, ns.GetHost()) - ns.Attack(obj29, ns.GetHost()) - ns.Attack(obj30, ns.GetHost()) - flag80 = true - goto LABEL17 -LABEL16: - if flag80 { - goto LABEL17 - } - ns.FrameTimer(1, GetRandomMobYell) -LABEL17: - goto LABEL7 -LABEL6: - if !(flag79 == true && ns.CurrentHealth(obj30) > 0) { - goto LABEL18 - } - ns.Chat(obj30, "War07A.scr:MobYell") - ns.AggressionLevel(obj25, 0.83) - ns.AggressionLevel(obj28, 0.83) - ns.AggressionLevel(obj27, 0.83) - ns.AggressionLevel(obj26, 0.83) - ns.AggressionLevel(obj29, 0.83) - ns.AggressionLevel(obj30, 0.83) - ns.Attack(obj25, ns.GetHost()) - ns.Attack(obj28, ns.GetHost()) - ns.Attack(obj27, ns.GetHost()) - ns.Attack(obj26, ns.GetHost()) - ns.Attack(obj29, ns.GetHost()) - ns.Attack(obj30, ns.GetHost()) - flag80 = true - goto LABEL19 -LABEL18: - if flag80 { - goto LABEL19 - } - ns.FrameTimer(1, GetRandomMobYell) -LABEL19: - goto LABEL7 -LABEL7: - return -} -func AppleManRecognize() { - ns.Chat(obj32, "War07A.scr:AppleManTalk01") -} -func PlayerPit() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.ObjectOn(obj52) -LABEL1: - return -} -func MaxDialogStart() { - var v0 int - v0 = gvar148 - if v0 == gvar142 { - goto LABEL1 - } - if v0 == gvar143 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.TellStory(ns.HumanMaleEatFood, "War07a.scr:MaxOffer01") - goto LABEL3 -LABEL2: - ns.TellStory(ns.HumanMaleEatFood, "War07A.scr:MaxWaiting") - goto LABEL3 -LABEL3: - return -} -func MaxDialogEnd() { - var ( - v0 int - v1 int - v2 int - v3 int - v4 int - v5 int - ) - v0 = 0 - v1 = 0 - v2 = 1 - v3 = 2 - v4 = 0 - v0 = ns.GetAnswer(obj21) - v5 = v0 - if v5 == v4 { - goto LABEL1 - } - if v5 == v3 { - goto LABEL2 - } - if v5 == v2 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - gvar148 = gvar143 - ResetMaxDialog() - goto LABEL4 -LABEL2: - ns.SetDialog(obj21, ns.NORMAL, NullFunction, ResetMaxDialog) - ns.TellStory(ns.HumanMaleEatFood, "War07A.scr:TurnMaxDown") - gvar148 = gvar143 - goto LABEL4 -LABEL3: - v1 = ns.GetGold(ns.GetHost()) - if !(v1 >= 50000) { - goto LABEL5 - } - ns.SetDialog(obj21, ns.NORMAL, NullFunction, ResetMaxDialog) - ns.TellStory(ns.HumanMaleEatFood, "War07A.scr:HaveGoldForMax") - ns.ChangeGold(ns.GetHost(), -50000) - gvar148 = gvar147 - ns.UnlockDoor(obj41) - ns.UnlockDoor(obj42) - goto LABEL4 - goto LABEL4 -LABEL5: - ns.SetDialog(obj21, ns.NORMAL, NullFunction, ResetMaxDialog) - ns.TellStory(ns.HumanMaleEatFood, "War07A.scr:NoGoldForMax") - gvar148 = gvar143 - goto LABEL4 -LABEL4: - return -} -func PriestGreetingStart() { - if flag81 { - goto LABEL1 - } - ns.TellStory(ns.HumanMaleEatFood, "War07A.scr:PriestTalk01") - goto LABEL2 -LABEL1: - ns.TellStory(ns.HumanMaleEatFood, "War07A.scr:PriestTalk02") -LABEL2: - return -} -func PriestGreetingEnd() { - ns.SetDialog(obj11, ns.NORMAL, PriestGreetingStart, PriestGreetingEnd) -} -func UndertakerTalkStart() { - ns.TellStory(ns.HumanMaleEatFood, "War07A.scr:UndertakerTalk01") -} -func UndertakerTalkEnd() { - ns.SetDialog(obj33, ns.NORMAL, UndertakerTalkStart, UndertakerTalkEnd) -} -func DorianRecognize() { - var v0 int - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - flag83 = true - if flag82 { - goto LABEL1 - } - v0 = gvar102 - if v0 == gvar127 { - goto LABEL2 - } - if v0 == gvar128 { - goto LABEL3 - } - goto LABEL1 -LABEL2: - ns.CreatureFollow(obj28, ns.GetHost()) - if flag73 { - goto LABEL4 - } - ivar103 += 1 - flag73 = true -LABEL4: - if ivar103 != 3 { - goto LABEL5 - } - gvar102 = gvar128 - GetRandomMobYell() -LABEL5: - goto LABEL1 -LABEL3: - flag81 = false - ns.Attack(obj28, ns.GetHost()) - goto LABEL1 -LABEL1: - return -} -func GrunbarRecognize() { - var v0 int - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - flag85 = true - if flag82 { - goto LABEL1 - } - v0 = gvar102 - if v0 == gvar127 { - goto LABEL2 - } - if v0 == gvar128 { - goto LABEL3 - } - goto LABEL1 -LABEL2: - ns.CreatureFollow(obj27, ns.GetHost()) - if flag77 { - goto LABEL4 - } - ivar103 += 1 - flag77 = true -LABEL4: - if ivar103 != 3 { - goto LABEL5 - } - gvar102 = gvar128 - GetRandomMobYell() -LABEL5: - goto LABEL1 -LABEL3: - flag81 = false - ns.Attack(obj27, ns.GetHost()) - goto LABEL1 -LABEL1: - return -} -func JorganRecognize() { - var v0 int - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - flag86 = true - if flag82 { - goto LABEL1 - } - v0 = gvar102 - if v0 == gvar127 { - goto LABEL2 - } - if v0 == gvar128 { - goto LABEL3 - } - goto LABEL1 -LABEL2: - ns.CreatureFollow(obj26, ns.GetHost()) - if flag76 { - goto LABEL4 - } - ivar103 += 1 - flag76 = true -LABEL4: - if ivar103 != 3 { - goto LABEL5 - } - gvar102 = gvar128 - GetRandomMobYell() -LABEL5: - goto LABEL1 -LABEL3: - flag81 = false - ns.Attack(obj26, ns.GetHost()) - goto LABEL1 -LABEL1: - return -} -func AlbiRecognize() { - var v0 int - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - flag84 = true - if flag82 { - goto LABEL1 - } - v0 = gvar102 - if v0 == gvar127 { - goto LABEL2 - } - if v0 == gvar128 { - goto LABEL3 - } - goto LABEL1 -LABEL2: - ns.CreatureFollow(obj25, ns.GetHost()) - if flag75 { - goto LABEL4 - } - ivar103 += 1 - flag75 = true -LABEL4: - if ivar103 != 3 { - goto LABEL5 - } - gvar102 = gvar128 - GetRandomMobYell() -LABEL5: - goto LABEL1 -LABEL3: - flag81 = false - ns.Attack(obj25, ns.GetHost()) - goto LABEL1 -LABEL1: - return -} -func Civvy3Recognize() { - var v0 int - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - flag87 = true - if flag82 { - goto LABEL1 - } - v0 = gvar102 - if v0 == gvar127 { - goto LABEL2 - } - if v0 == gvar128 { - goto LABEL3 - } - goto LABEL1 -LABEL2: - ns.CreatureFollow(obj29, ns.GetHost()) - if flag78 { - goto LABEL4 - } - ivar103 += 1 - flag78 = true -LABEL4: - if ivar103 != 3 { - goto LABEL5 - } - gvar102 = gvar128 - GetRandomMobYell() -LABEL5: - goto LABEL1 -LABEL3: - flag81 = false - ns.Attack(obj29, ns.GetHost()) - goto LABEL1 -LABEL1: - return -} -func Civvy4Recognize() { - var v0 int - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - flag88 = true - if flag82 { - goto LABEL1 - } - v0 = gvar102 - if v0 == gvar127 { - goto LABEL2 - } - if v0 == gvar128 { - goto LABEL3 - } - goto LABEL1 -LABEL2: - ns.CreatureFollow(obj30, ns.GetHost()) - if flag79 { - goto LABEL4 - } - ivar103 += 1 - flag79 = true -LABEL4: - if ivar103 != 3 { - goto LABEL5 - } - gvar102 = gvar128 - GetRandomMobYell() -LABEL5: - goto LABEL1 -LABEL3: - flag81 = false - ns.Attack(obj30, ns.GetHost()) - goto LABEL1 -LABEL1: - return -} -func AlbiWaiting() { - if !ns.IsCaller(obj25) { - goto LABEL1 - } - if !(gvar102 != gvar126 || gvar94 == 1) { - goto LABEL1 - } - if !flag82 { - goto LABEL1 - } - flag81 = true - ns.CreatureIdle(obj25) - ns.AggressionLevel(obj25, 0.16) - ns.CreatureGuard(obj25, ns.GetObjectX(obj25), ns.GetObjectY(obj25), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) -LABEL1: - return -} -func DorianWaiting() { - if !ns.IsCaller(obj28) { - goto LABEL1 - } - if !(gvar102 != gvar126 || gvar95 == 1) { - goto LABEL1 - } - if !flag82 { - goto LABEL1 - } - flag81 = true - ns.CreatureIdle(obj28) - ns.AggressionLevel(obj28, 0.16) - ns.CreatureGuard(obj28, ns.GetObjectX(obj28), ns.GetObjectY(obj28), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) -LABEL1: - return -} -func GrunbarWaiting() { - if !ns.IsCaller(obj27) { - goto LABEL1 - } - if !(gvar102 != gvar126 || gvar96 == 1) { - goto LABEL1 - } - if !flag82 { - goto LABEL1 - } - flag81 = true - ns.CreatureIdle(obj27) - ns.AggressionLevel(obj27, 0.16) - ns.CreatureGuard(obj27, ns.GetObjectX(obj27), ns.GetObjectY(obj27), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) -LABEL1: - return -} -func JorganWaiting() { - if !ns.IsCaller(obj26) { - goto LABEL1 - } - if !(gvar102 != gvar126 || gvar97 == 1) { - goto LABEL1 - } - if !flag82 { - goto LABEL1 - } - flag81 = true - ns.CreatureIdle(obj26) - ns.AggressionLevel(obj26, 0.16) - ns.CreatureGuard(obj26, ns.GetObjectX(obj26), ns.GetObjectY(obj26), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) -LABEL1: - return -} -func Civvy3Waiting() { - if !ns.IsCaller(obj29) { - goto LABEL1 - } - if !(gvar102 != gvar126 || gvar98 == 1) { - goto LABEL1 - } - if !flag82 { - goto LABEL1 - } - flag81 = true - ns.CreatureIdle(obj29) - ns.AggressionLevel(obj29, 0.16) - ns.CreatureGuard(obj29, ns.GetObjectX(obj29), ns.GetObjectY(obj29), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) -LABEL1: - return -} -func Civvy4Waiting() { - if !ns.IsCaller(obj30) { - goto LABEL1 - } - if !(gvar102 != gvar126 || gvar99 == 1) { - goto LABEL1 - } - if !flag82 { - goto LABEL1 - } - flag81 = true - ns.CreatureIdle(obj30) - ns.AggressionLevel(obj30, 0.16) - ns.CreatureGuard(obj30, ns.GetObjectX(obj30), ns.GetObjectY(obj30), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) -LABEL1: - return -} -func DorianLoseSight() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - flag83 = false -LABEL1: - return -} -func AlbiLoseSight() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - flag84 = false -LABEL1: - return -} -func JorganLoseSight() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - flag86 = false -LABEL1: - return -} -func GrunbarLoseSight() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - flag85 = false -LABEL1: - return -} -func Civvy3LoseSight() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - flag87 = false -LABEL1: - return -} -func Civvy4LoseSight() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - flag88 = false -LABEL1: - return -} -func MlurghWelcomeStart() { - ns.TellStory(ns.HumanMaleEatFood, "War07A.scr:MlurghTalk01") -} -func MlurghWelcomeEnd() { - ns.SetDialog(obj34, ns.NORMAL, MlurghRumorStart, MlurghRumorEnd) -} -func MlurghRumorStart() { - ns.TellStory(ns.HumanMaleEatFood, "War07A.scr:MlurghTalk02") -} -func MlurghRumorEnd() { - ns.SetDialog(obj34, ns.NORMAL, MlurghRumorStart, MlurghRumorEnd) -} -func FreezePhim() { - if !ns.IsCaller(obj9) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.MoveObject(obj10, fvar112, fvar113) - ns.Frozen(obj9, true) - ns.Frozen(obj10, true) -LABEL1: - return -} -func FreezeMage() { - if !ns.IsCaller(obj12) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.MoveObject(obj13, fvar114, fvar115) - ns.Frozen(obj12, true) - ns.Frozen(obj13, true) -LABEL1: - return -} -func FreezeKin() { - if !ns.IsCaller(obj16) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.MoveObject(obj17, fvar116, fvar117) - ns.Frozen(obj16, true) - ns.Frozen(obj17, true) -LABEL1: - return -} -func FreezeBB() { - if !ns.IsCaller(obj14) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.MoveObject(obj15, fvar110, fvar111) - ns.Frozen(obj14, true) - ns.Frozen(obj15, true) -LABEL1: - return -} -func WardenRecognize() { - if !flag68 { - goto LABEL1 - } - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.AggressionLevel(obj22, 0.83) - ns.CreatureHunt(obj22) - ns.Attack(obj22, ns.GetHost()) -LABEL1: - if !(flag72 == false && flag68 == false && flag70 == false) { - goto LABEL2 - } - if !ns.IsCaller(obj31) { - goto LABEL3 - } - ns.AggressionLevel(obj22, 0.16) - ns.CreatureFollow(obj22, ns.GetHost()) -LABEL3: - if !ns.IsCaller(ns.GetHost()) { - goto LABEL4 - } - gvar101 = gvar124 - ns.AggressionLevel(obj22, 0.16) - ns.CreatureFollow(obj22, ns.GetHost()) - ns.SetDialog(obj22, ns.YESNO, WardenArrestStart, WardenArrestEnd) - StartWardenTalk() -LABEL4: - goto LABEL5 -LABEL2: - if !ns.IsCaller(ns.GetHost()) { - goto LABEL5 - } - if !flag72 { - goto LABEL6 - } - if flag71 { - goto LABEL7 - } - ns.Chat(obj22, "War07A.scr:WardenTalk02") - ns.AggressionLevel(obj22, 0.83) - ns.CreatureHunt(obj22) - ns.Attack(obj22, ns.GetHost()) - gvar101 = gvar125 - ns.LockDoor(obj43) -LABEL7: - if !flag71 { - goto LABEL8 - } - ns.AggressionLevel(obj22, 0.16) -LABEL8: - goto LABEL5 -LABEL6: - ns.AggressionLevel(obj22, 0.83) - ns.CreatureHunt(obj22) - ns.Attack(obj22, ns.GetHost()) -LABEL5: - return -} -func WardenArrestStart() { - ns.Frozen(obj31, true) - ns.Frozen(obj25, true) - ns.Frozen(obj28, true) - ns.Frozen(obj27, true) - ns.Frozen(obj26, true) - ns.Frozen(obj29, true) - ns.Frozen(obj30, true) - ns.Frozen(ns.GetHost(), true) - ns.CreatureIdle(obj31) - ns.CreatureIdle(obj25) - ns.CreatureIdle(obj28) - ns.CreatureIdle(obj27) - ns.CreatureIdle(obj26) - ns.CreatureIdle(obj29) - ns.CreatureIdle(obj30) - ns.CreatureIdle(ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj22) - ns.TellStory(ns.HumanMaleEatFood, "War07A.scr:WardenPreArrest04") -} -func WardenArrestEnd() { - var ( - v0 int - v1 int - ) - v0 = 0 - ns.Frozen(ns.GetHost(), false) - ns.Frozen(obj31, false) - ns.Frozen(obj25, false) - ns.Frozen(obj26, false) - ns.Frozen(obj27, false) - ns.Frozen(obj28, false) - ns.Frozen(obj29, false) - ns.Frozen(obj30, false) - ns.Wander(obj25) - ns.Wander(obj28) - ns.Wander(obj27) - ns.Wander(obj26) - ns.Wander(obj29) - ns.Wander(obj30) - v0 = ns.GetAnswer(obj22) - v1 = v0 - if v1 == 0 { - goto LABEL1 - } - if v1 == 1 { - goto LABEL2 - } - if v1 == 2 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - gvar101 = gvar125 - ns.LockDoor(obj43) - ns.AggressionLevel(obj22, 0.83) - ns.AggressionLevel(obj31, 0.5) - ns.Attack(obj22, ns.GetHost()) - ns.Attack(obj31, ns.GetHost()) - ns.CreatureGuard(obj23, 3622, 5460, 3737, 5579, 0) - ns.CancelDialog(obj23) - goto LABEL4 -LABEL2: - ns.Blind() - ns.AggressionLevel(obj22, 0) - ns.AggressionLevel(obj31, 0.16) - ns.FrameTimer(60, PutPeopleInJail) - goto LABEL4 -LABEL3: - gvar101 = gvar125 - ns.LockDoor(obj43) - ns.AggressionLevel(obj22, 0.83) - ns.AggressionLevel(obj31, 0.5) - ns.Attack(obj22, ns.GetHost()) - ns.Attack(obj31, ns.GetHost()) - ns.CreatureGuard(obj23, 3622, 5460, 3737, 5579, 0) - ns.CancelDialog(obj23) - goto LABEL4 -LABEL4: - ns.CancelDialog(obj22) -} -func WardenUpsetStart() { - ns.TellStory(ns.HumanMaleEatFood, "War07A.scr:WardenTalk01") -} -func WardenUpsetEnd() { - ns.CancelDialog(obj22) - ns.Wander(obj22) - ns.FrameTimer(1, MorganWhisper) -} -func WardenJailCellTalk() { - if flag65 { - goto LABEL1 - } - ns.AggressionLevel(obj22, 0) - flag65 = true - ns.FrameTimer(60, WardenJailCellTalk) - goto LABEL2 -LABEL1: - ns.AggressionLevel(obj22, 0) - ns.SetDialog(obj22, ns.NORMAL, WardenUpsetStart, WardenUpsetEnd) - ns.LookAtObject(obj22, ns.GetHost()) - ns.StartDialog(obj22, ns.GetHost()) -LABEL2: - return -} -func WardenBack() { - ns.ObjectOn(obj22) - ns.LookAtObject(obj22, obj46) - flag71 = false - ns.AggressionLevel(obj22, 0.16) - ns.ObjectOff(obj50) -} -func WardenDied() { - if !ns.IsLocked(obj43) { - goto LABEL1 - } - ns.UnlockDoor(obj43) -LABEL1: - if !(ns.CurrentHealth(obj31) > 0) { - goto LABEL2 - } - flag93 = true - ns.GoBackHome(obj31) -LABEL2: - if flag69 { - goto LABEL3 - } - if !flag66 { - goto LABEL4 - } - ns.CreatureGuard(obj24, ns.GetObjectX(obj24), ns.GetObjectY(obj24), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - ns.SetDialog(obj24, ns.NORMAL, FriendWaitStart, FriendWaitEnd) -LABEL4: - flag69 = true - ns.CancelDialog(obj22) - if !(flag84 == true || flag85 == true || flag86 == true || flag83 == true || flag87 == true || flag88 == true) { - goto LABEL3 - } - if gvar102 == gvar128 { - goto LABEL3 - } - gvar102 = gvar128 - ns.AggressionLevel(obj28, 0.83) - ns.AggressionLevel(obj27, 0.83) - ns.AggressionLevel(obj25, 0.83) - ns.AggressionLevel(obj26, 0.83) - ns.AggressionLevel(obj29, 0.83) - ns.AggressionLevel(obj30, 0.83) - ns.MoveObject(obj9, ns.GetWaypointX(wp137), ns.GetWaypointY(wp137)) - ns.MoveObject(obj12, ns.GetWaypointX(wp139), ns.GetWaypointY(wp139)) - ns.MoveObject(obj16, ns.GetWaypointX(wp138), ns.GetWaypointY(wp138)) - ns.MoveObject(obj14, ns.GetWaypointX(wp136), ns.GetWaypointY(wp136)) -LABEL3: - return -} -func WardenMad() { - ns.Chat(obj22, "War07A.scr:WardenTalk04") -} -func StartWardenTalk() { - if flag70 { - goto LABEL1 - } - if !(ns.Distance(ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), ns.GetObjectX(obj22), ns.GetObjectY(obj22)) > 120) { - goto LABEL2 - } - ns.FrameTimer(10, StartWardenTalk) - goto LABEL1 -LABEL2: - if !ns.IsTrading() { - goto LABEL3 - } - ns.FrameTimer(10, StartWardenTalk) - goto LABEL1 -LABEL3: - if !(ns.CurrentHealth(ns.GetHost()) > 0) { - goto LABEL1 - } - flag70 = true - ns.StartDialog(obj22, ns.GetHost()) -LABEL1: - return -} -func WardenHurt() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.AggressionLevel(obj22, 0.83) - gvar101 = gvar125 - ns.CancelDialog(obj22) -LABEL1: - return -} -func LockBackDoor() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.LockDoor(obj46) -LABEL1: - return -} -func MorganWhisper() { - ns.Chat(obj23, "War07A.scr:MorganTalk01") -} -func MorganHintStart() { - ns.TellStory(ns.HumanMaleEatFood, "War07A.scr:MorganTalk02") -} -func MorganHintEnd() { - ns.CancelDialog(obj23) - ns.JournalEntry(ns.GetHost(), "FindTunnel", 2) - ns.PrintToAll("Con01a:NewJournalEntry") - ns.Walk(obj23, 3633, 5472) -} -func MorganRequestStart() { - ns.TellStory(ns.HumanMaleEatFood, "War07A.scr:MorganTalk04") -} -func MorganRequestEnd() { - ns.CancelDialog(obj23) - ns.JournalEntry(ns.GetHost(), "RescueMorgan", 2) -} -func OpenEscapeWall() { - if !ns.IsCaller(obj23) { - goto LABEL1 - } - ns.WallOpen(ns.Wall(166, 220)) -LABEL1: - return -} -func MorganThanksTrigger() { - if !ns.IsCaller(obj23) { - goto LABEL1 - } - ns.CreatureGuard(obj23, ns.GetObjectX(obj23), ns.GetObjectY(obj23), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - ns.SetDialog(obj23, ns.NORMAL, MorganThanksStart, MorganThanksEnd) -LABEL1: - if !flag89 { - goto LABEL2 - } - ns.Frozen(ns.GetHost(), true) - ns.Frozen(obj22, true) - ns.Frozen(obj31, true) - ns.CreatureIdle(ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj23) - ns.StartDialog(obj23, ns.GetHost()) - ns.ObjectOff(obj51) - goto LABEL3 -LABEL2: - if !(flag91 == true && flag90 == true) { - goto LABEL4 - } - ns.Frozen(ns.GetHost(), true) - ns.Frozen(obj22, true) - ns.Frozen(obj31, true) - ns.CreatureIdle(ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj23) - ns.StartDialog(obj23, ns.GetHost()) - ns.ObjectOff(obj51) - ns.ObjectGroupOff(gvar53) - goto LABEL3 -LABEL4: - ns.FrameTimer(10, MorganThanksTrigger) -LABEL3: - return -} -func MorganThanksStart() { - if !flag66 { - goto LABEL1 - } - ns.MoveObject(obj24, 3756, 4777) - ns.CreatureFollow(obj24, ns.GetHost()) - goto LABEL2 -LABEL1: - ns.LockDoor(obj39) -LABEL2: - ns.TellStory(ns.HumanMaleEatFood, "War07a.scr:MorganTalk06") - ns.SetDialog(obj24, ns.NORMAL, GiveShieldStart, GiveShieldEnd) -} -func MorganThanksEnd() { - ns.CancelDialog(obj23) - ns.Pickup(ns.GetHost(), obj56) - ns.Pickup(ns.GetHost(), obj57) - ns.GiveXp(ns.GetHost(), 500) - ns.PrintToAll("GeneralPrint:GainedKey") - if !flag66 { - goto LABEL1 - } - ns.JournalEdit(ns.GetHost(), "RescueMorgan", 4) - ns.PrintToAll("Con02a:ObjectiveComplete") - ns.StartDialog(obj24, ns.GetHost()) - goto LABEL2 -LABEL1: - ns.WideScreen(false) - ns.Frozen(ns.GetHost(), false) - ns.Frozen(obj22, false) - ns.Frozen(obj31, false) - flag92 = true -LABEL2: - return -} -func MorganContact() { - r0 := ns.IsAttackedBy(obj23, ns.GetCaller()) - if !r0 { - goto LABEL1 - } - if !flag92 { - goto LABEL1 - } - ns.AggressionLevel(obj23, 0.83) -LABEL1: - return -} -func MorganFriendStart() { - ns.TellStory(ns.HumanMaleEatFood, "War07A.scr:MorganFriendTalk01") -} -func MorganFriendEnd() { - ns.JournalEdit(ns.GetHost(), "FindTunnel", 4) - ns.PrintToAll("Con02a:ObjectiveComplete") - ns.JournalEntry(ns.GetHost(), "RescueMorgan", 2) - ns.PrintToAll("Con01a:NewJournalEntry") - flag66 = true - ns.CancelDialog(obj24) -} -func UnlockGearDoor() { - if !ns.IsLocked(obj39) { - goto LABEL1 - } - ns.UnlockDoor(obj39) -LABEL1: - return -} -func CheckMorganDoor() { - if !ns.IsLocked(obj45) { - goto LABEL1 - } - ns.FrameTimer(10, CheckMorganDoor) - goto LABEL2 -LABEL1: - ns.CancelDialog(obj23) - ns.ObjectOff(obj49) - ns.LookAtObject(obj23, ns.GetHost()) - ns.Chat(obj23, "War07A.scr:MorganTalk05") - ns.WayPointGroupOn(gvar134) - ns.Wander(obj23) -LABEL2: - return -} -func SeeMorgan() { - if !ns.IsCaller(obj23) { - goto LABEL1 - } - if flag67 { - goto LABEL1 - } - flag67 = true - ns.SetDialog(obj24, ns.NORMAL, GiveShieldStart, GiveShieldEnd) -LABEL1: - return -} -func GiveShieldStart() { - ns.Frozen(ns.GetHost(), true) - ns.Frozen(obj22, true) - ns.TellStory(ns.HumanMaleEatFood, "War07A.scr:MorganFriendTalk02") -} -func GiveShieldEnd() { - ns.Frozen(ns.GetHost(), false) - ns.Frozen(obj22, false) - ns.Frozen(obj31, false) - ns.WideScreen(false) - flag92 = true - ns.CreatureGuard(obj23, ns.GetObjectX(obj23), ns.GetObjectY(obj23), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - ns.CreatureGuard(obj24, ns.GetObjectX(obj24), ns.GetObjectY(obj24), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - ns.CancelDialog(obj24) - ns.Pickup(ns.GetHost(), obj55) - ns.PrintToAll("GeneralPrint:GainedItem") - ns.JournalEdit(ns.GetHost(), "RescueMorgan", 4) - ns.PrintToAll("Con02a:ObjectiveComplete") -} -func FriendWaitStart() { - ns.TellStory(ns.HumanMaleEatFood, "War07A.scr:MorganFriendTalk04") -} -func FriendWaitEnd() { - ns.SetDialog(obj24, ns.NORMAL, FriendWaitStart, FriendWaitEnd) -} -func LookForPlayer() { - if ns.IsTalking() { - goto LABEL1 - } - if !(flag89 == true || flag90 == true) { - goto LABEL1 - } - ns.CreatureGuard(obj24, ns.GetObjectX(obj24), ns.GetObjectY(obj24), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - ns.StartDialog(obj24, ns.GetHost()) - return -LABEL1: - ns.FrameTimer(10, LookForPlayer) -} -func RewardTrigger() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - if ns.IsLocked(obj45) { - goto LABEL1 - } - ns.ObjectGroupOff(gvar53) - ns.Frozen(ns.GetHost(), true) - ns.CreatureIdle(ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj51) - ns.WideScreen(true) - flag89 = true -LABEL1: - return -} -func PlayerExitRoom() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - flag90 = false -LABEL1: - if !ns.IsCaller(obj23) { - goto LABEL2 - } - ns.AggressionLevel(obj23, 0.16) - ns.CreatureGuard(obj23, ns.GetWaypointX(wp140), ns.GetWaypointY(wp140), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) -LABEL2: - if !ns.IsCaller(obj24) { - goto LABEL3 - } - ns.AggressionLevel(obj24, 0.16) - ns.CreatureGuard(obj24, ns.GetWaypointX(wp141), ns.GetWaypointY(wp141), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) -LABEL3: - return -} -func OpenTowerGate() { - var v0 ns.ObjectID - if !(!ns.IsLocked(obj47) || !ns.IsLocked(obj48)) { - goto LABEL1 - } - v0 = ns.GetLastItem(ns.GetHost()) - for { - if v0 == 0 { - goto LABEL1 - } - if v0 != ns.Object("GoldKey2") { - goto LABEL2 - } - ns.Delete(v0) - goto LABEL1 - LABEL2: - if v0 != ns.Object("GoldKey1") { - goto LABEL3 - } - ns.Delete(v0) - ns.ObjectOff(ns.GetTrigger()) - goto LABEL1 - LABEL3: - v0 = ns.GetPreviousItem(v0) - } -LABEL1: - return -} -func BoothStart() { - ns.LookAtObject(obj36, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "War03b:T4Post") -} -func BoothEnd() { -} -func NewMaxStart() { - ns.DestroyEveryChat() - ns.TellStory(ns.HumanMaleEatFood, "War07A.scr:MaxOffer01") -} -func NewMaxEnd() { -} -func IndexPlayerInventory() { -} -func WarTrigger() { - ns.ObjectOff(ns.GetTrigger()) - ns.UnlockDoor(obj41) - ns.UnlockDoor(obj42) -} -func Injured() { - if flag82 { - goto LABEL1 - } - ns.AggressionLevel(ns.GetTrigger(), 0.83) -LABEL1: - if !ns.IsTrigger(obj25) { - goto LABEL2 - } - gvar94 = 1 - if flag82 { - goto LABEL3 - } - if !(flag86 == true || flag83 == true || flag85 == true || flag87 == true || flag88 == true) { - goto LABEL3 - } - gvar102 = gvar128 - ns.AggressionLevel(obj25, 0.83) - ns.AggressionLevel(obj26, 0.83) - ns.AggressionLevel(obj28, 0.83) - ns.AggressionLevel(obj27, 0.83) - ns.AggressionLevel(obj29, 0.83) - ns.AggressionLevel(obj30, 0.83) -LABEL3: - goto LABEL4 -LABEL2: - if !ns.IsTrigger(obj26) { - goto LABEL5 - } - gvar97 = 1 - if flag82 { - goto LABEL6 - } - if !(flag84 == true || flag83 == true || flag85 == true || flag87 == true || flag88 == true) { - goto LABEL6 - } - gvar102 = gvar128 - ns.AggressionLevel(obj25, 0.83) - ns.AggressionLevel(obj26, 0.83) - ns.AggressionLevel(obj28, 0.83) - ns.AggressionLevel(obj27, 0.83) - ns.AggressionLevel(obj29, 0.83) - ns.AggressionLevel(obj30, 0.83) -LABEL6: - goto LABEL4 -LABEL5: - if !ns.IsTrigger(obj28) { - goto LABEL7 - } - gvar95 = 1 - if flag82 { - goto LABEL8 - } - if !(flag86 == true || flag84 == true || flag85 == true || flag87 == true || flag88 == true) { - goto LABEL8 - } - gvar102 = gvar128 - ns.AggressionLevel(obj25, 0.83) - ns.AggressionLevel(obj26, 0.83) - ns.AggressionLevel(obj28, 0.83) - ns.AggressionLevel(obj27, 0.83) - ns.AggressionLevel(obj29, 0.83) - ns.AggressionLevel(obj30, 0.83) -LABEL8: - goto LABEL4 -LABEL7: - if !ns.IsTrigger(obj27) { - goto LABEL9 - } - gvar96 = 1 - if flag82 { - goto LABEL10 - } - if !(flag86 == true || flag83 == true || flag84 == true || flag87 == true || flag88 == true) { - goto LABEL10 - } - gvar102 = gvar128 - ns.AggressionLevel(obj25, 0.83) - ns.AggressionLevel(obj26, 0.83) - ns.AggressionLevel(obj28, 0.83) - ns.AggressionLevel(obj27, 0.83) - ns.AggressionLevel(obj29, 0.83) - ns.AggressionLevel(obj30, 0.83) -LABEL10: - goto LABEL4 -LABEL9: - if !ns.IsTrigger(obj29) { - goto LABEL11 - } - gvar98 = 1 - if flag82 { - goto LABEL12 - } - if !(flag86 == true || flag83 == true || flag85 == true || flag84 == true || flag88 == true) { - goto LABEL12 - } - gvar102 = gvar128 - ns.AggressionLevel(obj25, 0.83) - ns.AggressionLevel(obj26, 0.83) - ns.AggressionLevel(obj28, 0.83) - ns.AggressionLevel(obj27, 0.83) - ns.AggressionLevel(obj29, 0.83) - ns.AggressionLevel(obj30, 0.83) -LABEL12: - goto LABEL4 -LABEL11: - if !ns.IsTrigger(obj30) { - goto LABEL4 - } - gvar99 = 1 - if flag82 { - goto LABEL4 - } - if !(flag86 == true || flag83 == true || flag85 == true || flag87 == true || flag84 == true) { - goto LABEL4 - } - gvar102 = gvar128 - ns.AggressionLevel(obj25, 0.83) - ns.AggressionLevel(obj26, 0.83) - ns.AggressionLevel(obj28, 0.83) - ns.AggressionLevel(obj27, 0.83) - ns.AggressionLevel(obj29, 0.83) - ns.AggressionLevel(obj30, 0.83) -LABEL4: - return -} -func Killed() { - if flag82 { - goto LABEL1 - } - ns.AggressionLevel(ns.GetTrigger(), 0.83) -LABEL1: - if !ns.IsTrigger(obj25) { - goto LABEL2 - } - if flag82 { - goto LABEL3 - } - if !(flag86 == true || flag83 == true || flag85 == true || flag87 == true || flag88 == true) { - goto LABEL3 - } - gvar102 = gvar128 - ns.AggressionLevel(obj25, 0.83) - ns.AggressionLevel(obj26, 0.83) - ns.AggressionLevel(obj28, 0.83) - ns.AggressionLevel(obj27, 0.83) - ns.AggressionLevel(obj29, 0.83) - ns.AggressionLevel(obj30, 0.83) - ns.MoveObject(obj9, ns.GetWaypointX(wp137), ns.GetWaypointY(wp137)) - ns.MoveObject(obj12, ns.GetWaypointX(wp139), ns.GetWaypointY(wp139)) - ns.MoveObject(obj16, ns.GetWaypointX(wp138), ns.GetWaypointY(wp138)) - ns.MoveObject(obj14, ns.GetWaypointX(wp136), ns.GetWaypointY(wp136)) -LABEL3: - goto LABEL4 -LABEL2: - if !ns.IsTrigger(obj26) { - goto LABEL5 - } - if flag82 { - goto LABEL6 - } - if !(flag84 == true || flag83 == true || flag85 == true || flag87 == true || flag88 == true) { - goto LABEL6 - } - gvar102 = gvar128 - ns.AggressionLevel(obj25, 0.83) - ns.AggressionLevel(obj26, 0.83) - ns.AggressionLevel(obj28, 0.83) - ns.AggressionLevel(obj27, 0.83) - ns.AggressionLevel(obj29, 0.83) - ns.AggressionLevel(obj30, 0.83) - ns.MoveObject(obj9, ns.GetWaypointX(wp137), ns.GetWaypointY(wp137)) - ns.MoveObject(obj12, ns.GetWaypointX(wp139), ns.GetWaypointY(wp139)) - ns.MoveObject(obj16, ns.GetWaypointX(wp138), ns.GetWaypointY(wp138)) - ns.MoveObject(obj14, ns.GetWaypointX(wp136), ns.GetWaypointY(wp136)) -LABEL6: - goto LABEL4 -LABEL5: - if !ns.IsTrigger(obj28) { - goto LABEL7 - } - if flag82 { - goto LABEL8 - } - if !(flag86 == true || flag84 == true || flag85 == true || flag87 == true || flag88 == true) { - goto LABEL8 - } - gvar102 = gvar128 - ns.AggressionLevel(obj25, 0.83) - ns.AggressionLevel(obj26, 0.83) - ns.AggressionLevel(obj28, 0.83) - ns.AggressionLevel(obj27, 0.83) - ns.AggressionLevel(obj29, 0.83) - ns.AggressionLevel(obj30, 0.83) - ns.MoveObject(obj9, ns.GetWaypointX(wp137), ns.GetWaypointY(wp137)) - ns.MoveObject(obj12, ns.GetWaypointX(wp139), ns.GetWaypointY(wp139)) - ns.MoveObject(obj16, ns.GetWaypointX(wp138), ns.GetWaypointY(wp138)) - ns.MoveObject(obj14, ns.GetWaypointX(wp136), ns.GetWaypointY(wp136)) -LABEL8: - goto LABEL4 -LABEL7: - if !ns.IsTrigger(obj27) { - goto LABEL9 - } - if flag82 { - goto LABEL10 - } - if !(flag86 == true || flag83 == true || flag84 == true || flag87 == true || flag88 == true) { - goto LABEL10 - } - gvar102 = gvar128 - ns.AggressionLevel(obj25, 0.83) - ns.AggressionLevel(obj26, 0.83) - ns.AggressionLevel(obj28, 0.83) - ns.AggressionLevel(obj27, 0.83) - ns.AggressionLevel(obj29, 0.83) - ns.AggressionLevel(obj30, 0.83) - ns.MoveObject(obj9, ns.GetWaypointX(wp137), ns.GetWaypointY(wp137)) - ns.MoveObject(obj12, ns.GetWaypointX(wp139), ns.GetWaypointY(wp139)) - ns.MoveObject(obj16, ns.GetWaypointX(wp138), ns.GetWaypointY(wp138)) - ns.MoveObject(obj14, ns.GetWaypointX(wp136), ns.GetWaypointY(wp136)) -LABEL10: - goto LABEL4 -LABEL9: - if !ns.IsTrigger(obj29) { - goto LABEL11 - } - if flag82 { - goto LABEL12 - } - if !(flag86 == true || flag83 == true || flag85 == true || flag84 == true || flag88 == true) { - goto LABEL12 - } - gvar102 = gvar128 - ns.AggressionLevel(obj25, 0.83) - ns.AggressionLevel(obj26, 0.83) - ns.AggressionLevel(obj28, 0.83) - ns.AggressionLevel(obj27, 0.83) - ns.AggressionLevel(obj29, 0.83) - ns.AggressionLevel(obj30, 0.83) - ns.MoveObject(obj9, ns.GetWaypointX(wp137), ns.GetWaypointY(wp137)) - ns.MoveObject(obj12, ns.GetWaypointX(wp139), ns.GetWaypointY(wp139)) - ns.MoveObject(obj16, ns.GetWaypointX(wp138), ns.GetWaypointY(wp138)) - ns.MoveObject(obj14, ns.GetWaypointX(wp136), ns.GetWaypointY(wp136)) -LABEL12: - goto LABEL4 -LABEL11: - if !ns.IsTrigger(obj30) { - goto LABEL4 - } - if flag82 { - goto LABEL4 - } - if !(flag86 == true || flag83 == true || flag85 == true || flag87 == true || flag84 == true) { - goto LABEL4 - } - gvar102 = gvar128 - ns.AggressionLevel(obj25, 0.83) - ns.AggressionLevel(obj26, 0.83) - ns.AggressionLevel(obj28, 0.83) - ns.AggressionLevel(obj27, 0.83) - ns.AggressionLevel(obj29, 0.83) - ns.AggressionLevel(obj30, 0.83) - ns.MoveObject(obj9, ns.GetWaypointX(wp137), ns.GetWaypointY(wp137)) - ns.MoveObject(obj12, ns.GetWaypointX(wp139), ns.GetWaypointY(wp139)) - ns.MoveObject(obj16, ns.GetWaypointX(wp138), ns.GetWaypointY(wp138)) - ns.MoveObject(obj14, ns.GetWaypointX(wp136), ns.GetWaypointY(wp136)) -LABEL4: - return -} -func EscapeHatch() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.WallGroupOpen(gvar64) -LABEL1: - return -} -func CloseHatch() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.WallGroupClose(gvar64) -LABEL1: - return -} -func MapInitialize() { - obj6 = ns.Object("TowerNPC") - obj7 = ns.Object("TowerNPC2") - obj8 = ns.Object("TowerMaiden") - obj9 = ns.Object("F6Townsman2") - obj10 = ns.Object("Jesse") - obj11 = ns.Object("Priest") - obj14 = ns.Object("BrightBlades") - obj15 = ns.Object("BrightBladesA") - obj12 = ns.Object("Mystic") - obj13 = ns.Object("Mystic2") - obj18 = ns.Object("BookVendor") - obj19 = ns.Object("BookVendorA") - obj16 = ns.Object("Loreman") - obj17 = ns.Object("Kincaid") - obj20 = ns.Object("LameBarKeep") - obj21 = ns.Object("Max") - obj22 = ns.Object("Warden") - obj23 = ns.Object("Morgan") - obj24 = ns.Object("F6FireGuard8") - obj32 = ns.Object("AppleMan") - obj33 = ns.Object("Undertaker") - obj34 = ns.Object("Mlurgh") - obj35 = ns.Object("Grillf") - obj36 = ns.Object("F6Elite4") - obj37 = ns.Object("NPCMover") - obj38 = ns.Object("DaMan") - obj28 = ns.Object("Dorian") - obj26 = ns.Object("Jorgan") - obj27 = ns.Object("Grunbar") - obj25 = ns.Object("Albi") - obj29 = ns.Object("Civvy3") - obj30 = ns.Object("Civvy4") - obj31 = ns.Object("Daniel") - obj62 = ns.Object("DaManKey") - obj39 = ns.Object("GearRoomDoor") - obj40 = ns.Object("GuardDoor1") - obj41 = ns.Object("MaxHomeDoor1") - obj42 = ns.Object("MaxHomeDoor2") - obj43 = ns.Object("FirstJailDoor") - obj44 = ns.Object("WarriorCellDoor") - obj45 = ns.Object("MorganCellDoor") - obj46 = ns.Object("BackRoomDoor") - obj47 = ns.Object("TowerGate1") - obj48 = ns.Object("TowerGate2") - obj49 = ns.Object("JailCellTrigger") - obj50 = ns.Object("WardenBackTrigger") - obj51 = ns.Object("ThanksTrigger") - obj54 = ns.Object("WardenFaceThis") - obj55 = ns.Object("RogueShield") - obj56 = ns.Object("MorganGold") - obj57 = ns.Object("TowerKey") - obj58 = ns.Object("GoldKey1") - obj59 = ns.Object("GoldKey2") - obj60 = ns.Object("SecretShirt") - obj61 = ns.Object("SecretApple") - gvar53 = ns.ObjectGroup("RewardTriggerGroup") - gvar63 = ns.WallGroup("JumpWalls") - gvar64 = ns.WallGroup("FallWalls") - //gvar135 = ns.Waypoint("MorganFriendWP") - wp133 = ns.Waypoint("WardenFooledWP") - gvar134 = ns.WaypointGroup("EscapeWP") - gvar135 = ns.WaypointGroup("MorganFriendWP") - wp4 = ns.Waypoint("Storage") - wp131 = ns.Waypoint("PlayerSounds") - wp132 = ns.Waypoint("SecretSounds") - wp136 = ns.Waypoint("BBWP") - wp137 = ns.Waypoint("PhimWP") - wp139 = ns.Waypoint("MVWP") - wp138 = ns.Waypoint("KinWP") - wp140 = ns.Waypoint("MorganGuardWP") - wp141 = ns.Waypoint("MickGuardWP") - ns.WayPointGroupOff(gvar134) - ns.WayPointGroupOff(gvar135) - ns.LockDoor(obj39) - ns.LockDoor(obj40) - ns.LockDoor(obj44) - ns.LockDoor(obj41) - ns.LockDoor(obj42) - ns.SetOwner(ns.GetHost(), obj11) - ns.SetDialog(obj11, ns.NORMAL, PriestGreetingStart, PriestGreetingEnd) - ns.SetDialog(obj23, ns.NORMAL, MorganHintStart, MorganHintEnd) - ns.SetDialog(obj24, ns.NORMAL, MorganFriendStart, MorganFriendEnd) - ns.SetDialog(obj21, ns.NORMAL, NewMaxStart, NewMaxEnd) - ns.SetDialog(obj33, ns.NORMAL, UndertakerTalkStart, UndertakerTalkEnd) - ns.SetDialog(obj36, ns.NORMAL, BoothStart, BoothEnd) - ns.StoryPic(obj21, "MaxPic") - ns.StoryPic(obj33, "UndertakerPic") - ns.StoryPic(obj28, "Townsman3Pic") - ns.StoryPic(obj27, "Townsman2Pic") - ns.StoryPic(obj25, "Townsman1Pic") - ns.StoryPic(obj26, "Warrior2Pic") - ns.StoryPic(obj22, "WardenPic") - ns.StoryPic(obj11, "GalavaPriestPic") - ns.StoryPic(obj23, "MorganPic") - ns.StoryPic(obj24, "FentonPic") - ns.StoryPic(obj31, "DrunkPic") - ns.StoryPic(obj36, "MalePic4") - gvar100 = gvar118 - gvar101 = gvar122 - gvar102 = gvar126 - ns.FrameTimer(1, CreatureSetup) -} -func PlayerDeath() { - ns.DeathScreen(7) -} -func MickContact() { - r0 := ns.IsAttackedBy(obj24, ns.GetCaller()) - if !r0 { - goto LABEL1 - } - if !flag92 { - goto LABEL1 - } - ns.AggressionLevel(obj24, 0.83) -LABEL1: - return -} -func WardenWaiting() { - if !ns.IsCaller(obj22) { - goto LABEL1 - } - if !(gvar102 != gvar126 || gvar101 == gvar125) { - goto LABEL1 - } - if !flag82 { - goto LABEL1 - } - ns.CreatureIdle(obj22) - ns.AggressionLevel(obj22, 0.16) - ns.CreatureGuard(obj22, ns.GetObjectX(obj22), ns.GetObjectY(obj22), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) -LABEL1: - return -} -func ResetMaxDialog() { - if gvar148 != gvar147 { - goto LABEL1 - } - ns.CancelDialog(obj21) - goto LABEL2 -LABEL1: - ns.SetDialog(obj21, ns.YESNO, MaxDialogStart, MaxDialogEnd) -LABEL2: - return -} -func NullFunction() { -} -func MaxDie() { - ns.CancelDialog(obj21) -} -func DaManDragged() { - if !ns.IsCaller(obj38) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.UnlockDoor(obj41) - ns.UnlockDoor(obj42) -LABEL1: - return -} -func EmptyPlayerInventory() { - var v0 int - v0 = gvar151 - if v0 == gvar149 { - goto LABEL1 - } - if v0 == gvar150 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.Drop(ns.GetHost(), obj5[ivar153]) - ivar154 += 1 - gvar151 = gvar150 - ns.FrameTimer(1, EmptyPlayerInventory) -LABEL2: - if !(ivar153 <= ivar152) { - goto LABEL3 - } - ns.MoveObject(obj5[ivar153], ns.GetWaypointX(wp4), ns.GetWaypointY(wp4)) - gvar151 = gvar149 - ivar153 += 1 - ns.FrameTimer(1, EmptyPlayerInventory) -LABEL3: - return -} -func MakeAWish() { - var v0 int - v0 = ns.MaxHealth(ns.GetCaller()) - ns.MoveWaypoint(wp131, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.RestoreHealth(ns.GetCaller(), v0-ns.CurrentHealth(ns.GetCaller())) - ns.AudioEvent(ns.RestoreHealthName, wp131) - ns.PrintToAll("GeneralPrint:WellSignRefresh") - ns.AudioEvent(ns.RestoreHealthName, ns.Waypoint("WellWP")) -} -func Jump() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - if !ns.HasItem(ns.GetHost(), obj60) { - goto LABEL1 - } - if !ns.HasItem(ns.GetHost(), obj61) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.NoWallSound(true) - ns.WallGroupOpen(gvar63) - ns.Chat(obj8, "Con02a:BarMaiden2") - ns.SecondTimer(3, Upset) -LABEL1: - return -} -func Upset() { - ns.DestroyEveryChat() - ns.Chat(obj6, "Wiz02B.scr:LewisTalk06") - ns.SecondTimer(3, StartJump) -} -func StartJump() { - ns.WallGroupOpen(gvar64) - ns.Wander(obj6) -} -func MoveJumper() { - if !ns.IsCaller(obj6) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.CreatureIdle(obj6) - ns.ObjectOn(obj37) - ns.Chat(obj6, "Wiz02B.scr:LewisTalk03") -LABEL1: - return -} -func KillJumper() { - if !ns.IsCaller(obj6) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.DestroyEveryChat() - ns.Damage(obj6, 0, 500, 0) - ns.WallGroupClose(gvar64) - ns.WallGroupClose(gvar63) - ns.NoWallSound(false) -LABEL1: - return -} -func DaManHurt() { - if !(!ns.IsLocked(obj41) || !ns.IsLocked(obj42)) { - goto LABEL1 - } - ns.AggressionLevel(obj38, 0.83) - ns.Attack(obj38, ns.GetHost()) -LABEL1: - return -} -func DaManDie() { - if !(ns.IsLocked(obj41) && ns.IsLocked(obj42)) { - goto LABEL1 - } - ns.Drop(obj38, obj62) - ns.Delete(obj62) -LABEL1: - return -} -func MorganRecognize() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - flag91 = true -LABEL1: - return -} -func MorganLoseSight() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - flag91 = false -LABEL1: - return -} -func ScorpionAway() { - r1 := ns.IsAttackedBy(ns.GetHost(), ns.GetCaller()) - if !r1 { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func CivvyJailCheck() { - if !ns.IsCaller(obj26) { - goto LABEL1 - } - flag160 = true - ns.GoBackHome(obj26) -LABEL1: - if !ns.IsCaller(obj27) { - goto LABEL2 - } - flag159 = true - ns.GoBackHome(obj27) -LABEL2: - if !ns.IsCaller(obj25) { - goto LABEL3 - } - flag158 = true - ns.GoBackHome(obj25) -LABEL3: - if !ns.IsCaller(obj28) { - goto LABEL4 - } - flag157 = true - ns.GoBackHome(obj28) -LABEL4: - if !ns.IsCaller(obj29) { - goto LABEL5 - } - flag161 = true - ns.GoBackHome(obj29) -LABEL5: - if !ns.IsCaller(obj30) { - goto LABEL6 - } - flag162 = true - ns.GoBackHome(obj30) -LABEL6: - return -} -func FireballSecret() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.MoveWaypoint(wp132, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretFound, wp132) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 50) -LABEL1: - return -} -func PlayerEnterRoom() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - flag90 = true -LABEL1: - if !ns.IsCaller(obj26) { - goto LABEL2 - } - flag160 = true - ns.GoBackHome(obj26) -LABEL2: - if !ns.IsCaller(obj27) { - goto LABEL3 - } - flag159 = true - ns.GoBackHome(obj27) -LABEL3: - if !ns.IsCaller(obj25) { - goto LABEL4 - } - flag158 = true - ns.GoBackHome(obj25) -LABEL4: - if !ns.IsCaller(obj28) { - goto LABEL5 - } - flag157 = true - ns.GoBackHome(obj28) -LABEL5: - if !ns.IsCaller(obj29) { - goto LABEL6 - } - flag161 = true - ns.GoBackHome(obj29) -LABEL6: - if !ns.IsCaller(obj30) { - goto LABEL7 - } - flag162 = true - ns.GoBackHome(obj30) -LABEL7: - return -} -func JorganReport() { - if gvar97 != 1 { - goto LABEL1 - } - ns.AggressionLevel(obj26, 0.83) - ns.CreatureHunt(obj26) - goto LABEL2 -LABEL1: - ns.AggressionLevel(obj26, 0.16) - ns.Wander(obj26) -LABEL2: - flag160 = false -} -func AlbiReport() { - if gvar94 != 1 { - goto LABEL1 - } - ns.AggressionLevel(obj25, 0.83) - ns.CreatureHunt(obj25) - goto LABEL2 -LABEL1: - ns.AggressionLevel(obj25, 0.16) - ns.Wander(obj25) -LABEL2: - flag158 = false -} -func GrunbarReport() { - if gvar96 != 1 { - goto LABEL1 - } - ns.AggressionLevel(obj27, 0.83) - ns.CreatureHunt(obj27) - goto LABEL2 -LABEL1: - ns.AggressionLevel(obj27, 0.16) - ns.Wander(obj27) -LABEL2: - flag159 = false -} -func DorianReport() { - if gvar95 != 1 { - goto LABEL1 - } - ns.AggressionLevel(obj28, 0.83) - ns.CreatureHunt(obj28) - goto LABEL2 -LABEL1: - ns.AggressionLevel(obj28, 0.16) - ns.Wander(obj28) -LABEL2: - flag157 = false -} -func Civvy3Report() { - if gvar98 != 1 { - goto LABEL1 - } - ns.AggressionLevel(obj29, 0.83) - ns.CreatureHunt(obj29) - goto LABEL2 -LABEL1: - ns.AggressionLevel(obj29, 0.16) - ns.Wander(obj29) -LABEL2: - flag161 = false -} -func Civvy4Report() { - if gvar99 != 1 { - goto LABEL1 - } - ns.AggressionLevel(obj30, 0.83) - ns.CreatureHunt(obj30) - goto LABEL2 -LABEL1: - ns.AggressionLevel(obj30, 0.16) - ns.Wander(obj30) -LABEL2: - flag162 = false -} -func OnEvent(typ string) { - switch typ { - case "MapInitialize": - MapInitialize() - case "PlayerDeath": - PlayerDeath() - } -} diff --git a/examples/war07b/dummy_test.go b/examples/war07b/dummy_test.go deleted file mode 100644 index 1bd07c7..0000000 --- a/examples/war07b/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package war07b - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/war07b/war07b.go b/examples/war07b/war07b.go deleted file mode 100644 index b224a6d..0000000 --- a/examples/war07b/war07b.go +++ /dev/null @@ -1,191 +0,0 @@ -package war07b - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 ns.ObjectID - obj5 ns.ObjectID - obj6 ns.ObjectID - obj7 ns.ObjectID - obj8 ns.ObjectID - obj9 ns.ObjectID - obj10 ns.ObjectID - obj11 ns.ObjectID - obj12 ns.ObjectID - obj13 ns.ObjectID - obj14 ns.ObjectID - obj15 ns.ObjectID - obj16 ns.ObjectID - obj17 ns.ObjectID - obj18 ns.ObjectID - gvar19 ns.ObjectGroupID - gvar20 ns.ObjectGroupID - gvar21 ns.ObjectGroupID - gvar22 ns.ObjectGroupID - gvar23 ns.WallID - gvar24 ns.WallGroupID - gvar25 ns.WallGroupID - wp26 ns.WaypointID - flag27 bool - flag28 bool - flag29 bool - flag30 bool -) - -func init() { - flag27 = false - flag28 = false - flag29 = false - flag30 = false -} -func EnableReceptionist() { - ns.ObjectOn(obj5) - if !(ns.CurrentHealth(obj5) > 0) { - goto LABEL1 - } - ns.Chat(obj5, "War07B.scr:MainReceptionistTalk01") -LABEL1: - ns.ObjectGroupOff(gvar22) - ns.CreatureHunt(obj11) - ns.CreatureHunt(obj12) - ns.CreatureHunt(obj13) -} -func ClassroomAttacks() { - ns.ObjectGroupOn(gvar19) - ns.ObjectOn(obj6) -} -func BirdManAttacks() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - if flag29 { - goto LABEL1 - } - ns.Chat(obj7, "War07B.scr:BirdManTalk01") - flag29 = true -LABEL1: - return -} -func OpenLabBookcase() { - ns.ObjectOn(obj16) - ns.ObjectOn(obj17) - ns.WallOpen(gvar23) - ns.WallGroupBreak(gvar24) - ns.ObjectGroupOff(gvar21) - ns.GroupDelete(gvar21) - ns.ObjectOff(obj15) - flag28 = true -} -func DestroyLab() { - if flag28 { - goto LABEL1 - } - ns.Chat(obj8, "War07B.scr:TempWizardTalk01") - ns.ObjectGroupOn(gvar20) - ns.WallGroupOpen(gvar25) - ns.Delete(obj14) - flag28 = true -LABEL1: - return -} -func EnterClassroom() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - if !(ns.CurrentHealth(obj11) > 0) { - goto LABEL2 - } - ns.Frozen(obj11, true) -LABEL2: - if !(ns.CurrentHealth(obj12) > 0) { - goto LABEL3 - } - ns.Frozen(obj12, true) -LABEL3: - if !(ns.CurrentHealth(obj13) > 0) { - goto LABEL4 - } - ns.Frozen(obj13, true) -LABEL4: - if !(ns.CurrentHealth(obj6) > 0) { - goto LABEL5 - } - ns.Frozen(obj6, true) - ns.StartDialog(obj6, ns.GetHost()) - goto LABEL1 -LABEL5: - ClassroomAttacks() -LABEL1: - return -} -func TeacherStart() { - ns.TellStory(ns.HumanMaleEatFood, "War07B.scr:TeacherTalk01") -} -func TeacherEnd() { - ns.CancelDialog(obj6) - if !(ns.CurrentHealth(obj11) > 0) { - goto LABEL1 - } - ns.Frozen(obj11, false) -LABEL1: - if !(ns.CurrentHealth(obj12) > 0) { - goto LABEL2 - } - ns.Frozen(obj12, false) -LABEL2: - if !(ns.CurrentHealth(obj13) > 0) { - goto LABEL3 - } - ns.Frozen(obj13, false) -LABEL3: - ns.Frozen(obj6, false) - ClassroomAttacks() -} -func MapInitialize() { - obj4 = ns.Object("ChamberSpawn") - obj5 = ns.Object("MainReceptionist") - obj6 = ns.Object("Teacher") - obj7 = ns.Object("BirdMan") - obj8 = ns.Object("TempWizard") - obj9 = ns.Object("TrapWiz1") - obj10 = ns.Object("TrapWiz2") - obj11 = ns.Object("MageHunter1") - obj12 = ns.Object("MageHunter2") - obj13 = ns.Object("MageHunter3") - obj14 = ns.Object("FloorOneMagicAxe") - obj15 = ns.Object("LabExplodeTrigger") - obj16 = ns.Object("LabBookcaseMover1") - obj17 = ns.Object("LabBookcaseMover2") - obj18 = ns.Object("ToLevelTwoTP") - gvar19 = ns.ObjectGroup("Students") - gvar20 = ns.ObjectGroup("LabFlames") - gvar21 = ns.ObjectGroup("ExplodingBarrels") - gvar22 = ns.ObjectGroup("ReceptionTriggers") - gvar23 = ns.Wall(123, 191) - gvar24 = ns.WallGroup("LabWalls") - gvar25 = ns.WallGroup("LabSecretWalls2") - wp26 = ns.Waypoint("PlayerSounds") - ns.ObjectOff(obj5) - ns.ObjectOff(obj6) - ns.ObjectGroupOff(gvar19) - ns.ObjectGroupOff(gvar20) - ns.StoryPic(obj6, "WizardGuard2Pic") - ns.SetDialog(obj6, ns.NORMAL, TeacherStart, TeacherEnd) -} -func PlayerDeath() { - ns.DeathScreen(7) -} -func MapEntry() { - ns.Music(16, 100) -} -func OnEvent(typ string) { - switch typ { - case "MapInitialize": - MapInitialize() - case "PlayerDeath": - PlayerDeath() - case "MapEntry": - MapEntry() - } -} diff --git a/examples/war07c/dummy_test.go b/examples/war07c/dummy_test.go deleted file mode 100644 index af8a061..0000000 --- a/examples/war07c/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package war07c - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/war07c/war07c.go b/examples/war07c/war07c.go deleted file mode 100644 index 843eaed..0000000 --- a/examples/war07c/war07c.go +++ /dev/null @@ -1,100 +0,0 @@ -package war07c - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 ns.ObjectID - obj5 ns.ObjectID - wp6 ns.WaypointID - wp7 ns.WaypointID - obj8 ns.ObjectID - obj9 ns.ObjectID - obj10 ns.ObjectID - obj11 ns.ObjectID - obj12 ns.ObjectID - obj13 ns.ObjectID - obj14 ns.ObjectID - obj15 ns.ObjectID - gvar16 ns.ObjectGroupID - gvar17 int -) - -func SecondFloorPatrolMage1() { - ns.Wander(obj8) -} -func SecondFloorPatrolMage2() { - ns.Wander(obj9) -} -func SecondFloorPatrolMage3() { - ns.Wander(obj10) -} -func ActivateGears() { - if !ns.IsObjectOn(obj5) { - goto LABEL1 - } - ns.MoveWaypoint(wp6, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.Gear2, wp6) - ns.ObjectGroupOff(gvar16) - ns.ObjectOff(obj11) - ns.ObjectOff(obj12) - ns.ObjectOff(obj13) - ns.ObjectOff(obj14) - goto LABEL2 -LABEL1: - ns.MoveWaypoint(wp6, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.Gear3, wp6) - ns.ObjectGroupOn(gvar16) - ns.ObjectOn(obj11) - ns.ObjectOn(obj12) - ns.ObjectOn(obj13) - ns.ObjectOn(obj14) -LABEL2: - return -} -func TrainingRoomXP() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.MoveWaypoint(wp7, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretFound, wp7) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 100) -LABEL1: - return -} -func MapInitialize() { - obj8 = ns.Object("PatrolMage1") - obj9 = ns.Object("PatrolMage2") - obj10 = ns.Object("PatrolMage3") - obj4 = ns.Object("ToLevelOneTP") - obj11 = ns.Object("Globe1") - obj12 = ns.Object("Globe2") - obj13 = ns.Object("Globe3") - obj14 = ns.Object("Globe4") - obj5 = ns.Object("TestGear") - obj15 = ns.Object("ResetWizTrigger") - gvar16 = ns.ObjectGroup("Level2Gears") - wp6 = ns.Waypoint("PlayerSounds") - wp7 = ns.Waypoint("SecretSounds") - ns.CreatureHunt(obj8) - ns.CreatureHunt(obj9) - ns.CreatureHunt(obj10) - ns.ObjectGroupOn(gvar16) -} -func MapEntry() { - ns.Music(16, 100) -} -func PlayerDeath() { - ns.DeathScreen(7) -} -func OnEvent(typ string) { - switch typ { - case "MapInitialize": - MapInitialize() - case "MapEntry": - MapEntry() - case "PlayerDeath": - PlayerDeath() - } -} diff --git a/examples/war07d/dummy_test.go b/examples/war07d/dummy_test.go deleted file mode 100644 index d35b33c..0000000 --- a/examples/war07d/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package war07d - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/war07d/war07d.go b/examples/war07d/war07d.go deleted file mode 100644 index 3f0b36e..0000000 --- a/examples/war07d/war07d.go +++ /dev/null @@ -1,61 +0,0 @@ -package war07d - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - wp4 ns.WaypointID - obj5 ns.ObjectID - obj6 ns.ObjectID - obj7 ns.ObjectID - obj8 ns.ObjectID - obj9 ns.ObjectID - obj10 ns.ObjectID - obj11 ns.ObjectID - gvar12 ns.WallGroupID -) - -func SetUpCreatures() { - ns.CreatureHunt(obj6) - ns.CreatureHunt(obj7) - ns.CreatureHunt(obj8) - ns.CreatureHunt(obj9) - ns.CreatureHunt(obj10) - ns.CreatureHunt(obj11) -} -func OpenMuseumWalls() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.WallGroupOpen(gvar12) -LABEL1: - return -} -func MapInitialize() { - wp4 = ns.Waypoint("PlayerSounds") - obj6 = ns.Object("WizHunter1") - obj7 = ns.Object("WizHunter2") - obj8 = ns.Object("WizHunter3") - obj9 = ns.Object("MuseumMage1") - obj10 = ns.Object("MuseumMage2") - obj11 = ns.Object("MuseumMage3") - obj5 = ns.Object("Dalmen") - gvar12 = ns.WallGroup("MuseumWalls") - ns.FrameTimer(1, SetUpCreatures) -} -func MapEntry() { - ns.Music(16, 100) -} -func PlayerDeath() { - ns.DeathScreen(7) -} -func OnEvent(typ string) { - switch typ { - case "MapInitialize": - MapInitialize() - case "MapEntry": - MapEntry() - case "PlayerDeath": - PlayerDeath() - } -} diff --git a/examples/war07e/dummy_test.go b/examples/war07e/dummy_test.go deleted file mode 100644 index a6237a0..0000000 --- a/examples/war07e/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package war07e - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/war07e/war07e.go b/examples/war07e/war07e.go deleted file mode 100644 index c61564a..0000000 --- a/examples/war07e/war07e.go +++ /dev/null @@ -1,110 +0,0 @@ -package war07e - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 ns.ObjectID - obj5 ns.ObjectID - obj6 ns.ObjectID - obj7 ns.ObjectID - gvar8 ns.WallGroupID - gvar9 ns.WallGroupID - gvar10 ns.WallGroupID - flag11 bool - flag12 bool - flag13 bool - wp14 ns.WaypointID - wp15 ns.WaypointID -) - -func init() { - flag11 = false - flag12 = false - flag13 = false -} -func CreatureSetup() { - ns.CreatureHunt(obj4) - ns.CreatureHunt(obj5) -} -func SaveGame() { - ns.AutoSave() - ns.ObjectOff(obj7) -} -func WallSetOneButton() { - if flag11 { - goto LABEL1 - } - ns.WallGroupOpen(gvar8) - flag11 = true - goto LABEL2 -LABEL1: - ns.WallGroupClose(gvar8) - flag11 = false -LABEL2: - return -} -func WallSetTwoButton() { - if flag12 { - goto LABEL1 - } - ns.WallGroupOpen(gvar9) - flag12 = true - goto LABEL2 -LABEL1: - ns.WallGroupClose(gvar9) - flag12 = false -LABEL2: - return -} -func WallSetThreeButton() { - if flag13 { - goto LABEL1 - } - ns.WallGroupOpen(gvar10) - flag13 = true - ns.ObjectOn(obj6) - goto LABEL2 -LABEL1: - ns.WallGroupClose(gvar10) - flag13 = false - ns.ObjectOff(obj6) -LABEL2: - return -} -func HTHAttack() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.HitLocation(ns.GetTrigger(), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) -LABEL1: - return -} -func MapInitialize() { - obj4 = ns.Object("Hunter2") - obj5 = ns.Object("Hunter3") - obj6 = ns.Object("MainTeleporter") - obj7 = ns.Object("SaveGameTrigger") - gvar8 = ns.WallGroup("WallSetOne") - gvar9 = ns.WallGroup("WallSetTwo") - gvar10 = ns.WallGroup("WallSetThree") - wp14 = ns.Waypoint("PlayerSounds") - wp15 = ns.Waypoint("FromFloor5WP") - ns.ObjectOff(obj6) - ns.FrameTimer(1, CreatureSetup) -} -func MapEntry() { - ns.Music(16, 100) -} -func PlayerDeath() { - ns.DeathScreen(7) -} -func OnEvent(typ string) { - switch typ { - case "MapInitialize": - MapInitialize() - case "MapEntry": - MapEntry() - case "PlayerDeath": - PlayerDeath() - } -} diff --git a/examples/war07f/dummy_test.go b/examples/war07f/dummy_test.go deleted file mode 100644 index 6eeae71..0000000 --- a/examples/war07f/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package war07f - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/war07f/war07f.go b/examples/war07f/war07f.go deleted file mode 100644 index 81c3455..0000000 --- a/examples/war07f/war07f.go +++ /dev/null @@ -1,25 +0,0 @@ -package war07f - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var wp4 ns.WaypointID - -func MapInitialize() { - wp4 = ns.Waypoint("FromFloor6WP") -} -func MapEntry() { - ns.Music(27, 100) -} -func PlayerDeath() { - ns.DeathScreen(7) -} -func OnEvent(typ string) { - switch typ { - case "MapInitialize": - MapInitialize() - case "MapEntry": - MapEntry() - case "PlayerDeath": - PlayerDeath() - } -} diff --git a/examples/war07g/dummy_test.go b/examples/war07g/dummy_test.go deleted file mode 100644 index 61a4872..0000000 --- a/examples/war07g/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package war07g - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/war07g/war07g.go b/examples/war07g/war07g.go deleted file mode 100644 index 0c8a2b3..0000000 --- a/examples/war07g/war07g.go +++ /dev/null @@ -1,538 +0,0 @@ -package war07g - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 ns.ObjectID - obj5 ns.ObjectID - obj6 ns.ObjectID - obj7 ns.ObjectID - obj8 ns.ObjectID - obj9 ns.ObjectID - obj10 ns.ObjectID - obj11 ns.ObjectID - obj12 ns.ObjectID - obj13 ns.ObjectID - obj14 ns.ObjectID - obj15 ns.ObjectID - obj16 ns.ObjectID - obj17 ns.ObjectID - obj18 ns.ObjectID - obj19 ns.ObjectID - obj20 ns.ObjectID - obj21 ns.ObjectID - obj22 ns.ObjectID - obj23 ns.ObjectID - obj24 ns.ObjectID - obj25 ns.ObjectID - obj26 ns.ObjectID - obj27 ns.ObjectID - obj28 ns.ObjectID - obj29 ns.ObjectID - obj30 ns.ObjectID - obj31 ns.ObjectID - obj32 ns.ObjectID - obj33 ns.ObjectID - gvar34 ns.ObjectGroupID - wp35 ns.WaypointID - gvar36 ns.WallGroupID - gvar37 ns.WallGroupID - flag38 bool - flag39 bool - flag40 bool - flag41 bool - fvar42 float32 - fvar43 float32 - fvar44 float32 - fvar45 float32 - fvar46 float32 - fvar47 float32 - fvar48 float32 - fvar49 float32 - fvar50 float32 - fvar51 float32 - fvar52 float32 - fvar53 float32 - fvar54 float32 - fvar55 float32 - fvar56 float32 - fvar57 float32 - fvar58 float32 - fvar59 float32 - fvar60 float32 - fvar61 float32 - obj62 ns.ObjectID - gvar63 int - gvar64 int - obj65 ns.ObjectID - obj66 ns.ObjectID - obj67 ns.ObjectID - obj68 ns.ObjectID - obj69 ns.ObjectID - obj70 ns.ObjectID - obj71 ns.ObjectID - obj72 ns.ObjectID - obj73 ns.ObjectID - obj74 ns.ObjectID - obj75 ns.ObjectID - obj76 ns.ObjectID - obj77 ns.ObjectID - obj78 ns.ObjectID - obj79 ns.ObjectID - obj80 ns.ObjectID - obj81 ns.ObjectID - obj82 ns.ObjectID - obj83 ns.ObjectID - obj84 ns.ObjectID - obj85 ns.ObjectID - obj86 ns.ObjectID - obj87 ns.ObjectID - obj88 ns.ObjectID - obj89 ns.ObjectID - obj90 ns.ObjectID - obj91 ns.ObjectID - obj92 ns.ObjectID - obj93 ns.ObjectID - obj94 ns.ObjectID - gvar95 int - gvar96 ns.ObjectGroupID - gvar97 ns.ObjectGroupID - gvar98 ns.ObjectGroupID - gvar99 ns.ObjectGroupID - gvar100 ns.ObjectGroupID - gvar101 ns.ObjectGroupID - gvar102 ns.ObjectGroupID - gvar103 ns.ObjectGroupID - gvar104 ns.ObjectGroupID - flag105 bool - wp106 ns.WaypointID - wp107 ns.WaypointID - wp108 ns.WaypointID - wp109 ns.WaypointID - wp110 ns.WaypointID - gvar111 ns.TimerID - ivar112 int - ivar113 int -) - -func init() { - flag38 = false - flag39 = false - flag40 = false - flag41 = false - flag105 = false - ivar112 = 0 - ivar113 = 0 -} -func LightShow() { - var ( - v0 int - v1 int - ) - ns.MoveWaypoint(wp35, ns.GetObjectX(obj4), ns.GetObjectY(obj4)) - v0 = ns.Random(1, 8) - v1 = v0 - if v1 == 1 { - goto LABEL1 - } - if v1 == 2 { - goto LABEL2 - } - if v1 == 3 { - goto LABEL3 - } - if v1 == 4 { - goto LABEL4 - } - if v1 == 5 { - goto LABEL5 - } - if v1 == 6 { - goto LABEL6 - } - if v1 == 7 { - goto LABEL7 - } - if v1 == 8 { - goto LABEL8 - } - goto LABEL9 -LABEL1: - ns.AudioEvent(ns.LightningBolt, wp35) - ns.Effect(ns.LIGHTNING, ns.GetObjectX(obj6), ns.GetObjectY(obj6), ns.GetObjectX(obj4), ns.GetObjectY(obj4)) - goto LABEL9 -LABEL2: - ns.AudioEvent(ns.LightningBolt, wp35) - ns.Effect(ns.LIGHTNING, ns.GetObjectX(obj7), ns.GetObjectY(obj7), ns.GetObjectX(obj4), ns.GetObjectY(obj4)) - goto LABEL9 -LABEL3: - ns.AudioEvent(ns.LightningBolt, wp35) - ns.Effect(ns.LIGHTNING, ns.GetObjectX(obj8), ns.GetObjectY(obj8), ns.GetObjectX(obj4), ns.GetObjectY(obj4)) - goto LABEL9 -LABEL4: - ns.AudioEvent(ns.LightningBolt, wp35) - ns.Effect(ns.LIGHTNING, ns.GetObjectX(obj9), ns.GetObjectY(obj9), ns.GetObjectX(obj4), ns.GetObjectY(obj4)) - goto LABEL9 -LABEL5: - ns.AudioEvent(ns.LightningBolt, wp35) - ns.Effect(ns.LIGHTNING, ns.GetObjectX(obj10), ns.GetObjectY(obj10), ns.GetObjectX(obj4), ns.GetObjectY(obj4)) - goto LABEL9 -LABEL6: - ns.AudioEvent(ns.LightningBolt, wp35) - ns.Effect(ns.LIGHTNING, ns.GetObjectX(obj11), ns.GetObjectY(obj11), ns.GetObjectX(obj4), ns.GetObjectY(obj4)) - goto LABEL9 -LABEL7: - ns.AudioEvent(ns.LightningBolt, wp35) - ns.Effect(ns.LIGHTNING, ns.GetObjectX(obj12), ns.GetObjectY(obj12), ns.GetObjectX(obj4), ns.GetObjectY(obj4)) - goto LABEL9 -LABEL8: - ns.AudioEvent(ns.LightningBolt, wp35) - ns.Effect(ns.LIGHTNING, ns.GetObjectX(obj13), ns.GetObjectY(obj13), ns.GetObjectX(obj4), ns.GetObjectY(obj4)) - goto LABEL9 -LABEL9: - if flag41 { - goto LABEL10 - } - ns.FrameTimer(30, LightShow) -LABEL10: - return -} -func PlateOneTrigger() { - flag38 = true - if !(flag39 == true && flag40 == true) { - goto LABEL1 - } - ns.WallGroupOpen(gvar36) - ns.MoveWaypoint(wp35, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.BigGong, wp35) -LABEL1: - return -} -func PlateTwoTrigger() { - flag39 = true - if !(flag38 == true && flag40 == true) { - goto LABEL1 - } - ns.WallGroupOpen(gvar36) - ns.MoveWaypoint(wp35, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.BigGong, wp35) -LABEL1: - return -} -func PlateThreeTrigger() { - flag40 = true - if !(flag38 == true && flag39 == true) { - goto LABEL1 - } - ns.WallGroupOpen(gvar36) - ns.MoveWaypoint(wp35, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.BigGong, wp35) -LABEL1: - return -} -func PlateOneRelease() { - flag38 = false -} -func PlateTwoRelease() { - flag39 = false -} -func PlateThreeRelease() { - flag40 = false -} -func HONTrigger() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.ObjectOff(obj4) - ns.ObjectOff(obj5) - ns.ObjectOff(obj14) - ns.ObjectOff(obj15) - ns.ObjectOff(obj16) - ns.ObjectOff(obj17) - ns.ObjectOff(obj18) - ns.ObjectOff(obj19) - ns.ObjectOff(obj20) - ns.ObjectOff(obj21) - ns.ObjectOff(obj22) - ns.ObjectOff(obj23) - ns.MoveObject(obj24, fvar42, fvar52) - ns.MoveObject(obj25, fvar43, fvar53) - ns.MoveObject(obj26, fvar44, fvar54) - ns.MoveObject(obj27, fvar45, fvar55) - ns.MoveObject(obj28, fvar46, fvar56) - ns.MoveObject(obj29, fvar47, fvar57) - ns.MoveObject(obj30, fvar48, fvar58) - ns.MoveObject(obj31, fvar49, fvar59) - ns.MoveObject(obj32, fvar50, fvar60) - ns.MoveObject(obj33, fvar51, fvar61) - flag41 = true - ns.SetHalberd(1) - ns.PrintToAll("Con07H.scr:HONTada") - ns.JournalEdit(ns.GetHost(), "GetHON", 4) - ns.SecondTimer(2, FadeOut) -LABEL1: - return -} -func MakeMapSwitch() { - ns.Frozen(ns.GetHost(), false) - ns.MoveObject(ns.GetHost(), 1922, 2014) -} -func FadeOut() { - ns.Blind() - ns.Frozen(ns.GetHost(), true) - ns.Music(0, 100) - ns.FrameTimer(60, MakeMapSwitch) -} -func HONSetup() { - fvar42 = ns.GetObjectX(obj14) - fvar43 = ns.GetObjectX(obj15) - fvar44 = ns.GetObjectX(obj16) - fvar45 = ns.GetObjectX(obj17) - fvar46 = ns.GetObjectX(obj18) - fvar47 = ns.GetObjectX(obj19) - fvar48 = ns.GetObjectX(obj20) - fvar49 = ns.GetObjectX(obj21) - fvar50 = ns.GetObjectX(obj22) - fvar51 = ns.GetObjectX(obj23) - fvar52 = ns.GetObjectY(obj14) - fvar53 = ns.GetObjectY(obj15) - fvar54 = ns.GetObjectY(obj16) - fvar55 = ns.GetObjectY(obj17) - fvar56 = ns.GetObjectY(obj18) - fvar57 = ns.GetObjectY(obj19) - fvar58 = ns.GetObjectY(obj20) - fvar59 = ns.GetObjectY(obj21) - fvar60 = ns.GetObjectY(obj22) - fvar61 = ns.GetObjectY(obj23) -} -func CreatureSetup() { -} -func Group1Die() { - ivar112 += 1 - if !(ivar112 >= 2) { - goto LABEL1 - } - ns.UnlockDoor(obj86) - ns.UnlockDoor(obj87) -LABEL1: - return -} -func StartChamber() { - ns.AudioEvent(ns.FloorSpikesUp, wp110) - ns.AudioEvent(ns.FloorSpikesDown, wp109) - ns.ObjectGroupOn(gvar97) - ns.ObjectGroupOn(gvar99) - ns.ObjectGroupOff(gvar96) - ns.ObjectGroupOff(gvar98) - flag105 = true - ns.SecondTimer(3, ChamberSpikes) -} -func ChamberSpikes() { - if flag105 { - goto LABEL1 - } - ns.AudioEvent(ns.FloorSpikesDown, wp109) - ns.ObjectGroupOff(gvar96) - ns.ObjectGroupOff(gvar98) - ns.FrameTimer(10, EnableSpikes2And4) - goto LABEL2 -LABEL1: - ns.AudioEvent(ns.FloorSpikesDown, wp110) - ns.ObjectGroupOff(gvar97) - ns.ObjectGroupOff(gvar99) - ns.FrameTimer(10, EnableSpikes1And3) -LABEL2: - gvar111 = ns.SecondTimer(3, ChamberSpikes) -} -func Block1Jiggle() { - ns.MoveWaypoint(wp35, ns.GetObjectX(obj93), ns.GetObjectY(obj93)) - ns.AudioEvent(ns.HammerMissing, wp35) - ns.Effect(ns.JIGGLE, ns.GetObjectX(obj93), ns.GetObjectY(obj93), 10, 0) -} -func Block2Jiggle() { - ns.AudioEvent(ns.HammerMissing, wp106) - ns.Effect(ns.JIGGLE, ns.GetObjectX(obj94), ns.GetObjectY(obj94), 10, 0) -} -func EnableSpikes2And4() { - ns.AudioEvent(ns.FloorSpikesUp, wp110) - ns.ObjectGroupOn(gvar97) - ns.ObjectGroupOn(gvar99) - flag105 = true -} -func EnableSpikes1And3() { - ns.AudioEvent(ns.FloorSpikesUp, wp109) - ns.ObjectGroupOn(gvar96) - ns.ObjectGroupOn(gvar98) - flag105 = false -} -func SetTraitors() { - ns.ObjectGroupOff(gvar104) - ns.AudioEvent(ns.TeleportIn, wp107) - ns.AudioEvent(ns.TeleportIn, wp108) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp107), ns.GetWaypointY(wp107), 0, 0) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp108), ns.GetWaypointY(wp108), 0, 0) - ns.Effect(ns.SPARK_EXPLOSION, ns.GetWaypointX(wp107), ns.GetWaypointY(wp107), 0, 0) - ns.Effect(ns.SPARK_EXPLOSION, ns.GetWaypointX(wp108), ns.GetWaypointY(wp108), 0, 0) - ns.MoveObject(obj65, ns.GetWaypointX(wp107), ns.GetWaypointY(wp107)) - ns.MoveObject(obj66, ns.GetWaypointX(wp108), ns.GetWaypointY(wp108)) - ns.ObjectOn(obj65) - ns.ObjectOn(obj66) - ns.LockDoor(obj67) - ns.LockDoor(obj68) -} -func HaltMusic() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.Music(0, 100) -LABEL1: - return -} -func NewMusic() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.Music(1, 100) -LABEL1: - return -} -func TraitorDeath() { - ivar113 += 1 - if !(ivar113 >= 2) { - goto LABEL1 - } - ns.GiveXp(ns.GetHost(), 2000) -LABEL1: - return -} -func LockStairGate() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.LockDoor(obj69) - ns.Music(28, 100) -LABEL1: - return -} -func MapInitialize() { - obj70 = ns.Object("SnakeHead1Mover") - obj71 = ns.Object("SnakeHead2Mover") - obj72 = ns.Object("SnakeHead3Mover") - obj73 = ns.Object("SnakeHead4Mover") - obj74 = ns.Object("SnakeHead5Mover") - obj75 = ns.Object("SnakeHead6Mover") - obj76 = ns.Object("SnakeHead7Mover") - obj77 = ns.Object("SnakeHead8Mover") - obj78 = ns.Object("SnakeHead9Mover") - obj79 = ns.Object("SnakeHead10Mover") - obj80 = ns.Object("SnakeHead11Mover") - obj81 = ns.Object("SnakeHead12Mover") - obj82 = ns.Object("Block1AMover") - obj83 = ns.Object("Block1BMover") - obj84 = ns.Object("Block2AMover") - obj85 = ns.Object("Block2BMover") - obj62 = ns.Object("ToLevelOneTP") - obj92 = ns.Object("ToThreeTP") - obj65 = ns.Object("Traitor1") - obj66 = ns.Object("Traitor2") - obj67 = ns.Object("TraitorDoor1") - obj68 = ns.Object("TraitorDoor2") - obj93 = ns.Object("Block1Trigger") - obj94 = ns.Object("Block2Trigger") - obj69 = ns.Object("StairGate") - obj86 = ns.Object("ChamberDoor1") - obj87 = ns.Object("ChamberDoor2") - obj88 = ns.Object("ChamberDoor2A") - obj89 = ns.Object("ChamberDoor2B") - obj90 = ns.Object("ChamberExitDoor1") - obj91 = ns.Object("ChamberExitDoor2") - gvar96 = ns.ObjectGroup("ChamberSpikes1") - gvar97 = ns.ObjectGroup("ChamberSpikes2") - gvar98 = ns.ObjectGroup("ChamberSpikes3") - gvar99 = ns.ObjectGroup("ChamberSpikes4") - gvar100 = ns.ObjectGroup("SnakeLetterMovers") - gvar101 = ns.ObjectGroup("Snake3Movers") - gvar102 = ns.ObjectGroup("Snake4Movers") - gvar103 = ns.ObjectGroup("ShowdownTriggers") - wp35 = ns.Waypoint("PlayerSounds") - wp106 = ns.Waypoint("Jiggle2WP") - wp107 = ns.Waypoint("Traitor1WP") - wp108 = ns.Waypoint("Traitor2WP") - wp109 = ns.Waypoint("Spikes1WP") - wp110 = ns.Waypoint("Spikes2WP") - obj4 = ns.Object("HON") - obj5 = ns.Object("HONBase") - obj6 = ns.Object("PowerCell1") - obj7 = ns.Object("PowerCell2") - obj8 = ns.Object("PowerCell3") - obj9 = ns.Object("PowerCell4") - obj10 = ns.Object("PowerCell5") - obj11 = ns.Object("PowerCell6") - obj12 = ns.Object("PowerCell7") - obj13 = ns.Object("PowerCell8") - obj14 = ns.Object("HeartLight1") - obj15 = ns.Object("HeartLight2") - obj16 = ns.Object("HeartLight3") - obj17 = ns.Object("HeartLight4") - obj18 = ns.Object("HeartLight5") - obj19 = ns.Object("HeartLight6") - obj20 = ns.Object("HeartLight7") - obj21 = ns.Object("HeartLight8") - obj22 = ns.Object("HeartLight9") - obj23 = ns.Object("HeartLight10") - obj24 = ns.Object("NewLight11") - obj25 = ns.Object("NewLight12") - obj26 = ns.Object("NewLight13") - obj27 = ns.Object("NewLight14") - obj28 = ns.Object("NewLight15") - obj29 = ns.Object("NewLight16") - obj30 = ns.Object("NewLight17") - obj31 = ns.Object("NewLight18") - obj32 = ns.Object("NewLight19") - obj33 = ns.Object("NewLight20") - gvar34 = ns.ObjectGroup("PowerCells") - gvar104 = ns.ObjectGroup("TraitorTriggers") - gvar36 = ns.WallGroup("HONWalls") - gvar37 = ns.WallGroup("HONExitWalls") - ns.ObjectGroupOff(gvar96) - ns.ObjectGroupOff(gvar97) - ns.ObjectGroupOff(gvar98) - ns.ObjectGroupOff(gvar99) - ns.ObjectOn(obj70) - ns.ObjectOn(obj71) - ns.ObjectOn(obj72) - ns.ObjectOn(obj73) - ns.ObjectOn(obj74) - ns.ObjectOn(obj75) - ns.ObjectOn(obj76) - ns.ObjectOn(obj77) - ns.ObjectOn(obj78) - ns.ObjectOn(obj79) - ns.ObjectOn(obj80) - ns.ObjectOn(obj81) - ns.ObjectGroupOn(gvar100) - ns.ObjectOn(obj82) - ns.ObjectOn(obj83) - ns.ObjectOn(obj84) - ns.ObjectOn(obj85) - ns.ObjectGroupOn(gvar101) - ns.ObjectGroupOn(gvar102) - ns.LockDoor(obj86) - ns.LockDoor(obj87) - ns.FrameTimer(2, HONSetup) - ns.FrameTimer(1, CreatureSetup) -} -func PlayerDeath() { - ns.DeathScreen(7) -} -func OnEvent(typ string) { - switch typ { - case "MapInitialize": - MapInitialize() - case "PlayerDeath": - PlayerDeath() - } -} diff --git a/examples/war07h/dummy_test.go b/examples/war07h/dummy_test.go deleted file mode 100644 index 69f00e8..0000000 --- a/examples/war07h/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package war07h - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/war07h/war07h.go b/examples/war07h/war07h.go deleted file mode 100644 index c43e7d5..0000000 --- a/examples/war07h/war07h.go +++ /dev/null @@ -1,53 +0,0 @@ -package war07h - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 ns.ObjectID - obj5 ns.ObjectID - obj6 ns.ObjectID -) - -func CreatureSetup() { - ns.SetOwner(ns.GetHost(), obj4) - ns.SetOwner(ns.GetHost(), obj5) - ns.Music(22, 100) - ns.FrameTimer(10, BriefingBegin) -} -func BriefingBegin() { - ns.StartDialog(obj4, ns.GetHost()) -} -func JandorBriefStart() { - ns.TellStory(ns.HumanMaleEatFood, "War07A.scr:JandorTalk01") -} -func JandorBriefEnd() { - ns.JournalEntry(ns.GetHost(), "GetHON", 2) - ns.PrintToAll("Con01a:NewJournalEntry") - ns.CancelDialog(obj4) -} -func LanceDialogStart() { - ns.TellStory(ns.SwordsmanHurt, "War01A.scr:Guard1Talk01") -} -func LanceDialogEnd() { -} -func MapInitialize() { - obj4 = ns.Object("Jandor") - obj5 = ns.Object("Lance") - obj6 = ns.Object("FacadeGate") - ns.StoryPic(obj4, "AirshipCaptainPic") - ns.SetDialog(obj4, ns.NORMAL, JandorBriefStart, JandorBriefEnd) - ns.LockDoor(obj6) - ns.StartupScreen(7) - ns.FrameTimer(1, CreatureSetup) -} -func PlayerDeath() { - ns.DeathScreen(7) -} -func OnEvent(typ string) { - switch typ { - case "MapInitialize": - MapInitialize() - case "PlayerDeath": - PlayerDeath() - } -} diff --git a/examples/war08a/dummy_test.go b/examples/war08a/dummy_test.go deleted file mode 100644 index 215c0cb..0000000 --- a/examples/war08a/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package war08a - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/war08a/war08a.go b/examples/war08a/war08a.go deleted file mode 100644 index a0c32c2..0000000 --- a/examples/war08a/war08a.go +++ /dev/null @@ -1,1494 +0,0 @@ -package war08a - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - gvar4 int - gvar5 int - gvar6 int - gvar7 int - gvar8 int - gvar9 int - gvar10 int - gvar11 int - gvar12 int - gvar13 int - gvar14 int - gvar15 int - gvar16 int - gvar17 int - gvar18 int - gvar19 int - gvar20 int - gvar21 int - gvar22 int - gvar23 int - gvar24 int - gvar25 int - gvar26 int - gvar27 int - gvar28 int - gvar29 int - gvar30 int - gvar31 int - gvar32 int - gvar33 int - gvar34 int - gvar35 int - gvar36 int - gvar37 int - gvar38 int - gvar39 int - gvar40 int - gvar41 int - ivar42 int - gvar43 int - ivar44 int - ivar45 int - flag46 bool - obj47 ns.ObjectID - obj48 ns.ObjectID - obj49 ns.ObjectID - obj50 ns.ObjectID - obj51 ns.ObjectID - obj52 ns.ObjectID - obj53 ns.ObjectID - obj54 ns.ObjectID - obj55 ns.ObjectID - obj56 ns.ObjectID - obj57 ns.ObjectID - obj58 ns.ObjectID - obj59 ns.ObjectID - obj60 ns.ObjectID - obj61 ns.ObjectID - obj62 ns.ObjectID - obj63 ns.ObjectID - obj64 ns.ObjectID - obj65 ns.ObjectID - obj66 ns.ObjectID - obj67 ns.ObjectID - obj68 ns.ObjectID - obj69 ns.ObjectID - obj70 ns.ObjectID - obj71 ns.ObjectID - obj72 ns.ObjectID - obj73 ns.ObjectID - obj74 ns.ObjectID - obj75 ns.ObjectID - obj76 ns.ObjectID - obj77 ns.ObjectID - wp78 ns.WaypointID - wp79 ns.WaypointID - wp80 ns.WaypointID - wp81 ns.WaypointID - obj82 ns.ObjectID - obj83 ns.ObjectID - obj84 ns.ObjectID - obj85 ns.ObjectID - obj86 ns.ObjectID - obj87 ns.ObjectID - wp88 ns.WaypointID - wp89 ns.WaypointID - gvar90 int - gvar91 int - gvar92 int - gvar93 int - gvar94 int - gvar95 int - gvar96 int - gvar97 int - ivar98 int - flag99 bool - flag100 bool - flag101 bool - flag102 bool - flag103 bool - flag104 bool - flag105 bool - flag106 bool - flag107 bool - obj108 ns.ObjectID - gvar109 int - obj110 ns.ObjectID - obj111 ns.ObjectID - obj112 ns.ObjectID - obj113 ns.ObjectID - obj114 ns.ObjectID - obj115 ns.ObjectID - obj116 ns.ObjectID - obj117 ns.ObjectID - obj118 ns.ObjectID - obj119 ns.ObjectID - obj120 [4]ns.ObjectID - gvar121 int - wp122 ns.WaypointID - wp123 ns.WaypointID - wp124 ns.WaypointID - wp125 ns.WaypointID - gvar126 ns.ObjectGroupID - gvar127 ns.ObjectGroupID - gvar128 ns.WallGroupID - ivar129 int - flag130 bool -) - -func init() { - gvar4 = 0 - gvar5 = 1 - gvar6 = 2 - gvar7 = 3 - gvar8 = 4 - gvar9 = 5 - gvar10 = 6 - gvar11 = 7 - gvar12 = 8 - gvar13 = 9 - gvar14 = 10 - gvar15 = 11 - gvar16 = 12 - gvar17 = 13 - gvar18 = 14 - gvar19 = 15 - gvar20 = 16 - gvar21 = 17 - gvar22 = 18 - gvar23 = 19 - gvar24 = 20 - gvar25 = 21 - gvar26 = 22 - gvar27 = 23 - gvar28 = 24 - gvar29 = 25 - gvar30 = 26 - gvar31 = gvar14 - gvar32 = gvar11 - gvar33 = gvar8 - gvar34 = gvar15 - gvar35 = gvar19 - gvar36 = gvar23 - gvar37 = gvar24 - gvar38 = gvar25 - gvar39 = gvar26 - gvar40 = gvar27 - gvar41 = gvar4 - ivar42 = 200 - gvar43 = 2 - ivar44 = 0 - ivar45 = 0 - flag46 = false - gvar90 = 0 - gvar91 = 1 - gvar92 = 2 - gvar93 = 3 - gvar94 = 4 - gvar95 = 5 - gvar96 = 6 - gvar97 = gvar90 - ivar98 = 0 - flag99 = false - flag100 = false - flag101 = false - flag102 = false - flag103 = false - flag104 = false - flag105 = true - flag106 = false - flag107 = false - ivar129 = 60 - flag130 = true -} -func JandorStart() { - var v0 int - v0 = gvar41 - if v0 == gvar4 { - goto LABEL1 - } - if v0 == gvar5 { - goto LABEL2 - } - if v0 == gvar6 { - goto LABEL3 - } - if v0 == gvar7 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - ns.TellStory(ns.HumanMaleEatFood, "War08a:CaptainProd") - goto LABEL5 -LABEL2: - ns.TellStory(ns.HumanMaleEatFood, "War08a:CaptainProd") - goto LABEL5 -LABEL3: - ns.TellStory(ns.SwordsmanHurt, "Con03A.scr:JandorB") - goto LABEL5 -LABEL4: - ns.Frozen(ns.GetHost(), true) - ns.Blind() - ns.FrameTimer(45, ExitToSwamp) - goto LABEL5 -LABEL5: - return -} -func JandorEnd() { - var v0 int - v0 = gvar41 - if v0 == gvar4 { - goto LABEL1 - } - if v0 == gvar5 { - goto LABEL2 - } - if v0 == gvar6 { - goto LABEL3 - } - if v0 == gvar7 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - ns.JournalEntry(ns.GetHost(), "Chapter8LocateAldwyn", 2) - ns.PrintToAll("Con01a:NewJournalEntry") - gvar41 = gvar5 - goto LABEL5 -LABEL2: - goto LABEL5 -LABEL3: - gvar41 = gvar7 - goto LABEL5 -LABEL4: - ns.Frozen(ns.GetHost(), true) - ns.Blind() - ns.FrameTimer(45, ExitToSwamp) - goto LABEL5 -LABEL5: - return -} -func JacobDialogStart() { - var ( - v0 int - v1 int - v2 int - ) - v2 = gvar40 - if v2 == gvar27 { - goto LABEL1 - } - if v2 == gvar28 { - goto LABEL2 - } - if v2 == gvar29 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - v0 = ns.Random(1, 3) - v1 = v0 - if v1 == 1 { - goto LABEL5 - } - if v1 == 2 { - goto LABEL6 - } - if v1 == 3 { - goto LABEL7 - } - goto LABEL8 -LABEL5: - ns.TellStory(ns.HumanMaleEatFood, "Con02A:JailerTalk01") - goto LABEL8 -LABEL6: - ns.TellStory(ns.HumanMaleEatFood, "Con02A:JailerTalk02") - goto LABEL8 -LABEL7: - ns.TellStory(ns.HumanMaleEatFood, "Con02A:JailerTalk03") - goto LABEL8 -LABEL8: - goto LABEL4 -LABEL2: - ns.TellStory(ns.HumanMaleEatFood, "Con02A:JailerTalk04") - goto LABEL4 -LABEL3: - ns.TellStory(ns.HumanMaleEatFood, "Con02A:JailerTalk05") - goto LABEL4 -LABEL4: - return -} -func JacobDialogEnd() { - var v0 int - v0 = gvar40 - if v0 == gvar28 { - goto LABEL1 - } - if v0 == gvar29 { - goto LABEL2 - } - if v0 == gvar30 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - ns.Frozen(ns.GetHost(), false) - flag46 = false - goto LABEL4 -LABEL2: - ns.Frozen(ns.GetHost(), false) - flag46 = false - goto LABEL4 -LABEL3: - ns.CancelDialog(obj75) - ns.Frozen(ns.GetHost(), false) - goto LABEL4 -LABEL4: - return -} -func ResetJacobDialog() { - if !ns.IsCaller(obj75) { - goto LABEL1 - } - if gvar40 != gvar30 { - goto LABEL1 - } - gvar40 = gvar27 - flag46 = false - ns.SetDialog(obj75, ns.NORMAL, JacobDialogStart, JacobDialogEnd) - ivar45 = 0 - ns.ObjectOff(obj77) -LABEL1: - return -} -func MorganInjured() { - var v0 int - if flag46 { - goto LABEL1 - } - flag46 = true - ivar45 += 1 - v0 = ivar45 - if v0 == 1 { - goto LABEL2 - } - if v0 == 2 { - goto LABEL3 - } - if v0 == 3 { - goto LABEL4 - } - goto LABEL1 -LABEL2: - gvar40 = gvar28 - ns.Frozen(ns.GetHost(), true) - ns.CreatureIdle(ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj75) - ns.LookAtObject(obj75, ns.GetHost()) - if !(ns.CurrentHealth(obj75) > 0) { - goto LABEL5 - } - ns.StartDialog(obj75, ns.GetHost()) -LABEL5: - goto LABEL1 -LABEL3: - gvar40 = gvar29 - ns.Frozen(ns.GetHost(), true) - ns.CreatureIdle(ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj75) - ns.LookAtObject(obj75, ns.GetHost()) - if !(ns.CurrentHealth(obj75) > 0) { - goto LABEL6 - } - ns.StartDialog(obj75, ns.GetHost()) -LABEL6: - goto LABEL1 -LABEL4: - gvar40 = gvar30 - ns.CancelDialog(obj75) - ns.ClearOwner(obj75) - ns.AggressionLevel(obj75, 0.83) - if !(ns.CurrentHealth(obj75) > 0) { - goto LABEL7 - } - ns.Attack(obj75, ns.GetHost()) -LABEL7: - goto LABEL1 -LABEL1: - return -} -func PlayerFlee() { - if gvar40 != gvar30 { - goto LABEL1 - } - ns.ObjectOn(obj77) - ns.SetOwner(ns.GetHost(), obj75) - ns.AggressionLevel(obj75, 0) - ns.CreatureGuard(obj75, ns.GetWaypointX(wp79), ns.GetWaypointY(wp79), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) -LABEL1: - return -} -func HenrickDialogStart() { - var v0 int - v0 = gvar32 - if v0 == gvar11 { - goto LABEL1 - } - if v0 == gvar12 { - goto LABEL2 - } - if v0 == gvar13 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - ns.LookAtObject(obj48, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War08b:HenrickSalesPitchA") - goto LABEL4 -LABEL2: - ns.LookAtObject(obj48, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War08b:HenrickSalesPitchB") - goto LABEL4 -LABEL3: - ns.LookAtObject(obj48, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War08b:HenrickNoMoreWolves") - goto LABEL4 -LABEL4: - return -} -func HenrickDialogEnd() { - var ( - v0 int - v1 int - v2 int - v3 int - v4 int - v5 int - v6 int - v7 int - ) - v0 = 0 - v1 = 0 - v2 = 1 - v3 = 2 - v4 = 0 - v7 = gvar32 - if v7 == gvar11 { - goto LABEL1 - } - if v7 == gvar12 { - goto LABEL2 - } - if v7 == gvar13 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - v1 = ns.GetAnswer(obj48) - v5 = v1 - if v5 == v2 { - goto LABEL5 - } - if v5 == v3 { - goto LABEL6 - } - if v5 == v4 { - goto LABEL7 - } - goto LABEL8 -LABEL5: - v0 = ns.GetGold(ns.GetHost()) - if !(v0 < ivar42) { - goto LABEL9 - } - ns.SetDialog(obj48, ns.NORMAL, NullDialogStart, ResetHenrickDialogChoice) - ns.TellStory(ns.SwordsmanHurt, "War08b:HenrickNotEnoughGold") - goto LABEL10 -LABEL9: - ns.ChangeGold(ns.GetHost(), -ivar42) - gvar32 = gvar12 - ReleaseCharmedWolf(ivar44) - ivar44 += 1 - ns.SetDialog(obj48, ns.NORMAL, NullDialogStart, ResetHenrickDialogChoice) - ns.TellStory(ns.SwordsmanHurt, "War08b:HenrickSaleSuccessful") -LABEL10: - goto LABEL8 -LABEL6: - goto LABEL8 -LABEL7: - goto LABEL8 -LABEL8: - goto LABEL4 -LABEL2: - v1 = ns.GetAnswer(obj48) - v6 = v1 - if v6 == v2 { - goto LABEL11 - } - if v6 == v3 { - goto LABEL12 - } - if v6 == v4 { - goto LABEL13 - } - goto LABEL14 -LABEL11: - v0 = ns.GetGold(ns.GetHost()) - if !(v0 < ivar42) { - goto LABEL15 - } - ns.SetDialog(obj48, ns.NORMAL, NullDialogStart, ResetHenrickDialogChoice) - ns.TellStory(ns.SwordsmanHurt, "War08b:HenrickNotEnoughGold") - goto LABEL16 -LABEL15: - ns.ChangeGold(ns.GetHost(), -ivar42) - ReleaseCharmedWolf(ivar44) - ivar44 += 1 - ns.SetDialog(obj48, ns.NORMAL, NullDialogStart, ResetHenrickDialogChoice) - ns.TellStory(ns.SwordsmanHurt, "War08b:HenrickSaleSuccessful") - if !(ivar44 >= 2) { - goto LABEL16 - } - gvar32 = gvar13 - ns.SetDialog(obj48, ns.NORMAL, HenrickDialogStart, HenrickDialogEnd) -LABEL16: - goto LABEL14 -LABEL12: - goto LABEL14 -LABEL13: - goto LABEL14 -LABEL14: - goto LABEL4 -LABEL3: - goto LABEL4 -LABEL4: - return -} -func ResetHenrickDialogChoice() { - ns.SetDialog(obj48, ns.YESNO, HenrickDialogStart, HenrickDialogEnd) -} -func DrunkDialogStart() { - ns.LookAtObject(obj49, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:DrunkGreeting") -} -func DrunkDialogEnd() { -} -func GatekeeperDialogStart() { - var v0 int - ns.LookAtObject(obj52, ns.GetHost()) - v0 = gvar36 - if v0 == gvar23 { - goto LABEL1 - } - goto LABEL2 -LABEL1: - ns.TellStory(ns.SwordsmanHurt, "Con02a:GatekeeperWaiting") - goto LABEL2 -LABEL2: - return -} -func GatekeeperDialogEnd() { -} -func Gatekeeper2DialogStart() { - var v0 int - ns.LookAtObject(obj63, ns.GetHost()) - v0 = gvar37 - if v0 == gvar24 { - goto LABEL1 - } - goto LABEL2 -LABEL1: - ns.TellStory(ns.SwordsmanHurt, "Wiz08a:Guard01Greet") - goto LABEL2 -LABEL2: - return -} -func Gatekeeper2DialogEnd() { -} -func Gatekeeper3DialogStart() { - var v0 int - ns.LookAtObject(obj64, ns.GetHost()) - v0 = gvar38 - if v0 == gvar25 { - goto LABEL1 - } - goto LABEL2 -LABEL1: - ns.TellStory(ns.SwordsmanHurt, "War08a:Guard02Greet") - goto LABEL2 -LABEL2: - return -} -func Gatekeeper3DialogEnd() { -} -func MayorDialogStart() { - var ( - v0 int - v1 int - ) - ns.Frozen(ns.GetHost(), true) - ns.CreatureIdle(ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj55) - v0 = ns.Random(1, 2) - v1 = v0 - if v1 == 1 { - goto LABEL1 - } - if v1 == 2 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.TellStory(ns.SwordsmanHurt, "War03b:MayorPre") - goto LABEL3 -LABEL2: - ns.TellStory(ns.SwordsmanHurt, "War03b:MayorBye") - goto LABEL3 -LABEL3: - return -} -func MayorDialogEnd() { - ns.Frozen(ns.GetHost(), false) -} -func MayorsGuardDialogStart() { - var v0 int - v0 = gvar31 - if v0 == gvar14 { - goto LABEL1 - } - goto LABEL2 -LABEL1: - ns.LookAtObject(obj53, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War03b:MayorsGuardIntro") - goto LABEL2 -LABEL2: - return -} -func MayorsGuardDialogEnd() { -} -func AldwinDialogStart() { - var v0 int - v0 = gvar33 - if v0 == gvar8 { - goto LABEL1 - } - if v0 == gvar9 { - goto LABEL2 - } - if v0 == gvar10 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - ns.LookAtObject(obj54, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War08a:AldwynGreet") - goto LABEL4 -LABEL2: - ns.LookAtObject(obj54, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War08a:AldwynProd") - goto LABEL4 -LABEL3: - ns.LookAtObject(obj54, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "Con08:AldwynProd") - goto LABEL4 -LABEL4: - return -} -func AldwinDialogEnd() { - var v0 int - v0 = gvar33 - if v0 == gvar8 { - goto LABEL1 - } - if v0 == gvar9 { - goto LABEL2 - } - if v0 == gvar10 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - ns.Pickup(ns.GetHost(), obj50) - ns.PrintToAll("GeneralPrint:GainedKey") - gvar33 = gvar9 - ns.JournalEdit(ns.GetHost(), "Chapter8LocateAldwyn", 4) - ns.PrintToAll("Con02a:ObjectiveComplete") - ns.JournalEntry(ns.GetHost(), "Chapter8IxPriest", 2) - ns.PrintToAll("Con01a:NewJournalEntry") - goto LABEL4 -LABEL2: - gvar33 = gvar9 - goto LABEL4 -LABEL3: - goto LABEL4 -LABEL4: - return -} -func BridgeGuardDialogStart() { - var v0 int - v0 = gvar39 - if v0 == gvar26 { - goto LABEL1 - } - goto LABEL2 -LABEL1: - ns.LookAtObject(obj65, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "Con02a:RandomSay") - goto LABEL2 -LABEL2: - return -} -func BridgeGuardDialogEnd() { - var v0 int - v0 = gvar39 - if v0 == gvar26 { - goto LABEL1 - } - goto LABEL2 -LABEL1: - goto LABEL2 -LABEL2: - return -} -func Maiden1DialogStart() { - ns.LookAtObject(obj67, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "Con02a:BarMaiden") -} -func Maiden1DialogEnd() { -} -func Maiden2DialogStart() { - ns.Frozen(ns.GetHost(), true) - ns.Frozen(obj68, true) - ns.CreatureIdle(ns.GetHost()) - ns.CreatureIdle(obj68) - ns.LookAtObject(ns.GetHost(), obj68) - ns.LookAtObject(obj68, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "War03b:Maiden1") -} -func Maiden2DialogEnd() { - ns.Frozen(ns.GetHost(), false) - ns.Frozen(obj68, false) - ns.Wander(obj68) -} -func Maiden3DialogStart() { - ns.Frozen(ns.GetHost(), true) - ns.Frozen(obj69, true) - ns.CreatureIdle(ns.GetHost()) - ns.CreatureIdle(obj69) - ns.LookAtObject(ns.GetHost(), obj69) - ns.LookAtObject(obj69, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "Wiz02A.scr:MaidenTalk05") -} -func Maiden3DialogEnd() { - ns.Frozen(ns.GetHost(), false) - ns.Frozen(obj69, false) - ns.Wander(obj69) -} -func Maiden4DialogStart() { - var ( - v0 int - v1 int - ) - ns.Frozen(ns.GetHost(), true) - ns.Frozen(obj70, true) - ns.CreatureIdle(ns.GetHost()) - ns.CreatureIdle(obj70) - ns.LookAtObject(ns.GetHost(), obj70) - ns.LookAtObject(obj70, ns.GetHost()) - v0 = ns.Random(1, 2) - v1 = v0 - if v1 == 1 { - goto LABEL1 - } - if v1 == 2 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.TellStory(ns.HumanMaleEatFood, "War02a:NewTownswoman1") - goto LABEL3 -LABEL2: - ns.TellStory(ns.HumanMaleEatFood, "War02a:NewTownswoman3") - goto LABEL3 -LABEL3: - return -} -func Maiden4DialogEnd() { - ns.Frozen(ns.GetHost(), false) - ns.Frozen(obj70, false) - ns.Wander(obj70) -} -func Townsman1DialogStart() { - ns.Frozen(ns.GetHost(), true) - ns.Frozen(obj72, true) - ns.CreatureIdle(ns.GetHost()) - ns.CreatureIdle(obj72) - ns.LookAtObject(ns.GetHost(), obj72) - ns.LookAtObject(obj72, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "War02a:NewTownsman3") -} -func Townsman1DialogEnd() { - ns.Frozen(ns.GetHost(), false) - ns.Frozen(obj72, false) - ns.Wander(obj72) -} -func Townsman2DialogStart() { - ns.Frozen(ns.GetHost(), true) - ns.Frozen(obj73, true) - ns.CreatureIdle(ns.GetHost()) - ns.CreatureIdle(obj73) - ns.LookAtObject(ns.GetHost(), obj73) - ns.LookAtObject(obj73, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "Wiz02A.scr:AlbiTalk01") -} -func Townsman2DialogEnd() { - ns.Frozen(ns.GetHost(), false) - ns.Frozen(obj73, false) - ns.Wander(obj73) -} -func Townsman3DialogStart() { - ns.Frozen(ns.GetHost(), true) - ns.Frozen(obj74, true) - ns.CreatureIdle(ns.GetHost()) - ns.CreatureIdle(obj74) - ns.LookAtObject(ns.GetHost(), obj74) - ns.LookAtObject(obj74, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "Wiz02A.scr:MaxRumor03") -} -func Townsman3DialogEnd() { - ns.Frozen(ns.GetHost(), false) - ns.Frozen(obj74, false) - ns.Wander(obj74) -} -func ReleaseCharmedWolf(a1 int) { - var v0 int - v0 = a1 - if v0 == 0 { - goto LABEL1 - } - if v0 == 1 { - goto LABEL2 - } - if v0 == 2 { - goto LABEL3 - } - if v0 == 3 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - ns.WallOpen(ns.Wall(128, 106)) - ns.EnchantOff(obj120[a1], ns.ENCHANT_INVULNERABLE) - ns.CreatureFollow(obj120[a1], ns.GetHost()) - ns.PauseObject(obj120[a1], 30) - ns.AggressionLevel(obj120[a1], 0.83) - ns.MakeFriendly(obj120[a1]) - ns.BecomePet(obj120[a1]) - goto LABEL5 -LABEL2: - ns.WallOpen(ns.Wall(130, 104)) - ns.EnchantOff(obj120[a1], ns.ENCHANT_INVULNERABLE) - ns.CreatureFollow(obj120[a1], ns.GetHost()) - ns.PauseObject(obj120[a1], 30) - ns.AggressionLevel(obj120[a1], 0.83) - ns.MakeFriendly(obj120[a1]) - ns.BecomePet(obj120[a1]) - goto LABEL5 -LABEL3: - ns.WallOpen(ns.Wall(132, 102)) - ns.EnchantOff(obj120[a1], ns.ENCHANT_INVULNERABLE) - ns.CreatureFollow(obj120[a1], ns.GetHost()) - ns.PauseObject(obj120[a1], 30) - ns.AggressionLevel(obj120[a1], 0.83) - ns.MakeFriendly(obj120[a1]) - ns.BecomePet(obj120[a1]) - goto LABEL5 -LABEL4: - ns.WallOpen(ns.Wall(134, 100)) - ns.EnchantOff(obj120[a1], ns.ENCHANT_INVULNERABLE) - ns.CreatureFollow(obj120[a1], ns.GetHost()) - ns.PauseObject(obj120[a1], 30) - ns.AggressionLevel(obj120[a1], 0.83) - ns.MakeFriendly(obj120[a1]) - ns.BecomePet(obj120[a1]) - goto LABEL5 -LABEL5: - return -} -func InitializeDialogs() { - ns.StoryPic(obj48, "HenrickPic") - ns.StoryPic(obj49, "DrunkPic") - ns.StoryPic(obj51, "Townsman1Pic") - ns.StoryPic(obj52, "IxGuard2Pic") - ns.StoryPic(obj53, "Warrior3Pic") - ns.StoryPic(obj55, "TheogrinPic") - ns.StoryPic(obj54, "AldwynPic") - ns.StoryPic(obj63, "IxGuard2Pic") - ns.StoryPic(obj64, "IxGuard1Pic") - ns.StoryPic(obj65, "Townsman3Pic") - ns.StoryPic(obj67, "MaidenPic") - ns.StoryPic(obj68, "MaidenPic2") - ns.StoryPic(obj69, "MaidenPic3") - ns.StoryPic(obj70, "MaidenPic4") - ns.StoryPic(obj72, "MalePic4") - ns.StoryPic(obj73, "MalePic11") - ns.StoryPic(obj74, "MalePic12") - ns.StoryPic(obj47, "AirshipCaptainPic") - ns.StoryPic(obj75, "WardenPic") - ns.SetDialog(obj75, ns.NORMAL, JacobDialogStart, JacobDialogEnd) - ns.SetDialog(obj48, ns.YESNO, HenrickDialogStart, HenrickDialogEnd) - ns.SetDialog(obj49, ns.NORMAL, DrunkDialogStart, DrunkDialogEnd) - ns.SetDialog(obj63, ns.NORMAL, Gatekeeper2DialogStart, Gatekeeper2DialogEnd) - ns.SetDialog(obj64, ns.NORMAL, Gatekeeper3DialogStart, Gatekeeper3DialogEnd) - ns.SetDialog(obj53, ns.NORMAL, MayorsGuardDialogStart, MayorsGuardDialogEnd) - ns.SetDialog(obj54, ns.NORMAL, AldwinDialogStart, AldwinDialogEnd) - ns.SetDialog(obj65, ns.NORMAL, BridgeGuardDialogStart, BridgeGuardDialogEnd) - ns.SetDialog(obj67, ns.NORMAL, Maiden1DialogStart, Maiden1DialogEnd) - ns.SetDialog(obj68, ns.NORMAL, Maiden2DialogStart, Maiden2DialogEnd) - ns.SetDialog(obj69, ns.NORMAL, Maiden3DialogStart, Maiden3DialogEnd) - ns.SetDialog(obj70, ns.NORMAL, Maiden4DialogStart, Maiden4DialogEnd) - ns.SetDialog(obj72, ns.NORMAL, Townsman1DialogStart, Townsman1DialogEnd) - ns.SetDialog(obj73, ns.NORMAL, Townsman2DialogStart, Townsman2DialogEnd) - ns.SetDialog(obj74, ns.NORMAL, Townsman3DialogStart, Townsman3DialogEnd) -} -func InitializeSecondaryDialogs() { - gvar41 = gvar6 -} -func NullDialogStart() { -} -func ExitToSwamp() { - ns.Frozen(ns.GetHost(), false) - ns.MoveObject(ns.GetHost(), ns.GetWaypointX(ns.Waypoint("SwampExitWP")), ns.GetWaypointY(ns.Waypoint("SwampExitWP"))) -} -func StartCaptainConversation() { - ns.SetDialog(obj47, ns.NORMAL, JandorStart, JandorEnd) - ns.StartDialog(obj47, ns.GetHost()) -} -func PlayerDeath() { - ns.DeathScreen(8) -} -func GoToMineSEG2() { - ns.MoveObject(ns.GetHost(), ns.GetWaypointX(wp80), ns.GetWaypointY(wp80)) -} -func GoToMine() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Blind() - ns.FrameTimer(60, GoToMineSEG2) -LABEL1: - return -} -func GoToCaveSEG2() { - ns.MoveObject(ns.GetHost(), ns.GetWaypointX(wp81), ns.GetWaypointY(wp81)) -} -func GoToCave() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Blind() - ns.FrameTimer(60, GoToCaveSEG2) -LABEL1: - return -} -func InversionInit() { - obj82 = ns.Object("Teacher") - obj83 = ns.Object("Apprentice") - obj84 = ns.Object("InvertSpell") - obj85 = ns.Object("LessonGate1") - obj86 = ns.Object("LessonGate2") - obj87 = ns.Object("ApprenticeTrigger") - wp88 = ns.Waypoint("PlayerSounds") - wp89 = ns.Waypoint("ApprenticeWP") - ns.StoryPic(obj82, "WizardGuard1Pic") - ns.SetDialog(obj82, ns.YESNO, TeacherStart, TeacherEnd) - ns.LockDoor(obj85) - ns.LockDoor(obj86) - ns.ObjectOff(obj87) - ns.FrameTimer(1, InversionOwnObject) -} -func InversionOwnObject() { - ns.SetOwner(ns.GetHost(), obj82) - ns.Enchant(obj83, ns.ENCHANT_INVULNERABLE, 0) - ns.Enchant(obj82, ns.ENCHANT_ANCHORED, 0) - ns.Enchant(obj83, ns.ENCHANT_ANCHORED, 0) -} -func TeacherStart() { - var v0 int - v0 = gvar97 - if v0 == gvar90 { - goto LABEL1 - } - if v0 == gvar91 { - goto LABEL2 - } - if v0 == gvar92 { - goto LABEL3 - } - if v0 == gvar93 { - goto LABEL4 - } - if v0 == gvar94 { - goto LABEL5 - } - if v0 == gvar95 { - goto LABEL6 - } - if v0 == gvar96 { - goto LABEL7 - } - goto LABEL8 -LABEL1: - ns.Frozen(ns.GetHost(), true) - ns.CreatureIdle(ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj82) - ns.TellStory(ns.HumanMaleEatFood, "Wiz02B.scr:InversionBoyTalk01") - goto LABEL8 -LABEL2: - ns.TellStory(ns.HumanMaleEatFood, "Wiz02B.scr:InversionBoyTalk04") - goto LABEL8 -LABEL3: - ns.TellStory(ns.HumanMaleEatFood, "Wiz02B.scr:InversionBoyTalk02") - goto LABEL8 -LABEL4: - ns.TellStory(ns.HumanMaleEatFood, "Wiz02B.scr:InversionBoyTalk03") - goto LABEL8 -LABEL5: - ns.TellStory(ns.HumanMaleEatFood, "Wiz02B.scr:InversionBoyTalk05") - goto LABEL8 -LABEL6: - ns.TellStory(ns.HumanMaleEatFood, "Wiz02B.scr:InversionBoyTalk04a") - goto LABEL8 -LABEL7: - ns.TellStory(ns.HumanMaleEatFood, "Wiz02B.scr:InversionBoyTalk06") - goto LABEL8 -LABEL8: - return -} -func TeacherEnd() { - var ( - v0 int - v1 int - v2 int - v3 int - v4 int - v5 int - v6 int - ) - v0 = 0 - v1 = 0 - v2 = 1 - v3 = 2 - v4 = 0 - v6 = gvar97 - if v6 == gvar90 { - goto LABEL1 - } - if v6 == gvar91 { - goto LABEL2 - } - if v6 == gvar92 { - goto LABEL3 - } - if v6 == gvar93 { - goto LABEL4 - } - if v6 == gvar94 { - goto LABEL5 - } - if v6 == gvar95 { - goto LABEL6 - } - if v6 == gvar96 { - goto LABEL7 - } - goto LABEL8 -LABEL1: - v1 = ns.GetAnswer(obj82) - v5 = v1 - if v5 == v2 { - goto LABEL9 - } - if v5 == v3 { - goto LABEL10 - } - if v5 == v4 { - goto LABEL11 - } - goto LABEL12 -LABEL9: - v0 = ns.GetGold(ns.GetHost()) - if !(v0 < 100) { - goto LABEL13 - } - ns.SetDialog(obj82, ns.NORMAL, TeacherStart, TeacherEnd) - gvar97 = gvar91 - ns.StartDialog(obj82, ns.GetHost()) - goto LABEL12 - goto LABEL10 -LABEL13: - ns.ChangeGold(ns.GetHost(), -100) - ns.UnlockDoor(obj85) - ns.UnlockDoor(obj86) - ns.SetDialog(obj82, ns.NORMAL, TeacherStart, TeacherEnd) - gvar97 = gvar92 - ns.StartDialog(obj82, ns.GetHost()) - goto LABEL12 -LABEL10: - ns.Frozen(ns.GetHost(), false) - gvar97 = gvar90 - ns.SetDialog(obj82, ns.YESNO, TeacherStart, TeacherEnd) - goto LABEL12 -LABEL11: - ns.Frozen(ns.GetHost(), false) - gvar97 = gvar90 - ns.SetDialog(obj82, ns.YESNO, TeacherStart, TeacherEnd) - goto LABEL12 -LABEL12: - goto LABEL8 -LABEL2: - ns.Frozen(ns.GetHost(), false) - gvar97 = gvar90 - ns.SetDialog(obj82, ns.YESNO, TeacherStart, TeacherEnd) - goto LABEL8 -LABEL3: - ns.CancelDialog(obj82) - ns.Frozen(ns.GetHost(), false) - ns.Pickup(ns.GetHost(), obj84) - goto LABEL8 -LABEL4: - ns.CancelDialog(obj82) - flag103 = false - goto LABEL8 -LABEL5: - ns.UnlockDoor(obj58) - ns.UnlockDoor(obj59) - gvar97 = gvar96 - ns.SetDialog(obj82, ns.NORMAL, TeacherStart, TeacherEnd) - goto LABEL8 -LABEL6: - ns.UnlockDoor(obj58) - ns.UnlockDoor(obj59) - gvar97 = gvar96 - ns.SetDialog(obj82, ns.NORMAL, TeacherStart, TeacherEnd) - goto LABEL8 -LABEL7: - gvar97 = gvar96 - ns.SetDialog(obj82, ns.NORMAL, TeacherStart, TeacherEnd) - goto LABEL8 -LABEL8: - return -} -func Phoneme1() { - if flag103 { - goto LABEL1 - } - if !(ns.CurrentHealth(obj83) > 0) { - goto LABEL1 - } - ns.PrintToAll("Phoneme1") - ns.MoveWaypoint(wp88, 1326, 2493) - ns.AudioEvent(ns.SpellPhonemeDown, wp88) - ns.FrameTimer(10, Phoneme2) -LABEL1: - return -} -func Phoneme2() { - if flag103 { - goto LABEL1 - } - if !(ns.CurrentHealth(obj83) > 0) { - goto LABEL1 - } - ns.PrintToAll("Phoneme2") - ns.AudioEvent(ns.SpellPhonemeDown, wp88) - ns.FrameTimer(10, Phoneme3) -LABEL1: - return -} -func Phoneme3() { - if flag103 { - goto LABEL1 - } - if !(ns.CurrentHealth(obj83) > 0) { - goto LABEL1 - } - ns.PrintToAll("Phoneme3") - ns.AudioEvent(ns.SpellPhonemeDown, wp88) - ns.FrameTimer(10, CastSpells) -LABEL1: - return -} -func LessonBegin() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - if gvar97 != gvar92 { - goto LABEL1 - } - if !flag105 { - goto LABEL2 - } - ns.Move(obj83, wp89) - flag105 = false -LABEL2: - if !(flag99 == false && flag104 == true) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.LookAtObject(obj83, ns.GetHost()) - flag99 = true - ns.LockDoor(obj58) - ns.LockDoor(obj59) - ns.SecondTimer(1, Phoneme1) -LABEL1: - return -} -func CastSpells() { - if flag103 { - goto LABEL1 - } - if !(ivar98 < 4) { - goto LABEL2 - } - ns.PrintToAll("Casting Spell") - ns.CastSpellObjectLocation(ns.SPELL_SLOW, obj83, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.Enchant(obj83, ns.ENCHANT_INVULNERABLE, 0) -LABEL2: - if ivar98 != 4 { - goto LABEL3 - } - ns.PrintToAll("CastingSpell") - ns.EnchantOff(obj83, ns.ENCHANT_INVULNERABLE) - ns.CastSpellObjectLocation(ns.SPELL_MAGIC_MISSILE, obj83, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) -LABEL3: - ivar98 += 1 - if !(ivar98 < 5) { - goto LABEL4 - } - ns.SecondTimer(3, Phoneme1) - goto LABEL1 -LABEL4: - flag100 = true - if !flag102 { - goto LABEL5 - } - gvar97 = gvar94 - ns.SetDialog(obj82, ns.NORMAL, TeacherStart, TeacherEnd) - ns.StartDialog(obj82, ns.GetHost()) - goto LABEL1 -LABEL5: - gvar97 = gvar95 - ns.SetDialog(obj82, ns.NORMAL, TeacherStart, TeacherEnd) - ns.StartDialog(obj82, ns.GetHost()) -LABEL1: - return -} -func CheckApprentice() { - if !ns.HasEnchant(obj83, ns.ENCHANT_SLOWED) { - goto LABEL1 - } - ns.ObjectOff(obj87) - flag103 = true - gvar97 = gvar93 - flag102 = true - if !(ivar98 > 2) { - goto LABEL2 - } - ivar98 = 2 -LABEL2: - ns.SetDialog(obj82, ns.NORMAL, TeacherStart, TeacherEnd) - ns.StartDialog(obj82, ns.GetHost()) -LABEL1: - if !(ns.CurrentHealth(obj83) <= 0) { - goto LABEL3 - } - ns.ObjectOff(ns.GetTrigger()) - flag102 = true -LABEL3: - return -} -func ApprenticeDie() { - ns.AudioEvent(ns.HumanMaleHurtHeavy, wp88) -} -func ApprenticeReport() { - ns.CreatureGuard(obj83, ns.GetWaypointX(wp89), ns.GetWaypointY(wp89), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - ns.ObjectOn(obj87) - flag104 = true -} -func OwnObjects() { - ns.GroupSetOwner(ns.GetHost(), gvar126) - ns.SetOwner(ns.GetHost(), obj48) - ns.SetOwner(ns.GetHost(), obj108) - ns.GroupSetOwner(ns.GetHost(), gvar127) - ns.SetOwner(ns.GetHost(), obj49) - ns.SetOwner(ns.GetHost(), obj67) - ns.SetOwner(ns.GetHost(), obj68) - ns.SetOwner(ns.GetHost(), obj69) - ns.SetOwner(ns.GetHost(), obj70) - ns.SetOwner(ns.GetHost(), obj47) - ns.SetOwner(ns.GetHost(), obj75) - ns.StoryPic(obj51, "ShopKeeperBrownPic") -} -func DisableElevators() { - ns.ObjectOff(obj60) - ns.ObjectOff(obj66) -} -func MapInitialize() { - var v0 int - obj48 = ns.Object("Henrick") - obj108 = ns.Object("HenricksWolf") - obj120[0] = ns.Object("CharmedWolf01") - obj120[1] = ns.Object("CharmedWolf02") - obj120[2] = ns.Object("CharmedWolf03") - obj120[3] = ns.Object("CharmedWolf04") - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL1 - } - ns.Enchant(obj120[v0], ns.ENCHANT_INVULNERABLE, 0) - v0 += 1 - } -LABEL1: - obj49 = ns.Object("Drunk") - obj54 = ns.Object("Aldwyn") - obj52 = ns.Object("Geoff") - obj63 = ns.Object("Ryan") - obj64 = ns.Object("Ed") - obj55 = ns.Object("Mayor_Theogrin") - obj53 = ns.Object("Mayor's_Guard") - obj51 = ns.Object("Barkeeper") - obj65 = ns.Object("Bridge_Guard") - obj47 = ns.Object("Jandor") - obj75 = ns.Object("Jacob") - obj76 = ns.Object("Morgan") - obj119 = ns.Object("CaveDoor") - obj116 = ns.Object("MorganDoor") - obj56 = ns.Object("MayorGate1") - obj57 = ns.Object("MayorGate2") - obj58 = ns.Object("ContestGate1") - obj59 = ns.Object("ContestGate2") - obj112 = ns.Object("CemDoorL") - obj113 = ns.Object("CemDoorR") - obj110 = ns.Object("BasementDoor") - obj60 = ns.Object("AldwinElevator") - obj61 = ns.Object("RightTownGate") - obj62 = ns.Object("LeftTownGate") - obj72 = ns.Object("Bryan") - obj73 = ns.Object("Clyde") - obj74 = ns.Object("Tommy") - obj66 = ns.Object("MagicShopElevator") - obj67 = ns.Object("Joyce") - obj68 = ns.Object("Julie") - obj69 = ns.Object("Tanya") - obj70 = ns.Object("Gretchen") - obj50 = ns.Object("BlueKey") - obj71 = ns.Object("AldwynFireplace") - obj77 = ns.Object("JacobTrigger") - obj111 = ns.Object("AldwynsDoor") - obj114 = ns.Object("TempDoorL") - obj115 = ns.Object("TempDoorR") - obj117 = ns.Object("Mystic") - obj118 = ns.Object("Mystic2") - wp78 = ns.Waypoint("AldwynHome") - wp122 = ns.Waypoint("AldwynStorage") - wp79 = ns.Waypoint("JacobWP") - wp123 = ns.Waypoint("MysticWP") - wp124 = ns.Waypoint("MysticStorage") - wp125 = ns.Waypoint("FaceWP") - gvar126 = ns.ObjectGroup("NPC's") - gvar127 = ns.ObjectGroup("CharmedWolves") - gvar128 = ns.WallGroup("MagicShopElevatorWalls") - wp80 = ns.Waypoint("MineExitWP") - wp81 = ns.Waypoint("CaveExitWP") - ns.Wander(obj72) - ns.Wander(obj73) - ns.Wander(obj74) - ns.Wander(obj68) - ns.Wander(obj69) - ns.LockDoor(obj56) - ns.LockDoor(obj57) - ns.LockDoor(obj112) - ns.LockDoor(obj113) - ns.LockDoor(obj61) - ns.LockDoor(obj62) - ns.LockDoor(obj116) - ns.LockDoor(obj119) - InversionInit() - InitializeDialogs() - OwnObjects() - ns.StartupScreen(8) - ns.FrameTimer(5, StartCaptainConversation) - ns.FrameTimer(35, DisableElevators) -} -func MapEntry() { - var v0 int - v0 = ns.GetQuestStatus("Chapter8:HasWeirdling") - if v0 != 1 { - goto LABEL1 - } - flag107 = true - ns.MoveObject(obj54, ns.GetWaypointX(wp122), ns.GetWaypointY(wp122)) - ns.LockDoor(obj111) - ns.LockDoor(obj114) - ns.LockDoor(obj115) - InitializeSecondaryDialogs() - ns.SetShopkeeperText(obj117, "War08a:Mystic") - ns.CancelDialog(obj63) - ns.CancelDialog(obj64) -LABEL1: - ns.Music(15, 100) - ns.UnBlind() -} -func DebugOn() { - flag106 = true - ns.PrintToAll("Debug mode is enabled.") -} -func DebugOff() { - flag106 = false - ns.PrintToAll("Debug mode has been disabled.") -} -func OpenCaveDoor() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.UnlockDoor(obj119) - ns.ObjectOff(ns.GetTrigger()) -LABEL1: - return -} -func EnableRandomBump() { - flag130 = true -} -func RandomBump() { - if !(ns.IsCaller(ns.GetHost()) && flag130) { - goto LABEL1 - } - ns.Chat(ns.GetTrigger(), "Con02a:RandomBump") - flag130 = false - ns.FrameTimer(ivar129, EnableRandomBump) -LABEL1: - return -} -func RestAwhile() { - var v0 int - v0 = ns.Random(60, 120) - ns.PauseObject(ns.GetCaller(), v0) -} -func OpenMagicShopElevatorWalls() { - ns.WallGroupOpen(gvar128) -} -func MakeAWish() { - var v0 int - v0 = ns.MaxHealth(ns.GetCaller()) - ns.RestoreHealth(ns.GetCaller(), v0-ns.CurrentHealth(ns.GetCaller())) - ns.PrintToAll("GeneralPrint:WellSignRefresh") - ns.AudioEvent(ns.RestoreHealthName, ns.Waypoint("WellWP")) -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapInitialize": - MapInitialize() - case "MapEntry": - MapEntry() - } -} diff --git a/examples/war08b/dummy_test.go b/examples/war08b/dummy_test.go deleted file mode 100644 index 8beb33c..0000000 --- a/examples/war08b/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package war08b - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/war08b/war08b.go b/examples/war08b/war08b.go deleted file mode 100644 index cb7a086..0000000 --- a/examples/war08b/war08b.go +++ /dev/null @@ -1,263 +0,0 @@ -package war08b - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 ns.ObjectID - obj5 ns.ObjectID - obj6 ns.ObjectID - obj7 ns.ObjectID - wp8 ns.WaypointID - wp9 ns.WaypointID - gvar10 ns.ObjectGroupID - wp11 ns.WaypointID - wp12 ns.WaypointID - wp13 ns.WaypointID - wp14 ns.WaypointID - gvar15 int - gvar16 int - gvar17 int - gvar18 int - gvar19 int - flag20 bool - flag21 bool -) - -func init() { - gvar15 = 0 - gvar16 = 1 - gvar17 = 2 - gvar18 = 3 - gvar19 = gvar15 - flag20 = false - flag21 = false -} -func PlayerDeath() { - ns.DeathScreen(8) -} -func GoToIxSEG2() { - ns.Frozen(ns.GetHost(), false) - ns.Frozen(obj4, false) - ns.Frozen(obj5, false) - ns.Frozen(obj6, false) - ns.MoveObject(ns.GetHost(), ns.GetWaypointX(wp8), ns.GetWaypointY(wp8)) -} -func GoToIx() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Frozen(ns.GetHost(), true) - ns.Frozen(obj4, true) - ns.Frozen(obj5, true) - ns.Frozen(obj6, true) - ns.Blind() - ns.FrameTimer(60, GoToIxSEG2) -LABEL1: - return -} -func GoToTempleSEG2() { - ns.Frozen(ns.GetHost(), false) - ns.MoveObject(ns.GetHost(), ns.GetWaypointX(wp9), ns.GetWaypointY(wp9)) -} -func GoToTemple() { - ns.Frozen(ns.GetHost(), true) - ns.CancelDialog(obj7) - ns.Blind() - ns.FrameTimer(60, GoToTempleSEG2) -} -func OwnObjects() { - ns.SetOwner(ns.GetHost(), obj7) -} -func MapInitialize() { - obj4 = ns.Object("Bear01") - obj5 = ns.Object("Bear02") - obj6 = ns.Object("Bear03") - obj7 = ns.Object("IxPriest") - gvar10 = ns.ObjectGroup("Fish") - wp8 = ns.Waypoint("IxExitWP") - wp11 = ns.Waypoint("TempleExtWP") - wp12 = ns.Waypoint("TempleIntWP") - wp9 = ns.Waypoint("TempleExitWP") - wp13 = ns.Waypoint("PriestWP") - wp14 = ns.Waypoint("PriestLookWP") - ns.GroupWander(gvar10) - ns.FrameTimer(1, OwnObjects) -} -func MapEntry() { - ns.UnBlind() - ns.Music(22, 100) -} -func EnterTempleSEG2() { - ns.Frozen(ns.GetHost(), false) - ns.Frozen(obj4, false) - ns.Frozen(obj5, false) - ns.Frozen(obj6, false) - ns.MoveObject(ns.GetHost(), ns.GetWaypointX(wp12), ns.GetWaypointY(wp12)) - ns.UnBlind() -} -func EnterTemple() { - ns.Frozen(ns.GetHost(), true) - ns.Frozen(obj4, true) - ns.Frozen(obj5, true) - ns.Frozen(obj6, true) - ns.Blind() - ns.FrameTimer(60, EnterTempleSEG2) -} -func LeaveTempleSEG2() { - ns.Frozen(ns.GetHost(), false) - ns.MoveObject(ns.GetHost(), ns.GetWaypointX(wp11), ns.GetWaypointY(wp11)) - ns.UnBlind() -} -func LeaveTemple() { - ns.Frozen(ns.GetHost(), true) - ns.Blind() - ns.FrameTimer(60, LeaveTempleSEG2) -} -func StayAway() { - r1 := ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) - if !r1 { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func NoMonsters() { - r1 := ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) - if !r1 { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func BearAttack() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.CreatureFollow(obj5, obj4) - ns.CreatureFollow(obj6, obj4) -LABEL1: - return -} -func BearIdle() { - ns.GoBackHome(ns.GetTrigger()) -} -func PriestSetPieceSEG2() { - ns.CreatureFollow(obj7, ns.GetHost()) - ns.FrameTimer(75, PriestSetPieceSEG3) -} -func PriestSetPieceSEG3() { - ns.StoryPic(obj7, "IxPriestPic") - ns.SetDialog(obj7, ns.NEXT, PriestDialogStart, PriestDialogEnd) - ns.StartDialog(obj7, ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj7) -} -func PriestDialogStart() { - var v0 int - v0 = gvar19 - if v0 == gvar15 { - goto LABEL1 - } - if v0 == gvar16 { - goto LABEL2 - } - if v0 == gvar17 { - goto LABEL3 - } - if v0 == gvar18 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - ns.TellStory(ns.SwordsmanHurt, "Con08a:PriestGreet") - goto LABEL5 -LABEL2: - ns.TellStory(ns.SwordsmanHurt, "Con08a:PriestProd") - goto LABEL5 -LABEL3: - ns.TellStory(ns.SwordsmanHurt, "Con08a:PriestProd2") - goto LABEL5 -LABEL4: - ns.SetDialog(obj7, ns.NORMAL, PriestDialogStart, PriestDialogEnd) - ns.TellStory(ns.SwordsmanHurt, "Con08a:PriestProd3") - goto LABEL5 -LABEL5: - return -} -func PriestDialogEnd() { - var v0 int - v0 = gvar19 - if v0 == gvar15 { - goto LABEL1 - } - if v0 == gvar16 { - goto LABEL2 - } - if v0 == gvar17 { - goto LABEL3 - } - if v0 == gvar18 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - gvar19 = gvar16 - PriestDialogStart() - goto LABEL5 -LABEL2: - gvar19 = gvar17 - PriestDialogStart() - goto LABEL5 -LABEL3: - gvar19 = gvar18 - PriestDialogStart() - goto LABEL5 -LABEL4: - if flag21 { - goto LABEL6 - } - flag21 = true - ns.JournalEdit(ns.GetHost(), "Chapter8IxPriest", 4) - ns.PrintToAll("Con02a:ObjectiveComplete") - ns.JournalEntry(ns.GetHost(), "Chapter8Wierdling", 2) - ns.PrintToAll("Con01a:NewJournalEntry") - ns.WideScreen(false) - ns.CreatureGuard(obj7, ns.GetWaypointX(wp13), ns.GetWaypointY(wp13), ns.GetWaypointX(wp14), ns.GetWaypointY(wp14), 0) - ns.FrameTimer(60, ReleasePlayer) -LABEL6: - goto LABEL5 -LABEL5: - return -} -func ReleasePlayer() { - ns.MusicPopEvent() - ns.Frozen(ns.GetHost(), false) -} -func StartPriestSetPiece() { - if flag20 { - goto LABEL1 - } - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.MusicPushEvent() - ns.Music(10, 100) - flag20 = true - ns.AudioEvent(ns.BigGong, wp12) - ns.Frozen(ns.GetHost(), true) - ns.WideScreen(true) - ns.FrameTimer(60, PriestSetPieceSEG2) -LABEL1: - return -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapInitialize": - MapInitialize() - case "MapEntry": - MapEntry() - } -} diff --git a/examples/war08c/dummy_test.go b/examples/war08c/dummy_test.go deleted file mode 100644 index 443ced9..0000000 --- a/examples/war08c/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package war08c - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/war08c/war08c.go b/examples/war08c/war08c.go deleted file mode 100644 index 6539c8d..0000000 --- a/examples/war08c/war08c.go +++ /dev/null @@ -1,842 +0,0 @@ -package war08c - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - gvar4 ns.ObjectGroupID - gvar5 ns.ObjectGroupID - gvar6 ns.ObjectGroupID - wp7 ns.WaypointID - obj8 ns.ObjectID - obj9 ns.ObjectID - wp10 ns.WaypointID - wp11 ns.WaypointID - gvar12 ns.WallGroupID - gvar13 ns.WallGroupID - wp14 ns.WaypointID - obj15 ns.ObjectID - obj16 ns.ObjectID - obj17 ns.ObjectID - obj18 ns.ObjectID - obj19 ns.ObjectID - obj20 ns.ObjectID - obj21 ns.ObjectID - obj22 ns.ObjectID - wp23 ns.WaypointID - wp24 ns.WaypointID - wp25 ns.WaypointID - wp26 ns.WaypointID - wp27 ns.WaypointID - wp28 ns.WaypointID - wp29 ns.WaypointID - wp30 ns.WaypointID - wp31 ns.WaypointID - gvar32 int - gvar33 [10]ns.ObjectGroupID - gvar34 int - obj35 ns.ObjectID - obj36 [9]ns.ObjectID - gvar37 int - ivar38 int - ivar39 int - ivar40 int - ivar41 int - ivar42 int - ivar43 [10]int - flag44 [10]bool - wp45 [10]ns.WaypointID - str46 [6]string -) - -func init() { - gvar37 = 0 - ivar38 = 1 - ivar39 = 0 - ivar40 = 180 - ivar41 = 0 - ivar42 = 10 -} -func ArrowTrapAudio() { - ns.MoveWaypoint(wp7, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.BowShoot, wp7) - ns.AudioEvent(ns.CrossBowShoot, wp7) -} -func DisableArrowTrapGroup01() { - ns.ObjectGroupOff(gvar4) -} -func EnableArrowTrapGroup01() { - ns.ObjectGroupOn(gvar4) - ns.FrameTimer(1, DisableArrowTrapGroup01) -} -func DisableArrowTrapGroup02() { - ns.ObjectGroupOff(gvar5) -} -func ActivateArrowTrap02() { - ns.ObjectGroupOn(gvar5) - ns.FrameTimer(1, DisableArrowTrapGroup02) -} -func DisableArrowTrapGroup03() { - ns.ObjectGroupOff(gvar6) -} -func ActivateArrowTrap03() { - ns.ObjectGroupOn(gvar6) - ns.FrameTimer(1, DisableArrowTrapGroup03) -} -func BeholderAttackExit() { - if !(ns.CurrentHealth(obj8) > 0) { - goto LABEL1 - } - if ns.IsVisibleTo(obj8, ns.GetHost()) { - goto LABEL1 - } - ns.Move(obj8, wp11) -LABEL1: - return -} -func BeholderStay() { - if !ns.IsCaller(obj8) { - goto LABEL1 - } - ns.Wander(obj8) -LABEL1: - if !ns.IsCaller(obj9) { - goto LABEL2 - } - ns.Wander(obj9) -LABEL2: - return -} -func OpenBoulderHallWall01() { - ns.ObjectOff(ns.GetTrigger()) - ns.WallOpen(ns.Wall(104, 162)) -} -func OpenBoulderHallWall02() { - ns.ObjectOff(ns.GetTrigger()) - ns.WallOpen(ns.Wall(213, 107)) -} -func GoldKeyRemoved() { - ns.WallGroupOpen(gvar12) - ns.WallGroupOpen(gvar13) -} -func ReleaseGoldKeyBombers() { - ns.WallGroupOpen(gvar13) -} -func PlayerDeath() { - ns.DeathScreen(8) -} -func InitializeSummoningCircles() { - var v0 int - v0 = 0 - for { - if !(v0 < 10) { - goto LABEL1 - } - flag44[v0] = true - ivar43[v0] = 0 - v0 += 1 - } -LABEL1: - str46[0] = "UrchinShaman" - str46[1] = "Mimic" - str46[2] = "Bear" - str46[3] = "Urchin" - str46[4] = "Imp" - str46[5] = "WhiteWolf" - obj35 = ns.Object("SummoningCircleTreasureLight") - obj36[0] = ns.Object("SummoningCircleTreasure01") - obj36[1] = ns.Object("SummoningCircleTreasure02") - obj36[2] = ns.Object("SummoningCircleTreasure03") - obj36[3] = ns.Object("SummoningCircleTreasure04") - obj36[4] = ns.Object("SummoningCircleTreasure05") - obj36[5] = ns.Object("SummoningCircleTreasure06") - obj36[6] = ns.Object("SummoningCircleTreasure07") - obj36[7] = ns.Object("SummoningCircleTreasure08") - obj36[8] = ns.Object("SummoningCircleTreasure09") - wp45[0] = ns.Waypoint("SummoningCircle01WP") - wp45[1] = ns.Waypoint("SummoningCircle02WP") - wp45[2] = ns.Waypoint("SummoningCircle03WP") - wp45[3] = ns.Waypoint("SummoningCircle04WP") - wp45[4] = ns.Waypoint("SummoningCircle05WP") - wp45[5] = ns.Waypoint("SummoningCircle06WP") - wp45[6] = ns.Waypoint("SummoningCircle07WP") - wp45[7] = ns.Waypoint("SummoningCircle08WP") - wp45[8] = ns.Waypoint("SummoningCircle09WP") - wp45[9] = ns.Waypoint("SummoningCircle10WP") - gvar33[0] = ns.ObjectGroup("SummonCircle01Lights") - gvar33[1] = ns.ObjectGroup("SummonCircle02Lights") - gvar33[2] = ns.ObjectGroup("SummonCircle03Lights") - gvar33[3] = ns.ObjectGroup("SummonCircle04Lights") - gvar33[4] = ns.ObjectGroup("SummonCircle05Lights") - gvar33[5] = ns.ObjectGroup("SummonCircle06Lights") - gvar33[6] = ns.ObjectGroup("SummonCircle07Lights") - gvar33[7] = ns.ObjectGroup("SummonCircle08Lights") - gvar33[8] = ns.ObjectGroup("SummonCircle09Lights") - gvar33[9] = ns.ObjectGroup("SummonCircle10Lights") -} -func MapInitialize() { - obj8 = ns.Object("Beholder01") - obj9 = ns.Object("Beholder02") - obj15 = ns.Object("Beholder03") - obj16 = ns.Object("Bat01") - obj17 = ns.Object("StoneBlock01") - obj18 = ns.Object("StoneBlock02") - obj19 = ns.Object("StoneBlock03") - obj20 = ns.Object("StoneBlock04") - obj21 = ns.Object("BomberPitElevator") - obj22 = ns.Object("SpiderPitElevator") - wp23 = ns.Waypoint("StoneBlock01WP") - wp26 = ns.Waypoint("StoneBlock02Home") - wp28 = ns.Waypoint("StoneBlock03Home") - wp25 = ns.Waypoint("StoneBlock02Dest") - wp27 = ns.Waypoint("StoneBlock03Dest") - wp24 = ns.Waypoint("StoneBlock04WP") - wp14 = ns.Waypoint("GoldKeyWP") - wp30 = ns.Waypoint("BomberCreationWP") - wp10 = ns.Waypoint("BomberAudioOrigin") - wp29 = ns.Waypoint("Beholder01SetPieceWP") - wp11 = ns.Waypoint("BeholderRoomExitWP") - wp7 = ns.Waypoint("ArrowTrapAudioOrigin") - wp31 = ns.Waypoint("SecretAudioOrigin") - gvar4 = ns.ObjectGroup("ArrowTrapGroup01") - gvar5 = ns.ObjectGroup("ArrowTrapGroup02") - gvar6 = ns.ObjectGroup("ArrowTrapGroup03") - gvar12 = ns.WallGroup("GoldKeyWalls") - gvar13 = ns.WallGroup("BomberCageWalls") - InitializeSummoningCircles() -} -func MapEntry() { - ns.Music(18, 100) - ns.UnBlind() -} -func EnableSpiderPitElevator() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.ObjectOn(obj22) -LABEL1: - return -} -func SecretSFX() { - ns.MoveWaypoint(wp31, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretFound, wp31) -} -func Secret01Found() { - ns.ObjectOff(ns.GetTrigger()) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 100) - SecretSFX() -} -func SealTheTempleFX() { - var ( - v0 float32 - v1 float32 - ) - v0 = ns.GetObjectX(ns.GetHost()) - v1 = ns.GetObjectY(ns.GetHost()) - ns.AudioEvent(ns.HugeFoot, wp23) - ns.Effect(ns.JIGGLE, v0, v1, 10, 0) -} -func SealTheTemple() { - ns.ObjectOff(ns.GetTrigger()) - ns.Move(obj17, wp23) - ns.Move(obj20, wp24) - ns.AudioEvent(ns.BigGong, wp23) - ns.AudioEvent(ns.SecretWallClose, wp23) - ns.FrameTimer(10, SealTheTempleFX) -} -func EnableElevator() { - ns.ObjectOn(obj21) -} -func ReleasePlayer() { - ns.WideScreen(false) - ns.ClearOwner(obj8) - ns.Frozen(ns.GetHost(), false) - if !(ns.CurrentHealth(obj16) > 0) { - goto LABEL1 - } - ns.ObjectOn(obj16) -LABEL1: - ns.Delete(ns.Object("War08a:CharmedWolf01")) - ns.Delete(ns.Object("War08a:CharmedWolf02")) - ns.Delete(ns.Object("War08a:CharmedWolf03")) - ns.Delete(ns.Object("War08a:CharmedWolf04")) - ns.NoWallSound(true) - ns.WallClose(ns.Wall(169, 87)) - ns.NoWallSound(false) - ns.FrameTimer(60, EnableElevator) -} -func BeholderSetpieceSEG3() { - ns.FrameTimer(60, ReleasePlayer) -} -func BeholderSetpieceSEG2() { - ns.Move(obj8, wp29) - ns.FrameTimer(180, ReleasePlayer) -} -func BeholderSetpiece() { - ns.SetOwner(ns.GetHost(), obj8) - ns.ObjectOff(ns.GetTrigger()) - ns.Frozen(ns.GetHost(), true) - ns.CreatureIdle(ns.GetHost()) - ns.WideScreen(true) - if !(ns.CurrentHealth(obj16) > 0) { - goto LABEL1 - } - ns.ObjectOff(obj16) -LABEL1: - ns.FrameTimer(60, BeholderSetpieceSEG2) -} -func DisableBomberPitElevator() { - ns.ObjectOff(obj21) -} -func BlockGatesFX() { - var ( - v0 float32 - v1 float32 - ) - v0 = ns.GetObjectX(ns.GetHost()) - v1 = ns.GetObjectY(ns.GetHost()) - ns.AudioEvent(ns.HugeFoot, wp25) - ns.Effect(ns.JIGGLE, v0, v1, 10, 0) -} -func CloseBlockGates() { - ns.Move(obj18, wp25) - ns.Move(obj19, wp27) - ns.AudioEvent(ns.SecretWallClose, wp25) - ns.AudioEvent(ns.SecretWallClose, wp27) - ns.FrameTimer(10, BlockGatesFX) -} -func SealBeholderRoom() { - ns.ObjectOff(ns.GetTrigger()) - ns.WallClose(ns.Wall(209, 109)) - ns.MoveObject(obj8, ns.GetWaypointX(wp11), ns.GetWaypointY(wp11)) - ns.AggressionLevel(obj8, 0.83) - ns.AggressionLevel(obj9, 0.83) - ns.Wander(obj8) - ns.Wander(obj9) -} -func ResetSummonCircle(a1 int) { - flag44[a1] = true - ns.ObjectGroupOn(gvar33[a1]) -} -func SummoningCircleCleared(a1 int) { - ivar39 += 1 - if ivar39 != 9 { - goto LABEL1 - } - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 500) - ns.Effect(ns.BLUE_SPARKS, ns.GetWaypointX(wp45[a1]), ns.GetWaypointY(wp45[a1]), 0, 0) - ns.MoveObject(obj35, ns.GetWaypointX(wp45[a1]), ns.GetWaypointY(wp45[a1])) - ns.MoveObject(obj36[ivar39-1], ns.GetWaypointX(wp45[a1]), ns.GetWaypointY(wp45[a1])) - ns.AudioEvent(ns.SmallGong, wp45[a1]) - goto LABEL2 -LABEL1: - ns.Effect(ns.BLUE_SPARKS, ns.GetWaypointX(wp45[a1]), ns.GetWaypointY(wp45[a1]), 0, 0) - ns.MoveObject(obj35, ns.GetWaypointX(wp45[a1]), ns.GetWaypointY(wp45[a1])) - ns.MoveObject(obj36[ivar39-1], ns.GetWaypointX(wp45[a1]), ns.GetWaypointY(wp45[a1])) - ns.AudioEvent(ns.BigGong, wp45[a1]) -LABEL2: - return -} -func SummonCircle01Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar37 = 0 - if !(ns.IsCaller(ns.GetHost()) && flag44[gvar37] == true) { - goto LABEL1 - } - flag44[gvar37] = false - ns.ObjectGroupOff(gvar33[gvar37]) - ns.AudioEvent(ns.SummonCast, wp45[gvar37]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp45[gvar37]), ns.GetWaypointY(wp45[gvar37]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar42) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp45[gvar37]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp45[gvar37]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar41 = ns.Random(0, 5) - ns.CreateObject(str46[ivar41], wp45[gvar37]) -LABEL6: - ivar43[gvar37] += 1 - if !(ivar43[gvar37] > ivar38) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar37, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar40, gvar37, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle02Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar37 = 1 - if !(ns.IsCaller(ns.GetHost()) && flag44[gvar37] == true) { - goto LABEL1 - } - flag44[gvar37] = false - ns.ObjectGroupOff(gvar33[gvar37]) - ns.AudioEvent(ns.SummonCast, wp45[gvar37]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp45[gvar37]), ns.GetWaypointY(wp45[gvar37]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar42) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp45[gvar37]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp45[gvar37]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar41 = ns.Random(0, 5) - ns.CreateObject(str46[ivar41], wp45[gvar37]) -LABEL6: - ivar43[gvar37] += 1 - if !(ivar43[gvar37] > ivar38) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar37, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar40, gvar37, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle03Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar37 = 2 - if !(ns.IsCaller(ns.GetHost()) && flag44[gvar37] == true) { - goto LABEL1 - } - flag44[gvar37] = false - ns.ObjectGroupOff(gvar33[gvar37]) - ns.AudioEvent(ns.SummonCast, wp45[gvar37]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp45[gvar37]), ns.GetWaypointY(wp45[gvar37]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar42) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp45[gvar37]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp45[gvar37]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar41 = ns.Random(0, 5) - ns.CreateObject(str46[ivar41], wp45[gvar37]) -LABEL6: - ivar43[gvar37] += 1 - if !(ivar43[gvar37] > ivar38) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar37, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar40, gvar37, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle04Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar37 = 3 - if !(ns.IsCaller(ns.GetHost()) && flag44[gvar37] == true) { - goto LABEL1 - } - flag44[gvar37] = false - ns.ObjectGroupOff(gvar33[gvar37]) - ns.AudioEvent(ns.SummonCast, wp45[gvar37]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp45[gvar37]), ns.GetWaypointY(wp45[gvar37]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar42) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp45[gvar37]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp45[gvar37]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar41 = ns.Random(0, 5) - ns.CreateObject(str46[ivar41], wp45[gvar37]) -LABEL6: - ivar43[gvar37] += 1 - if !(ivar43[gvar37] > ivar38) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar37, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar40, gvar37, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle05Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar37 = 4 - if !(ns.IsCaller(ns.GetHost()) && flag44[gvar37] == true) { - goto LABEL1 - } - flag44[gvar37] = false - ns.ObjectGroupOff(gvar33[gvar37]) - ns.AudioEvent(ns.SummonCast, wp45[gvar37]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp45[gvar37]), ns.GetWaypointY(wp45[gvar37]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar42) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp45[gvar37]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp45[gvar37]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar41 = ns.Random(0, 5) - ns.CreateObject(str46[ivar41], wp45[gvar37]) -LABEL6: - ivar43[gvar37] += 1 - if !(ivar43[gvar37] > ivar38) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar37, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar40, gvar37, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle06Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar37 = 5 - if !(ns.IsCaller(ns.GetHost()) && flag44[gvar37] == true) { - goto LABEL1 - } - flag44[gvar37] = false - ns.ObjectGroupOff(gvar33[gvar37]) - ns.AudioEvent(ns.SummonCast, wp45[gvar37]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp45[gvar37]), ns.GetWaypointY(wp45[gvar37]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar42) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp45[gvar37]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp45[gvar37]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar41 = ns.Random(0, 5) - ns.CreateObject(str46[ivar41], wp45[gvar37]) -LABEL6: - ivar43[gvar37] += 1 - if !(ivar43[gvar37] > ivar38) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar37, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar40, gvar37, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle07Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar37 = 6 - if !(ns.IsCaller(ns.GetHost()) && flag44[gvar37] == true) { - goto LABEL1 - } - flag44[gvar37] = false - ns.ObjectGroupOff(gvar33[gvar37]) - ns.AudioEvent(ns.SummonCast, wp45[gvar37]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp45[gvar37]), ns.GetWaypointY(wp45[gvar37]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar42) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp45[gvar37]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp45[gvar37]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar41 = ns.Random(0, 5) - ns.CreateObject(str46[ivar41], wp45[gvar37]) -LABEL6: - ivar43[gvar37] += 1 - if !(ivar43[gvar37] > ivar38) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar37, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar40, gvar37, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle08Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar37 = 7 - if !(ns.IsCaller(ns.GetHost()) && flag44[gvar37] == true) { - goto LABEL1 - } - flag44[gvar37] = false - ns.ObjectGroupOff(gvar33[gvar37]) - ns.AudioEvent(ns.SummonCast, wp45[gvar37]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp45[gvar37]), ns.GetWaypointY(wp45[gvar37]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar42) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp45[gvar37]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp45[gvar37]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar41 = ns.Random(0, 5) - ns.CreateObject(str46[ivar41], wp45[gvar37]) -LABEL6: - ivar43[gvar37] += 1 - if !(ivar43[gvar37] > ivar38) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar37, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar40, gvar37, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle09Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar37 = 8 - if !(ns.IsCaller(ns.GetHost()) && flag44[gvar37] == true) { - goto LABEL1 - } - flag44[gvar37] = false - ns.ObjectGroupOff(gvar33[gvar37]) - ns.AudioEvent(ns.SummonCast, wp45[gvar37]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp45[gvar37]), ns.GetWaypointY(wp45[gvar37]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar42) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp45[gvar37]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp45[gvar37]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar41 = ns.Random(0, 5) - ns.CreateObject(str46[ivar41], wp45[gvar37]) -LABEL6: - ivar43[gvar37] += 1 - if !(ivar43[gvar37] > ivar38) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar37, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar40, gvar37, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle10Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar37 = 9 - if !(ns.IsCaller(ns.GetHost()) && flag44[gvar37] == true) { - goto LABEL1 - } - flag44[gvar37] = false - ns.ObjectGroupOff(gvar33[gvar37]) - ns.AudioEvent(ns.SummonCast, wp45[gvar37]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp45[gvar37]), ns.GetWaypointY(wp45[gvar37]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar42) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp45[gvar37]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp45[gvar37]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar41 = ns.Random(0, 5) - ns.CreateObject(str46[ivar41], wp45[gvar37]) -LABEL6: - ivar43[gvar37] += 1 - if !(ivar43[gvar37] > ivar38) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar37, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar40, gvar37, ResetSummonCircle) -LABEL1: - return -} -func EnableBomberPitElevator() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.ObjectOn(obj21) -LABEL1: - return -} -func OpenBomberPitExit() { - ns.ObjectOff(ns.GetTrigger()) - ns.WallOpen(ns.Wall(159, 109)) -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapInitialize": - MapInitialize() - case "MapEntry": - MapEntry() - } -} diff --git a/examples/war08d/dummy_test.go b/examples/war08d/dummy_test.go deleted file mode 100644 index ff466d2..0000000 --- a/examples/war08d/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package war08d - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/war08d/war08d.go b/examples/war08d/war08d.go deleted file mode 100644 index c87a457..0000000 --- a/examples/war08d/war08d.go +++ /dev/null @@ -1,2353 +0,0 @@ -package war08d - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 ns.ObjectID - gvar5 ns.ObjectGroupID - gvar6 ns.ObjectGroupID - gvar7 ns.ObjectGroupID - gvar8 ns.ObjectGroupID - wp9 ns.WaypointID - ivar10 int - obj11 ns.ObjectID - obj12 ns.ObjectID - obj13 ns.ObjectID - obj14 ns.ObjectID - obj15 ns.ObjectID - obj16 ns.ObjectID - obj17 ns.ObjectID - obj18 ns.ObjectID - obj19 ns.ObjectID - obj20 ns.ObjectID - obj21 ns.ObjectID - obj22 ns.ObjectID - obj23 ns.ObjectID - obj24 ns.ObjectID - wp25 ns.WaypointID - wp26 ns.WaypointID - obj27 ns.ObjectID - obj28 ns.ObjectID - obj29 ns.ObjectID - obj30 ns.ObjectID - obj31 ns.ObjectID - obj32 ns.ObjectID - obj33 ns.ObjectID - obj34 ns.ObjectID - obj35 ns.ObjectID - obj36 ns.ObjectID - obj37 ns.ObjectID - obj38 ns.ObjectID - obj39 ns.ObjectID - obj40 ns.ObjectID - fvar41 float32 - fvar42 float32 - ivar43 int - str44 [3]string - obj45 ns.ObjectID - obj46 ns.ObjectID - obj47 ns.ObjectID - wp48 ns.WaypointID - wp49 ns.WaypointID - wp50 ns.WaypointID - wp51 ns.WaypointID - wp52 ns.WaypointID - flag53 bool - obj54 ns.ObjectID - obj55 ns.ObjectID - gvar56 ns.WallGroupID - obj57 ns.ObjectID - obj58 ns.ObjectID - obj59 ns.ObjectID - obj60 ns.ObjectID - obj61 ns.ObjectID - obj62 ns.ObjectID - obj63 ns.ObjectID - obj64 ns.ObjectID - obj65 ns.ObjectID - obj66 ns.ObjectID - obj67 ns.ObjectID - gvar68 ns.ObjectGroupID - wp69 ns.WaypointID - wp70 ns.WaypointID - wp71 ns.WaypointID - wp72 ns.WaypointID - wp73 ns.WaypointID - wp74 ns.WaypointID - wp75 ns.WaypointID - obj76 ns.ObjectID - obj77 [15]ns.ObjectID - gvar78 [21]ns.ObjectGroupID - gvar79 int - ivar80 int - ivar81 int - ivar82 int - ivar83 int - ivar84 int - ivar85 [21]int - flag86 [21]bool - wp87 [21]ns.WaypointID - str88 [6]string -) - -func init() { - ivar10 = 0 - fvar41 = 0 - fvar42 = 0 - ivar43 = 0 - flag53 = false - gvar79 = 0 - ivar80 = 1 - ivar81 = 0 - ivar82 = 10 - ivar83 = 180 - ivar84 = 0 -} -func ArrowTrapAudio() { - ns.MoveWaypoint(wp9, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.BowShoot, wp9) - ns.AudioEvent(ns.CrossBowShoot, wp9) -} -func DisableArrowTrap01() { - ns.ObjectGroupOff(gvar5) -} -func ActivateArrowTrap01() { - ns.ObjectGroupOn(gvar5) - ns.FrameTimer(1, DisableArrowTrap01) -} -func DisableArrowTrap02() { - ns.ObjectGroupOff(gvar6) -} -func ActivateArrowTrap02() { - ns.ObjectGroupOn(gvar6) - ns.FrameTimer(1, DisableArrowTrap02) -} -func DisableArrowTrap03() { - ns.ObjectGroupOff(gvar7) -} -func ActivateArrowTrap03() { - ns.ObjectGroupOn(gvar7) - ns.FrameTimer(1, DisableArrowTrap03) -} -func DisableUltimateArrowTrapGuns() { - ns.ObjectGroupOff(gvar8) -} -func ResetUltimateArrowTrap() { - ns.ObjectOn(obj4) -} -func UltimateArrowTrapLoop() { - if !(ivar10 < 8) { - goto LABEL1 - } - ivar10 += 1 - ns.ObjectGroupOn(gvar8) - ns.FrameTimer(1, DisableUltimateArrowTrapGuns) - ns.FrameTimer(10, UltimateArrowTrapLoop) -LABEL1: - if ivar10 != 8 { - goto LABEL2 - } - ivar10 = 0 - ns.ObjectGroupOn(gvar8) - ns.FrameTimer(1, DisableUltimateArrowTrapGuns) - ns.FrameTimer(10, ResetUltimateArrowTrap) -LABEL2: - return -} -func ActivateUltimateArrowTrap() { - ns.ObjectOff(ns.GetTrigger()) - ns.ObjectGroupOn(gvar8) - ns.FrameTimer(1, DisableUltimateArrowTrapGuns) - ns.FrameTimer(10, UltimateArrowTrapLoop) -} -func InitializeBeholders() { - str44[0] = "SPELL_STUN" - str44[1] = "SPELL_CONFUSE" - str44[2] = "SPELL_FUMBLE" -} -func BeholderIdle() { - ns.Wander(ns.GetTrigger()) -} -func Beholder01Bombers() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 int - ) - _ = v3 - _ = v2 - if !(ns.CurrentHealth(obj11) > 0 && ns.CurrentHealth(obj27) <= 0) { - goto LABEL1 - } - v0 = ns.GetObjectX(obj11) - v1 = ns.GetObjectY(obj11) - ns.MoveWaypoint(wp26, v0, v1) - ns.AudioEvent(ns.SummonCast, wp26) - v2 = ns.RandomFloat(fvar41, fvar42) - v3 = ns.RandomFloat(fvar41, fvar42) - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - ivar43 = ns.Random(0, 2) - v4 = ivar43 - if v4 == 0 { - goto LABEL2 - } - if v4 == 1 { - goto LABEL3 - } - if v4 == 2 { - goto LABEL4 - } - goto LABEL5 -LABEL2: - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj27 = ns.CreateObject("BomberBlue", wp25) - ns.TrapSpells(obj27, str44[ivar43], "", "") - goto LABEL5 -LABEL3: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj27 = ns.CreateObject("BomberGreen", wp25) - ns.TrapSpells(obj27, str44[ivar43], "", "") - goto LABEL5 -LABEL4: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj27 = ns.CreateObject("BomberYellow", wp25) - ns.TrapSpells(obj27, str44[ivar43], "", "") - goto LABEL5 -LABEL5: - ns.SetOwner(obj11, obj27) - ns.CreatureFollow(obj27, obj11) -LABEL1: - return -} -func Beholder01Recognize() { - ns.FrameTimer(90, Beholder01Bombers) -} -func Beholder01Die() { - ns.Damage(obj27, 0, 500, 0) -} -func Beholder02Bombers() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 int - ) - _ = v3 - _ = v2 - if !(ns.CurrentHealth(obj12) > 0 && ns.CurrentHealth(obj28) <= 0) { - goto LABEL1 - } - v0 = ns.GetObjectX(obj12) - v1 = ns.GetObjectY(obj12) - ns.MoveWaypoint(wp26, v0, v1) - ns.AudioEvent(ns.SummonCast, wp26) - v2 = ns.RandomFloat(fvar41, fvar42) - v3 = ns.RandomFloat(fvar41, fvar42) - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - ivar43 = ns.Random(0, 2) - v4 = ivar43 - if v4 == 0 { - goto LABEL2 - } - if v4 == 1 { - goto LABEL3 - } - if v4 == 2 { - goto LABEL4 - } - goto LABEL5 -LABEL2: - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj28 = ns.CreateObject("BomberBlue", wp25) - ns.TrapSpells(obj28, str44[ivar43], "", "") - goto LABEL5 -LABEL3: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj28 = ns.CreateObject("BomberGreen", wp25) - ns.TrapSpells(obj28, str44[ivar43], "", "") - goto LABEL5 -LABEL4: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj28 = ns.CreateObject("BomberYellow", wp25) - ns.TrapSpells(obj28, str44[ivar43], "", "") - goto LABEL5 -LABEL5: - ns.SetOwner(obj12, obj28) - ns.CreatureFollow(obj28, obj12) -LABEL1: - return -} -func Beholder02Recognize() { - ns.FrameTimer(90, Beholder02Bombers) -} -func Beholder02Die() { - ns.Damage(obj28, 0, 500, 0) -} -func Beholder03Bombers() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 int - ) - _ = v3 - _ = v2 - if !(ns.CurrentHealth(obj13) > 0 && ns.CurrentHealth(obj29) <= 0) { - goto LABEL1 - } - v0 = ns.GetObjectX(obj13) - v1 = ns.GetObjectY(obj13) - ns.MoveWaypoint(wp26, v0, v1) - ns.AudioEvent(ns.SummonCast, wp26) - v2 = ns.RandomFloat(fvar41, fvar42) - v3 = ns.RandomFloat(fvar41, fvar42) - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - ivar43 = ns.Random(0, 2) - v4 = ivar43 - if v4 == 0 { - goto LABEL2 - } - if v4 == 1 { - goto LABEL3 - } - if v4 == 2 { - goto LABEL4 - } - goto LABEL5 -LABEL2: - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj29 = ns.CreateObject("BomberBlue", wp25) - ns.TrapSpells(obj29, str44[ivar43], "", "") - goto LABEL5 -LABEL3: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj29 = ns.CreateObject("BomberGreen", wp25) - ns.TrapSpells(obj29, str44[ivar43], "", "") - goto LABEL5 -LABEL4: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj29 = ns.CreateObject("BomberYellow", wp25) - ns.TrapSpells(obj29, str44[ivar43], "", "") - goto LABEL5 -LABEL5: - ns.SetOwner(obj13, obj29) - ns.CreatureFollow(obj29, obj13) -LABEL1: - return -} -func Beholder03Recognize() { - ns.FrameTimer(90, Beholder03Bombers) -} -func Beholder03Die() { - ns.Damage(obj29, 0, 500, 0) -} -func Beholder04Bombers() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 int - ) - _ = v3 - _ = v2 - if !(ns.CurrentHealth(obj14) > 0 && ns.CurrentHealth(obj30) <= 0) { - goto LABEL1 - } - v0 = ns.GetObjectX(obj14) - v1 = ns.GetObjectY(obj14) - ns.MoveWaypoint(wp26, v0, v1) - ns.AudioEvent(ns.SummonCast, wp26) - v2 = ns.RandomFloat(fvar41, fvar42) - v3 = ns.RandomFloat(fvar41, fvar42) - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - ivar43 = ns.Random(0, 2) - v4 = ivar43 - if v4 == 0 { - goto LABEL2 - } - if v4 == 1 { - goto LABEL3 - } - if v4 == 2 { - goto LABEL4 - } - goto LABEL5 -LABEL2: - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj30 = ns.CreateObject("BomberBlue", wp25) - ns.TrapSpells(obj30, str44[ivar43], "", "") - goto LABEL5 -LABEL3: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj30 = ns.CreateObject("BomberGreen", wp25) - ns.TrapSpells(obj30, str44[ivar43], "", "") - goto LABEL5 -LABEL4: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj30 = ns.CreateObject("BomberYellow", wp25) - ns.TrapSpells(obj30, str44[ivar43], "", "") - goto LABEL5 -LABEL5: - ns.SetOwner(obj14, obj30) - ns.CreatureFollow(obj30, obj14) -LABEL1: - return -} -func Beholder04Recognize() { - ns.FrameTimer(90, Beholder04Bombers) -} -func Beholder04Die() { - ns.Damage(obj30, 0, 500, 0) -} -func Beholder05Bombers() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 int - ) - _ = v3 - _ = v2 - if !(ns.CurrentHealth(obj15) > 0 && ns.CurrentHealth(obj31) <= 0) { - goto LABEL1 - } - v0 = ns.GetObjectX(obj15) - v1 = ns.GetObjectY(obj15) - ns.MoveWaypoint(wp26, v0, v1) - ns.AudioEvent(ns.SummonCast, wp26) - v2 = ns.RandomFloat(fvar41, fvar42) - v3 = ns.RandomFloat(fvar41, fvar42) - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - ivar43 = ns.Random(0, 2) - v4 = ivar43 - if v4 == 0 { - goto LABEL2 - } - if v4 == 1 { - goto LABEL3 - } - if v4 == 2 { - goto LABEL4 - } - goto LABEL5 -LABEL2: - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj31 = ns.CreateObject("BomberBlue", wp25) - ns.TrapSpells(obj31, str44[ivar43], "", "") - goto LABEL5 -LABEL3: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj31 = ns.CreateObject("BomberGreen", wp25) - ns.TrapSpells(obj31, str44[ivar43], "", "") - goto LABEL5 -LABEL4: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj31 = ns.CreateObject("BomberYellow", wp25) - ns.TrapSpells(obj31, str44[ivar43], "", "") - goto LABEL5 -LABEL5: - ns.SetOwner(obj15, obj31) - ns.CreatureFollow(obj31, obj15) -LABEL1: - return -} -func Beholder05Recognize() { - ns.FrameTimer(90, Beholder05Bombers) -} -func Beholder05Die() { - ns.Damage(obj31, 0, 500, 0) -} -func Beholder06Bombers() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 int - ) - _ = v3 - _ = v2 - if !(ns.CurrentHealth(obj16) > 0 && ns.CurrentHealth(obj32) <= 0) { - goto LABEL1 - } - v0 = ns.GetObjectX(obj16) - v1 = ns.GetObjectY(obj16) - ns.MoveWaypoint(wp26, v0, v1) - ns.AudioEvent(ns.SummonCast, wp26) - v2 = ns.RandomFloat(fvar41, fvar42) - v3 = ns.RandomFloat(fvar41, fvar42) - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - ivar43 = ns.Random(0, 2) - v4 = ivar43 - if v4 == 0 { - goto LABEL2 - } - if v4 == 1 { - goto LABEL3 - } - if v4 == 2 { - goto LABEL4 - } - goto LABEL5 -LABEL2: - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj32 = ns.CreateObject("BomberBlue", wp25) - ns.TrapSpells(obj32, str44[ivar43], "", "") - goto LABEL5 -LABEL3: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj32 = ns.CreateObject("BomberGreen", wp25) - ns.TrapSpells(obj32, str44[ivar43], "", "") - goto LABEL5 -LABEL4: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj32 = ns.CreateObject("BomberYellow", wp25) - ns.TrapSpells(obj32, str44[ivar43], "", "") - goto LABEL5 -LABEL5: - ns.SetOwner(obj16, obj32) - ns.CreatureFollow(obj32, obj16) -LABEL1: - return -} -func Beholder06Recognize() { - ns.FrameTimer(90, Beholder06Bombers) -} -func Beholder06Die() { - ns.Damage(obj32, 0, 500, 0) -} -func Beholder07Bombers() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 int - ) - _ = v3 - _ = v2 - if !(ns.CurrentHealth(obj17) > 0 && ns.CurrentHealth(obj33) <= 0) { - goto LABEL1 - } - v0 = ns.GetObjectX(obj17) - v1 = ns.GetObjectY(obj17) - ns.MoveWaypoint(wp26, v0, v1) - ns.AudioEvent(ns.SummonCast, wp26) - v2 = ns.RandomFloat(fvar41, fvar42) - v3 = ns.RandomFloat(fvar41, fvar42) - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - ivar43 = ns.Random(0, 2) - v4 = ivar43 - if v4 == 0 { - goto LABEL2 - } - if v4 == 1 { - goto LABEL3 - } - if v4 == 2 { - goto LABEL4 - } - goto LABEL5 -LABEL2: - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj33 = ns.CreateObject("BomberBlue", wp25) - ns.TrapSpells(obj33, str44[ivar43], "", "") - goto LABEL5 -LABEL3: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj33 = ns.CreateObject("BomberGreen", wp25) - ns.TrapSpells(obj33, str44[ivar43], "", "") - goto LABEL5 -LABEL4: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj33 = ns.CreateObject("BomberYellow", wp25) - ns.TrapSpells(obj33, str44[ivar43], "", "") - goto LABEL5 -LABEL5: - ns.SetOwner(obj17, obj33) - ns.CreatureFollow(obj33, obj17) -LABEL1: - return -} -func Beholder07Recognize() { - ns.FrameTimer(90, Beholder07Bombers) -} -func Beholder07Die() { - ns.Damage(obj33, 0, 500, 0) -} -func Beholder08Bombers() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 int - ) - _ = v3 - _ = v2 - if !(ns.CurrentHealth(obj18) > 0 && ns.CurrentHealth(obj34) <= 0) { - goto LABEL1 - } - v0 = ns.GetObjectX(obj18) - v1 = ns.GetObjectY(obj18) - ns.MoveWaypoint(wp26, v0, v1) - ns.AudioEvent(ns.SummonCast, wp26) - v2 = ns.RandomFloat(fvar41, fvar42) - v3 = ns.RandomFloat(fvar41, fvar42) - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - ivar43 = ns.Random(0, 2) - v4 = ivar43 - if v4 == 0 { - goto LABEL2 - } - if v4 == 1 { - goto LABEL3 - } - if v4 == 2 { - goto LABEL4 - } - goto LABEL5 -LABEL2: - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj34 = ns.CreateObject("BomberBlue", wp25) - ns.TrapSpells(obj34, str44[ivar43], "", "") - goto LABEL5 -LABEL3: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj34 = ns.CreateObject("BomberGreen", wp25) - ns.TrapSpells(obj34, str44[ivar43], "", "") - goto LABEL5 -LABEL4: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj34 = ns.CreateObject("BomberYellow", wp25) - ns.TrapSpells(obj34, str44[ivar43], "", "") - goto LABEL5 -LABEL5: - ns.SetOwner(obj18, obj34) - ns.CreatureFollow(obj34, obj18) -LABEL1: - return -} -func Beholder08Recognize() { - ns.FrameTimer(90, Beholder08Bombers) -} -func Beholder08Die() { - ns.Damage(obj34, 0, 500, 0) -} -func Beholder09Bombers() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 int - ) - _ = v3 - _ = v2 - if !(ns.CurrentHealth(obj19) > 0 && ns.CurrentHealth(obj35) <= 0) { - goto LABEL1 - } - v0 = ns.GetObjectX(obj19) - v1 = ns.GetObjectY(obj19) - ns.MoveWaypoint(wp26, v0, v1) - ns.AudioEvent(ns.SummonCast, wp26) - v2 = ns.RandomFloat(fvar41, fvar42) - v3 = ns.RandomFloat(fvar41, fvar42) - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - ivar43 = ns.Random(0, 2) - v4 = ivar43 - if v4 == 0 { - goto LABEL2 - } - if v4 == 1 { - goto LABEL3 - } - if v4 == 2 { - goto LABEL4 - } - goto LABEL5 -LABEL2: - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj35 = ns.CreateObject("BomberBlue", wp25) - ns.TrapSpells(obj35, str44[ivar43], "", "") - goto LABEL5 -LABEL3: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj35 = ns.CreateObject("BomberGreen", wp25) - ns.TrapSpells(obj35, str44[ivar43], "", "") - goto LABEL5 -LABEL4: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj35 = ns.CreateObject("BomberYellow", wp25) - ns.TrapSpells(obj35, str44[ivar43], "", "") - goto LABEL5 -LABEL5: - ns.SetOwner(obj19, obj35) - ns.CreatureFollow(obj35, obj19) -LABEL1: - return -} -func Beholder09Recognize() { - ns.FrameTimer(90, Beholder09Bombers) -} -func Beholder09Die() { - ns.Damage(obj35, 0, 500, 0) -} -func Beholder10Bombers() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 int - ) - _ = v3 - _ = v2 - if !(ns.CurrentHealth(obj20) > 0 && ns.CurrentHealth(obj36) <= 0) { - goto LABEL1 - } - v0 = ns.GetObjectX(obj20) - v1 = ns.GetObjectY(obj20) - ns.MoveWaypoint(wp26, v0, v1) - ns.AudioEvent(ns.SummonCast, wp26) - v2 = ns.RandomFloat(fvar41, fvar42) - v3 = ns.RandomFloat(fvar41, fvar42) - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - ivar43 = ns.Random(0, 2) - v4 = ivar43 - if v4 == 0 { - goto LABEL2 - } - if v4 == 1 { - goto LABEL3 - } - if v4 == 2 { - goto LABEL4 - } - goto LABEL5 -LABEL2: - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj36 = ns.CreateObject("BomberBlue", wp25) - ns.TrapSpells(obj36, str44[ivar43], "", "") - goto LABEL5 -LABEL3: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj36 = ns.CreateObject("BomberGreen", wp25) - ns.TrapSpells(obj36, str44[ivar43], "", "") - goto LABEL5 -LABEL4: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj36 = ns.CreateObject("BomberYellow", wp25) - ns.TrapSpells(obj36, str44[ivar43], "", "") - goto LABEL5 -LABEL5: - ns.SetOwner(obj20, obj36) - ns.CreatureFollow(obj36, obj20) -LABEL1: - return -} -func Beholder10Recognize() { - ns.FrameTimer(90, Beholder10Bombers) -} -func Beholder10Die() { - ns.Damage(obj36, 0, 500, 0) -} -func Beholder11Bombers() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 int - ) - _ = v3 - _ = v2 - if !(ns.CurrentHealth(obj21) > 0 && ns.CurrentHealth(obj37) <= 0) { - goto LABEL1 - } - v0 = ns.GetObjectX(obj21) - v1 = ns.GetObjectY(obj21) - ns.MoveWaypoint(wp26, v0, v1) - ns.AudioEvent(ns.SummonCast, wp26) - v2 = ns.RandomFloat(fvar41, fvar42) - v3 = ns.RandomFloat(fvar41, fvar42) - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - ivar43 = ns.Random(0, 2) - v4 = ivar43 - if v4 == 0 { - goto LABEL2 - } - if v4 == 1 { - goto LABEL3 - } - if v4 == 2 { - goto LABEL4 - } - goto LABEL5 -LABEL2: - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj37 = ns.CreateObject("BomberBlue", wp25) - ns.TrapSpells(obj37, str44[ivar43], "", "") - goto LABEL5 -LABEL3: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj37 = ns.CreateObject("BomberGreen", wp25) - ns.TrapSpells(obj37, str44[ivar43], "", "") - goto LABEL5 -LABEL4: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj37 = ns.CreateObject("BomberYellow", wp25) - ns.TrapSpells(obj37, str44[ivar43], "", "") - goto LABEL5 -LABEL5: - ns.SetOwner(obj21, obj37) - ns.CreatureFollow(obj37, obj21) -LABEL1: - return -} -func Beholder11Recognize() { - ns.FrameTimer(90, Beholder11Bombers) -} -func Beholder11Die() { - ns.Damage(obj37, 0, 500, 0) -} -func Beholder12Bombers() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 int - ) - _ = v3 - _ = v2 - if !(ns.CurrentHealth(obj22) > 0 && ns.CurrentHealth(obj38) <= 0) { - goto LABEL1 - } - v0 = ns.GetObjectX(obj22) - v1 = ns.GetObjectY(obj22) - ns.MoveWaypoint(wp26, v0, v1) - ns.AudioEvent(ns.SummonCast, wp26) - v2 = ns.RandomFloat(fvar41, fvar42) - v3 = ns.RandomFloat(fvar41, fvar42) - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - ivar43 = ns.Random(0, 2) - v4 = ivar43 - if v4 == 0 { - goto LABEL2 - } - if v4 == 1 { - goto LABEL3 - } - if v4 == 2 { - goto LABEL4 - } - goto LABEL5 -LABEL2: - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj38 = ns.CreateObject("BomberBlue", wp25) - ns.TrapSpells(obj38, str44[ivar43], "", "") - goto LABEL5 -LABEL3: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj38 = ns.CreateObject("BomberGreen", wp25) - ns.TrapSpells(obj38, str44[ivar43], "", "") - goto LABEL5 -LABEL4: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj38 = ns.CreateObject("BomberYellow", wp25) - ns.TrapSpells(obj38, str44[ivar43], "", "") - goto LABEL5 -LABEL5: - ns.SetOwner(obj22, obj38) - ns.CreatureFollow(obj38, obj22) -LABEL1: - return -} -func Beholder12Recognize() { - ns.FrameTimer(90, Beholder12Bombers) -} -func Beholder12Die() { - ns.Damage(obj38, 0, 500, 0) -} -func Beholder13Bombers() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 int - ) - _ = v3 - _ = v2 - if !(ns.CurrentHealth(obj23) > 0 && ns.CurrentHealth(obj39) <= 0) { - goto LABEL1 - } - v0 = ns.GetObjectX(obj23) - v1 = ns.GetObjectY(obj23) - ns.MoveWaypoint(wp26, v0, v1) - ns.AudioEvent(ns.SummonCast, wp26) - v2 = ns.RandomFloat(fvar41, fvar42) - v3 = ns.RandomFloat(fvar41, fvar42) - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - ivar43 = ns.Random(0, 2) - v4 = ivar43 - if v4 == 0 { - goto LABEL2 - } - if v4 == 1 { - goto LABEL3 - } - if v4 == 2 { - goto LABEL4 - } - goto LABEL5 -LABEL2: - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj39 = ns.CreateObject("BomberBlue", wp25) - ns.TrapSpells(obj39, str44[ivar43], "", "") - goto LABEL5 -LABEL3: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj39 = ns.CreateObject("BomberGreen", wp25) - ns.TrapSpells(obj39, str44[ivar43], "", "") - goto LABEL5 -LABEL4: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj39 = ns.CreateObject("BomberYellow", wp25) - ns.TrapSpells(obj39, str44[ivar43], "", "") - goto LABEL5 -LABEL5: - ns.SetOwner(obj23, obj39) - ns.CreatureFollow(obj39, obj23) -LABEL1: - return -} -func Beholder13Recognize() { - ns.FrameTimer(90, Beholder13Bombers) -} -func Beholder13Die() { - ns.Damage(obj39, 0, 500, 0) -} -func Beholder14Bombers() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 int - ) - _ = v3 - _ = v2 - if !(ns.CurrentHealth(obj24) > 0 && ns.CurrentHealth(obj40) <= 0) { - goto LABEL1 - } - v0 = ns.GetObjectX(obj24) - v1 = ns.GetObjectY(obj24) - ns.MoveWaypoint(wp26, v0, v1) - ns.AudioEvent(ns.SummonCast, wp26) - v2 = ns.RandomFloat(fvar41, fvar42) - v3 = ns.RandomFloat(fvar41, fvar42) - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - ivar43 = ns.Random(0, 2) - v4 = ivar43 - if v4 == 0 { - goto LABEL2 - } - if v4 == 1 { - goto LABEL3 - } - if v4 == 2 { - goto LABEL4 - } - goto LABEL5 -LABEL2: - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj40 = ns.CreateObject("BomberBlue", wp25) - ns.TrapSpells(obj40, str44[ivar43], "", "") - goto LABEL5 -LABEL3: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj40 = ns.CreateObject("BomberGreen", wp25) - ns.TrapSpells(obj40, str44[ivar43], "", "") - goto LABEL5 -LABEL4: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj40 = ns.CreateObject("BomberYellow", wp25) - ns.TrapSpells(obj40, str44[ivar43], "", "") - goto LABEL5 -LABEL5: - ns.SetOwner(obj24, obj40) - ns.CreatureFollow(obj40, obj24) -LABEL1: - return -} -func Beholder14Recognize() { - ns.FrameTimer(90, Beholder14Bombers) -} -func Beholder14Die() { - ns.Damage(obj40, 0, 500, 0) -} -func OpenBlockPassage() { - ns.ObjectOff(ns.GetTrigger()) - ns.AudioEvent(ns.SpikeBlockMove, wp52) - ns.Move(obj45, wp48) - ns.Move(obj46, wp49) - ns.Move(obj47, wp51) -} -func SealBlockRoom() { - ns.ObjectOff(ns.GetTrigger()) - ns.AudioEvent(ns.SpikeBlockMove, wp50) - ns.Move(obj46, wp50) -} -func CagedAnimalDie() { - if flag53 { - goto LABEL1 - } - flag53 = true - ns.WallGroupBreak(gvar56) -LABEL1: - return -} -func UnlockBearCage() { - ns.ObjectOff(ns.GetTrigger()) - ns.UnlockDoor(obj54) - ns.UnlockDoor(obj55) -} -func PlayerDeath() { - ns.DeathScreen(8) -} -func FireFONTrap01() { - ns.CastSpellObjectLocation(ns.SPELL_FORCE_OF_NATURE, obj57, ns.GetWaypointX(wp69), ns.GetWaypointY(wp69)) - ns.CastSpellObjectLocation(ns.SPELL_FORCE_OF_NATURE, obj58, ns.GetWaypointX(wp70), ns.GetWaypointY(wp70)) - ns.SecondTimer(5, FireFONTrap01) -} -func EndFONSetpiece() { - ns.Frozen(ns.GetHost(), false) - ns.WideScreen(false) -} -func BearAttack() { - ns.EnchantOff(obj62, ns.ENCHANT_INVULNERABLE) - ns.AggressionLevel(obj62, 0.83) - ns.Attack(obj62, ns.GetHost()) - ns.FrameTimer(45, FireFONTrap01) -} -func InitializeFONtraps() { - obj57 = ns.Object("FON_Origin01") - obj58 = ns.Object("FON_Origin02") - obj59 = ns.Object("FON_Origin03") - obj60 = ns.Object("FON_Origin04") - obj61 = ns.Object("FON_Origin05") - obj62 = ns.Object("Bear01") - obj63 = ns.Object("SpikeTrapDoor01") - obj64 = ns.Object("SpikeTrapDoor02") - obj65 = ns.Object("SpikeTrapDoor03") - obj66 = ns.Object("SpikeTrapDoor04") - gvar68 = ns.ObjectGroup("SpikeGroup01") - wp69 = ns.Waypoint("FON_Target01") - wp70 = ns.Waypoint("FON_Target02") - wp71 = ns.Waypoint("FON_Target03") - wp72 = ns.Waypoint("FON_Target04") - wp73 = ns.Waypoint("FON_Target05") - wp74 = ns.Waypoint("SpikeTrapAudioOrigin") - ns.Enchant(obj62, ns.ENCHANT_INVULNERABLE, 0) -} -func StartFONSetpiece() { - ns.ObjectOff(ns.GetTrigger()) - ns.Frozen(ns.GetHost(), true) - ns.WideScreen(true) - ns.CreatureIdle(ns.GetHost()) - BearAttack() -} -func BearDie() { - ns.FrameTimer(60, EndFONSetpiece) -} -func BearInjured() { - ns.Damage(ns.GetTrigger(), 0, 300, 0) -} -func FireFONTrap02() { - ns.CastSpellObjectLocation(ns.SPELL_FORCE_OF_NATURE, obj59, ns.GetWaypointX(wp71), ns.GetWaypointY(wp71)) - ns.CastSpellObjectLocation(ns.SPELL_FORCE_OF_NATURE, obj60, ns.GetWaypointX(wp72), ns.GetWaypointY(wp72)) -} -func EnableSpikeTrap() { - ns.ObjectGroupOn(gvar68) - ns.AudioEvent(ns.FloorSpikesUp, wp74) - ns.LockDoor(obj63) - ns.LockDoor(obj64) - ns.LockDoor(obj65) - ns.LockDoor(obj66) - ns.ObjectOn(obj67) -} -func DisableSpikeTrap() { - ns.ObjectGroupOff(gvar68) - ns.AudioEvent(ns.FloorSpikesDown, wp74) - ns.UnlockDoor(obj63) - ns.UnlockDoor(obj64) - ns.UnlockDoor(obj65) - ns.UnlockDoor(obj66) - ns.ObjectOff(obj67) -} -func InitializeSummoningCircles() { - var v0 int - v0 = 0 - for { - if !(v0 < 21) { - goto LABEL1 - } - flag86[v0] = true - ivar85[v0] = 0 - v0 += 1 - } -LABEL1: - str88[0] = "UrchinShaman" - str88[1] = "Mimic" - str88[2] = "Bear" - str88[3] = "Urchin" - str88[4] = "Imp" - str88[5] = "WhiteWolf" - obj76 = ns.Object("SummoningCircleTreasureLight") - obj77[0] = ns.Object("SummoningCircleTreasure01") - obj77[1] = ns.Object("SummoningCircleTreasure02") - obj77[2] = ns.Object("SummoningCircleTreasure03") - obj77[3] = ns.Object("SummoningCircleTreasure04") - obj77[4] = ns.Object("SummoningCircleTreasure05") - obj77[5] = ns.Object("SummoningCircleTreasure06") - obj77[6] = ns.Object("SummoningCircleTreasure07") - obj77[7] = ns.Object("SummoningCircleTreasure08") - obj77[8] = ns.Object("SummoningCircleTreasure09") - obj77[9] = ns.Object("SummoningCircleTreasure10") - obj77[10] = ns.Object("SummoningCircleTreasure11") - obj77[11] = ns.Object("SummoningCircleTreasure12") - obj77[12] = ns.Object("SummoningCircleTreasure13") - obj77[13] = ns.Object("SummoningCircleTreasure14") - obj77[14] = ns.Object("SummoningCircleTreasure15") - wp87[0] = ns.Waypoint("SummoningCircle01WP") - wp87[1] = ns.Waypoint("SummoningCircle02WP") - wp87[2] = ns.Waypoint("SummoningCircle03WP") - wp87[3] = ns.Waypoint("SummoningCircle04WP") - wp87[4] = ns.Waypoint("SummoningCircle05WP") - wp87[5] = ns.Waypoint("SummoningCircle06WP") - wp87[6] = ns.Waypoint("SummoningCircle07WP") - wp87[7] = ns.Waypoint("SummoningCircle08WP") - wp87[8] = ns.Waypoint("SummoningCircle09WP") - wp87[9] = ns.Waypoint("SummoningCircle10WP") - wp87[10] = ns.Waypoint("SummoningCircle11WP") - wp87[11] = ns.Waypoint("SummoningCircle12WP") - wp87[12] = ns.Waypoint("SummoningCircle13WP") - wp87[13] = ns.Waypoint("SummoningCircle14WP") - wp87[14] = ns.Waypoint("SummoningCircle15WP") - wp87[15] = ns.Waypoint("SummoningCircle16WP") - wp87[16] = ns.Waypoint("SummoningCircle17WP") - wp87[17] = ns.Waypoint("SummoningCircle18WP") - wp87[18] = ns.Waypoint("SummoningCircle19WP") - wp87[19] = ns.Waypoint("SummoningCircle20WP") - wp87[20] = ns.Waypoint("SummoningCircle21WP") - gvar78[0] = ns.ObjectGroup("SummonCircle01Lights") - gvar78[1] = ns.ObjectGroup("SummonCircle02Lights") - gvar78[2] = ns.ObjectGroup("SummonCircle03Lights") - gvar78[3] = ns.ObjectGroup("SummonCircle04Lights") - gvar78[4] = ns.ObjectGroup("SummonCircle05Lights") - gvar78[5] = ns.ObjectGroup("SummonCircle06Lights") - gvar78[6] = ns.ObjectGroup("SummonCircle07Lights") - gvar78[7] = ns.ObjectGroup("SummonCircle08Lights") - gvar78[8] = ns.ObjectGroup("SummonCircle09Lights") - gvar78[9] = ns.ObjectGroup("SummonCircle10Lights") - gvar78[10] = ns.ObjectGroup("SummonCircle11Lights") - gvar78[11] = ns.ObjectGroup("SummonCircle12Lights") - gvar78[12] = ns.ObjectGroup("SummonCircle13Lights") - gvar78[13] = ns.ObjectGroup("SummonCircle14Lights") - gvar78[14] = ns.ObjectGroup("SummonCircle15Lights") - gvar78[15] = ns.ObjectGroup("SummonCircle16Lights") - gvar78[16] = ns.ObjectGroup("SummonCircle17Lights") - gvar78[17] = ns.ObjectGroup("SummonCircle18Lights") - gvar78[18] = ns.ObjectGroup("SummonCircle19Lights") - gvar78[19] = ns.ObjectGroup("SummonCircle20Lights") - gvar78[20] = ns.ObjectGroup("SummonCircle21Lights") -} -func MapInitialize() { - obj45 = ns.Object("StoneBlock01") - obj46 = ns.Object("StoneBlock02") - obj47 = ns.Object("StoneBlock03") - obj11 = ns.Object("Beholder01") - obj12 = ns.Object("Beholder02") - obj13 = ns.Object("Beholder03") - obj14 = ns.Object("Beholder04") - obj15 = ns.Object("Beholder05") - obj16 = ns.Object("Beholder06") - obj17 = ns.Object("Beholder07") - obj18 = ns.Object("Beholder08") - obj19 = ns.Object("Beholder09") - obj20 = ns.Object("Beholder10") - obj21 = ns.Object("Beholder11") - obj22 = ns.Object("Beholder12") - obj23 = ns.Object("Beholder13") - obj24 = ns.Object("Beholder14") - obj54 = ns.Object("CageGateL") - obj55 = ns.Object("CageGateR") - obj4 = ns.Object("UltimateArrowTrapSwitch") - wp9 = ns.Waypoint("ArrowTrapAudioOrigin") - obj67 = ns.Object("SpikeSFX") - wp48 = ns.Waypoint("StoneBlock01WP") - wp49 = ns.Waypoint("StoneBlock02WP") - wp50 = ns.Waypoint("StoneBlock02WP2") - wp51 = ns.Waypoint("StoneBlock03WP") - wp52 = ns.Waypoint("StoneBlockAudioOrigin") - wp25 = ns.Waypoint("BomberCreationWP") - wp26 = ns.Waypoint("BomberAudioOrigin") - wp75 = ns.Waypoint("SecretAudioOrigin") - gvar5 = ns.ObjectGroup("ArrowTrapGroup01") - gvar6 = ns.ObjectGroup("ArrowTrapGroup02") - gvar7 = ns.ObjectGroup("ArrowTrapGroup03") - gvar8 = ns.ObjectGroup("ArrowTrapGroup04") - gvar56 = ns.WallGroup("CageWalls") - ns.Wander(obj11) - ns.Wander(obj12) - ns.Wander(obj13) - ns.AggressionLevel(obj13, 0.83) - ns.Wander(obj14) - ns.AggressionLevel(obj14, 0.83) - ns.Wander(obj15) - ns.AggressionLevel(obj15, 0.83) - ns.Wander(obj16) - ns.AggressionLevel(obj16, 0.83) - ns.Wander(obj17) - ns.AggressionLevel(obj17, 0.83) - ns.Wander(obj18) - ns.AggressionLevel(obj18, 0.83) - ns.Wander(obj19) - ns.AggressionLevel(obj19, 0.83) - ns.Wander(obj20) - ns.AggressionLevel(obj20, 0.83) - ns.Wander(obj21) - ns.AggressionLevel(obj21, 0.83) - ns.Wander(obj22) - ns.AggressionLevel(obj22, 0.83) - ns.LockDoor(obj54) - ns.LockDoor(obj55) - InitializeBeholders() - InitializeSummoningCircles() - InitializeFONtraps() -} -func OpenPitElevatorWall() { - ns.ObjectOff(ns.GetTrigger()) - ns.WallOpen(ns.Wall(56, 134)) -} -func MonstersGoHome() { - r1 := ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) - if !r1 { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func SecretSFX() { - ns.MoveWaypoint(wp75, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretFound, wp75) -} -func BoulderSecretFound() { - ns.ObjectOff(ns.GetTrigger()) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 200) - SecretSFX() -} -func OpenBoulderSecret() { - ns.ObjectOff(ns.GetTrigger()) - ns.WallOpen(ns.Wall(104, 40)) - ns.AudioEvent(ns.SecretWallOpen, ns.Waypoint("BoulderSecretAudioOrigin")) - SecretSFX() -} -func SecretFound() { - ns.ObjectOff(ns.GetTrigger()) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 100) - SecretSFX() -} -func ResetSummonCircle(a1 int) { - flag86[a1] = true - ns.ObjectGroupOn(gvar78[a1]) -} -func SummoningCircleCleared(a1 int) { - ivar84 += 1 - if ivar84 != 15 { - goto LABEL1 - } - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 500) - ns.Effect(ns.BLUE_SPARKS, ns.GetWaypointX(wp87[a1]), ns.GetWaypointY(wp87[a1]), 0, 0) - ns.MoveObject(obj76, ns.GetWaypointX(wp87[a1]), ns.GetWaypointY(wp87[a1])) - ns.MoveObject(obj77[ivar84-1], ns.GetWaypointX(wp87[a1]), ns.GetWaypointY(wp87[a1])) - ns.AudioEvent(ns.SmallGong, wp87[a1]) - goto LABEL2 -LABEL1: - ns.Effect(ns.BLUE_SPARKS, ns.GetWaypointX(wp87[a1]), ns.GetWaypointY(wp87[a1]), 0, 0) - ns.MoveObject(obj76, ns.GetWaypointX(wp87[a1]), ns.GetWaypointY(wp87[a1])) - ns.MoveObject(obj77[ivar84-1], ns.GetWaypointX(wp87[a1]), ns.GetWaypointY(wp87[a1])) - ns.AudioEvent(ns.BigGong, wp87[a1]) -LABEL2: - return -} -func SummonCircle01Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 0 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle02Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 1 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle03Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 2 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle04Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 3 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle05Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 4 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle06Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 5 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle07Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 6 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle08Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 7 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle09Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 8 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle10Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 9 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle11Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 10 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle12Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 11 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle13Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 12 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle14Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 13 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle15Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 14 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle16Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 15 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle17Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 16 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle18Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 17 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle19Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 18 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle20Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 19 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle21Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 20 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapInitialize": - MapInitialize() - } -} diff --git a/examples/war08e/dummy_test.go b/examples/war08e/dummy_test.go deleted file mode 100644 index 0120ab3..0000000 --- a/examples/war08e/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package war08e - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/war08e/war08e.go b/examples/war08e/war08e.go deleted file mode 100644 index 1e7ed70..0000000 --- a/examples/war08e/war08e.go +++ /dev/null @@ -1,388 +0,0 @@ -package war08e - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 ns.ObjectID - obj5 ns.ObjectID - obj6 ns.ObjectID - obj7 ns.ObjectID - obj8 ns.ObjectID - wp9 ns.WaypointID - wp10 ns.WaypointID - wp11 ns.WaypointID - wp12 ns.WaypointID - wp13 ns.WaypointID - obj14 ns.ObjectID - obj15 ns.ObjectID - obj16 ns.ObjectID - obj17 ns.ObjectID - obj18 ns.ObjectID - obj19 ns.ObjectID - obj20 ns.ObjectID - obj21 ns.ObjectID - obj22 ns.ObjectID - obj23 ns.ObjectID - obj24 ns.ObjectID - gvar25 ns.ObjectGroupID - gvar26 ns.ObjectGroupID - gvar27 ns.WallGroupID - gvar28 ns.WallGroupID - gvar29 ns.WallGroupID - gvar30 ns.WallGroupID - wp31 ns.WaypointID - wp32 ns.WaypointID - wp33 ns.WaypointID - wp34 ns.WaypointID - wp35 ns.WaypointID - wp36 ns.WaypointID - wp37 ns.WaypointID - wp38 ns.WaypointID - wp39 ns.WaypointID - wp40 ns.WaypointID - gvar41 int - gvar42 int - gvar43 int - gvar44 int - gvar45 int - gvar46 int - gvar47 int - gvar48 int - gvar49 int - obj50 ns.ObjectID - obj51 ns.ObjectID - flag52 bool - flag53 bool - flag54 bool - flag55 bool - flag56 bool - wp57 ns.WaypointID - flag58 bool -) - -func init() { - gvar41 = 0 - gvar42 = 1 - gvar43 = 2 - gvar44 = 3 - gvar45 = 4 - gvar46 = 5 - gvar47 = 6 - gvar48 = gvar41 - gvar49 = gvar46 - flag52 = false - flag53 = false - flag54 = false - flag55 = false - flag56 = false - flag58 = false -} -func PlayerDeath() { - ns.DeathScreen(8) -} -func FireFONTrap01() { - ns.CastSpellObjectLocation(ns.SPELL_FORCE_OF_NATURE, obj4, ns.GetWaypointX(wp9), ns.GetWaypointY(wp9)) - ns.CastSpellObjectLocation(ns.SPELL_FORCE_OF_NATURE, obj5, ns.GetWaypointX(wp10), ns.GetWaypointY(wp10)) - ns.CastSpellObjectLocation(ns.SPELL_FORCE_OF_NATURE, obj6, ns.GetWaypointX(wp11), ns.GetWaypointY(wp11)) - ns.CastSpellObjectLocation(ns.SPELL_FORCE_OF_NATURE, obj7, ns.GetWaypointX(wp12), ns.GetWaypointY(wp12)) - ns.SecondTimer(5, FireFONTrap01) -} -func InitializeFONtraps() { - obj4 = ns.Object("FON_Origin01") - obj5 = ns.Object("FON_Origin02") - obj6 = ns.Object("FON_Origin03") - obj7 = ns.Object("FON_Origin04") - obj8 = ns.Object("FON_Origin05") - wp9 = ns.Waypoint("FON_Target01") - wp10 = ns.Waypoint("FON_Target02") - wp11 = ns.Waypoint("FON_Target03") - wp12 = ns.Waypoint("FON_Target04") - wp13 = ns.Waypoint("FON_Target05") - FireFONTrap01() -} -func OpenFONSecret() { - ns.ObjectOff(ns.GetTrigger()) - ns.AudioEvent(ns.SecretWallOpen, ns.Waypoint("FonSecretWP")) - ns.WallOpen(ns.Wall(44, 122)) -} -func MapInitialize() { - obj14 = ns.Object("MoverA1") - obj15 = ns.Object("MoverA2") - obj16 = ns.Object("MoverA3") - obj17 = ns.Object("MoverB1") - obj18 = ns.Object("MoverB2") - obj19 = ns.Object("MoverB3") - obj20 = ns.Object("Priest01") - obj21 = ns.Object("Priest02") - obj22 = ns.Object("Imp01") - obj23 = ns.Object("Imp02") - obj24 = ns.Object("WierdlingPool") - wp31 = ns.Waypoint("GolemWP_A") - wp32 = ns.Waypoint("GolemWP_B") - wp33 = ns.Waypoint("Priest01WP") - wp34 = ns.Waypoint("Priest02WP") - wp35 = ns.Waypoint("Priest1Home") - wp36 = ns.Waypoint("Priest2Home") - wp37 = ns.Waypoint("Priest1ExitWP") - wp38 = ns.Waypoint("Priest2ExitWP") - wp39 = ns.Waypoint("ImpCreationWP") - wp40 = ns.Waypoint("WierdlingPoolWP") - gvar25 = ns.ObjectGroup("GolemLights") - gvar26 = ns.ObjectGroup("GolemHandleTriggers") - gvar27 = ns.WallGroup("GolemArenaEntranceWalls") - gvar28 = ns.WallGroup("GolemArenaExitWalls") - gvar29 = ns.WallGroup("WierdlingExitWalls") - gvar30 = ns.WallGroup("AldwynElevatorWalls") - ns.SetOwner(ns.GetHost(), obj20) - ns.SetOwner(ns.GetHost(), obj21) - InitializeFONtraps() -} -func OpenElevatorWalls() { - ns.ObjectOff(ns.GetTrigger()) - ns.WallGroupOpen(gvar30) -} -func NoMonsters() { - r1 := ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) - if !r1 { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func PlaySub1Music() { - ns.Music(18, 100) -} -func PlaySub2Music() { - ns.Music(19, 100) -} -func SecretFound() { - ns.ObjectOff(ns.GetTrigger()) - ns.MoveWaypoint(ns.Waypoint("FonSecretWP"), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretFound, ns.Waypoint("FonSecretWP")) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 200) -} -func PriestReport() { - var v0 int - v0 = gvar48 - if v0 == gvar42 { - goto LABEL1 - } - if v0 == gvar43 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - if !ns.IsTrigger(obj22) { - goto LABEL4 - } - flag53 = true - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(obj22), ns.GetObjectY(obj22), 0, 0) - ns.MoveObject(obj20, ns.GetObjectX(obj22), ns.GetObjectY(obj22)) - ns.AudioEvent(ns.ImpRecognize, wp57) - ns.Delete(obj22) -LABEL4: - if !ns.IsTrigger(obj23) { - goto LABEL5 - } - flag54 = true - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(obj23), ns.GetObjectY(obj23), 0, 0) - ns.MoveObject(obj21, ns.GetObjectX(obj23), ns.GetObjectY(obj23)) - ns.AudioEvent(ns.ImpRecognize, wp57) - ns.Delete(obj23) -LABEL5: - if !flag53 { - goto LABEL6 - } - if !flag54 { - goto LABEL6 - } - gvar48 = gvar44 - ns.FrameTimer(30, SummonGolems) -LABEL6: - goto LABEL3 -LABEL2: - if !ns.IsTrigger(obj22) { - goto LABEL7 - } - flag55 = true -LABEL7: - if !ns.IsTrigger(obj23) { - goto LABEL8 - } - flag56 = true -LABEL8: - if !(flag55 && flag56) { - goto LABEL9 - } - ns.WallGroupClose(gvar28) - gvar48 = gvar45 - ns.Delete(obj22) - ns.Delete(obj23) -LABEL9: - goto LABEL3 -LABEL3: - return -} -func GolemDie() { - if !(ns.CurrentHealth(obj50) <= 0 && ns.CurrentHealth(obj51) <= 0) { - goto LABEL1 - } - ns.GiveXp(ns.GetHost(), 1000) - ns.WallGroupOpen(gvar28) - ns.AudioEvent(ns.BigGong, wp33) - ns.AudioEvent(ns.BigGong, wp34) -LABEL1: - return -} -func GolemsAttack() { - ns.Attack(obj50, ns.GetHost()) - ns.Attack(obj51, ns.GetHost()) -} -func RemoveLetterbox() { - ns.WideScreen(false) - ns.Delete(obj22) - ns.Delete(obj23) - ns.Frozen(ns.GetHost(), false) - ns.Music(27, 100) - ns.FrameTimer(45, GolemsAttack) -} -func ImpsExit() { - ns.Move(obj22, wp37) - ns.Move(obj23, wp38) -} -func PriestsExit() { - gvar48 = gvar43 - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(obj20), ns.GetObjectY(obj20), 0, 0) - ns.MoveWaypoint(wp39, ns.GetObjectX(obj20), ns.GetObjectY(obj20)) - obj22 = ns.CreateObject("Imp", wp39) - ns.AudioEvent(ns.ImpRecognize, wp39) - ns.MoveObject(obj20, ns.GetWaypointX(wp35), ns.GetWaypointY(wp35)) - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(obj21), ns.GetObjectY(obj21), 0, 0) - ns.MoveWaypoint(wp39, ns.GetObjectX(obj21), ns.GetObjectY(obj21)) - obj23 = ns.CreateObject("Imp", wp39) - ns.MoveObject(obj21, ns.GetWaypointX(wp36), ns.GetWaypointY(wp36)) - ns.SetOwner(ns.GetHost(), obj22) - ns.SetOwner(ns.GetHost(), obj23) - ns.AggressionLevel(obj22, 0) - ns.AggressionLevel(obj23, 0) - ns.SetCallback(obj22, 11, PriestReport) - ns.SetCallback(obj23, 11, PriestReport) - ns.FrameTimer(1, ImpsExit) -} -func GetGolemHandles() { - var v0 int - if !(flag52 || ns.IsCaller(obj22) || ns.IsCaller(obj23)) { - goto LABEL1 - } - return -LABEL1: - v0 = gvar49 - if v0 == gvar46 { - goto LABEL2 - } - if v0 == gvar47 { - goto LABEL3 - } - goto LABEL4 -LABEL2: - ns.ObjectOff(ns.GetTrigger()) - ns.DestroyEveryChat() - obj50 = ns.GetCaller() - ns.SetCallback(obj50, 5, GolemDie) - ns.ClearOwner(obj20) - ns.CreatureIdle(obj50) - ns.ClearOwner(obj50) - ns.AggressionLevel(obj50, 0) - gvar49 = gvar47 - goto LABEL5 -LABEL3: - ns.ObjectOff(ns.GetTrigger()) - ns.DestroyEveryChat() - obj51 = ns.GetCaller() - ns.SetCallback(obj51, 5, GolemDie) - ns.ClearOwner(obj21) - ns.ClearOwner(obj51) - ns.CreatureIdle(obj51) - ns.AggressionLevel(obj51, 0) - ns.LookAtObject(obj50, ns.GetHost()) - ns.LookAtObject(obj51, ns.GetHost()) - flag52 = true - ns.AggressionLevel(obj50, 0.83) - ns.AggressionLevel(obj51, 0.83) - RemoveLetterbox() - goto LABEL5 -LABEL4: - goto LABEL5 -LABEL5: - return -} -func SummonGolems() { - ns.CastSpellObjectLocation(ns.SPELL_SUMMON_STONE_GOLEM, obj20, ns.GetWaypointX(wp31), ns.GetWaypointY(wp31)) - ns.CastSpellObjectLocation(ns.SPELL_SUMMON_STONE_GOLEM, obj21, ns.GetWaypointX(wp32), ns.GetWaypointY(wp32)) - ns.AudioEvent(ns.SummonCast, wp33) - ns.AudioEvent(ns.SummonCast, wp34) - ns.ObjectGroupOn(gvar26) - ns.ObjectGroupOff(gvar25) - ns.FrameTimer(60, PriestsExit) -} -func ImpsEnter() { - ns.WallGroupOpen(gvar28) - ns.Move(obj22, wp33) - ns.Move(obj23, wp34) -} -func GolemSetPiece() { - if gvar48 == gvar41 { - goto LABEL1 - } - return -LABEL1: - if !ns.IsCaller(ns.GetHost()) { - goto LABEL2 - } - ns.MusicPushEvent() - ns.Music(10, 100) - wp57 = ns.Waypoint("GolemSP_AudioOrigin") - ns.MoveWaypoint(wp57, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - gvar48 = gvar42 - ns.WallGroupClose(gvar27) - ns.Frozen(ns.GetHost(), true) - ns.CreatureIdle(ns.GetHost()) - ns.WideScreen(true) - ns.SetOwner(ns.GetHost(), obj22) - ns.SetOwner(ns.GetHost(), obj23) - ns.FrameTimer(15, ImpsEnter) -LABEL2: - return -} -func RetrieveWierdling() { - if !flag58 { - goto LABEL1 - } - return -LABEL1: - if !ns.IsCaller(ns.GetHost()) { - goto LABEL2 - } - ns.MusicPopEvent() - ns.SetQuestStatus(1, "Chapter8:HasWeirdling") - flag58 = true - ns.SetHalberd(2) - ns.ObjectOff(obj24) - ns.WallGroupOpen(gvar29) - ns.JournalEdit(ns.GetHost(), "Chapter8Wierdling", 4) - ns.PrintToAll("Con02a:ObjectiveComplete") - ns.JournalEntry(ns.GetHost(), "Chapter8MeetCaptain", 2) - ns.PrintToAll("Con01a:NewJournalEntry") -LABEL2: - return -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapInitialize": - MapInitialize() - } -} diff --git a/examples/war09a/dummy_test.go b/examples/war09a/dummy_test.go deleted file mode 100644 index b4c43f5..0000000 --- a/examples/war09a/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package war09a - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/war09a/war09a.go b/examples/war09a/war09a.go deleted file mode 100644 index 330557e..0000000 --- a/examples/war09a/war09a.go +++ /dev/null @@ -1,742 +0,0 @@ -package war09a - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 [2]ns.ObjectID - wp5 [2]ns.WaypointID - gvar6 ns.WallGroupID - wp7 [5]ns.WaypointID - wp8 [6]ns.WaypointID - obj9 [6]ns.ObjectID - gvar10 int - ivar11 int - ivar12 int - gvar13 int - flag14 bool - flag15 bool - flag16 bool - fvar17 float32 - fvar18 float32 - obj19 ns.ObjectID - obj20 ns.ObjectID - obj21 ns.ObjectID - obj22 ns.ObjectID - obj23 ns.ObjectID - obj24 ns.ObjectID - obj25 ns.ObjectID - obj26 ns.ObjectID - obj27 ns.ObjectID - obj28 ns.ObjectID - obj29 ns.ObjectID - obj30 ns.ObjectID - gvar31 ns.ObjectGroupID - gvar32 ns.ObjectGroupID - gvar33 ns.ObjectGroupID - gvar34 ns.ObjectGroupID - gvar35 ns.ObjectGroupID - gvar36 ns.ObjectGroupID - gvar37 ns.ObjectGroupID - gvar38 ns.WallGroupID - gvar39 ns.WallGroupID - gvar40 ns.WallGroupID - gvar41 ns.WallGroupID - gvar42 ns.WallGroupID - gvar43 ns.WallGroupID - gvar44 ns.WallGroupID - wp45 ns.WaypointID - wp46 ns.WaypointID - wp47 ns.WaypointID - wp48 ns.WaypointID - wp49 ns.WaypointID - flag50 bool - flag51 bool - gvar52 int - gvar53 int - gvar54 int - gvar55 int - gvar56 int - gvar57 int - gvar58 int - gvar59 int - gvar60 int - gvar61 int - flag62 bool - gvar63 int - gvar64 int - gvar65 int - gvar66 int - gvar67 int - gvar68 int - ivar69 int - ivar70 int - obj71 [8]ns.ObjectID - wp72 [8]ns.WaypointID - gvar73 [8]int - ivar74 [8]int - gvar75 [8]ns.TimerID -) - -func init() { - gvar10 = 0 - gvar13 = 0 - flag14 = false - flag15 = false - flag16 = false - flag50 = false - flag51 = false - gvar52 = 0 - gvar53 = 1 - gvar54 = 2 - gvar55 = 3 - gvar56 = 4 - gvar57 = 5 - gvar58 = 6 - gvar60 = gvar52 - gvar61 = gvar55 - flag62 = false - gvar63 = 0 - gvar64 = 1 - gvar65 = 2 - gvar66 = 3 - gvar67 = 4 - gvar68 = 5 - ivar69 = 15 - ivar70 = 2 -} -func PlantBarrier() { - ivar11 = 0 - for { - if !(ivar11 < 6) { - goto LABEL1 - } - CreatePlant(ivar11) - ivar11 += 1 - } -LABEL1: - return -} -func CreatePlant(a1 int) { - obj9[a1] = ns.CreateObject("CarnivorousPlant", wp8[a1]) - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(obj9[a1]), ns.GetObjectY(obj9[a1]), 0, 0) - ns.LookAtObject(obj9[a1], ns.GetHost()) - ns.SetOwner(obj4[0], obj9[a1]) - ns.SetCallback(obj9[a1], 7, AttackBack) -} -func CheckPlants() { - if !(flag15 == false || flag16 == false) { - goto LABEL1 - } - ivar11 = 0 - for { - if !(ivar11 < 6) { - goto LABEL2 - } - if !(ns.CurrentHealth(obj9[ivar11]) <= 0) { - goto LABEL3 - } - ns.FrameTimerWithArg(14, ivar11, PlantDie) - LABEL3: - ivar11 += 1 - } -LABEL2: - ns.FrameTimer(15, CheckPlants) -LABEL1: - return -} -func PlantDie(a1 int) { - if !(flag15 == false || flag16 == false) { - goto LABEL1 - } - ns.Delete(obj9[a1]) - CreatePlant(a1) -LABEL1: - return -} -func AttackBack() { - if ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Attack(ns.GetTrigger(), ns.GetCaller()) -LABEL1: - return -} -func PlayAction() { - ns.Music(26, 100) -} -func PlaySwamp() { - ns.Music(29, 100) -} -func DryadHuntPlayer() { - ns.CreatureHunt(ns.GetTrigger()) -} -func StartDryadSequence() { - var v0 int - if !(ns.IsCaller(ns.GetHost()) && flag14 == false) { - goto LABEL1 - } - flag14 = true - ns.SetOwner(obj4[0], obj4[1]) - ns.MusicPushEvent() - PlayAction() - ns.NoWallSound(true) - ns.WallGroupClose(gvar6) - ns.NoWallSound(false) - v0 = 0 - for { - if !(v0 < 2) { - goto LABEL2 - } - ns.ObjectOn(obj4[v0]) - ns.Enchant(obj4[v0], ns.ENCHANT_INVISIBLE, 1) - ns.MoveObject(obj4[v0], ns.GetWaypointX(wp5[v0]), ns.GetWaypointY(wp5[v0])) - ns.Effect(ns.BLUE_SPARKS, ns.GetWaypointX(wp5[v0]), ns.GetWaypointY(wp5[v0]), 0, 0) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp5[v0]), ns.GetWaypointY(wp5[v0]), 0, 0) - v0 += 1 - } -LABEL2: - PlantBarrier() - ns.FrameTimer(1, CheckPlants) -LABEL1: - return -} -func DryadDie() { - if !ns.IsTrigger(obj4[0]) { - goto LABEL1 - } - flag15 = true -LABEL1: - if !ns.IsTrigger(obj4[1]) { - goto LABEL2 - } - flag16 = true -LABEL2: - if !(flag15 == true && flag16 == true) { - goto LABEL3 - } - ns.NoWallSound(true) - ns.WallGroupOpen(gvar6) - ns.NoWallSound(false) - ns.MusicPopEvent() -LABEL3: - return -} -func DryadStay() { - if !(ns.IsCaller(obj4[0]) || ns.IsCaller(obj4[1])) { - goto LABEL1 - } - ivar12 = ns.Random(0, 4) - fvar17 = ns.GetWaypointX(wp7[ivar12]) - fvar18 = ns.GetWaypointY(wp7[ivar12]) - ns.Enchant(ns.GetCaller(), ns.ENCHANT_INVISIBLE, 1.5) - ns.Effect(ns.BLUE_SPARKS, ns.GetObjectX(ns.GetCaller()), ns.GetObjectY(ns.GetCaller()), 0, 0) - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(ns.GetCaller()), ns.GetObjectY(ns.GetCaller()), 0, 0) - ns.MoveObject(ns.GetCaller(), fvar17, fvar18) - ns.Effect(ns.BLUE_SPARKS, fvar17, fvar18, 0, 0) - ns.Effect(ns.SMOKE_BLAST, fvar17, fvar18, 0, 0) -LABEL1: - return -} -func PlayerDeath() { - ns.DeathScreen(9) -} -func CaptainDialogStart() { - var v0 int - v0 = gvar60 - if v0 == gvar52 { - goto LABEL1 - } - if v0 == gvar53 { - goto LABEL2 - } - if v0 == gvar54 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - ns.TellStory(ns.SwordsmanHurt, "War09a:CaptainGreet") - goto LABEL4 -LABEL2: - ns.TellStory(ns.SwordsmanHurt, "War09a:CaptainLeave") - goto LABEL4 -LABEL3: - ns.TellStory(ns.SwordsmanHurt, "War09a:CaptainImpatient") - goto LABEL4 -LABEL4: - return -} -func CaptainDialogEnd() { - var v0 int - v0 = gvar60 - if v0 == gvar52 { - goto LABEL1 - } - if v0 == gvar53 { - goto LABEL2 - } - if v0 == gvar54 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - ns.JournalEntry(ns.GetHost(), "FindMordwyn", 2) - ns.JournalEntry(ns.GetHost(), "FindOutpost", 2) - ns.PrintToAll("Con01a:NewJournalEntry") - PlaySwamp() - gvar60 = gvar53 - goto LABEL4 -LABEL2: - gvar60 = gvar54 - goto LABEL4 -LABEL3: - goto LABEL4 -LABEL4: - return -} -func MordwynDialogStart() { - var v0 int - v0 = gvar61 - if v0 == gvar55 { - goto LABEL1 - } - if v0 == gvar56 { - goto LABEL2 - } - if v0 == gvar57 { - goto LABEL3 - } - if v0 == gvar58 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - ns.LookAtObject(obj19, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War09a:MordwynGreet") - goto LABEL5 -LABEL2: - ns.LookAtObject(obj19, ns.GetHost()) - ns.WideScreen(true) - ns.Frozen(ns.GetHost(), true) - ns.TellStory(ns.SwordsmanHurt, "War09a:MordwynHome") - goto LABEL5 -LABEL3: - ns.LookAtObject(obj19, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War09a:MordwynHome2") - goto LABEL5 -LABEL4: - ns.LookAtObject(obj19, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War09a:MordwynDone") - goto LABEL5 -LABEL5: - return -} -func MordwynDialogEnd() { - var v0 int - v0 = gvar61 - if v0 == gvar55 { - goto LABEL1 - } - if v0 == gvar56 { - goto LABEL2 - } - if v0 == gvar57 { - goto LABEL3 - } - if v0 == gvar58 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - gvar61 = gvar56 - ns.WideScreen(false) - ns.Frozen(ns.GetHost(), false) - ns.JournalEdit(ns.GetHost(), "FindMordwyn", 4) - ns.CancelDialog(obj19) - ns.SetCallback(obj19, 11, AllowDialog) - ns.Move(obj19, wp46) - goto LABEL5 -LABEL2: - gvar61 = gvar57 - ns.SetCallback(obj19, 11, GetArmorOfJandor) - ns.Move(obj19, wp47) - goto LABEL5 -LABEL3: - gvar61 = gvar58 - ns.WideScreen(false) - ns.Frozen(ns.GetHost(), false) - ns.CreatureGuard(obj19, ns.GetWaypointX(wp46), ns.GetWaypointY(wp46), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - ns.SetCallback(obj19, 11, NullFunction) - ns.Pickup(ns.GetHost(), obj23) - ns.Pickup(ns.GetHost(), obj24) - ns.PrintToAll("War09a:GainedArmor") - goto LABEL5 -LABEL4: - goto LABEL5 -LABEL5: - return -} -func StartCaptainConversation() { - ns.SetDialog(obj20, ns.NORMAL, CaptainDialogStart, CaptainDialogEnd) - ns.StartDialog(obj20, ns.GetHost()) -} -func WispInitialize() { - obj71[0] = ns.Object("Wisp0") - gvar73[0] = gvar63 - wp72[0] = ns.Waypoint("Wisp0Dest") - obj71[1] = ns.Object("Wisp1") - gvar73[1] = gvar63 - wp72[1] = ns.Waypoint("Wisp1Dest") -} -func MapInitialize() { - obj20 = ns.Object("Jandor") - obj21 = ns.Object("Basket") - obj22 = ns.Object("BasketShadow") - obj19 = ns.Object("Mordwyn") - obj24 = ns.Object("JHelm") - obj23 = ns.Object("JBreast") - obj25 = ns.Object("PitElev01") - obj26 = ns.Object("PitElev02") - obj27 = ns.Object("PitElev03") - obj28 = ns.Object("TreasureTrap01") - obj29 = ns.Object("TreasureTrap01Light") - obj30 = ns.Object("Secret02Trigger") - obj4[0] = ns.Object("Dryad0") - obj4[1] = ns.Object("Dryad1") - gvar38 = ns.WallGroup("Surprise00Walls") - gvar39 = ns.WallGroup("Surprise00DestWalls") - gvar40 = ns.WallGroup("Surprise01Walls") - gvar41 = ns.WallGroup("Surprise01DWalls") - gvar42 = ns.WallGroup("Surprise02Walls") - gvar43 = ns.WallGroup("Surprise02DestWalls") - gvar44 = ns.WallGroup("TreasureTrap01Walls") - gvar6 = ns.WallGroup("DryadWalls") - gvar33 = ns.ObjectGroup("Surprise00Triggers") - gvar32 = ns.ObjectGroup("Surprise00Creatures") - gvar34 = ns.ObjectGroup("Surprise01Creatures") - gvar35 = ns.ObjectGroup("Surprise01Triggers") - gvar31 = ns.ObjectGroup("MordwynTriggers") - gvar36 = ns.ObjectGroup("TreasureTrap01Zombies") - gvar37 = ns.ObjectGroup("Secret01Triggers") - wp45 = ns.Waypoint("TalkToPlayer") - wp46 = ns.Waypoint("MordwynHome") - wp47 = ns.Waypoint("MordwynBedroom") - wp5[0] = ns.Waypoint("DryadHome0") - wp5[1] = ns.Waypoint("DryadHome1") - wp7[0] = ns.Waypoint("DryadWarp0") - wp7[1] = ns.Waypoint("DryadWarp1") - wp7[2] = ns.Waypoint("DryadWarp2") - wp7[3] = ns.Waypoint("DryadWarp3") - wp7[4] = ns.Waypoint("DryadWarp4") - wp8[0] = ns.Waypoint("PlantLoc0") - wp8[1] = ns.Waypoint("PlantLoc1") - wp8[2] = ns.Waypoint("PlantLoc2") - wp8[3] = ns.Waypoint("PlantLoc3") - wp8[4] = ns.Waypoint("PlantLoc4") - wp8[5] = ns.Waypoint("PlantLoc5") - wp48 = ns.Waypoint("WellWP") - wp49 = ns.Waypoint("PlayerSounds") - ns.UnBlind() - WispInitialize() - ns.StoryPic(obj20, "AirshipCaptainPic") - ns.StoryPic(obj19, "MordwynPic") - ns.SetDialog(obj19, ns.NORMAL, MordwynDialogStart, MordwynDialogEnd) - ns.StartupScreen(9) - ns.Music(0, 100) - ns.FrameTimer(5, StartCaptainConversation) - ns.ObjectOn(ns.Object("StayHere1")) - ns.Move(ns.Object("StayHere1"), ns.Waypoint("Here1")) - ns.ObjectOn(ns.Object("StayHere2")) - ns.Move(ns.Object("StayHere2"), ns.Waypoint("Here2")) - ns.ObjectOn(ns.Object("StayHere3")) - ns.Move(ns.Object("StayHere3"), ns.Waypoint("Here3")) - ns.ObjectOn(ns.Object("StayHere4")) - ns.Move(ns.Object("StayHere4"), ns.Waypoint("Here4")) - ns.ObjectOn(ns.Object("StayHere5")) - ns.Move(ns.Object("StayHere5"), ns.Waypoint("Here5")) -} -func MordwynGreet() { - ns.LookAtObject(obj19, ns.GetHost()) - ns.StartDialog(obj19, ns.GetHost()) - ns.SetCallback(obj19, 11, NullFunction) -} -func GetArmorOfJandor() { - ns.PauseObject(obj19, 75) - ns.SetCallback(obj19, 11, GiveArmorToPlayer) - ns.Move(obj19, wp46) -} -func GiveArmorToPlayer() { - ns.LookAtObject(obj19, ns.GetHost()) - ns.StartDialog(obj19, ns.GetHost()) -} -func KeepOut() { - r1 := ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) - if !r1 { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func CapTakeoff() { - if !(ns.IsCaller(ns.GetHost()) && flag51 == false) { - goto LABEL1 - } - flag51 = true - ns.Delete(obj21) - ns.Delete(obj22) - ns.Delete(obj20) -LABEL1: - return -} -func NullFunction() { -} -func MordwynMove() { - ns.ObjectGroupOff(gvar31) - ns.ObjectOn(obj19) - ns.SetOwner(ns.GetHost(), obj19) - ns.WideScreen(true) - ns.Frozen(ns.GetHost(), true) - ns.Move(obj19, wp45) -} -func AllowDialog() { - ns.CreatureGuard(obj19, ns.GetWaypointX(wp46), ns.GetWaypointY(wp46), ns.GetWaypointX(wp45), ns.GetWaypointY(wp45), 0) - ns.SetDialog(obj19, ns.NORMAL, MordwynDialogStart, MordwynDialogEnd) -} -func Surprise00() { - ns.ObjectGroupOff(gvar33) - ns.NoWallSound(true) - ns.WallGroupOpen(gvar38) - ns.NoWallSound(false) - ns.WallGroupBreak(gvar39) - ns.ObjectGroupOn(gvar32) - ns.GroupWander(gvar32) -} -func Surprise01() { - ns.ObjectGroupOff(gvar35) - ns.NoWallSound(true) - ns.WallGroupOpen(gvar40) - ns.NoWallSound(false) - ns.WallGroupBreak(gvar41) - ns.ObjectGroupOn(gvar34) -} -func Secret01Declare() { - ns.ObjectGroupOff(gvar37) - ns.MoveWaypoint(wp49, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.AudioEvent(ns.SecretFound, wp49) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 100) -} -func Secret02Declare() { - ns.PrintToAll("GeneralPrint:SecretFound") - ns.MoveWaypoint(wp49, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.AudioEvent(ns.SecretFound, wp49) - ns.GiveXp(ns.GetHost(), 100) -} -func EnablePitElev01() { - ns.ObjectOn(obj25) -} -func EnablePitElev02() { - ns.ObjectOn(obj26) -} -func EnablePitElev03() { - ns.ObjectOn(obj27) -} -func TriggerTreasureTrap() { - ns.WallGroupBreak(gvar44) - ns.ObjectOff(obj29) - ns.GroupAggressionLevel(gvar36, 0.83) - ns.GroupWander(gvar36) -} -func MapEntry() { - ns.NoWallSound(false) -} -func whichWisp(a1 ns.ObjectID) int { - var v0 int - v0 = 0 - for { - if !(v0 < ivar70) { - goto LABEL1 - } - if obj71[v0] != a1 { - goto LABEL2 - } - return v0 - LABEL2: - v0 += 1 - } -LABEL1: - return -1 - return 1 -} -func WispAction(a1 int) { - var ( - v0 float32 - v1 int - ) - v1 = gvar73[a1] - if v1 == gvar64 { - goto LABEL1 - } - if v1 == gvar66 { - goto LABEL2 - } - if v1 == gvar65 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - v0 = ns.Distance(ns.GetObjectX(obj71[a1]), ns.GetObjectY(obj71[a1]), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - if !(v0 < 70) { - goto LABEL5 - } - gvar73[a1] = gvar65 - ns.Move(obj71[a1], wp72[a1]) -LABEL5: - goto LABEL4 -LABEL2: - ns.LookAtObject(obj71[a1], ns.GetHost()) - ivar74[a1] += 1 - if !(ivar74[a1] > 4) { - goto LABEL6 - } - gvar73[a1] = gvar64 - ns.CreatureFollow(obj71[a1], ns.GetHost()) -LABEL6: - goto LABEL4 -LABEL3: - v0 = ns.Distance(ns.GetObjectX(obj71[a1]), ns.GetObjectY(obj71[a1]), ns.GetWaypointX(wp72[a1]), ns.GetWaypointY(wp72[a1])) - if !(v0 < 30) { - goto LABEL7 - } - gvar73[a1] = gvar67 - ns.CreatureIdle(obj71[a1]) - return -LABEL7: - goto LABEL4 -LABEL4: - ns.FrameTimerWithArg(ivar69, a1, WispAction) -} -func WispRecognize() { - var ( - v0 int - v1 int - ) - if ns.HasClass(ns.GetCaller(), ns.PLAYER) { - goto LABEL1 - } - return -LABEL1: - v0 = whichWisp(ns.GetTrigger()) - if !(v0 < 0) { - goto LABEL2 - } - return -LABEL2: - v1 = gvar73[v0] - if v1 == gvar63 { - goto LABEL3 - } - if v1 == gvar66 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - gvar73[v0] = gvar64 - ns.CreatureFollow(ns.GetTrigger(), ns.GetCaller()) - gvar75[v0] = ns.FrameTimerWithArg(ivar69, v0, WispAction) - goto LABEL5 -LABEL4: - gvar73[v0] = gvar65 - ns.Move(ns.GetTrigger(), wp72[v0]) - goto LABEL5 -LABEL5: - return -} -func WispLoseSight() { - var ( - v0 int - v1 int - ) - if ns.HasClass(ns.GetCaller(), ns.PLAYER) { - goto LABEL1 - } - return -LABEL1: - v0 = whichWisp(ns.GetTrigger()) - if !(v0 < 0) { - goto LABEL2 - } - return -LABEL2: - v1 = gvar73[v0] - if v1 == gvar65 { - goto LABEL3 - } - goto LABEL4 -LABEL3: - gvar73[v0] = gvar66 - ivar74[v0] = 0 - ns.CreatureIdle(ns.GetTrigger()) - goto LABEL4 -LABEL4: - return -} -func WispGetMad() { - var v0 int - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.AggressionLevel(ns.GetTrigger(), 0.83) - ns.CreatureIdle(ns.GetTrigger()) - v0 = whichWisp(ns.GetTrigger()) - if !(v0 >= 0) { - goto LABEL1 - } - gvar73[v0] = gvar68 - ns.CancelTimer(gvar75[v0]) -LABEL1: - return -} -func WispMedieval() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.AggressionLevel(ns.GetTrigger(), 0.83) - ns.CreatureIdle(ns.GetTrigger()) -LABEL1: - return -} -func MakeAWish() { - var v0 int - v0 = ns.MaxHealth(ns.GetCaller()) - ns.RestoreHealth(ns.GetCaller(), v0-ns.CurrentHealth(ns.GetCaller())) - ns.PrintToAll("GeneralPrint:WellSignRefresh") - ns.AudioEvent(ns.RestoreHealthName, wp48) -} -func PlayMordwyn() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Music(21, 100) -LABEL1: - return -} -func PlayOgre() { - ns.Music(7, 100) -} -func PlayCaves() { - ns.Music(18, 100) -} -func PlayWasteland() { - ns.Music(19, 100) -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapInitialize": - MapInitialize() - case "MapEntry": - MapEntry() - } -} diff --git a/examples/war09b/dummy_test.go b/examples/war09b/dummy_test.go deleted file mode 100644 index a44fe09..0000000 --- a/examples/war09b/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package war09b - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/war09b/war09b.go b/examples/war09b/war09b.go deleted file mode 100644 index 86659e8..0000000 --- a/examples/war09b/war09b.go +++ /dev/null @@ -1,808 +0,0 @@ -package war09b - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 ns.ObjectID - obj5 ns.ObjectID - obj6 ns.ObjectID - obj7 ns.ObjectID - obj8 ns.ObjectID - obj9 ns.ObjectID - obj10 ns.ObjectID - obj11 ns.ObjectID - obj12 ns.ObjectID - obj13 ns.ObjectID - obj14 ns.ObjectID - obj15 ns.ObjectID - obj16 ns.ObjectID - obj17 ns.ObjectID - obj18 ns.ObjectID - obj19 ns.ObjectID - obj20 ns.ObjectID - obj21 ns.ObjectID - obj22 ns.ObjectID - obj23 ns.ObjectID - obj24 ns.ObjectID - gvar25 ns.ObjectGroupID - gvar26 ns.ObjectGroupID - gvar27 ns.ObjectGroupID - gvar28 ns.ObjectGroupID - gvar29 ns.ObjectGroupID - gvar30 ns.ObjectGroupID - gvar31 ns.ObjectGroupID - gvar32 ns.ObjectGroupID - gvar33 ns.ObjectGroupID - gvar34 ns.ObjectGroupID - gvar35 ns.ObjectGroupID - gvar36 ns.ObjectGroupID - gvar37 ns.WallGroupID - gvar38 ns.WallGroupID - gvar39 ns.WallGroupID - gvar40 ns.WallGroupID - gvar41 ns.WallGroupID - gvar42 ns.WallGroupID - wp43 ns.WaypointID - wp44 ns.WaypointID - wp45 [9]ns.WaypointID - wp46 [3]ns.WaypointID - wp47 ns.WaypointID - wp48 ns.WaypointID - wp49 ns.WaypointID - wp50 ns.WaypointID - wp51 ns.WaypointID - wp52 ns.WaypointID - flag53 bool - gvar54 int - gvar55 int - gvar56 int - gvar57 int - gvar58 int - obj59 [9]ns.ObjectID - obj60 ns.ObjectID - obj61 ns.ObjectID - gvar62 int - flag63 bool - flag64 bool - flag65 bool - flag66 bool - flag67 bool - gvar68 int - gvar69 int - gvar70 int - gvar71 int - gvar72 int - gvar73 int - ivar74 int - ivar75 int - obj76 [8]ns.ObjectID - wp77 [8]ns.WaypointID - gvar78 [8]int - ivar79 [8]int - gvar80 [8]ns.TimerID -) - -func init() { - flag53 = false - gvar54 = 0 - gvar55 = 1 - gvar56 = 2 - gvar57 = 3 - gvar58 = 4 - gvar62 = gvar54 - flag63 = false - flag64 = false - flag65 = false - flag66 = false - flag67 = false - gvar68 = 0 - gvar69 = 1 - gvar70 = 2 - gvar71 = 3 - gvar72 = 4 - gvar73 = 5 - ivar74 = 15 - ivar75 = 2 -} -func PlaySwamp() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Music(29, 100) -LABEL1: - return -} -func PlaySwamp2() { - ns.Music(29, 100) -} -func PlayAction() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Music(26, 100) -LABEL1: - return -} -func PlayOgre() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Music(7, 100) -LABEL1: - return -} -func PlayerDeath() { - ns.DeathScreen(9) -} -func AidanDialogStart() { - var v0 int - v0 = gvar62 - if v0 == gvar54 { - goto LABEL1 - } - if v0 == gvar55 { - goto LABEL2 - } - if v0 == gvar56 { - goto LABEL3 - } - if v0 == gvar57 { - goto LABEL4 - } - if v0 == gvar58 { - goto LABEL5 - } - goto LABEL6 -LABEL1: - ns.DestroyChat(obj5) - ns.TellStory(ns.SwordsmanHurt, "War09a:AidanGreet1") - flag53 = true - goto LABEL6 -LABEL2: - ns.TellStory(ns.SwordsmanHurt, "War09a:AidanGreet2") - goto LABEL6 -LABEL3: - ns.TellStory(ns.SwordsmanHurt, "War09a:AidanWaiting") - goto LABEL6 -LABEL4: - ns.DestroyChat(obj5) - ns.TellStory(ns.SwordsmanHurt, "War09a:AidanThankful") - goto LABEL6 -LABEL5: - ns.DestroyChat(obj5) - ns.TellStory(ns.SwordsmanHurt, "War09a:AidanLeaving") - goto LABEL6 -LABEL6: - return -} -func AidanDialogEnd() { - var v0 int - v0 = gvar62 - if v0 == gvar54 { - goto LABEL1 - } - if v0 == gvar55 { - goto LABEL2 - } - if v0 == gvar56 { - goto LABEL3 - } - if v0 == gvar57 { - goto LABEL4 - } - if v0 == gvar58 { - goto LABEL5 - } - goto LABEL6 -LABEL1: - gvar62 = gvar55 - goto LABEL6 -LABEL2: - gvar62 = gvar56 - goto LABEL6 -LABEL3: - goto LABEL6 -LABEL4: - flag53 = true - flag66 = true - ns.WideScreen(false) - ns.Frozen(ns.GetHost(), false) - ns.CancelDialog(obj5) - ns.GiveXp(ns.GetHost(), 1000) - ns.Pickup(ns.GetHost(), obj24) - ns.PrintToAll("GeneralPrint:FindScroll") - ns.CreatureFollow(obj5, ns.GetHost()) - ns.AggressionLevel(obj5, 0.5) - ns.SetOwner(ns.GetHost(), obj5) - ns.BecomePet(obj5) - goto LABEL6 -LABEL5: - goto LABEL6 -LABEL6: - return -} -func WispInitialize() { - obj76[0] = ns.Object("Wisp2") - gvar78[0] = gvar68 - wp77[0] = ns.Waypoint("Wisp2Dest") - obj76[1] = ns.Object("Wisp3") - gvar78[1] = gvar68 - wp77[1] = ns.Waypoint("Wisp3Dest") -} -func MapInitialize() { - obj5 = ns.Object("Aidan") - obj6 = ns.Object("DeadPrisoner") - obj7 = ns.Object("Mystic_Brotherhood") - obj8 = ns.Object("OgreCageDoor01") - obj9 = ns.Object("CheckRescueTrigger") - obj10 = ns.Object("PitElev02") - obj11 = ns.Object("PitElev03") - obj12 = ns.Object("CryptTrigger01") - obj13 = ns.Object("CryptEnd1") - obj14 = ns.Object("CryptDoor3") - obj15 = ns.Object("CryptDoor4") - obj16 = ns.Object("CryptGuardian") - obj17 = ns.Object("UrchinCageDoor") - obj18 = ns.Object("UrchinShaman") - obj19 = ns.Object("Urchin1") - obj20 = ns.Object("Urchin2") - obj21 = ns.Object("Urchin3") - obj22 = ns.Object("Urchin4") - obj4 = ns.Object("Necromancer") - obj23 = ns.Object("OgreDude") - obj24 = ns.Object("WarlordScroll") - gvar37 = ns.WallGroup("Surprise02Walls") - gvar38 = ns.WallGroup("Surprise02DestWalls") - gvar39 = ns.WallGroup("GraveyardTrapWalls") - gvar40 = ns.WallGroup("GraveyardTrapWalls2") - gvar41 = ns.WallGroup("CryptWall01") - gvar42 = ns.WallGroup("SubGraveyardWalls") - gvar25 = ns.ObjectGroup("GraveyardTrapEnemies") - gvar26 = ns.ObjectGroup("TriggerGroup01") - gvar27 = ns.ObjectGroup("TriggerGroup02") - gvar28 = ns.ObjectGroup("SubGraveyardTriggers") - gvar29 = ns.ObjectGroup("SubGraveyardCreatures") - gvar30 = ns.ObjectGroup("CryptGuardianTriggers") - gvar31 = ns.ObjectGroup("CryptWarriorTriggers") - gvar32 = ns.ObjectGroup("UrchinPrisoners") - gvar33 = ns.ObjectGroup("Secret03Enemies") - gvar34 = ns.ObjectGroup("Secret03Triggers") - gvar35 = ns.ObjectGroup("Secret04Triggers") - gvar36 = ns.ObjectGroup("Secret06Triggers") - wp45[0] = ns.Waypoint("CreateWP1") - wp45[1] = ns.Waypoint("CreateWP2") - wp45[2] = ns.Waypoint("CreateWP3") - wp45[3] = ns.Waypoint("CreateWP4") - wp45[4] = ns.Waypoint("CreateWP5") - wp45[5] = ns.Waypoint("CreateWP6") - wp45[6] = ns.Waypoint("CreateWP7") - wp45[7] = ns.Waypoint("CreateWP8") - wp45[8] = ns.Waypoint("CreateWP9") - wp43 = ns.Waypoint("VileZombieCreateWP01") - wp44 = ns.Waypoint("GhostCreateWP01") - wp49 = ns.Waypoint("FaceHereWP") - wp46[0] = ns.Waypoint("TeleWP1") - wp46[1] = ns.Waypoint("TeleWP2") - wp46[2] = ns.Waypoint("TeleWP3") - wp47 = ns.Waypoint("CryptGuardianEntrance") - wp48 = ns.Waypoint("CryptWarriorEntrance") - wp50 = ns.Waypoint("AidanWait") - wp51 = ns.Waypoint("AidanLook") - wp52 = ns.Waypoint("PlayerSounds") - ns.LockDoor(obj17) - ns.UnBlind() - WispInitialize() - ns.StoryPic(obj5, "AidanPic") - ns.SetDialog(obj5, ns.NORMAL, AidanDialogStart, AidanDialogEnd) - ns.SetOwner(obj23, obj5) - ns.Damage(obj6, 0, 50, 8) -} -func AidanRescued() { - ns.ObjectOff(obj9) - ns.WideScreen(true) - ns.Frozen(ns.GetHost(), true) - gvar62 = gvar57 - ns.StartDialog(obj5, ns.GetHost()) -} -func KeepOut() { - r1 := ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) - if !r1 { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func AidanNearPlayer() { - if !(flag53 == false && ns.IsCaller(ns.GetHost())) { - goto LABEL1 - } - ns.Chat(obj5, "War09a:AidanPlea") - if flag65 { - goto LABEL1 - } - ns.ClearOwner(obj5) - ns.SetOwner(ns.GetHost(), obj5) - flag65 = true -LABEL1: - return -} -func CheckRescue() { - if ns.IsLocked(obj8) { - goto LABEL1 - } - if !(ns.CurrentHealth(obj5) > 0) { - goto LABEL1 - } - AidanRescued() -LABEL1: - return -} -func AidanMustGo() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - PlayOgre() -LABEL1: - if !(ns.IsCaller(ns.GetHost()) && flag64 == false) { - goto LABEL2 - } - flag64 = true - ns.GiveXp(ns.GetHost(), 500) - ns.JournalEdit(ns.GetHost(), "FindOutpost", 4) - ns.JournalEntry(ns.GetHost(), "FindLOTD", 2) - ns.PrintToAll("Con01a:NewJournalEntry") -LABEL2: - if !(ns.IsCaller(ns.GetHost()) && flag66 == true && ns.CurrentHealth(obj5) > 0 && flag67 == false) { - goto LABEL3 - } - flag67 = true - ns.RestoreHealth(obj5, 120) - ns.SetDialog(obj5, ns.NORMAL, AidanDialogStart, AidanDialogEnd) - gvar62 = gvar58 - ns.CreatureGuard(obj5, ns.GetWaypointX(wp50), ns.GetWaypointY(wp50), ns.GetWaypointX(wp51), ns.GetWaypointY(wp51), 0) - ns.BecomeEnemy(obj5) - ns.SetOwner(ns.GetHost(), obj5) -LABEL3: - return -} -func DestroyAidan() { - if !flag67 { - goto LABEL1 - } - ns.Delete(obj5) -LABEL1: - return -} -func Secret03Declare() { - ns.ObjectGroupOff(gvar34) - ns.ObjectGroupOn(gvar33) - ns.MoveWaypoint(wp52, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.AudioEvent(ns.SecretFound, wp52) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 5) -} -func Secret04Declare() { - ns.ObjectGroupOff(gvar35) - ns.MoveWaypoint(wp52, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.AudioEvent(ns.SecretFound, wp52) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 150) -} -func Secret05Declare() { - ns.PrintToAll("GeneralPrint:SecretFound") - ns.MoveWaypoint(wp52, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.AudioEvent(ns.SecretFound, wp52) - ns.GiveXp(ns.GetHost(), 100) -} -func Secret06Declare() { - ns.ObjectGroupOff(gvar36) - ns.MoveWaypoint(wp52, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.AudioEvent(ns.SecretFound, wp52) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 50) -} -func Patrol() { - ns.Wander(ns.GetTrigger()) -} -func GoMedieval() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.AggressionLevel(ns.GetTrigger(), 0.83) -LABEL1: - return -} -func GoNormal() { - ns.AggressionLevel(ns.GetTrigger(), 0.5) -} -func StopAndListen() { - var v0 int - v0 = ns.Random(1, 3) - if !(ns.IsCaller(ns.GetHost()) && v0 == 1) { - goto LABEL1 - } - ns.PauseObject(ns.GetTrigger(), 45) - ns.LookAtObject(ns.GetTrigger(), ns.GetCaller()) - if !ns.IsVisibleTo(ns.GetTrigger(), ns.GetCaller()) { - goto LABEL2 - } - ns.AggressionLevel(ns.GetTrigger(), 0.5) - goto LABEL1 -LABEL2: - ns.CreatureIdle(ns.GetTrigger()) -LABEL1: - return -} -func ReturnHome() { - ns.AggressionLevel(ns.GetTrigger(), 0.5) - ns.GoBackHome(ns.GetTrigger()) -} -func EnablePitElev02() { - ns.ObjectOn(obj10) -} -func EnablePitElev03() { - ns.ObjectOn(obj11) -} -func GraveyardCreateOrders() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 float32 - v5 float32 - ) - v0 = ns.GetWaypointX(wp43) - v1 = ns.GetWaypointY(wp43) - v2 = ns.GetWaypointX(wp44) - v3 = ns.GetWaypointY(wp44) - v4 = ns.GetWaypointX(wp49) - v5 = ns.GetWaypointY(wp49) - ns.LookWithAngle(obj60, 224) - ns.LookWithAngle(obj61, 192) - ns.CreatureGuard(obj60, v0, v1, v4, v5, 500) - ns.CreatureGuard(obj61, v2, v3, v4, v5, 500) -} -func GraveyardTrapTrigger() { - ns.ObjectGroupOff(gvar26) - ns.NoWallSound(true) - ns.WallGroupOpen(gvar39) - ns.NoWallSound(false) - ns.WallGroupBreak(gvar40) - ns.ObjectGroupOn(gvar25) - obj60 = ns.CreateObject("VileZombie", wp43) - obj61 = ns.CreateObject("Ghost", wp44) - ns.FrameTimer(1, GraveyardCreateOrders) -} -func SubGraveSurprise() { - ns.ObjectGroupOff(gvar28) - ns.ObjectGroupOn(gvar29) - ns.WallGroupBreak(gvar42) -} -func CryptGuardian() { - var ( - v0 float32 - v1 float32 - ) - v0 = ns.GetWaypointX(wp47) - v1 = ns.GetWaypointY(wp47) - ns.ObjectGroupOff(gvar30) - ns.LockDoor(obj14) - ns.LockDoor(obj15) - ns.ObjectOn(obj16) - ns.Enchant(obj16, ns.ENCHANT_INVISIBLE, 2) - ns.MoveObject(obj16, v0, v1) - ns.Effect(ns.BLUE_SPARKS, v0, v1, 0, 0) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) -} -func TurnInvisible() { - ns.Enchant(obj16, ns.ENCHANT_INVISIBLE, 1.5) -} -func UnlockCryptDoors2() { - ns.UnlockDoor(obj14) - ns.UnlockDoor(obj15) -} -func CreatureOrders() { - var v0 int - v0 = 0 - for { - if !(v0 < 9) { - goto LABEL1 - } - ns.SetRoamFlag(obj59[v0], 1) - ns.Wander(obj59[v0]) - ns.AggressionLevel(obj59[v0], 0.83) - v0 += 1 - } -LABEL1: - return -} -func CreateZombies01() { - var v0 int - ns.ObjectGroupOff(gvar27) - ns.ObjectOn(obj4) - ns.NoWallSound(true) - ns.WallGroupOpen(gvar37) - ns.NoWallSound(false) - ns.WallGroupBreak(gvar38) - v0 = 0 - for { - if !(v0 < 5) { - goto LABEL1 - } - obj59[v0] = ns.CreateObject("Zombie", wp45[v0]) - v0 += 1 - } -LABEL1: - v0 = 5 - for { - if !(v0 < 7) { - goto LABEL3 - } - obj59[v0] = ns.CreateObject("Ghost", wp45[v0]) - v0 += 1 - } -LABEL3: - v0 = 7 - for { - if !(v0 < 9) { - goto LABEL5 - } - obj59[v0] = ns.CreateObject("VileZombie", wp45[v0]) - v0 += 1 - } -LABEL5: - ns.FrameTimer(1, CreatureOrders) -} -func NecroTeleport() { - var ( - v0 float32 - v1 float32 - v2 int - ) - v2 = ns.Random(0, 2) - v0 = ns.GetWaypointX(wp46[v2]) - v1 = ns.GetWaypointY(wp46[v2]) - if !ns.IsCaller(obj4) { - goto LABEL1 - } - ns.Enchant(ns.GetCaller(), ns.ENCHANT_INVISIBLE, 1) - ns.Effect(ns.BLUE_SPARKS, ns.GetObjectX(ns.GetCaller()), ns.GetObjectY(ns.GetCaller()), 0, 0) - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(ns.GetCaller()), ns.GetObjectY(ns.GetCaller()), 0, 0) - ns.MoveObject(obj4, v0, v1) - ns.Effect(ns.BLUE_SPARKS, v0, v1, 0, 0) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) -LABEL1: - if !ns.IsCaller(ns.GetHost()) { - goto LABEL2 - } - PlaySwamp() -LABEL2: - return -} -func NecroTeleportInjured() { - var ( - v0 float32 - v1 float32 - v2 int - ) - v2 = ns.Random(0, 2) - v0 = ns.GetWaypointX(wp46[v2]) - v1 = ns.GetWaypointY(wp46[v2]) - ns.PauseObject(ns.GetTrigger(), 15) - ns.Enchant(ns.GetTrigger(), ns.ENCHANT_INVISIBLE, 2) - ns.Effect(ns.BLUE_SPARKS, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger()), 0, 0) - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger()), 0, 0) - ns.MoveObject(ns.GetTrigger(), v0, v1) - ns.Effect(ns.BLUE_SPARKS, v0, v1, 0, 0) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) -} -func HuntPlayer() { - ns.CreatureHunt(ns.GetTrigger()) -} -func FreeUrchins01() { - ns.UnlockDoor(obj17) - if flag63 { - goto LABEL1 - } - flag63 = true - ns.SetOwner(ns.GetHost(), obj19) - ns.SetOwner(ns.GetHost(), obj20) - ns.SetOwner(ns.GetHost(), obj21) - ns.SetOwner(ns.GetHost(), obj22) - ns.SetOwner(ns.GetHost(), obj18) - ns.SetRoamFlag(obj18, 1) - ns.SetRoamFlag(obj19, 1) - ns.SetRoamFlag(obj20, 1) - ns.SetRoamFlag(obj21, 1) - ns.SetRoamFlag(obj22, 1) - ns.AggressionLevel(obj18, 0.83) - ns.AggressionLevel(obj19, 0.83) - ns.AggressionLevel(obj20, 0.83) - ns.AggressionLevel(obj21, 0.83) - ns.AggressionLevel(obj22, 0.83) -LABEL1: - return -} -func LockUrchinCage() { - ns.LockDoor(obj17) -} -func HurtUrchins01() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.AggressionLevel(ns.GetTrigger(), 0.5) - ns.RunAway(ns.GetTrigger(), ns.GetCaller(), 120) -LABEL1: - return -} -func MapEntry() { - ns.NoWallSound(false) -} -func whichWisp(a1 ns.ObjectID) int { - var v0 int - v0 = 0 - for { - if !(v0 < ivar75) { - goto LABEL1 - } - if obj76[v0] != a1 { - goto LABEL2 - } - return v0 - LABEL2: - v0 += 1 - } -LABEL1: - return -1 - return 1 -} -func WispAction(a1 int) { - var ( - v0 float32 - v1 int - ) - v1 = gvar78[a1] - if v1 == gvar69 { - goto LABEL1 - } - if v1 == gvar71 { - goto LABEL2 - } - if v1 == gvar70 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - v0 = ns.Distance(ns.GetObjectX(obj76[a1]), ns.GetObjectY(obj76[a1]), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - if !(v0 < 70) { - goto LABEL5 - } - gvar78[a1] = gvar70 - ns.Move(obj76[a1], wp77[a1]) -LABEL5: - goto LABEL4 -LABEL2: - ns.LookAtObject(obj76[a1], ns.GetHost()) - ivar79[a1] += 1 - if !(ivar79[a1] > 4) { - goto LABEL6 - } - gvar78[a1] = gvar69 - ns.CreatureFollow(obj76[a1], ns.GetHost()) -LABEL6: - goto LABEL4 -LABEL3: - v0 = ns.Distance(ns.GetObjectX(obj76[a1]), ns.GetObjectY(obj76[a1]), ns.GetWaypointX(wp77[a1]), ns.GetWaypointY(wp77[a1])) - if !(v0 < 30) { - goto LABEL7 - } - gvar78[a1] = gvar72 - ns.CreatureIdle(obj76[a1]) - return -LABEL7: - goto LABEL4 -LABEL4: - ns.FrameTimerWithArg(ivar74, a1, WispAction) -} -func WispRecognize() { - var ( - v0 int - v1 int - ) - if ns.HasClass(ns.GetCaller(), ns.PLAYER) { - goto LABEL1 - } - return -LABEL1: - v0 = whichWisp(ns.GetTrigger()) - if !(v0 < 0) { - goto LABEL2 - } - return -LABEL2: - v1 = gvar78[v0] - if v1 == gvar68 { - goto LABEL3 - } - if v1 == gvar71 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - gvar78[v0] = gvar69 - ns.CreatureFollow(ns.GetTrigger(), ns.GetCaller()) - gvar80[v0] = ns.FrameTimerWithArg(ivar74, v0, WispAction) - goto LABEL5 -LABEL4: - gvar78[v0] = gvar70 - ns.Move(ns.GetTrigger(), wp77[v0]) - goto LABEL5 -LABEL5: - return -} -func WispLoseSight() { - var ( - v0 int - v1 int - ) - if ns.HasClass(ns.GetCaller(), ns.PLAYER) { - goto LABEL1 - } - return -LABEL1: - v0 = whichWisp(ns.GetTrigger()) - if !(v0 < 0) { - goto LABEL2 - } - return -LABEL2: - v1 = gvar78[v0] - if v1 == gvar70 { - goto LABEL3 - } - goto LABEL4 -LABEL3: - gvar78[v0] = gvar71 - ivar79[v0] = 0 - ns.CreatureIdle(ns.GetTrigger()) - goto LABEL4 -LABEL4: - return -} -func WispGetMad() { - var v0 int - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.AggressionLevel(ns.GetTrigger(), 0.83) - ns.CreatureIdle(ns.GetTrigger()) - v0 = whichWisp(ns.GetTrigger()) - if !(v0 >= 0) { - goto LABEL1 - } - gvar78[v0] = gvar73 - ns.CancelTimer(gvar80[v0]) -LABEL1: - return -} -func WispMedieval() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.AggressionLevel(ns.GetTrigger(), 0.83) - ns.CreatureIdle(ns.GetTrigger()) -LABEL1: - return -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapInitialize": - MapInitialize() - case "MapEntry": - MapEntry() - } -} diff --git a/examples/war09c/dummy_test.go b/examples/war09c/dummy_test.go deleted file mode 100644 index 6a9fecb..0000000 --- a/examples/war09c/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package war09c - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/war09c/war09c.go b/examples/war09c/war09c.go deleted file mode 100644 index a548455..0000000 --- a/examples/war09c/war09c.go +++ /dev/null @@ -1,565 +0,0 @@ -package war09c - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 ns.ObjectID - obj5 ns.ObjectID - obj6 ns.ObjectID - obj7 ns.ObjectID - obj8 ns.ObjectID - obj9 ns.ObjectID - obj10 ns.ObjectID - obj11 ns.ObjectID - obj12 ns.ObjectID - obj13 ns.ObjectID - obj14 ns.ObjectID - obj15 ns.ObjectID - obj16 ns.ObjectID - obj17 ns.ObjectID - obj18 ns.ObjectID - obj19 ns.ObjectID - obj20 ns.ObjectID - obj21 ns.ObjectID - obj22 ns.ObjectID - obj23 ns.ObjectID - obj24 ns.ObjectID - obj25 ns.ObjectID - obj26 ns.ObjectID - obj27 ns.ObjectID - obj28 ns.ObjectID - obj29 ns.ObjectID - obj30 ns.ObjectID - obj31 ns.ObjectID - obj32 ns.ObjectID - obj33 ns.ObjectID - obj34 ns.ObjectID - obj35 ns.ObjectID - obj36 ns.ObjectID - obj37 ns.ObjectID - obj38 ns.ObjectID - obj39 ns.ObjectID - obj40 ns.ObjectID - obj41 ns.ObjectID - obj42 ns.ObjectID - obj43 ns.ObjectID - obj44 ns.ObjectID - obj45 ns.ObjectID - obj46 ns.ObjectID - obj47 ns.ObjectID - obj48 ns.ObjectID - obj49 ns.ObjectID - obj50 ns.ObjectID - obj51 ns.ObjectID - obj52 ns.ObjectID - obj53 ns.ObjectID - obj54 ns.ObjectID - gvar55 ns.ObjectGroupID - gvar56 ns.ObjectGroupID - gvar57 ns.ObjectGroupID - gvar58 ns.ObjectGroupID - gvar59 ns.ObjectGroupID - gvar60 ns.ObjectGroupID - gvar61 ns.ObjectGroupID - gvar62 ns.ObjectGroupID - gvar63 ns.ObjectGroupID - gvar64 ns.ObjectGroupID - gvar65 ns.ObjectGroupID - gvar66 [6]ns.ObjectGroupID - gvar67 ns.ObjectGroupID - gvar68 ns.ObjectGroupID - gvar69 ns.WallGroupID - gvar70 ns.WallGroupID - gvar71 ns.WallGroupID - gvar72 ns.WallGroupID - gvar73 ns.WallGroupID - gvar74 ns.WallGroupID - wp75 ns.WaypointID - wp76 ns.WaypointID - wp77 ns.WaypointID - wp78 ns.WaypointID - wp79 ns.WaypointID - wp80 ns.WaypointID - wp81 ns.WaypointID - wp82 ns.WaypointID - wp83 ns.WaypointID - wp84 ns.WaypointID - wp85 ns.WaypointID - wp86 ns.WaypointID - wp87 ns.WaypointID - wp88 ns.WaypointID - wp89 ns.WaypointID - wp90 ns.WaypointID - wp91 ns.WaypointID - wp92 ns.WaypointID - wp93 ns.WaypointID - wp94 ns.WaypointID - wp95 ns.WaypointID - wp96 ns.WaypointID - wp97 ns.WaypointID - flag98 bool - flag99 bool - ivar100 int - ivar101 int - gvar102 int - gvar103 int - ivar104 int - obj105 ns.ObjectID -) - -func init() { - flag99 = true - ivar100 = 22 - ivar101 = ivar100 - ivar104 = 0 - flag98 = true -} -func ToggleSpikes1() { - ns.ObjectGroupToggle(gvar61) - ns.AudioEvent(ns.FloorSpikesUp, ns.Waypoint("SpikeWP01")) - ns.AudioEvent(ns.FloorSpikesDown, ns.Waypoint("SpikeWP06")) - ns.AudioEvent(ns.FloorSpikesUp, ns.Waypoint("SpikeWP09")) - ns.FrameTimer(60, ToggleSpikes2) -} -func ToggleSpikes2() { - ns.ObjectGroupToggle(gvar62) - ns.AudioEvent(ns.FloorSpikesDown, ns.Waypoint("SpikeWP04")) - ns.AudioEvent(ns.FloorSpikesUp, ns.Waypoint("SpikeWP07")) - ns.AudioEvent(ns.FloorSpikesDown, ns.Waypoint("SpikeWP12")) - ns.FrameTimer(60, ToggleSpikes1) -} -func GoToPost() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - ) - v0 = ns.GetWaypointX(wp94) - v1 = ns.GetWaypointY(wp94) - v2 = ns.GetWaypointX(wp95) - v3 = ns.GetWaypointY(wp95) - ns.CreatureGuard(obj28, v0, v1, v2, v3, 100) -} -func SwitchSpikeState() { - ns.ObjectGroupOff(gvar66[ivar104]) - if !flag99 { - goto LABEL1 - } - ivar104 += 1 - if !(ivar104 > 5) { - goto LABEL2 - } - ivar104 = 0 -LABEL2: - ns.ObjectGroupOn(gvar66[ivar104]) - ns.AudioEvent(ns.FloorSpikesUp, wp97) - ns.FrameTimer(30, SwitchSpikeState) - goto LABEL3 -LABEL1: - return -LABEL3: - return -} -func CloseWalls() { - ns.WallGroupClose(gvar69) - ns.WallGroupClose(gvar70) -} -func PlayCaves() { - ns.Music(18, 100) -} -func PlayAction() { - ns.MusicPushEvent() - ns.Music(26, 100) -} -func MapEntry() { - PlayCaves() - ns.NoWallSound(false) -} -func Secret01Declare() { - ns.PrintToAll("GeneralPrint:SecretFound") - ns.MoveWaypoint(wp96, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.AudioEvent(ns.SecretFound, wp96) - ns.GiveXp(ns.GetHost(), 500) -} -func Secret01Exit() { - ns.WallGroupOpen(gvar71) -} -func Secret02Declare() { - ns.ObjectGroupOff(gvar68) - ns.MoveWaypoint(wp96, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.AudioEvent(ns.SecretFound, wp96) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 250) -} -func Secret03Declare() { - ns.PrintToAll("GeneralPrint:SecretFound") - ns.MoveWaypoint(wp96, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.AudioEvent(ns.SecretFound, wp96) - ns.GiveXp(ns.GetHost(), 50) -} -func Secret04Declare() { - ns.PrintToAll("GeneralPrint:SecretFound") - ns.MoveWaypoint(wp96, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.AudioEvent(ns.SecretFound, wp96) - ns.GiveXp(ns.GetHost(), 100) -} -func SpikeTimerAudioLoop() { - if flag98 { - goto LABEL1 - } - ns.AudioEvent(ns.Gear1, wp75) - ns.FrameTimer(ivar101, SpikeTimerAudioLoop) - ivar101 -= 1 - goto LABEL2 -LABEL1: - ns.AudioEvent(ns.TriggerPressed, wp75) -LABEL2: - return -} -func ResetOgreSpikeDoor01() { - ns.ObjectOn(obj4) - ns.ObjectOn(obj5) - ns.ObjectGroupOn(gvar55) - ns.LockDoor(obj6) - flag98 = true - ivar101 = ivar100 -} -func ToggleOgreTrapSpikes01() { - ns.ObjectOff(obj4) - ns.ObjectOff(obj5) - ns.ObjectGroupOff(gvar55) - if !flag98 { - goto LABEL1 - } - ns.UnlockDoor(obj6) - flag98 = false - SpikeTimerAudioLoop() - ns.FrameTimer(150, ResetOgreSpikeDoor01) - goto LABEL2 -LABEL1: - ns.LockDoor(obj6) - flag98 = true -LABEL2: - return -} -func MoveBlocks01() { - ns.ObjectGroupOff(gvar57) - ns.ObjectGroupOff(gvar58) - PlayAction() - ns.Move(obj7, wp76) - ns.Move(obj8, wp77) - ns.Move(obj9, wp78) - ns.Move(obj10, wp79) - ns.Move(obj11, wp80) - ns.Move(obj12, wp81) - ns.Move(obj13, wp82) - ns.Move(obj14, wp83) - ns.Move(obj15, wp84) - ns.Move(obj16, wp85) - ns.Move(obj17, wp86) - ns.Move(obj18, wp87) - ns.WallGroupOpen(gvar69) - ns.ObjectOn(obj21) - ns.Wander(obj21) -} -func CallNextOgre() { - ns.WallGroupOpen(gvar70) - ns.ObjectOn(obj22) - ns.Wander(obj22) -} -func MoveBlocks02() { - var ( - v0 float32 - v1 float32 - ) - v0 = ns.GetWaypointX(wp90) - v1 = ns.GetWaypointY(wp90) - ns.MoveObject(obj19, v0, v1) - ns.Effect(ns.BLUE_SPARKS, v0, v1, 0, 0) - ns.AudioEvent(ns.KeyDrop, wp90) - ns.ObjectOn(obj20) - ns.Move(obj9, wp88) - ns.Move(obj10, wp89) - ns.Move(obj7, wp78) - ns.Move(obj8, wp79) - ns.FrameTimer(45, CloseWalls) - ns.MusicPopEvent() -} -func OpenWayOut() { - ns.WallGroupOpen(gvar74) -} -func GetBuddy() { - ns.RetreatLevel(obj23, 0) - ns.Move(obj23, wp91) -} -func FollowOgrePatrol01() { - if !ns.IsCaller(obj23) { - goto LABEL1 - } - ns.CreatureFollow(ns.GetTrigger(), obj23) - ns.AggressionLevel(obj26, 0.83) - ns.AggressionLevel(obj27, 0.83) - ns.Walk(obj23, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) -LABEL1: - return -} -func WaitASec() { - ns.PauseObject(ns.GetTrigger(), 30) -} -func Patrol() { - ns.Wander(ns.GetTrigger()) -} -func GoMedieval() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.AggressionLevel(ns.GetTrigger(), 0.83) -LABEL1: - return -} -func GoNormal() { - ns.AggressionLevel(ns.GetTrigger(), 0.5) -} -func StopAndListen() { - var v0 int - v0 = ns.Random(1, 3) - if !(ns.IsCaller(ns.GetHost()) && v0 == 1) { - goto LABEL1 - } - ns.PauseObject(ns.GetTrigger(), 45) - ns.LookAtObject(ns.GetTrigger(), ns.GetCaller()) - if !ns.IsVisibleTo(ns.GetTrigger(), ns.GetCaller()) { - goto LABEL2 - } - ns.AggressionLevel(ns.GetTrigger(), 0.5) - goto LABEL1 -LABEL2: - ns.CreatureIdle(ns.GetTrigger()) -LABEL1: - return -} -func ReturnHome() { - ns.AggressionLevel(ns.GetTrigger(), 0.5) - ns.GoBackHome(ns.GetTrigger()) -} -func SpikeHall() { - ns.ObjectGroupOff(gvar59) - ns.ObjectGroupOn(gvar60) - ToggleSpikes1() -} -func PressButton() { - ns.AudioEvent(ns.GruntRecognize, wp93) - ns.Move(obj28, wp92) - ns.AggressionLevel(obj29, 0.83) - ns.AggressionLevel(obj30, 0.83) - ns.AggressionLevel(obj31, 0.83) - ns.FrameTimer(60, GoToPost) -} -func OgrePressButton() { - ns.FrameTimer(10, PressButton) -} -func LockCageDoor() { - if ns.IsLocked(obj32) { - goto LABEL1 - } - ns.LockDoor(obj32) - goto LABEL2 -LABEL1: - ns.UnlockDoor(obj32) -LABEL2: - return -} -func FoundTreasureTrove() { - ns.PrintToAll("War09c:FoundTrove") - ns.GiveXp(ns.GetHost(), 1000) -} -func ToggleElevatorGroup3() { - ns.ObjectGroupToggle(gvar65) -} -func ToggleElevatorGroup1() { - ns.ObjectGroupToggle(gvar63) -} -func StartSpikes() { - ns.ObjectGroupOff(gvar67) - ns.LockDoor(obj33) - ns.FrameTimer(60, SwitchSpikeState) -} -func UnlockSpikeSegRoomDoor() { - ns.UnlockDoor(obj33) - flag99 = false -} -func CallSpitter1() { - ns.Wander(obj35) -} -func SetSpitter1PathColor() { - ns.SetRoamFlag(obj35, 1|128) -} -func LockPitDoor() { - ns.LockDoor(obj34) -} -func UnlockPitDoor() { - ns.UnlockDoor(obj34) -} -func ReleaseA() { - ns.UnlockDoor(obj36) - ns.UnlockDoor(obj37) - ns.CreatureHunt(obj48) -} -func ReleaseB() { - ns.UnlockDoor(obj38) - ns.UnlockDoor(obj39) - ns.CreatureHunt(obj49) -} -func ReleaseC() { - ns.UnlockDoor(obj40) - ns.UnlockDoor(obj41) - ns.CreatureHunt(obj50) -} -func ReleaseD() { - ns.UnlockDoor(obj42) - ns.UnlockDoor(obj43) - ns.CreatureHunt(obj51) -} -func ReleaseE() { - ns.UnlockDoor(obj44) - ns.UnlockDoor(obj45) - ns.CreatureHunt(obj52) -} -func ReleaseF() { - ns.UnlockDoor(obj46) - ns.UnlockDoor(obj47) - ns.CreatureHunt(obj53) -} -func ToggleElevatorGroup2() { - ns.ObjectOff(obj54) - ns.ObjectGroupToggle(gvar64) - ns.GiveXp(ns.GetHost(), 2500) -} -func PlayerDeath() { - ns.DeathScreen(9) -} -func MapInitialize() { - obj6 = ns.Object("OgreSpikeDoor01") - obj4 = ns.Object("OgreTrapSpikePlate01") - obj5 = ns.Object("OgreTrapSpikeSwitch01") - obj7 = ns.Object("Block01") - obj8 = ns.Object("Block02") - obj9 = ns.Object("Block03") - obj10 = ns.Object("Block04") - obj11 = ns.Object("Block05") - obj12 = ns.Object("Block06") - obj13 = ns.Object("Block07") - obj14 = ns.Object("Block08") - obj15 = ns.Object("Block09") - obj16 = ns.Object("Block10") - obj17 = ns.Object("Block11") - obj18 = ns.Object("Block12") - obj19 = ns.Object("SilverKey") - obj20 = ns.Object("SilverKeyLight") - obj21 = ns.Object("OgreFighter01") - obj22 = ns.Object("OgreFighter02") - obj23 = ns.Object("OgrePatrol01") - obj24 = ns.Object("OgrePatrol02") - obj25 = ns.Object("OgrePatrol03") - obj26 = ns.Object("OgrePatrolBuddy01") - obj27 = ns.Object("OgrePatrolBuddy02") - obj28 = ns.Object("ButtonPresser") - obj29 = ns.Object("OgrePsycho01") - obj30 = ns.Object("OgrePsycho02") - obj31 = ns.Object("OgrePsycho03") - obj32 = ns.Object("CageDoor") - obj33 = ns.Object("SpikeSegRoomDoor") - obj34 = ns.Object("CrumblingPitDoor") - obj36 = ns.Object("CreaturePitDoorA1") - obj37 = ns.Object("CreaturePitDoorA2") - obj38 = ns.Object("CreaturePitDoorB1") - obj39 = ns.Object("CreaturePitDoorB2") - obj40 = ns.Object("CreaturePitDoorC1") - obj41 = ns.Object("CreaturePitDoorC2") - obj42 = ns.Object("CreaturePitDoorD1") - obj43 = ns.Object("CreaturePitDoorD2") - obj44 = ns.Object("CreaturePitDoorE1") - obj45 = ns.Object("CreaturePitDoorE2") - obj46 = ns.Object("CreaturePitDoorF1") - obj47 = ns.Object("CreaturePitDoorF2") - obj48 = ns.Object("CreatureA") - obj49 = ns.Object("CreatureB") - obj50 = ns.Object("CreatureC") - obj51 = ns.Object("CreatureD") - obj52 = ns.Object("CreatureE") - obj53 = ns.Object("CreatureF") - obj105 = ns.Object("CreaturePitElev") - obj54 = ns.Object("CreaturePitSwitch") - gvar55 = ns.ObjectGroup("OgreTrapSpikes01") - gvar57 = ns.ObjectGroup("BlockTrigger01") - gvar56 = ns.ObjectGroup("BlockMoverGroup01") - gvar58 = ns.ObjectGroup("SecretLight01") - gvar59 = ns.ObjectGroup("SpikeHallTriggers") - gvar60 = ns.ObjectGroup("SpikeMoverGroup") - gvar61 = ns.ObjectGroup("HallSpikes1") - gvar62 = ns.ObjectGroup("HallSpikes2") - gvar66[0] = ns.ObjectGroup("SpikeSeg01") - gvar66[1] = ns.ObjectGroup("SpikeSeg02") - gvar66[2] = ns.ObjectGroup("SpikeSeg03") - gvar66[3] = ns.ObjectGroup("SpikeSeg04") - gvar66[4] = ns.ObjectGroup("SpikeSeg05") - gvar66[5] = ns.ObjectGroup("SpikeSeg06") - gvar67 = ns.ObjectGroup("SpikeSegTriggers") - gvar68 = ns.ObjectGroup("Secret02Triggers") - gvar63 = ns.ObjectGroup("ElevatorGroup1") - gvar64 = ns.ObjectGroup("ElevatorGroup2") - gvar65 = ns.ObjectGroup("ElevatorGroup3") - gvar69 = ns.WallGroup("SecretWallGroup01") - gvar70 = ns.WallGroup("SecretWallGroup02") - gvar71 = ns.WallGroup("Secret01Wall") - gvar72 = ns.WallGroup("SecretHallWalls01") - gvar73 = ns.WallGroup("CreaturePitWalls") - gvar74 = ns.WallGroup("WayOut") - wp75 = ns.Waypoint("SpikeTimerAudioOrigin") - wp76 = ns.Waypoint("BlockWP01") - wp77 = ns.Waypoint("BlockWP02") - wp78 = ns.Waypoint("BlockWP03") - wp79 = ns.Waypoint("BlockWP04") - wp80 = ns.Waypoint("BlockWP05") - wp81 = ns.Waypoint("BlockWP06") - wp82 = ns.Waypoint("BlockWP07") - wp83 = ns.Waypoint("BlockWP08") - wp84 = ns.Waypoint("BlockWP09") - wp85 = ns.Waypoint("BlockWP10") - wp86 = ns.Waypoint("BlockWP11") - wp87 = ns.Waypoint("BlockWP12") - wp88 = ns.Waypoint("BlockWP13") - wp89 = ns.Waypoint("BlockWP14") - wp90 = ns.Waypoint("SilverKeySpot") - wp91 = ns.Waypoint("BuddyWP") - wp92 = ns.Waypoint("ButtonLocationWP") - wp93 = ns.Waypoint("OgreAudioOrigin") - wp94 = ns.Waypoint("PostWP") - wp95 = ns.Waypoint("FacingWP") - wp96 = ns.Waypoint("PlayerSounds") - wp97 = ns.Waypoint("RoomSounds") - ns.LockDoor(obj36) - ns.LockDoor(obj37) - ns.LockDoor(obj38) - ns.LockDoor(obj39) - ns.LockDoor(obj40) - ns.LockDoor(obj41) - ns.LockDoor(obj42) - ns.LockDoor(obj43) - ns.LockDoor(obj44) - ns.LockDoor(obj45) - ns.LockDoor(obj46) - ns.LockDoor(obj47) - ns.UnBlind() -} -func OnEvent(typ string) { - switch typ { - case "MapEntry": - MapEntry() - case "PlayerDeath": - PlayerDeath() - case "MapInitialize": - MapInitialize() - } -} diff --git a/examples/war09d/dummy_test.go b/examples/war09d/dummy_test.go deleted file mode 100644 index a6056b2..0000000 --- a/examples/war09d/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package war09d - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/war09d/war09d.go b/examples/war09d/war09d.go deleted file mode 100644 index 8580b08..0000000 --- a/examples/war09d/war09d.go +++ /dev/null @@ -1,854 +0,0 @@ -package war09d - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 ns.ObjectID - obj5 ns.ObjectID - obj6 ns.ObjectID - obj7 ns.ObjectID - obj8 ns.ObjectID - obj9 ns.ObjectID - obj10 ns.ObjectID - obj11 ns.ObjectID - obj12 ns.ObjectID - obj13 ns.ObjectID - obj14 ns.ObjectID - obj15 ns.ObjectID - obj16 ns.ObjectID - obj17 ns.ObjectID - obj18 ns.ObjectID - obj19 ns.ObjectID - obj20 ns.ObjectID - gvar21 ns.ObjectGroupID - gvar22 ns.ObjectGroupID - gvar23 ns.ObjectGroupID - gvar24 ns.ObjectGroupID - gvar25 ns.ObjectGroupID - gvar26 ns.ObjectGroupID - gvar27 ns.WallGroupID - gvar28 ns.WallGroupID - gvar29 ns.WallGroupID - wp30 ns.WaypointID - wp31 ns.WaypointID - wp32 ns.WaypointID - wp33 ns.WaypointID - wp34 ns.WaypointID - wp35 ns.WaypointID - wp36 ns.WaypointID - wp37 ns.WaypointID - wp38 ns.WaypointID - wp39 ns.WaypointID - wp40 ns.WaypointID - wp41 [5]ns.WaypointID - wp42 [5]ns.WaypointID - wp43 ns.WaypointID - gvar44 ns.WaypointGroupID - gvar45 int - gvar46 int - gvar47 int - gvar48 int - gvar49 int - obj50 ns.ObjectID - obj51 ns.ObjectID - ivar52 int - gvar53 int - gvar54 int - fvar55 float32 - fvar56 float32 - flag57 bool - flag58 bool - flag59 bool - flag60 bool - flag61 bool - flag62 bool - flag63 bool - flag64 bool - flag65 bool - flag66 bool - flag67 bool - flag68 bool - flag69 bool - flag70 bool - flag71 bool - flag72 bool - flag73 bool -) - -func init() { - gvar45 = 0 - gvar46 = 1 - gvar47 = 2 - gvar48 = 3 - gvar49 = 4 - ivar52 = 1000 - gvar53 = gvar45 - gvar54 = gvar48 - flag57 = false - flag58 = false - flag59 = false - flag60 = false - flag61 = false - flag62 = false - flag63 = false - flag64 = false - flag65 = false - flag66 = false - flag67 = false - flag68 = false - flag69 = false - flag70 = false - flag71 = false - flag72 = false - flag73 = false -} -func PlayerDeath() { - ns.DeathScreen(9) -} -func MapInitialize() { - obj4 = ns.Object("LoneWolf01") - obj5 = ns.Object("Skel01a") - obj6 = ns.Object("Skel02a") - obj7 = ns.Object("Skel03a") - obj8 = ns.Object("SquadLeader") - obj9 = ns.Object("Cain") - obj10 = ns.Object("Cain2") - obj11 = ns.Object("CainWolf01") - obj12 = ns.Object("CainWolf02") - obj13 = ns.Object("CainWolf03") - obj14 = ns.Object("Necromancer1") - obj15 = ns.Object("Necromancer2") - obj16 = ns.Object("Necromancer") - obj17 = ns.Object("NecroStart") - obj18 = ns.Object("Lich") - obj19 = ns.Object("KeepOutTrigger") - obj20 = ns.Object("TreasureLight") - gvar21 = ns.ObjectGroup("GoldTrapSpikes") - gvar22 = ns.ObjectGroup("WolfCaveTriggers") - gvar23 = ns.ObjectGroup("SkeletonSquad") - gvar25 = ns.ObjectGroup("NecroTriggers") - gvar24 = ns.ObjectGroup("ElevatorGroup1") - gvar26 = ns.ObjectGroup("SkeletonMarchTriggers") - gvar27 = ns.WallGroup("SecretHallWalls01") - gvar28 = ns.WallGroup("NecroWalls") - gvar29 = ns.WallGroup("NecroSafetyWalls") - wp30 = ns.Waypoint("NecroWP") - wp31 = ns.Waypoint("GoldTrapWP1") - wp32 = ns.Waypoint("GoldTrapWP2") - wp33 = ns.Waypoint("GoldTrapWP3") - wp34 = ns.Waypoint("GoldTrapWP4") - wp37 = ns.Waypoint("WolfCreateWP01") - wp38 = ns.Waypoint("WolfCreateWP02") - wp39 = ns.Waypoint("LoneWolf01DestWP") - wp40 = ns.Waypoint("Wolf01FacingWP") - wp35 = ns.Waypoint("WolfCreate01Dest") - wp36 = ns.Waypoint("WolfCreate02Dest") - wp41[0] = ns.Waypoint("TeleWP0") - wp41[1] = ns.Waypoint("TeleWP1") - wp41[2] = ns.Waypoint("TeleWP2") - wp41[3] = ns.Waypoint("TeleWP3") - wp41[4] = ns.Waypoint("TeleWP4") - wp42[0] = ns.Waypoint("WallSmokeWP0") - wp42[1] = ns.Waypoint("WallSmokeWP1") - wp42[2] = ns.Waypoint("WallSmokeWP2") - wp42[3] = ns.Waypoint("WallSmokeWP3") - wp42[4] = ns.Waypoint("WallSmokeWP4") - wp43 = ns.Waypoint("PlayerSounds") - gvar44 = ns.WaypointGroup("SearchNetwork1") - ns.StoryPic(obj9, "WoundedConjurerPic") - ns.StoryPic(obj10, "WoundedConjurerPic") - ns.StoryPic(obj16, "NecromancerPic") - ns.UnBlind() -} -func PlaySwamp() { - ns.Music(25, 100) -} -func PlayAction() { - ns.Music(26, 100) -} -func PlayAction2() { - ns.Music(28, 100) -} -func PlayMordwyn() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Music(21, 100) -LABEL1: - return -} -func PlayOgre() { - ns.Music(7, 100) -} -func PlayCaves() { - ns.Music(18, 100) -} -func PlayWasteland() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Music(19, 100) -LABEL1: - return -} -func Patrol() { - ns.Wander(ns.GetTrigger()) -} -func GoMedieval() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.AggressionLevel(ns.GetTrigger(), 0.83) -LABEL1: - return -} -func GoNormal() { - ns.AggressionLevel(ns.GetTrigger(), 0.5) -} -func StopAndListen() { - var v0 int - v0 = ns.Random(1, 3) - if !(ns.IsCaller(ns.GetHost()) && v0 == 1) { - goto LABEL1 - } - ns.PauseObject(ns.GetTrigger(), 45) - ns.LookAtObject(ns.GetTrigger(), ns.GetCaller()) - if !ns.IsVisibleTo(ns.GetTrigger(), ns.GetCaller()) { - goto LABEL2 - } - ns.AggressionLevel(ns.GetTrigger(), 0.5) - goto LABEL1 -LABEL2: - ns.CreatureIdle(ns.GetTrigger()) -LABEL1: - return -} -func ReturnHome() { - ns.AggressionLevel(ns.GetTrigger(), 0.5) - ns.GoBackHome(ns.GetTrigger()) -} -func DisableGoldTrapSpikes() { - ns.ObjectGroupOff(gvar21) -} -func TriggerGoldTrapPoison() { - ns.CastSpellLocationLocation(ns.SPELL_TOXIC_CLOUD, ns.GetWaypointX(wp31), ns.GetWaypointY(wp31), 0, 0) - ns.CastSpellLocationLocation(ns.SPELL_TOXIC_CLOUD, ns.GetWaypointX(wp32), ns.GetWaypointY(wp32), 0, 0) - ns.CastSpellLocationLocation(ns.SPELL_TOXIC_CLOUD, ns.GetWaypointX(wp33), ns.GetWaypointY(wp33), 0, 0) - ns.CastSpellLocationLocation(ns.SPELL_TOXIC_CLOUD, ns.GetWaypointX(wp34), ns.GetWaypointY(wp34), 0, 0) -} -func TriggerGoldTrap() { - ns.ObjectGroupOn(gvar21) - ns.FrameTimer(20, TriggerGoldTrapPoison) -} -func ToggleElevatorGroup1() { - ns.ObjectGroupToggle(gvar24) -} -func DisableTL() { - ns.ObjectOff(obj20) -} -func WolfOrders() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 float32 - v5 float32 - ) - v0 = ns.GetWaypointX(wp35) - v1 = ns.GetWaypointY(wp35) - v2 = ns.GetWaypointX(wp36) - v3 = ns.GetWaypointY(wp36) - v4 = ns.GetWaypointX(wp39) - v5 = ns.GetWaypointY(wp39) - ns.CreatureGuard(obj50, v0, v1, v4, v5, 350) - ns.CreatureGuard(obj51, v2, v3, v4, v5, 350) - ns.AggressionLevel(obj50, 0.83) - ns.AggressionLevel(obj51, 0.83) -} -func CainDialogStart() { - var v0 int - v0 = gvar53 - if v0 == gvar45 { - goto LABEL1 - } - if v0 == gvar46 { - goto LABEL2 - } - if v0 == gvar47 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - ns.TellStory(ns.SwordsmanHurt, "War09c:CainAsk") - flag57 = true - goto LABEL4 -LABEL2: - ns.TellStory(ns.SwordsmanHurt, "War09c:CainHealed") - flag57 = true - goto LABEL4 -LABEL3: - ns.TellStory(ns.SwordsmanHurt, "War09c:CainEscort") - flag57 = true - goto LABEL4 -LABEL4: - return -} -func CainDialogEnd() { - var ( - v0 int - v1 ns.ObjectID - v2 int - ) - v2 = gvar53 - if v2 == gvar45 { - goto LABEL1 - } - if v2 == gvar46 { - goto LABEL2 - } - if v2 == gvar47 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - v0 = ns.GetAnswer(obj9) - if v0 != 1 { - goto LABEL5 - } - v1 = ns.GetLastItem(ns.GetHost()) - for { - if v1 == 0 { - goto LABEL6 - } - if !(ns.HasClass(v1, ns.FOOD) && ns.HasSubclass(v1, ns.HEALTH_POTION)) { - goto LABEL7 - } - ns.Drop(ns.GetHost(), v1) - ns.Delete(v1) - fvar55 = ns.GetObjectX(obj9) - fvar56 = ns.GetObjectY(obj9) - CainRescue() - return - LABEL7: - v1 = ns.GetPreviousItem(v1) - } -LABEL6: - ns.PrintToAll("War09c:CainNoPotion") - goto LABEL9 -LABEL5: - ns.FrameTimer(1, CainPlea2) -LABEL9: - goto LABEL4 -LABEL2: - ns.CreatureFollow(obj10, ns.GetHost()) - ns.BecomePet(obj10) - ns.PrintToAll("War09c:SavedCain") - ns.GiveXp(ns.GetHost(), 2500) - ns.CancelDialog(obj10) - flag61 = true - gvar53 = gvar47 - goto LABEL4 -LABEL3: - goto LABEL4 -LABEL4: - return -} -func LichFight() { - ns.ObjectOn(obj18) - ns.Enchant(obj18, ns.ENCHANT_INVISIBLE, 3) - ns.MoveObject(obj18, ns.GetWaypointX(wp41[3]), ns.GetWaypointY(wp41[3])) - ns.Effect(ns.BLUE_SPARKS, ns.GetWaypointX(wp41[3]), ns.GetWaypointY(wp41[3]), 0, 0) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp41[3]), ns.GetWaypointY(wp41[3]), 0, 0) -} -func NecroTalk() { - if !ns.IsCaller(obj16) { - goto LABEL1 - } - ns.ObjectOff(obj17) - ns.SetDialog(obj16, ns.NORMAL, NecroDialogStart, NecroDialogEnd) - ns.StartDialog(obj16, ns.GetHost()) -LABEL1: - return -} -func MoveBody() { - ns.Delete(obj9) - ns.MoveObject(obj10, fvar55, fvar56) -} -func StartNecroFight2() { - ns.Frozen(ns.GetHost(), true) - ns.WideScreen(true) - ns.Walk(obj16, ns.GetWaypointX(wp30), ns.GetWaypointY(wp30)) -} -func WolfHarass2() { - var ( - v0 int - v1 int - v2 int - ) - v0 = ns.Random(40, 65) - v1 = ns.Random(0, 2) - if ns.IsObjectOn(obj11) { - goto LABEL1 - } - ns.ObjectOn(obj11) - ns.ObjectOn(obj12) - ns.ObjectOn(obj13) -LABEL1: - v2 = v1 - if v2 == 0 { - goto LABEL2 - } - if v2 == 1 { - goto LABEL3 - } - if v2 == 2 { - goto LABEL4 - } - goto LABEL5 -LABEL2: - if !(flag58 == false && flag63 == false) { - goto LABEL6 - } - ns.HitLocation(obj11, ns.GetObjectX(obj9), ns.GetObjectY(obj9)) - goto LABEL7 -LABEL6: - v0 = 2 -LABEL7: - goto LABEL5 -LABEL3: - if !(flag59 == false && flag64 == false) { - goto LABEL8 - } - ns.HitLocation(obj12, ns.GetObjectX(obj9), ns.GetObjectY(obj9)) - goto LABEL9 -LABEL8: - v0 = 2 -LABEL9: - goto LABEL5 -LABEL4: - if !(flag60 == false && flag65 == false) { - goto LABEL10 - } - ns.HitLocation(obj13, ns.GetObjectX(obj9), ns.GetObjectY(obj9)) - goto LABEL11 -LABEL10: - v0 = 2 -LABEL11: - goto LABEL5 -LABEL5: - if !(flag63 == false || flag64 == false || flag65 == false) { - goto LABEL12 - } - ns.FrameTimer(v0, WolfHarass2) - goto LABEL13 -LABEL12: - return -LABEL13: - return -} -func CainPlea2() { - ns.Chat(obj9, "War09c:CainPlea2") -} -func MapEntry() { - ns.NoWallSound(false) -} -func KeepOut() { - r1 := ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) - if !r1 { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func KeepOut2() { - if flag69 { - goto LABEL1 - } - if !ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func Secret01Declare() { - ns.ObjectOff(ns.GetTrigger()) - ns.MoveWaypoint(wp43, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.AudioEvent(ns.SecretFound, wp43) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 75) -} -func Secret02Declare() { - ns.ObjectOff(ns.GetTrigger()) - ns.MoveWaypoint(wp43, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.AudioEvent(ns.SecretFound, wp43) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 150) -} -func SkeletonMarch() { - ns.ObjectGroupOff(gvar26) - ns.ObjectGroupOn(gvar23) - ns.Wander(obj5) - ns.Wander(obj6) - ns.Wander(obj7) - ns.Wander(obj8) -} -func LoneWolf01Retreat() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - ) - v0 = ns.GetWaypointX(wp39) - v1 = ns.GetWaypointY(wp39) - v2 = ns.GetWaypointX(wp40) - v3 = ns.GetWaypointY(wp40) - ns.RetreatLevel(obj4, 0) - ns.CreatureGuard(obj4, v0, v1, v2, v3, 150) -} -func WolfAmbush() { - ns.ObjectGroupOff(gvar22) - obj50 = ns.CreateObject("BlackWolf", wp37) - obj51 = ns.CreateObject("BlackWolf", wp38) - ns.FrameTimer(1, WolfOrders) -} -func HomePatrol() { - ns.AggressionLevel(ns.GetTrigger(), 0.83) - ns.GoBackHome(ns.GetTrigger()) - ns.PauseObject(ns.GetTrigger(), 120) - ns.Wander(ns.GetTrigger()) -} -func WolfGone() { - if !ns.IsTrigger(obj11) { - goto LABEL1 - } - flag58 = true - if !(ns.CurrentHealth(obj11) > 0) { - goto LABEL1 - } - ns.AggressionLevel(obj11, 0.5) -LABEL1: - if !ns.IsTrigger(obj12) { - goto LABEL2 - } - flag59 = true - if !(ns.CurrentHealth(obj12) > 0) { - goto LABEL2 - } - ns.AggressionLevel(obj12, 0.5) -LABEL2: - if !ns.IsTrigger(obj13) { - goto LABEL3 - } - flag60 = true - if !(ns.CurrentHealth(obj13) > 0) { - goto LABEL3 - } - ns.AggressionLevel(obj13, 0.5) -LABEL3: - if !(flag58 == true && flag59 == true && flag60 == true) { - goto LABEL4 - } - ns.DestroyChat(obj9) - flag57 = true - gvar54 = gvar49 - ns.SetDialog(obj9, ns.YESNO, CainDialogStart, CainDialogEnd) -LABEL4: - return -} -func CainPlea() { - var v0 int - if !(ns.IsCaller(ns.GetHost()) && ns.CurrentHealth(obj9) > 0) { - goto LABEL1 - } - v0 = gvar54 - if v0 == gvar48 { - goto LABEL2 - } - if v0 == gvar49 { - goto LABEL3 - } - goto LABEL1 -LABEL2: - ns.Chat(obj9, "War09c:CainPlea") - goto LABEL1 -LABEL3: - ns.Chat(obj9, "War09c:CainPlea2") - goto LABEL1 -LABEL1: - return -} -func WolfHarass() { - r1 := ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) - if !(r1 && flag61 == false) { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - if !ns.IsCaller(ns.GetHost()) { - goto LABEL2 - } - if !(flag61 == false && flag62 == false) { - goto LABEL2 - } - WolfHarass2() -LABEL2: - return -} -func WolvesTargetPlayer() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - if flag58 { - goto LABEL2 - } - flag63 = true - ns.AggressionLevel(obj11, 0.5) - ns.Attack(obj11, ns.GetHost()) -LABEL2: - if flag59 { - goto LABEL3 - } - flag64 = true - ns.AggressionLevel(obj12, 0.5) - ns.Attack(obj12, ns.GetHost()) -LABEL3: - if flag60 { - goto LABEL1 - } - flag65 = true - ns.AggressionLevel(obj13, 0.5) - ns.Attack(obj13, ns.GetHost()) -LABEL1: - return -} -func CainDie() { - if !(ns.CurrentHealth(obj11) > 0) { - goto LABEL1 - } - ns.AggressionLevel(obj11, 0.83) -LABEL1: - if !(ns.CurrentHealth(obj12) > 0) { - goto LABEL2 - } - ns.AggressionLevel(obj12, 0.83) -LABEL2: - if !(ns.CurrentHealth(obj13) > 0) { - goto LABEL3 - } - ns.AggressionLevel(obj13, 0.83) -LABEL3: - fvar55 = ns.GetObjectX(obj9) - fvar56 = ns.GetObjectY(obj9) - flag62 = true - ns.ObjectOn(obj10) - ns.Damage(obj10, 0, 200000, 0) - ns.FrameTimer(1, MoveBody) -} -func CainRescue() { - ns.Delete(obj9) - ns.MoveObject(obj10, fvar55, fvar56) - ns.ObjectOn(obj10) - ns.CreatureGuard(obj10, fvar55, fvar56, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - gvar53 = gvar46 - ns.SetDialog(obj10, ns.NORMAL, CainDialogStart, CainDialogEnd) - ns.LookAtObject(obj10, ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj10) - ns.StartDialog(obj10, ns.GetHost()) -} -func NecroDialogStart() { - var ( - v0 int - v1 int - ) - v0 = ns.Random(1, 2) - v1 = v0 - if v1 == 1 { - goto LABEL1 - } - if v1 == 2 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.LookAtObject(obj16, ns.GetHost()) - ns.LookAtObject(obj15, ns.GetHost()) - ns.LookAtObject(obj14, ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj16) - ns.TellStory(ns.SwordsmanHurt, "Con09a:NecroThreat1") - goto LABEL3 -LABEL2: - ns.LookAtObject(obj16, ns.GetHost()) - ns.LookAtObject(obj15, ns.GetHost()) - ns.LookAtObject(obj14, ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj16) - ns.TellStory(ns.SwordsmanHurt, "Con09a:NecroThreat4") - goto LABEL3 -LABEL3: - return -} -func NecroDialogEnd() { - ns.CancelDialog(obj16) - ns.AggressionLevel(obj14, 0.83) - ns.AggressionLevel(obj15, 0.83) - ns.AggressionLevel(obj16, 0.83) - ns.CreatureIdle(obj14) - ns.CreatureIdle(obj15) - ns.Frozen(ns.GetHost(), false) - ns.WideScreen(false) - ns.FrameTimer(ivar52, LichFight) -} -func StartNecroFight() { - var v0 int - ns.WayPointGroupOff(gvar44) - ns.ObjectOff(obj19) - ns.ObjectGroupOff(gvar25) - ns.ObjectOn(obj17) - ns.ObjectOn(obj14) - ns.ObjectOn(obj15) - ns.ObjectOn(obj16) - ns.NoWallSound(true) - ns.WallGroupOpen(gvar29) - ns.NoWallSound(false) - ns.MusicPushEvent() - PlayAction2() - ns.WallGroupClose(gvar28) - v0 = 0 - for { - if !(v0 < 5) { - goto LABEL1 - } - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp42[v0]), ns.GetWaypointY(wp42[v0]), 0, 0) - v0 += 1 - } -LABEL1: - ns.FrameTimer(1, StartNecroFight2) -} -func NecroTeleport() { - var ( - v0 float32 - v1 float32 - v2 int - ) - v2 = ns.Random(0, 4) - v0 = ns.GetWaypointX(wp41[v2]) - v1 = ns.GetWaypointY(wp41[v2]) - if !(ns.IsCaller(obj14) || ns.IsCaller(obj15) || ns.IsCaller(obj16) || ns.IsCaller(obj18)) { - goto LABEL1 - } - ns.Enchant(ns.GetCaller(), ns.ENCHANT_INVISIBLE, 2) - ns.Effect(ns.BLUE_SPARKS, ns.GetObjectX(ns.GetCaller()), ns.GetObjectY(ns.GetCaller()), 0, 0) - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(ns.GetCaller()), ns.GetObjectY(ns.GetCaller()), 0, 0) - ns.MoveObject(ns.GetCaller(), v0, v1) - ns.Effect(ns.BLUE_SPARKS, v0, v1, 0, 0) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) -LABEL1: - return -} -func NecroTeleportInjured() { - var ( - v0 float32 - v1 float32 - v2 int - ) - v2 = ns.Random(0, 4) - v0 = ns.GetWaypointX(wp41[v2]) - v1 = ns.GetWaypointY(wp41[v2]) - if !(ns.IsTrigger(obj14) || ns.IsTrigger(obj15) || ns.IsTrigger(obj16)) { - goto LABEL1 - } - ns.PauseObject(ns.GetTrigger(), 15) -LABEL1: - ns.Enchant(ns.GetTrigger(), ns.ENCHANT_INVISIBLE, 2) - ns.Effect(ns.BLUE_SPARKS, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger()), 0, 0) - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger()), 0, 0) - ns.MoveObject(ns.GetTrigger(), v0, v1) - ns.Effect(ns.BLUE_SPARKS, v0, v1, 0, 0) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) -} -func HuntPlayer() { - ns.CreatureHunt(ns.GetTrigger()) -} -func OpenMagicWalls() { - var v0 int - if !ns.IsTrigger(obj14) { - goto LABEL1 - } - flag66 = true -LABEL1: - if !ns.IsTrigger(obj15) { - goto LABEL2 - } - flag67 = true -LABEL2: - if !ns.IsTrigger(obj16) { - goto LABEL3 - } - flag68 = true -LABEL3: - if !ns.IsTrigger(obj18) { - goto LABEL4 - } - flag69 = true -LABEL4: - if !(flag66 == true && flag67 == true && flag68 == true && flag69 == true) { - goto LABEL5 - } - ns.WallGroupOpen(gvar28) - v0 = 0 - for { - if !(v0 < 5) { - goto LABEL6 - } - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp42[v0]), ns.GetWaypointY(wp42[v0]), 0, 0) - v0 += 1 - } -LABEL6: - ns.WayPointGroupOn(gvar44) - ns.MusicPopEvent() -LABEL5: - return -} -func TeleportToPlayer() { - var ( - v0 int - v1 float32 - v2 float32 - v3 ns.WaypointID - ) - v2 = 1e+06 - v0 = 0 - for { - if !(v0 < 5) { - goto LABEL1 - } - v1 = ns.Distance(ns.GetWaypointX(wp41[v0]), ns.GetWaypointY(wp41[v0]), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - if !(v1 < v2) { - goto LABEL2 - } - v2 = v1 - v3 = wp41[v0] - LABEL2: - v0 += 1 - } -LABEL1: - ns.Enchant(obj18, ns.ENCHANT_INVISIBLE, 1) - ns.Effect(ns.BLUE_SPARKS, ns.GetObjectX(obj18), ns.GetObjectY(obj18), 0, 0) - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(obj18), ns.GetObjectY(obj18), 0, 0) - ns.MoveObject(obj18, ns.GetWaypointX(v3), ns.GetWaypointY(v3)) - ns.Effect(ns.BLUE_SPARKS, ns.GetWaypointX(v3), ns.GetWaypointY(v3), 0, 0) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(v3), ns.GetWaypointY(v3), 0, 0) -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapInitialize": - MapInitialize() - case "MapEntry": - MapEntry() - } -} diff --git a/examples/war10a/dummy_test.go b/examples/war10a/dummy_test.go deleted file mode 100644 index a742458..0000000 --- a/examples/war10a/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package war10a - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/war10a/war10a.go b/examples/war10a/war10a.go deleted file mode 100644 index e9cdda6..0000000 --- a/examples/war10a/war10a.go +++ /dev/null @@ -1,820 +0,0 @@ -package war10a - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 ns.ObjectID - obj5 ns.ObjectID - obj6 ns.ObjectID - obj7 ns.ObjectID - obj8 ns.ObjectID - obj9 ns.ObjectID - obj10 ns.ObjectID - obj11 ns.ObjectID - obj12 ns.ObjectID - obj13 ns.ObjectID - obj14 ns.ObjectID - obj15 ns.ObjectID - obj16 ns.ObjectID - obj17 ns.ObjectID - obj18 ns.ObjectID - obj19 ns.ObjectID - obj20 ns.ObjectID - obj21 ns.ObjectID - obj22 ns.ObjectID - obj23 ns.ObjectID - obj24 ns.ObjectID - obj25 ns.ObjectID - obj26 ns.ObjectID - obj27 ns.ObjectID - obj28 ns.ObjectID - obj29 ns.ObjectID - obj30 ns.ObjectID - obj31 ns.ObjectID - obj32 ns.ObjectID - obj33 ns.ObjectID - obj34 ns.ObjectID - obj35 ns.ObjectID - obj36 ns.ObjectID - obj37 ns.ObjectID - obj38 ns.ObjectID - obj39 ns.ObjectID - obj40 ns.ObjectID - obj41 ns.ObjectID - obj42 ns.ObjectID - obj43 ns.ObjectID - obj44 ns.ObjectID - obj45 ns.ObjectID - obj46 ns.ObjectID - obj47 ns.ObjectID - wp48 ns.WaypointID - wp49 ns.WaypointID - wp50 ns.WaypointID - wp51 ns.WaypointID - wp52 ns.WaypointID - wp53 ns.WaypointID - wp54 ns.WaypointID - wp55 ns.WaypointID - wp56 ns.WaypointID - wp57 ns.WaypointID - wp58 ns.WaypointID - wp59 ns.WaypointID - wp60 ns.WaypointID - gvar61 ns.WallGroupID - gvar62 ns.WallGroupID - gvar63 ns.WallGroupID - gvar64 ns.ObjectGroupID - gvar65 ns.ObjectGroupID - gvar66 ns.ObjectGroupID - gvar67 ns.ObjectGroupID - gvar68 ns.ObjectGroupID - gvar69 ns.ObjectGroupID - gvar70 ns.ObjectGroupID - flag71 bool - flag72 bool - flag73 bool - flag74 bool - gvar75 ns.WallGroupID - gvar76 ns.WallGroupID - gvar77 ns.WallGroupID - gvar78 ns.ObjectGroupID - obj79 ns.ObjectID - obj80 ns.ObjectID - gvar81 ns.WallGroupID - flag82 bool - flag83 bool - wp84 ns.WaypointID - wp85 ns.WaypointID - obj86 ns.ObjectID - obj87 ns.ObjectID - wp88 ns.WaypointID - wp89 ns.WaypointID - obj90 ns.ObjectID - gvar91 ns.WallGroupID - gvar92 ns.WallGroupID - gvar93 ns.ObjectGroupID - gvar94 ns.ObjectGroupID - gvar95 ns.ObjectGroupID - gvar96 ns.ObjectGroupID - gvar97 ns.ObjectGroupID - gvar98 ns.ObjectGroupID - wp99 ns.WaypointID - wp100 ns.WaypointID - wp101 ns.WaypointID - wp102 ns.WaypointID - wp103 ns.WaypointID - wp104 ns.WaypointID - obj105 ns.ObjectID - obj106 ns.ObjectID - wp107 ns.WaypointID - gvar108 ns.ObjectGroupID - obj109 ns.ObjectID - obj110 ns.ObjectID - gvar111 int - wp112 ns.WaypointID - wp113 ns.WaypointID - gvar114 ns.WallGroupID - gvar115 ns.WallGroupID - gvar116 ns.ObjectGroupID - gvar117 ns.WallGroupID - gvar118 ns.WallGroupID - wp119 ns.WaypointID - obj120 ns.ObjectID - obj121 ns.ObjectID - obj122 ns.ObjectID - wp123 ns.WaypointID - wp124 ns.WaypointID - fvar125 float32 - fvar126 float32 - flag127 bool - flag128 bool -) - -func init() { - flag71 = false - flag72 = false - flag73 = false - flag74 = false - flag83 = false - flag82 = false - flag127 = false - flag128 = false -} -func DisableArrow01() { - ns.ObjectOff(obj4) -} -func EnableArrow01() { - ns.ObjectOn(obj4) - ns.FrameTimer(1, DisableArrow01) -} -func DisableArrow02() { - ns.ObjectOff(obj5) -} -func EnableArrow02() { - ns.ObjectOn(obj5) - ns.FrameTimer(1, DisableArrow02) -} -func DisableArrow03() { - ns.ObjectOff(obj6) -} -func EnableArrow03() { - ns.ObjectOn(obj6) - ns.FrameTimer(1, DisableArrow03) -} -func DisableArrow04() { - ns.ObjectOff(obj7) -} -func EnableArrow04() { - ns.ObjectOn(obj7) - ns.FrameTimer(1, DisableArrow04) -} -func DisableArrow05() { - ns.ObjectOff(obj8) -} -func EnableArrow05() { - ns.ObjectOn(obj8) - ns.FrameTimer(1, DisableArrow05) -} -func DisableArrow06() { - ns.ObjectOff(obj9) -} -func EnableArrow06() { - ns.ObjectOn(obj9) - ns.FrameTimer(1, DisableArrow06) -} -func DisableArrow07() { - ns.ObjectOff(obj10) -} -func EnableArrow07() { - ns.ObjectOn(obj10) - ns.FrameTimer(1, DisableArrow07) -} -func DisableArrow08() { - ns.ObjectOff(obj11) -} -func EnableArrow08() { - ns.ObjectOn(obj11) - ns.FrameTimer(1, DisableArrow08) -} -func DisableArrow09() { - ns.ObjectOff(obj12) -} -func EnableArrow09() { - ns.ObjectOn(obj12) - ns.FrameTimer(1, DisableArrow09) -} -func DisableArrow10() { - ns.ObjectOff(obj13) -} -func EnableArrow10() { - ns.ObjectOn(obj13) - ns.FrameTimer(1, DisableArrow10) -} -func DisableArrow11() { - ns.ObjectOff(obj14) -} -func EnableArrow11() { - ns.ObjectOn(obj14) - ns.FrameTimer(1, DisableArrow11) -} -func DisableArrow12() { - ns.ObjectOff(obj15) -} -func EnableArrow12() { - ns.ObjectOn(obj15) - ns.FrameTimer(1, DisableArrow12) -} -func DisableArrow13() { - ns.ObjectOff(obj16) -} -func EnableArrow13() { - ns.ObjectOn(obj16) - ns.FrameTimer(1, DisableArrow13) -} -func DisableArrow14() { - ns.ObjectOff(obj17) -} -func EnableArrow14() { - ns.ObjectOn(obj17) - ns.FrameTimer(1, DisableArrow14) -} -func DisableArrow15() { - ns.ObjectOff(obj18) -} -func EnableArrow15() { - ns.ObjectOn(obj18) - ns.FrameTimer(1, DisableArrow15) -} -func DisableArrow25() { - ns.ObjectOff(obj28) -} -func EnableArrow25() { - ns.ObjectOn(obj28) - ns.FrameTimer(1, DisableArrow25) -} -func DisableArrow26() { - ns.ObjectOff(obj29) -} -func EnableArrow26() { - ns.ObjectOn(obj29) - ns.FrameTimer(1, DisableArrow26) -} -func DisableArrow27() { - ns.ObjectOff(obj30) -} -func EnableArrow27() { - ns.ObjectOn(obj30) - ns.FrameTimer(1, DisableArrow27) -} -func DisableArrow28() { - ns.ObjectOff(obj31) -} -func EnableArrow28() { - ns.ObjectOn(obj31) - ns.FrameTimer(1, DisableArrow28) -} -func DisableArrow29() { - ns.ObjectOff(obj32) -} -func EnableArrow29() { - ns.ObjectOn(obj32) - ns.FrameTimer(1, DisableArrow29) -} -func DisableArrow30() { - ns.ObjectOff(obj33) -} -func EnableArrow30() { - ns.ObjectOn(obj33) - ns.FrameTimer(1, DisableArrow30) -} -func DisableArrow31() { - ns.ObjectOff(obj34) -} -func EnableArrow31() { - ns.ObjectOn(obj34) - ns.FrameTimer(1, DisableArrow31) -} -func DisableArrow32() { - ns.ObjectOff(obj35) -} -func EnableArrow32() { - ns.ObjectOn(obj35) - ns.FrameTimer(1, DisableArrow32) -} -func DisableArrow33() { - ns.ObjectOff(obj36) -} -func EnableArrow33() { - ns.ObjectOn(obj36) - ns.FrameTimer(1, DisableArrow33) -} -func DisableArrow34() { - ns.ObjectOff(obj37) -} -func EnableArrow34() { - ns.ObjectOn(obj37) - ns.FrameTimer(1, DisableArrow34) -} -func DisableArrow35() { - ns.ObjectOff(obj38) -} -func EnableArrow35() { - ns.ObjectOn(obj38) - ns.FrameTimer(1, DisableArrow35) -} -func DisableArrow36() { - ns.ObjectOff(obj39) -} -func EnableArrow36() { - ns.ObjectOn(obj39) - ns.FrameTimer(1, DisableArrow36) -} -func DisableArrow37() { - ns.ObjectOff(obj40) -} -func EnableArrow37() { - ns.ObjectOn(obj40) - ns.FrameTimer(1, DisableArrow37) -} -func DisableArrow38() { - ns.ObjectOff(obj41) -} -func EnableArrow38() { - ns.ObjectOn(obj41) - ns.FrameTimer(1, DisableArrow38) -} -func DisableArrowGroup1() { - ns.ObjectOff(obj19) - ns.ObjectOff(obj20) - ns.ObjectOff(obj21) - ns.ObjectOff(obj22) -} -func EnableArrowGroup1() { - ns.ObjectOn(obj19) - ns.ObjectOn(obj20) - ns.ObjectOn(obj21) - ns.ObjectOn(obj22) - ns.FrameTimer(2, DisableArrowGroup1) -} -func DisableArrowGroup2() { - ns.ObjectOff(obj24) - ns.ObjectOff(obj25) - ns.ObjectOff(obj26) - ns.ObjectOff(obj27) -} -func EnableArrowGroup2() { - ns.ObjectOn(obj24) - ns.ObjectOn(obj25) - ns.ObjectOn(obj26) - ns.ObjectOn(obj27) - ns.FrameTimer(2, DisableArrowGroup2) -} -func Blocks2MoveBack() { - ns.Move(obj45, wp54) - ns.Move(obj46, wp55) - ns.Move(obj47, wp56) - ns.AudioEvent(ns.SpikeBlockMove, wp51) -} -func Blocks2Move() { - ns.ObjectGroupOff(gvar70) - ns.Move(obj45, wp51) - ns.Move(obj46, wp52) - ns.Move(obj47, wp53) - ns.AudioEvent(ns.SpikeBlockMove, wp54) -} -func OpenBlockWallGroup1() { - ns.WallGroupOpen(gvar61) -} -func OpenBlockWallGroup2() { - ns.WallGroupOpen(gvar62) -} -func OpenBlockWallGroup3() { - ns.WallGroupOpen(gvar63) -} -func FilterBlock5() int { - if !ns.IsCaller(obj46) { - goto LABEL1 - } - return 1 - goto LABEL2 -LABEL1: - return 0 -LABEL2: - return 0 -} -func UnlockSpikeDoor() { - ns.UnlockDoor(obj79) -} -func LockSpikeDoor() { - ns.LockDoor(obj79) -} -func SkelGroup1Hostilize() { - ns.GroupAggressionLevel(gvar64, 0.83) -} -func SkelGroup2Hostilize() { - ns.GroupAggressionLevel(gvar65, 0.83) -} -func SkelGroup3Hostilize() { - ns.GroupAggressionLevel(gvar66, 0.83) -} -func SkelGroup4Hostilize() { - ns.GroupAggressionLevel(gvar67, 0.83) -} -func SkelGroup5Hostilize() { - ns.GroupAggressionLevel(gvar68, 0.83) -} -func SkelGroup6Hostilize() { - ns.GroupAggressionLevel(gvar69, 0.83) -} -func OpenSecretWallGroup1() { - ns.WallGroupOpen(gvar75) -} -func OpenSecretWallGroup2() { - ns.WallGroupOpen(gvar76) -} -func OpenSecretWallGroup3() { - ns.WallGroupOpen(gvar77) -} -func Blocks1Move() { - ns.Move(obj42, wp48) - ns.Move(obj43, wp49) - ns.Move(obj44, wp50) - ns.AudioEvent(ns.SpikeBlockMove, wp57) - ns.AudioEvent(ns.SpikeBlockMove, wp59) - ns.AudioEvent(ns.SpikeBlockMove, wp60) -} -func Lever1Check() { - ns.WallGroupOpen(gvar62) - if flag71 { - goto LABEL1 - } - flag71 = true - ns.AudioEvent(ns.Gear3, wp60) - ns.ObjectOff(ns.GetTrigger()) -LABEL1: - if !(flag71 == true && flag72 == true) { - goto LABEL2 - } - Blocks1Move() -LABEL2: - return -} -func Lever2Check() { - ns.WallGroupOpen(gvar61) - if flag72 { - goto LABEL1 - } - flag72 = true - ns.AudioEvent(ns.Gear3, wp59) - ns.ObjectOff(ns.GetTrigger()) -LABEL1: - if !(flag71 == true && flag72 == true) { - goto LABEL2 - } - Blocks1Move() -LABEL2: - return -} -func Lever3Check() { - if flag73 { - goto LABEL1 - } - flag73 = true - ns.AudioEvent(ns.Gear3, wp58) - ns.ObjectOff(ns.GetTrigger()) -LABEL1: - if !(flag73 == true && flag74 == true) { - goto LABEL2 - } - OpenSecretWallGroup3() - ns.ObjectOn(obj80) -LABEL2: - return -} -func Lever4Check() { - if flag74 { - goto LABEL1 - } - flag74 = true - ns.AudioEvent(ns.Gear3, wp58) - ns.ObjectOff(ns.GetTrigger()) -LABEL1: - if !(flag73 == true && flag74 == true) { - goto LABEL2 - } - OpenSecretWallGroup3() - ns.ObjectOn(obj80) -LABEL2: - return -} -func PlayerDeath() { - ns.DeathScreen(10) -} -func OpenExitWallGroup() { - ns.WallGroupOpen(gvar81) -} -func PuzzleCheck() { - if !(flag82 && flag83) { - goto LABEL1 - } - OpenExitWallGroup() -LABEL1: - return -} -func LeftPuzzleActivation() { - flag83 = true - ns.AudioEvent(ns.CreatureCageAppears, wp85) - PuzzleCheck() -} -func RightPuzzleActivation() { - flag82 = true - ns.AudioEvent(ns.CreatureCageAppears, wp84) - PuzzleCheck() -} -func LeftPuzzleRelease() { - flag83 = false - PuzzleCheck() -} -func RightPuzzleRelease() { - flag82 = false - PuzzleCheck() -} -func OrbLightOff() { - ns.ObjectOff(obj86) - ns.MoveObject(obj87, ns.GetWaypointX(wp88), ns.GetWaypointY(wp88)) -} -func ForceOrb() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - ) - v0 = ns.RandomFloat(-30, 30) - v1 = ns.RandomFloat(-30, 30) - v2 = ns.GetObjectX(ns.GetTrigger()) + v0 - v3 = ns.GetObjectY(ns.GetTrigger()) + v1 - ns.MoveObject(obj86, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.MoveObject(obj87, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())+6) - ns.MoveWaypoint(wp89, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.ObjectOn(obj86) - ns.AudioEvent(ns.BallBounce, wp89) - ns.PushObject(ns.GetCaller(), 60, v2, v3) - ns.FrameTimer(4, OrbLightOff) -} -func PlaySubMusic() { - ns.Music(18, 100) -} -func MissionStart() { - ns.StartupScreen(10) - ns.JournalEntry(ns.GetHost(), "War10aOrbQuest", 2) - ns.FrameTimer(10, PlaySubMusic) -} -func InitializeVampireKnights() { - obj120 = ns.Object("VampireKnight1") - obj121 = ns.Object("VKBat1") - wp123 = ns.Waypoint("VampireKnight1WP") - wp124 = ns.Waypoint("BatCreate") -} -func OpenVampire1WallGroup() { - ns.WallGroupOpen(gvar114) -} -func MapInitialize() { - obj90 = ns.Object("MissionTrig") - gvar118 = ns.WallGroup("GoldKeyWallGroup") - wp119 = ns.Waypoint("GoldKeyExitWP") - gvar93 = ns.ObjectGroup("PitAmbushGroup") - gvar91 = ns.WallGroup("SkelPitWallGroup") - gvar92 = ns.WallGroup("ElevatorWallGroup") - gvar94 = ns.ObjectGroup("PitSpikesGroup1") - gvar95 = ns.ObjectGroup("PitSpikesGroup2") - gvar96 = ns.ObjectGroup("PitSpikesGroup3") - gvar97 = ns.ObjectGroup("PitSpikesGroup4") - gvar98 = ns.ObjectGroup("PitSpikesGroup5") - wp99 = ns.Waypoint("Spikes1AudioWP") - wp100 = ns.Waypoint("Spikes2AudioWP") - wp101 = ns.Waypoint("Spikes3AudioWP") - wp102 = ns.Waypoint("Spikes4AudioWP") - wp103 = ns.Waypoint("Spikes5AudioWP") - wp104 = ns.Waypoint("Secret1AudioWP") - obj4 = ns.Object("Arrow01") - obj5 = ns.Object("Arrow02") - obj6 = ns.Object("Arrow03") - obj7 = ns.Object("Arrow04") - obj8 = ns.Object("Arrow05") - obj9 = ns.Object("Arrow06") - obj10 = ns.Object("Arrow07") - obj11 = ns.Object("Arrow08") - obj12 = ns.Object("Arrow09") - obj13 = ns.Object("Arrow10") - obj14 = ns.Object("Arrow11") - obj15 = ns.Object("Arrow12") - obj16 = ns.Object("Arrow13") - obj17 = ns.Object("Arrow14") - obj18 = ns.Object("Arrow15") - obj19 = ns.Object("Arrow16") - obj20 = ns.Object("Arrow17") - obj21 = ns.Object("Arrow18") - obj22 = ns.Object("Arrow19") - obj23 = ns.Object("Arrow20") - obj24 = ns.Object("Arrow21") - obj25 = ns.Object("Arrow22") - obj26 = ns.Object("Arrow23") - obj27 = ns.Object("Arrow24") - obj28 = ns.Object("Arrow25") - obj29 = ns.Object("Arrow26") - obj30 = ns.Object("Arrow27") - obj31 = ns.Object("Arrow28") - obj32 = ns.Object("Arrow29") - obj33 = ns.Object("Arrow30") - obj34 = ns.Object("Arrow31") - obj35 = ns.Object("Arrow32") - obj36 = ns.Object("Arrow33") - obj37 = ns.Object("Arrow34") - obj38 = ns.Object("Arrow35") - obj39 = ns.Object("Arrow36") - obj40 = ns.Object("Arrow37") - obj41 = ns.Object("Arrow38") - obj42 = ns.Object("Block1") - obj43 = ns.Object("Block2") - obj44 = ns.Object("Block3") - obj45 = ns.Object("Block4") - obj46 = ns.Object("Block5") - obj47 = ns.Object("Block6") - wp48 = ns.Waypoint("Block1WP") - wp49 = ns.Waypoint("Block2WP") - wp50 = ns.Waypoint("Block3WP") - wp51 = ns.Waypoint("Block4WP") - wp52 = ns.Waypoint("Block5WP") - wp53 = ns.Waypoint("Block6WP") - wp54 = ns.Waypoint("Block4WPb") - wp55 = ns.Waypoint("Block5WPb") - wp56 = ns.Waypoint("Block6WPb") - wp57 = ns.Waypoint("BlockAudioWP") - wp58 = ns.Waypoint("BlockAudio2WP") - wp59 = ns.Waypoint("BlockAudio3WP") - wp60 = ns.Waypoint("BlockAudio4WP") - obj105 = ns.Object("Blocks2Trigger") - gvar61 = ns.WallGroup("BlockWallGroup1") - gvar62 = ns.WallGroup("BlockWallGroup2") - gvar63 = ns.WallGroup("BlockWallGroup3") - gvar70 = ns.ObjectGroup("SkelBlockTrigGroup") - gvar78 = ns.ObjectGroup("SpikeGroup1") - obj79 = ns.Object("SpikeDoor") - ns.LockDoor(obj79) - obj106 = ns.Object("StoneBlock1") - gvar75 = ns.WallGroup("SecretWallGroup1") - gvar76 = ns.WallGroup("SecretWallGroup2") - gvar77 = ns.WallGroup("SecretWallGroup3") - wp107 = ns.Waypoint("Secret2AudioWP") - gvar108 = ns.ObjectGroup("Secret200Group") - gvar64 = ns.ObjectGroup("SkelGroup1") - gvar65 = ns.ObjectGroup("SkelGroup2") - gvar66 = ns.ObjectGroup("SkelGroup3") - gvar67 = ns.ObjectGroup("SkelGroup4") - gvar68 = ns.ObjectGroup("SkelGroup5") - gvar69 = ns.ObjectGroup("SkelGroup6") - obj109 = ns.Object("VampireKnight1") - obj110 = ns.Object("VKbat1") - wp112 = ns.Waypoint("VampireKnight1WP ") - wp113 = ns.Waypoint("BatCreate") - gvar114 = ns.WallGroup("Vampire1WallGroup") - gvar115 = ns.WallGroup("Vampire1WallGroup2") - gvar116 = ns.ObjectGroup("Vampire1TrigGroup") - gvar117 = ns.WallGroup("CherubWallGroup") - OpenVampire1WallGroup() - gvar81 = ns.WallGroup("ExitWallGroup") - obj86 = ns.Object("OrbLight") - wp89 = ns.Waypoint("OrbSoundWP") - obj87 = ns.Object("OrbEffect") - wp88 = ns.Waypoint("OrbEffectWP") - wp84 = ns.Waypoint("RightPuzzleWP") - wp85 = ns.Waypoint("LeftPuzzleWP") - obj80 = ns.Object("Necro1") - MissionStart() - InitializeVampireKnights() -} -func OpenGoldKeyWallGroup() { - ns.WallGroupOpen(gvar118) - ns.AudioEvent(ns.FlagDrop, wp119) -} -func OpenCherubWallGroup() { - ns.WallGroupOpen(gvar117) -} -func Secret100XP() { - ns.GiveXp(ns.GetHost(), 100) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.AudioEvent(ns.SecretFound, wp104) -} -func Secret200XP() { - ns.GiveXp(ns.GetHost(), 200) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.AudioEvent(ns.SecretFound, wp107) - ns.ObjectGroupOff(gvar108) -} -func PlayWanderMusic() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Music(17, 100) -LABEL1: - return -} -func PlayAction3Music() { - ns.Music(28, 100) -} -func ToggleSpikes1() { - ns.ObjectGroupToggle(gvar94) - ns.AudioEvent(ns.FloorSpikesDown, wp99) -} -func ToggleSpikes2() { - ns.ObjectGroupToggle(gvar95) - ns.ObjectGroupToggle(gvar96) - ns.AudioEvent(ns.FloorSpikesDown, wp100) - ns.AudioEvent(ns.FloorSpikesDown, wp101) -} -func ToggleSpikes3() { - ns.ObjectGroupToggle(gvar97) - ns.ObjectGroupToggle(gvar98) - ns.AudioEvent(ns.FloorSpikesDown, wp102) - ns.AudioEvent(ns.FloorSpikesDown, wp103) -} -func OpenSkelPitWallGroup() { - ns.WallGroupOpen(gvar91) - ns.GroupAggressionLevel(gvar93, 0.83) -} -func OpenElevatorWallGroup() { - ns.WallGroupOpen(gvar92) -} -func BatToVampireKnight() { - ns.Effect(ns.BLUE_SPARKS, fvar125, fvar126, 0, 0) - ns.Effect(ns.SMOKE_BLAST, fvar125, fvar126, 0, 0) - ns.Enchant(obj120, ns.ENCHANT_INVISIBLE, 0.25) - ns.MoveObject(obj120, fvar125, fvar126) - ns.LookAtObject(obj120, ns.GetHost()) - PlayAction3Music() -} -func SetRetreatBat() { - ns.AggressionLevel(obj122, 0.83) - ns.SetCallback(obj122, 7, BatDie) - ns.SetCallback(obj122, 5, BatDie) -} -func BatDie() { - var ( - v0 ns.ObjectID - v1 ns.ObjectID - v2 ns.ObjectID - ) - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(obj122), ns.GetObjectY(obj122), 0, 0) - ns.MoveWaypoint(wp124, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.Delete(obj122) - ns.AudioEvent(ns.BurnCast, wp124) - v0 = ns.CreateObject("Flame", wp124) - v1 = ns.CreateObject("MediumFlame", wp124) - v2 = ns.CreateObject("SmallFlame", wp124) - ns.DeleteObjectTimer(v0, 80) - ns.DeleteObjectTimer(v1, 83) - ns.DeleteObjectTimer(v2, 85) - ns.WallGroupOpen(gvar114) - ns.WallGroupOpen(gvar115) - PlaySubMusic() - ns.GiveXp(ns.GetHost(), 250) -} -func ChangeOnSight() { - if !flag128 { - goto LABEL1 - } - ns.AggressionLevel(ns.GetTrigger(), 0.83) - ns.SetCallback(ns.GetTrigger(), 6, BatToVampireKnight) -LABEL1: - return -} -func InjureVampireKnight() { - fvar125 = ns.GetObjectX(ns.GetTrigger()) - fvar126 = ns.GetObjectY(ns.GetTrigger()) - ns.ObjectOn(obj120) - ns.Damage(obj120, 0, 50, 0) - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger()), 0, 0) - ns.Delete(ns.GetTrigger()) - ns.FrameTimer(1, BatToVampireKnight) -} -func VKDie() { - fvar125 = ns.GetObjectX(ns.GetTrigger()) - fvar126 = ns.GetObjectY(ns.GetTrigger()) - ns.Delete(ns.GetTrigger()) - ns.MoveWaypoint(wp124, fvar125, fvar126) - obj122 = ns.CreateObject("Bat", wp124) - ns.FrameTimer(1, SetRetreatBat) -} -func CloseVampire1WallGroup() { - ns.WallGroupClose(gvar114) - ns.ObjectGroupOff(gvar116) -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapInitialize": - MapInitialize() - } -} diff --git a/examples/war10b/dummy_test.go b/examples/war10b/dummy_test.go deleted file mode 100644 index 0a163e8..0000000 --- a/examples/war10b/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package war10b - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/war10b/war10b.go b/examples/war10b/war10b.go deleted file mode 100644 index ad45e43..0000000 --- a/examples/war10b/war10b.go +++ /dev/null @@ -1,630 +0,0 @@ -package war10b - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - gvar4 ns.ObjectGroupID - obj5 ns.ObjectID - obj6 ns.ObjectID - obj7 ns.ObjectID - obj8 ns.ObjectID - obj9 ns.ObjectID - obj10 ns.ObjectID - obj11 ns.ObjectID - obj12 ns.ObjectID - obj13 ns.ObjectID - wp14 ns.WaypointID - wp15 ns.WaypointID - wp16 ns.WaypointID - wp17 ns.WaypointID - wp18 ns.WaypointID - wp19 ns.WaypointID - wp20 ns.WaypointID - wp21 ns.WaypointID - wp22 ns.WaypointID - obj23 ns.ObjectID - obj24 ns.ObjectID - obj25 ns.ObjectID - obj26 ns.ObjectID - obj27 ns.ObjectID - obj28 ns.ObjectID - wp29 ns.WaypointID - wp30 ns.WaypointID - wp31 ns.WaypointID - wp32 ns.WaypointID - wp33 ns.WaypointID - wp34 ns.WaypointID - wp35 ns.WaypointID - wp36 ns.WaypointID - wp37 ns.WaypointID - wp38 ns.WaypointID - wp39 ns.WaypointID - wp40 ns.WaypointID - gvar41 int - gvar42 int - gvar43 int - obj44 ns.ObjectID - obj45 ns.ObjectID - obj46 ns.ObjectID - obj47 ns.ObjectID - obj48 ns.ObjectID - wp49 ns.WaypointID - wp50 ns.WaypointID - wp51 ns.WaypointID - wp52 ns.WaypointID - wp53 ns.WaypointID - wp54 ns.WaypointID - wp55 ns.WaypointID - wp56 ns.WaypointID - wp57 ns.WaypointID - wp58 ns.WaypointID - gvar59 int - gvar60 int - gvar61 int - obj62 ns.ObjectID - obj63 ns.ObjectID - obj64 ns.ObjectID - wp65 ns.WaypointID - wp66 ns.WaypointID - wp67 ns.WaypointID - wp68 ns.WaypointID - wp69 ns.WaypointID - wp70 ns.WaypointID - gvar71 int - gvar72 int - gvar73 int - obj74 ns.ObjectID - obj75 ns.ObjectID - wp76 ns.WaypointID - wp77 ns.WaypointID - gvar78 ns.WallGroupID - gvar79 ns.ObjectGroupID - gvar80 ns.WallGroupID - gvar81 ns.WallGroupID - gvar82 ns.WallGroupID - obj83 ns.ObjectID - obj84 ns.ObjectID - gvar85 ns.ObjectGroupID - gvar86 ns.ObjectGroupID - gvar87 ns.WallGroupID - obj88 ns.ObjectID - wp89 ns.WaypointID - gvar90 ns.WallGroupID - obj91 ns.ObjectID - obj92 ns.ObjectID - obj93 ns.ObjectID - wp94 ns.WaypointID - wp95 ns.WaypointID - wp96 ns.WaypointID - obj97 ns.ObjectID - obj98 ns.ObjectID - obj99 ns.ObjectID - wp100 ns.WaypointID - wp101 ns.WaypointID - gvar102 ns.ObjectGroupID - gvar103 ns.WallGroupID - gvar104 ns.WallGroupID - gvar105 ns.WallGroupID - gvar106 ns.WallGroupID - gvar107 ns.WallGroupID - gvar108 ns.WallGroupID - obj109 ns.ObjectID - obj110 ns.ObjectID - obj111 [2]ns.ObjectID - obj112 [2]ns.ObjectID - obj113 ns.ObjectID - wp114 ns.WaypointID - wp115 ns.WaypointID - wp116 ns.WaypointID - fvar117 float32 - fvar118 float32 - flag119 bool - flag120 bool -) - -func init() { - gvar41 = 0 - gvar42 = 1 - gvar43 = gvar41 - gvar59 = 0 - gvar60 = 1 - gvar61 = gvar59 - gvar71 = 0 - gvar72 = 1 - gvar73 = gvar71 - flag119 = false - flag120 = false -} -func DisableArrow1() { - ns.ObjectOff(obj5) -} -func EnableArrow1() { - ns.ObjectOn(obj5) - ns.AudioEvent(ns.BowShoot, wp14) - ns.FrameTimer(1, DisableArrow1) -} -func DisableArrow2() { - ns.ObjectOff(obj6) -} -func EnableArrow2() { - ns.ObjectOn(obj6) - ns.AudioEvent(ns.BowShoot, wp15) - ns.FrameTimer(1, DisableArrow2) -} -func DisableArrow3() { - ns.ObjectOff(obj7) -} -func EnableArrow3() { - ns.ObjectOn(obj7) - ns.AudioEvent(ns.BowShoot, wp16) - ns.FrameTimer(1, DisableArrow3) -} -func DisableArrow4() { - ns.ObjectOff(obj8) -} -func EnableArrow4() { - ns.ObjectOn(obj8) - ns.AudioEvent(ns.BowShoot, wp17) - ns.FrameTimer(1, DisableArrow4) -} -func DisableArrow5() { - ns.ObjectOff(obj9) -} -func EnableArrow5() { - ns.ObjectOn(obj9) - ns.AudioEvent(ns.BowShoot, wp18) - ns.FrameTimer(1, DisableArrow5) -} -func DisableArrow6() { - ns.ObjectOff(obj10) -} -func EnableArrow6() { - ns.ObjectOn(obj10) - ns.AudioEvent(ns.BowShoot, wp19) - ns.FrameTimer(1, DisableArrow6) -} -func DisableArrow7() { - ns.ObjectOff(obj11) -} -func EnableArrow7() { - ns.ObjectOn(obj11) - ns.AudioEvent(ns.BowShoot, wp20) - ns.FrameTimer(1, DisableArrow7) -} -func DisableArrow8() { - ns.ObjectOff(obj12) -} -func EnableArrow8() { - ns.ObjectOn(obj12) - ns.AudioEvent(ns.BowShoot, wp21) - ns.FrameTimer(1, DisableArrow8) -} -func DisableArrow9() { - ns.ObjectOff(obj13) -} -func EnableArrow9() { - ns.ObjectOn(obj13) - ns.AudioEvent(ns.BowShoot, wp22) - ns.FrameTimer(1, DisableArrow9) -} -func DisableArrowTriggers() { - ns.ObjectGroupOff(gvar4) -} -func EnableArrowTriggers() { - ns.ObjectGroupOn(gvar4) -} -func BlockAGotoB() { - ns.Move(obj23, wp29) - ns.Move(obj24, wp30) - ns.Move(obj25, wp31) - ns.Move(obj26, wp32) - ns.Move(obj27, wp33) - ns.Move(obj28, wp34) - gvar43 = gvar42 - ns.AudioEvent(ns.SpikeBlockMove, wp30) - ns.AudioEvent(ns.BoulderMove, wp30) -} -func BlockAGotoC() { - ns.Move(obj23, wp35) - ns.Move(obj24, wp36) - ns.Move(obj25, wp37) - ns.Move(obj26, wp38) - ns.Move(obj27, wp39) - ns.Move(obj28, wp40) - gvar43 = gvar41 - ns.AudioEvent(ns.SpikeBlockMove, wp30) - ns.AudioEvent(ns.BoulderMove, wp30) -} -func BlockAGo() { - var v0 int - v0 = gvar43 - if v0 == gvar41 { - goto LABEL1 - } - if v0 == gvar42 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - BlockAGotoB() - goto LABEL3 -LABEL2: - BlockAGotoC() - goto LABEL3 -LABEL3: - return -} -func BlockBGotoB() { - ns.Move(obj44, wp49) - ns.Move(obj45, wp50) - ns.Move(obj46, wp51) - ns.Move(obj47, wp52) - ns.Move(obj48, wp53) - gvar61 = gvar60 - ns.AudioEvent(ns.SpikeBlockMove, wp50) - ns.AudioEvent(ns.BoulderMove, wp50) -} -func BlockBGotoC() { - ns.Move(obj44, wp54) - ns.Move(obj45, wp55) - ns.Move(obj46, wp56) - ns.Move(obj47, wp57) - ns.Move(obj48, wp58) - gvar61 = gvar59 - ns.AudioEvent(ns.SpikeBlockMove, wp50) - ns.AudioEvent(ns.BoulderMove, wp50) -} -func BlockBGo() { - var v0 int - v0 = gvar61 - if v0 == gvar59 { - goto LABEL1 - } - if v0 == gvar60 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - BlockBGotoB() - goto LABEL3 -LABEL2: - BlockBGotoC() - goto LABEL3 -LABEL3: - return -} -func BlockCGotoB() { - ns.Move(obj62, wp65) - ns.Move(obj63, wp66) - ns.Move(obj64, wp67) - gvar73 = gvar72 - ns.AudioEvent(ns.SpikeBlockMove, wp65) - ns.AudioEvent(ns.BoulderMove, wp65) -} -func BlockCGotoC() { - ns.Move(obj62, wp68) - ns.Move(obj63, wp69) - ns.Move(obj64, wp70) - gvar73 = gvar71 - ns.AudioEvent(ns.SpikeBlockMove, wp68) - ns.AudioEvent(ns.BoulderMove, wp68) -} -func BlockCGo() { - var v0 int - v0 = gvar73 - if v0 == gvar71 { - goto LABEL1 - } - if v0 == gvar72 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - BlockCGotoB() - goto LABEL3 -LABEL2: - BlockCGotoC() - goto LABEL3 -LABEL3: - return -} -func PlayerDeath() { - ns.DeathScreen(10) -} -func OrbLightOff() { - ns.ObjectOff(obj74) - ns.MoveObject(obj75, ns.GetWaypointX(wp76), ns.GetWaypointY(wp76)) -} -func ForceOrb() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - ) - v0 = ns.RandomFloat(-30, 30) - v1 = ns.RandomFloat(-30, 30) - v2 = ns.GetObjectX(ns.GetTrigger()) + v0 - v3 = ns.GetObjectY(ns.GetTrigger()) + v1 - ns.MoveObject(obj74, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.MoveObject(obj75, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())+6) - ns.MoveWaypoint(wp77, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.ObjectOn(obj74) - ns.AudioEvent(ns.BallBounce, wp77) - ns.PushObject(ns.GetCaller(), 60, v2, v3) - ns.FrameTimer(4, OrbLightOff) -} -func OpenBouncySecretWallGroup() { - ns.WallGroupOpen(gvar78) -} -func InitializeVampireKnights() { - obj111[0] = ns.Object("VampireKnight1") - obj112[0] = ns.Object("VKBat1") - wp114 = ns.Waypoint("VKSpot") - wp115 = ns.Waypoint("VampireKnight1WP") - wp116 = ns.Waypoint("BatCreate") -} -func MapInitialize() { - gvar80 = ns.WallGroup("ZombieAmbushWalls") - gvar79 = ns.ObjectGroup("ZombieAmbushGroup") - gvar81 = ns.WallGroup("SkeletonWallGroup") - gvar82 = ns.WallGroup("SkeletonWallGroup2") - obj83 = ns.Object("SkeletonTrigger1") - obj84 = ns.Object("SkeletonElevator") - gvar85 = ns.ObjectGroup("SkelAmbushGroup") - gvar86 = ns.ObjectGroup("SecretMechGroup") - gvar87 = ns.WallGroup("SecretMechWallGroup") - obj88 = ns.Object("SecretMechTrig") - wp89 = ns.Waypoint("Secret1AudioWP") - obj23 = ns.Object("BlockA1") - obj24 = ns.Object("BlockA2") - obj25 = ns.Object("BlockA3") - obj26 = ns.Object("BlockA4") - obj27 = ns.Object("BlockA5") - obj28 = ns.Object("BlockA6") - wp29 = ns.Waypoint("BlockWPA1b") - wp30 = ns.Waypoint("BlockWPA2b") - wp31 = ns.Waypoint("BlockWPA3b") - wp32 = ns.Waypoint("BlockWPA4b") - wp33 = ns.Waypoint("BlockWPA5b") - wp34 = ns.Waypoint("BlockWPA6b") - wp35 = ns.Waypoint("BlockWPA1c") - wp36 = ns.Waypoint("BlockWPA2c") - wp37 = ns.Waypoint("BlockWPA3c") - wp38 = ns.Waypoint("BlockWPA4c") - wp39 = ns.Waypoint("BlockWPA5c") - wp40 = ns.Waypoint("BlockWPA6c") - obj44 = ns.Object("BlockB1") - obj45 = ns.Object("BlockB2") - obj46 = ns.Object("BlockB3") - obj47 = ns.Object("BlockB4") - obj48 = ns.Object("BlockB5") - wp49 = ns.Waypoint("BlockWPB1b") - wp50 = ns.Waypoint("BlockWPB2b") - wp51 = ns.Waypoint("BlockWPB3b") - wp52 = ns.Waypoint("BlockWPB4b") - wp53 = ns.Waypoint("BlockWPB5b") - wp54 = ns.Waypoint("BlockWPB1c") - wp55 = ns.Waypoint("BlockWPB2c") - wp56 = ns.Waypoint("BlockWPB3c") - wp57 = ns.Waypoint("BlockWPB4c") - wp58 = ns.Waypoint("BlockWPB5c") - obj62 = ns.Object("BlockC1") - obj63 = ns.Object("BlockC2") - obj64 = ns.Object("BlockC3") - wp65 = ns.Waypoint("BlockWPC1b") - wp66 = ns.Waypoint("BlockWPC2b") - wp67 = ns.Waypoint("BlockWPC3b") - wp68 = ns.Waypoint("BlockWPC1c") - wp69 = ns.Waypoint("BlockWPC2c") - wp70 = ns.Waypoint("BlockWPC3c") - gvar90 = ns.WallGroup("VampireWallGroup") - obj91 = ns.Object("VampireKnight1") - obj92 = ns.Object("VKBat1") - obj93 = ns.Object("RetreatBat") - wp94 = ns.Waypoint("VampireKnight1WP") - wp95 = ns.Waypoint("BatCreate") - wp96 = ns.Waypoint("VKSpot") - InitializeVampireKnights() - gvar4 = ns.ObjectGroup("ArrowTrigGroup") - obj5 = ns.Object("Arrow1") - obj6 = ns.Object("Arrow2") - obj7 = ns.Object("Arrow3") - obj8 = ns.Object("Arrow4") - obj9 = ns.Object("Arrow5") - obj10 = ns.Object("Arrow6") - obj11 = ns.Object("Arrow7") - obj12 = ns.Object("Arrow8") - obj13 = ns.Object("Arrow9") - wp14 = ns.Waypoint("Arrow1WP") - wp15 = ns.Waypoint("Arrow2WP") - wp16 = ns.Waypoint("Arrow3WP") - wp17 = ns.Waypoint("Arrow4WP") - wp18 = ns.Waypoint("Arrow5WP") - wp19 = ns.Waypoint("Arrow6WP") - wp20 = ns.Waypoint("Arrow7WP") - wp21 = ns.Waypoint("Arrow8WP") - wp22 = ns.Waypoint("Arrow9WP") - obj97 = ns.Object("MechGolem1") - obj98 = ns.Object("MechGolem2") - obj99 = ns.Object("MechGolem3") - wp100 = ns.Waypoint("MechGolem2WP") - wp101 = ns.Waypoint("MechGolemAudioWP") - gvar102 = ns.ObjectGroup("GolemTrigGroup") - obj109 = ns.Object("MazeTrig1") - obj110 = ns.Object("MazeTrig2") - gvar103 = ns.WallGroup("GolemWallGroup") - gvar104 = ns.WallGroup("GolemWall2Group") - gvar105 = ns.WallGroup("GolemWall3Group") - gvar106 = ns.WallGroup("GolemGate1Group") - gvar107 = ns.WallGroup("GolemGate2Group") - gvar108 = ns.WallGroup("CherubWallGroup") - obj74 = ns.Object("OrbLight") - obj75 = ns.Object("OrbEffect") - wp76 = ns.Waypoint("OrbEffectWP") - wp77 = ns.Waypoint("OrbSoundWP") - gvar78 = ns.WallGroup("BouncySecretWallGroup") -} -func Secret300XP() { - ns.GiveXp(ns.GetHost(), 300) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.AudioEvent(ns.SecretFound, wp89) -} -func PlaySubMusic() { - ns.Music(18, 100) -} -func PlayAction1Music() { - ns.Music(26, 100) -} -func GolemWallDown() { - ns.WallGroupOpen(gvar103) - ns.ObjectOn(obj97) - ns.AudioEvent(ns.MechGolemPowerUp, wp101) - ns.ObjectGroupOff(gvar102) - PlayAction1Music() -} -func GolemWall2Down() { - ns.NoWallSound(true) - ns.WallGroupOpen(gvar104) - ns.NoWallSound(false) - ns.ObjectOn(obj98) - ns.AudioEvent(ns.MechGolemRecognize, wp100) - ns.AudioEvent(ns.MechGolemPowerUp, wp100) -} -func GolemWall3Down() { - ns.WallGroupOpen(gvar105) - ns.ObjectOn(obj99) - ns.ObjectOn(obj88) -} -func OpenGolemGate1() { - ns.WallGroupOpen(gvar106) - ns.ObjectOff(obj109) -} -func OpenGolemGate2() { - ns.WallGroupOpen(gvar107) - ns.ObjectOff(obj110) -} -func DestroyCherubWallGroup() { - ns.WallGroupBreak(gvar108) - PlaySubMusic() -} -func HostilizeMe() { - ns.AggressionLevel(ns.GetTrigger(), 0.83) -} -func PlayAction3Music() { - ns.Music(28, 100) -} -func BatToVampireKnight() { - if flag119 { - goto LABEL1 - } - fvar117 = ns.GetObjectX(ns.GetTrigger()) - fvar118 = ns.GetObjectY(ns.GetTrigger()) - ns.Delete(ns.GetTrigger()) - ns.ObjectOn(obj111[0]) -LABEL1: - ns.Effect(ns.BLUE_SPARKS, fvar117, fvar118, 0, 0) - ns.Effect(ns.SMOKE_BLAST, fvar117, fvar118, 0, 0) - ns.Enchant(obj111[0], ns.ENCHANT_INVISIBLE, 0.25) - ns.MoveObject(obj111[0], fvar117, fvar118) - ns.LookAtObject(obj111[0], ns.GetHost()) -} -func SetRetreatBat() { - ns.AggressionLevel(obj113, 0.83) - ns.SetCallback(obj113, 7, BatDie) - ns.SetCallback(obj113, 5, BatDie) -} -func BatDie() { - var ( - v0 ns.ObjectID - v1 ns.ObjectID - v2 ns.ObjectID - ) - if !(ns.CurrentHealth(obj113) <= 0) { - goto LABEL1 - } - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(obj113), ns.GetObjectY(obj113), 0, 0) - ns.MoveWaypoint(wp116, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.Delete(obj113) - ns.AudioEvent(ns.BurnCast, wp116) - v0 = ns.CreateObject("Flame", wp116) - v1 = ns.CreateObject("MediumFlame", wp116) - v2 = ns.CreateObject("SmallFlame", wp116) - ns.DeleteObjectTimer(v0, 80) - ns.DeleteObjectTimer(v1, 85) - ns.DeleteObjectTimer(v2, 90) - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.GiveXp(ns.GetHost(), 250) -LABEL1: - return -} -func ChangeOnSight() { - if !flag120 { - goto LABEL1 - } - ns.AggressionLevel(ns.GetTrigger(), 0.83) - ns.SetCallback(ns.GetTrigger(), 6, BatToVampireKnight) -LABEL1: - return -} -func InjureVampireKnight() { - fvar117 = ns.GetObjectX(ns.GetTrigger()) - fvar118 = ns.GetObjectY(ns.GetTrigger()) - ns.ObjectOn(obj111[0]) - ns.Damage(obj111[0], 0, 50, 0) - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger()), 0, 0) - ns.Delete(ns.GetTrigger()) - flag119 = true - ns.FrameTimer(1, BatToVampireKnight) -} -func BatMove() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.SetCallback(ns.GetTrigger(), 4, ChangeOnSight) - ns.Move(obj112[0], wp114) -LABEL1: - return -} -func VKDie() { - fvar117 = ns.GetObjectX(ns.GetTrigger()) - fvar118 = ns.GetObjectY(ns.GetTrigger()) - ns.Delete(ns.GetTrigger()) - ns.MoveWaypoint(wp116, fvar117, fvar118) - obj113 = ns.CreateObject("Bat", wp116) - ns.FrameTimer(1, SetRetreatBat) -} -func ZombieAmbush() { - ns.WallGroupOpen(gvar80) - ns.ObjectGroupOn(gvar79) -} -func SkeletonAttack() { - ns.WallGroupOpen(gvar81) - ns.WallGroupClose(gvar82) - ns.ObjectOn(obj83) - ns.ObjectGroupOn(gvar85) - PlayAction3Music() -} -func OpenSkeletonWallGroup2() { - ns.WallGroupOpen(gvar82) - ns.ObjectOn(obj84) -} -func Secret300() { - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 300) -} -func OpenSecretMechWallGroup() { - ns.WallGroupOpen(gvar87) - ns.GroupAggressionLevel(gvar86, 0.83) - Secret300() -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapInitialize": - MapInitialize() - } -} diff --git a/examples/war10c/dummy_test.go b/examples/war10c/dummy_test.go deleted file mode 100644 index 819f57f..0000000 --- a/examples/war10c/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package war10c - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/war10c/war10c.go b/examples/war10c/war10c.go deleted file mode 100644 index 018eb53..0000000 --- a/examples/war10c/war10c.go +++ /dev/null @@ -1,684 +0,0 @@ -package war10c - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 [21]ns.ObjectID - ivar5 int - obj6 ns.ObjectID - obj7 ns.ObjectID - wp8 ns.WaypointID - wp9 ns.WaypointID - obj10 ns.ObjectID - obj11 ns.ObjectID - obj12 ns.ObjectID - obj13 ns.ObjectID - obj14 ns.ObjectID - obj15 ns.ObjectID - obj16 ns.ObjectID - obj17 ns.ObjectID - obj18 ns.ObjectID - obj19 ns.ObjectID - obj20 ns.ObjectID - obj21 ns.ObjectID - obj22 ns.ObjectID - obj23 ns.ObjectID - obj24 [6]ns.ObjectID - obj25 ns.ObjectID - obj26 ns.ObjectID - obj27 ns.ObjectID - obj28 ns.ObjectID - obj29 ns.ObjectID - obj30 ns.ObjectID - obj31 ns.ObjectID - obj32 ns.ObjectID - obj33 ns.ObjectID - obj34 ns.ObjectID - obj35 ns.ObjectID - obj36 ns.ObjectID - obj37 ns.ObjectID - obj38 ns.ObjectID - obj39 ns.ObjectID - gvar40 ns.ObjectGroupID - gvar41 ns.ObjectGroupID - obj42 ns.ObjectID - wp43 [2]ns.WaypointID - wp44 ns.WaypointID - wp45 ns.WaypointID - gvar46 ns.WallGroupID - gvar47 ns.WallGroupID - gvar48 ns.WallGroupID - gvar49 ns.WallGroupID - gvar50 ns.WallGroupID - gvar51 ns.WallGroupID - gvar52 ns.WallGroupID - gvar53 ns.WallGroupID - gvar54 ns.WallGroupID - gvar55 ns.WallGroupID - gvar56 ns.WallGroupID - gvar57 ns.WallGroupID - gvar58 ns.WallGroupID - gvar59 ns.WallGroupID - flag60 bool - flag61 bool - flag62 bool - flag63 bool - flag64 bool - flag65 bool - flag66 bool - flag67 bool - ivar68 int - wp69 ns.WaypointID - wp70 ns.WaypointID - obj71 ns.ObjectID - gvar72 ns.ObjectGroupID - wp73 [5]ns.WaypointID - wp74 ns.WaypointID - obj75 [2]ns.ObjectID - obj76 [2]ns.ObjectID - obj77 ns.ObjectID - wp78 ns.WaypointID - wp79 ns.WaypointID - wp80 ns.WaypointID - fvar81 float32 - fvar82 float32 - flag83 bool - flag84 bool -) - -func init() { - flag60 = false - flag61 = false - flag62 = false - flag63 = false - flag64 = false - flag65 = false - flag66 = false - flag67 = false - ivar68 = 0 - flag83 = false - flag84 = false -} -func DisableAT(a1 int) { - ns.ObjectOff(obj4[a1]) -} -func FireAT0() { - ns.ObjectOn(obj4[0]) - ns.FrameTimerWithArg(1, nil, DisableAT) -} -func FireAT1() { - ns.ObjectOn(obj4[1]) - ns.FrameTimerWithArg(1, 1, DisableAT) -} -func FireAT2() { - ns.ObjectOn(obj4[2]) - ns.FrameTimerWithArg(1, 2, DisableAT) -} -func FireAT3() { - ns.ObjectOn(obj4[3]) - ns.FrameTimerWithArg(1, 3, DisableAT) -} -func FireAT4() { - ns.ObjectOn(obj4[4]) - ns.FrameTimerWithArg(1, 4, DisableAT) -} -func FireAT5() { - ns.ObjectOn(obj4[5]) - ns.FrameTimerWithArg(1, 5, DisableAT) -} -func FireAT6() { - ns.ObjectOn(obj4[6]) - ns.FrameTimerWithArg(1, 6, DisableAT) -} -func FireAT7() { - ns.ObjectOn(obj4[7]) - ns.FrameTimerWithArg(1, 7, DisableAT) -} -func FireAT8() { - ns.ObjectOn(obj4[8]) - ns.FrameTimerWithArg(1, 8, DisableAT) -} -func FireAT9() { - ns.ObjectOn(obj4[9]) - ns.FrameTimerWithArg(1, 9, DisableAT) -} -func FireAT10() { - ns.ObjectOn(obj4[10]) - ns.FrameTimerWithArg(1, 10, DisableAT) -} -func FireAT11() { - ns.ObjectOn(obj4[11]) - ns.FrameTimerWithArg(1, 11, DisableAT) -} -func FireAT17() { - ns.ObjectOn(obj4[17]) - ns.FrameTimerWithArg(1, 17, DisableAT) -} -func FireAT18() { - ns.ObjectOn(obj4[18]) - ns.FrameTimerWithArg(1, 18, DisableAT) -} -func FireAT19() { - ns.ObjectOn(obj4[19]) - ns.FrameTimerWithArg(1, 19, DisableAT) -} -func FireAT20() { - ns.ObjectOn(obj4[20]) - ns.FrameTimerWithArg(1, 20, DisableAT) -} -func FireATRow() { - ns.ObjectOn(obj4[12]) - ns.ObjectOn(obj4[13]) - ns.ObjectOn(obj4[14]) - ns.ObjectOn(obj4[15]) - ns.ObjectOn(obj4[16]) - ivar5 = 12 - for { - if !(ivar5 < 17) { - goto LABEL1 - } - ns.FrameTimerWithArg(1, ivar5, DisableAT) - ivar5 += 1 - } -LABEL1: - return -} -func PlayerDeath() { - ns.DeathScreen(10) -} -func OrbLightOff() { - ns.ObjectOff(obj6) - ns.MoveObject(obj7, ns.GetWaypointX(wp8), ns.GetWaypointY(wp8)) -} -func ForceOrb() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - ) - v0 = ns.RandomFloat(-30, 30) - v1 = ns.RandomFloat(-30, 30) - v2 = ns.GetObjectX(ns.GetTrigger()) + v0 - v3 = ns.GetObjectY(ns.GetTrigger()) + v1 - ns.MoveObject(obj6, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.MoveObject(obj7, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())+6) - ns.MoveWaypoint(wp9, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.ObjectOn(obj6) - ns.AudioEvent(ns.BallBounce, wp9) - ns.PushObject(ns.GetCaller(), 60, v2, v3) - ns.FrameTimer(4, OrbLightOff) -} -func StairAccess2() { - if !(flag62 == true && flag63 == true) { - goto LABEL1 - } - ns.UnlockDoor(obj12) - ns.UnlockDoor(obj13) -LABEL1: - return -} -func CreateCherub() { - var v0 int - if !(ivar68 < 6) { - goto LABEL1 - } - v0 = ns.Random(0, 1) - obj24[ivar68] = ns.CreateObject("EvilCherub", wp43[v0]) - ns.Effect(ns.BLUE_SPARKS, ns.GetWaypointX(wp43[v0]), ns.GetWaypointY(wp43[v0]), 0, 0) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp43[v0]), ns.GetWaypointY(wp43[v0]), 0, 0) - ns.SetCallback(obj24[ivar68], 5, CreateCherub) - ns.SetRoamFlag(obj24[ivar68], 128) - ns.AggressionLevel(obj24[ivar68], 0.83) - ivar68 += 1 - goto LABEL2 -LABEL1: - return -LABEL2: - return -} -func WakeVKBat2() { - ns.ObjectOn(obj76[1]) -} -func PlayAction2Music() { - ns.Music(27, 100) -} -func CherubHostilize() { - ns.GroupAggressionLevel(gvar41, 0.83) -} -func OpenSecretRoom() { - ns.WallGroupOpen(gvar49) -} -func EnableTreasureLich1() { - ns.ObjectOn(obj14) -} -func AccessTreasureRoom1() { - ns.WallGroupOpen(gvar46) -} -func EnableTreasureLich2() { - ns.ObjectOn(obj15) -} -func AccessTreasureRoom2() { - ns.WallGroupOpen(gvar47) -} -func EnableTreasureMech() { - ns.ObjectOn(obj16) -} -func AccessTreasureRoom3() { - ns.WallGroupOpen(gvar48) -} -func EnableRoom() { - if !(ns.IsCaller(ns.GetHost()) && flag60 == false) { - goto LABEL1 - } - flag60 = true - ns.ObjectOn(obj27) - ns.LockDoor(obj10) - ns.LockDoor(obj11) -LABEL1: - return -} -func StairAccess1() { - ns.WallGroupOpen(gvar50) - ns.UnlockDoor(obj10) - ns.UnlockDoor(obj11) -} -func AllowAccess2() { - ns.PrintToAll("War10c:SentryDisabled") - ns.ObjectOff(obj21) - ns.ObjectOff(obj20) - ns.ObjectOff(obj19) - ns.AudioEvent(ns.Gear2, wp69) -} -func EnableRoom2() { - PlayAction2Music() - if !(ns.IsCaller(ns.GetHost()) && flag61 == false) { - goto LABEL1 - } - flag61 = true - ns.LockDoor(obj12) - ns.LockDoor(obj13) - ns.FrameTimer(800, CreateCherub) -LABEL1: - return -} -func OneDown() { - flag62 = true - ns.FrameTimer(1, StairAccess2) -} -func TwoDown() { - flag63 = true - ns.FrameTimer(1, StairAccess2) -} -func SwitchOffSentries() { - ns.ObjectOff(obj17) - ns.ObjectOff(obj18) - ns.UnlockDoor(obj12) - ns.UnlockDoor(obj13) -} -func SwitchOnSentries() { - ns.ObjectOn(obj17) - ns.ObjectOn(obj18) -} -func UnlockAccessDoors() { - ns.ObjectOff(obj31) - ns.UnlockDoor(obj25) - ns.UnlockDoor(obj26) -} -func OpenWall01() { - ns.WallGroupOpen(gvar56) - ns.AggressionLevel(obj42, 0.83) -} -func OpenWindowWall1() { - ns.WallGroupOpen(gvar57) -} -func CloseWindowWall1() { - ns.WallGroupClose(gvar57) -} -func OpenWindowWall2() { - ns.WallGroupOpen(gvar58) -} -func CloseWindowWall2() { - ns.WallGroupClose(gvar58) -} -func OpenCage1() { - ns.WallGroupOpen(gvar51) - ns.ObjectOn(obj28) -} -func OpenCage2() { - ns.WallGroupOpen(gvar52) - ns.ObjectOn(obj30) -} -func OpenCage3() { - ns.WallGroupOpen(gvar53) - ns.ObjectOn(obj29) -} -func OpenCage4() { - ns.WallGroupOpen(gvar54) - WakeVKBat2() -} -func OpenAccess() { - ns.WallGroupOpen(gvar55) -} -func CheckIdols() { - if !(flag64 == true && flag65 == true) { - goto LABEL1 - } - ns.ObjectGroupOn(gvar40) -LABEL1: - return -} -func BlueIdol() { - if !ns.IsCaller(obj32) { - goto LABEL1 - } - flag64 = true - CheckIdols() - ns.ObjectOff(obj38) - ns.ObjectOn(obj33) - ns.Delete(obj32) - ns.Delete(obj36) - ns.AudioEvent(ns.Gear2, wp70) -LABEL1: - return -} -func RedIdol() { - if !ns.IsCaller(obj34) { - goto LABEL1 - } - flag65 = true - CheckIdols() - ns.ObjectOff(obj39) - ns.ObjectOn(obj35) - ns.Delete(obj34) - ns.Delete(obj37) - ns.AudioEvent(ns.Gear2, wp70) -LABEL1: - return -} -func CheckSwitches() { - if !(flag66 == true && flag67 == true) { - goto LABEL1 - } - ns.WallGroupOpen(gvar59) -LABEL1: - ns.AudioEvent("CreatureCageAppear", wp45) -} -func ExitWallSwitch1() { - ns.AudioEvent(ns.Gear3, wp45) - flag66 = true - CheckSwitches() -} -func ExitWallSwitch2() { - ns.AudioEvent(ns.Gear3, wp45) - flag67 = true - CheckSwitches() -} -func InitializeVampireKnights() { - obj75[0] = ns.Object("VampireKnight1") - obj75[1] = ns.Object("VampireKnight2") - obj76[0] = ns.Object("VKBat1") - obj76[1] = ns.Object("VKBat2") - wp78 = ns.Waypoint("VKSpot") - wp79 = ns.Waypoint("VampireKnight1WP") - wp80 = ns.Waypoint("BatCreate") -} -func PlaySubMusic() { - ns.Music(18, 100) -} -func MapInitialize() { - wp70 = ns.Waypoint("LichKeyAudioWP") - wp69 = ns.Waypoint("SentryAudioWP") - gvar41 = ns.ObjectGroup("CherubPitGroup") - obj6 = ns.Object("OrbLight") - obj7 = ns.Object("OrbEffect") - obj10 = ns.Object("ForceOrbDoorA") - obj11 = ns.Object("ForceOrbDoorB") - obj12 = ns.Object("ForceOrbDoorC") - obj13 = ns.Object("ForceOrbDoorD") - obj4[0] = ns.Object("AT0") - obj4[1] = ns.Object("AT1") - obj4[2] = ns.Object("AT2") - obj4[3] = ns.Object("AT3") - obj4[4] = ns.Object("AT4") - obj4[5] = ns.Object("AT5") - obj4[6] = ns.Object("AT6") - obj4[7] = ns.Object("AT7") - obj4[8] = ns.Object("AT8") - obj4[9] = ns.Object("AT9") - obj4[10] = ns.Object("AT10") - obj4[11] = ns.Object("AT11") - obj4[12] = ns.Object("AT12") - obj4[13] = ns.Object("AT13") - obj4[14] = ns.Object("AT14") - obj4[15] = ns.Object("AT15") - obj4[16] = ns.Object("AT16") - obj4[17] = ns.Object("AT17") - obj4[18] = ns.Object("AT18") - obj4[19] = ns.Object("AT19") - obj4[20] = ns.Object("AT20") - obj14 = ns.Object("TreasureLich1") - obj15 = ns.Object("TreasureLich2") - obj16 = ns.Object("TreasureMech") - obj27 = ns.Object("Necromancer1") - obj28 = ns.Object("Necromancer2") - obj29 = ns.Object("Necromancer3") - obj42 = ns.Object("Lich1") - obj71 = ns.Object("Lich2") - obj30 = ns.Object("Lich3") - obj17 = ns.Object("Sentry1") - obj18 = ns.Object("Sentry2") - obj19 = ns.Object("Sentry3") - obj20 = ns.Object("Sentry4") - obj21 = ns.Object("SentrySwitch") - obj22 = ns.Object("MainSentry1") - obj23 = ns.Object("MainSentry2") - obj25 = ns.Object("AccessDoorA") - obj26 = ns.Object("AccessDoorB") - obj31 = ns.Object("OpenDoors") - obj32 = ns.Object("BlueIdol") - obj34 = ns.Object("RedIdol") - obj33 = ns.Object("BlueIdolBase") - obj35 = ns.Object("RedIdolBase") - obj36 = ns.Object("BlueTrigger") - obj37 = ns.Object("RedTrigger") - obj38 = ns.Object("BlueIdolSentry") - obj39 = ns.Object("RedIdolSentry") - wp73[0] = ns.Waypoint("N1TeleWP0") - wp73[1] = ns.Waypoint("N1TeleWP1") - wp73[2] = ns.Waypoint("N1TeleWP2") - wp73[3] = ns.Waypoint("N1TeleWP3") - wp73[4] = ns.Waypoint("N1TeleWP4") - wp9 = ns.Waypoint("OrbSoundWP") - wp8 = ns.Waypoint("OrbEffectWP") - wp43[0] = ns.Waypoint("CherubCreate1") - wp43[1] = ns.Waypoint("CherubCreate2") - gvar72 = ns.ObjectGroup("VampTriggers") - gvar40 = ns.ObjectGroup("FinalLiches") - gvar46 = ns.WallGroup("TreasureRoom1Walls") - gvar47 = ns.WallGroup("TreasureRoom2Walls") - gvar48 = ns.WallGroup("TreasureRoom3Walls") - wp44 = ns.Waypoint("MechGolemAudioWP") - gvar49 = ns.WallGroup("SecretRoomWall") - gvar50 = ns.WallGroup("ForceOrbRoomWalls1") - gvar51 = ns.WallGroup("Cage1") - gvar52 = ns.WallGroup("Cage2") - gvar53 = ns.WallGroup("Cage3") - gvar54 = ns.WallGroup("Cage4") - gvar55 = ns.WallGroup("AccessTreasureRoom3") - gvar56 = ns.WallGroup("OpeningWall01") - gvar57 = ns.WallGroup("WindowWall1") - gvar58 = ns.WallGroup("WindowWall2") - gvar59 = ns.WallGroup("LichStairAccess") - wp45 = ns.Waypoint("ExitAudioWP") - wp74 = ns.Waypoint("Secret1AudioWP") - InitializeVampireKnights() - PlaySubMusic() - ns.LockDoor(obj25) - ns.LockDoor(obj26) -} -func Secret100XP() { - ns.GiveXp(ns.GetHost(), 100) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.AudioEvent(ns.SecretFound, wp74) -} -func PlayWanderMusic() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Music(17, 100) -LABEL1: - return -} -func Necro1TeleportInjured() { - var ( - v0 float32 - v1 float32 - v2 int - ) - v2 = ns.Random(0, 4) - v0 = ns.GetWaypointX(wp73[v2]) - v1 = ns.GetWaypointY(wp73[v2]) - ns.PauseObject(ns.GetTrigger(), 15) - ns.Enchant(ns.GetTrigger(), ns.ENCHANT_INVISIBLE, 2) - ns.Effect(ns.BLUE_SPARKS, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger()), 0, 0) - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger()), 0, 0) - ns.MoveObject(ns.GetTrigger(), v0, v1) - ns.Effect(ns.BLUE_SPARKS, v0, v1, 0, 0) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) -} -func SmackPlayer() { - r0 := ns.IsAttackedBy(ns.GetCaller(), ns.GetTrigger()) - if !r0 { - goto LABEL1 - } - ns.LookAtObject(ns.GetTrigger(), ns.GetCaller()) - ns.HitLocation(ns.GetTrigger(), ns.GetObjectX(ns.GetCaller()), ns.GetObjectY(ns.GetCaller())) -LABEL1: - return -} -func HuntPlayer() { - ns.CreatureHunt(ns.GetTrigger()) -} -func BatToVampireKnight() { - if flag83 { - goto LABEL1 - } - fvar81 = ns.GetObjectX(ns.GetTrigger()) - fvar82 = ns.GetObjectY(ns.GetTrigger()) - ns.Delete(ns.GetTrigger()) - ns.ObjectOn(obj75[0]) -LABEL1: - ns.Effect(ns.BLUE_SPARKS, fvar81, fvar82, 0, 0) - ns.Effect(ns.SMOKE_BLAST, fvar81, fvar82, 0, 0) - ns.Enchant(obj75[0], ns.ENCHANT_INVISIBLE, 0.25) - ns.MoveObject(obj75[0], fvar81, fvar82) - ns.LookAtObject(obj75[0], ns.GetHost()) - flag83 = false -} -func BatToVampireKnight2() { - if flag83 { - goto LABEL1 - } - fvar81 = ns.GetObjectX(ns.GetTrigger()) - fvar82 = ns.GetObjectY(ns.GetTrigger()) - ns.Delete(ns.GetTrigger()) - ns.ObjectOn(obj75[1]) -LABEL1: - ns.Effect(ns.BLUE_SPARKS, fvar81, fvar82, 0, 0) - ns.Effect(ns.SMOKE_BLAST, fvar81, fvar82, 0, 0) - ns.Enchant(obj75[1], ns.ENCHANT_INVISIBLE, 0.25) - ns.MoveObject(obj75[1], fvar81, fvar82) - ns.LookAtObject(obj75[1], ns.GetHost()) -} -func SetRetreatBat() { - ns.AggressionLevel(obj77, 0.83) - ns.SetCallback(obj77, 7, BatDie) - ns.SetCallback(obj77, 5, BatDie) -} -func BatDie() { - var ( - v0 ns.ObjectID - v1 ns.ObjectID - v2 ns.ObjectID - ) - if !(ns.CurrentHealth(ns.GetTrigger()) <= 0) { - goto LABEL1 - } - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger()), 0, 0) - ns.MoveWaypoint(wp80, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.MoveObject(ns.GetTrigger(), ns.GetWaypointX(wp79), ns.GetWaypointY(wp79)) - ns.Delete(obj77) - ns.AudioEvent(ns.BurnCast, wp80) - v0 = ns.CreateObject("Flame", wp80) - v1 = ns.CreateObject("MediumFlame", wp80) - v2 = ns.CreateObject("SmallFlame", wp80) - ns.DeleteObjectTimer(v0, 80) - ns.DeleteObjectTimer(v1, 83) - ns.DeleteObjectTimer(v2, 85) - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.GiveXp(ns.GetHost(), 250) -LABEL1: - return -} -func ChangeOnSight() { - if !flag84 { - goto LABEL1 - } - ns.AggressionLevel(ns.GetTrigger(), 0.83) - ns.SetCallback(ns.GetTrigger(), 6, BatToVampireKnight) -LABEL1: - return -} -func InjureVampireKnight() { - if flag83 { - goto LABEL1 - } - fvar81 = ns.GetObjectX(ns.GetTrigger()) - fvar82 = ns.GetObjectY(ns.GetTrigger()) - ns.ObjectOn(obj75[0]) - ns.Damage(obj75[0], 0, 50, 0) - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger()), 0, 0) - ns.Delete(ns.GetTrigger()) - flag83 = true - ns.FrameTimer(1, BatToVampireKnight) -LABEL1: - return -} -func InjureVampireKnight2() { - fvar81 = ns.GetObjectX(ns.GetTrigger()) - fvar82 = ns.GetObjectY(ns.GetTrigger()) - ns.ObjectOn(obj75[1]) - ns.Damage(obj75[1], 0, 50, 0) - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger()), 0, 0) - ns.Delete(ns.GetTrigger()) - flag83 = true - ns.FrameTimer(1, BatToVampireKnight2) -} -func BatMove() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.SetCallback(ns.GetTrigger(), 4, ChangeOnSight) - ns.PauseObject(ns.GetTrigger(), 15) -LABEL1: - return -} -func VKDie() { - fvar81 = ns.GetObjectX(ns.GetTrigger()) - fvar82 = ns.GetObjectY(ns.GetTrigger()) - ns.Delete(ns.GetTrigger()) - ns.MoveWaypoint(wp80, fvar81, fvar82) - obj77 = ns.CreateObject("Bat", wp80) - ns.FrameTimer(1, SetRetreatBat) -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapInitialize": - MapInitialize() - } -} diff --git a/examples/war10d/dummy_test.go b/examples/war10d/dummy_test.go deleted file mode 100644 index c7f88d8..0000000 --- a/examples/war10d/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package war10d - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/war10d/war10d.go b/examples/war10d/war10d.go deleted file mode 100644 index 648416a..0000000 --- a/examples/war10d/war10d.go +++ /dev/null @@ -1,757 +0,0 @@ -package war10d - -import ( - "github.com/noxworld-dev/noxscript/ns/v3" - "strconv" -) - -var ( - obj4 ns.ObjectID - obj5 ns.ObjectID - gvar6 ns.WallGroupID - gvar7 ns.ObjectGroupID - gvar8 ns.ObjectGroupID - gvar9 ns.ObjectGroupID - gvar10 ns.WallGroupID - wp11 ns.WaypointID - wp12 ns.WaypointID - wp13 ns.WaypointID - wp14 ns.WaypointID - gvar15 ns.WallGroupID - gvar16 ns.ObjectGroupID - gvar17 ns.ObjectGroupID - gvar18 ns.ObjectGroupID - wp19 ns.WaypointID - wp20 ns.WaypointID - wp21 ns.WaypointID - obj22 ns.ObjectID - wp23 [32]ns.WaypointID - obj24 ns.ObjectID - gvar25 ns.WallGroupID - gvar26 int - gvar27 int - gvar28 int - gvar29 int - gvar30 ns.ObjectGroupID - gvar31 ns.ObjectGroupID - gvar32 ns.WallGroupID - gvar33 ns.WallGroupID - gvar34 ns.ObjectGroupID - obj35 ns.ObjectID - obj36 ns.ObjectID - flag37 bool - flag38 bool - wp39 ns.WaypointID - wp40 ns.WaypointID - wp41 ns.WaypointID - wp42 ns.WaypointID - wp43 ns.WaypointID - wp44 ns.WaypointID - wp45 ns.WaypointID - wp46 ns.WaypointID - wp47 ns.WaypointID - wp48 ns.WaypointID - wp49 ns.WaypointID - wp50 ns.WaypointID - wp51 ns.WaypointID - wp52 ns.WaypointID - wp53 ns.WaypointID - wp54 ns.WaypointID - wp55 ns.WaypointID - wp56 ns.WaypointID - obj57 ns.ObjectID - obj58 ns.ObjectID - obj59 ns.ObjectID - obj60 ns.ObjectID - obj61 ns.ObjectID - obj62 ns.ObjectID - gvar63 int - gvar64 int - gvar65 int - gvar66 int - gvar67 int - gvar68 int - gvar69 int - obj70 ns.ObjectID - wp71 [6]ns.WaypointID - gvar72 ns.WallGroupID - gvar73 int - gvar74 int - gvar75 int - obj76 ns.ObjectID - obj77 ns.ObjectID - obj78 ns.ObjectID - obj79 ns.ObjectID - wp80 ns.WaypointID - wp81 ns.WaypointID - wp82 ns.WaypointID - wp83 ns.WaypointID - gvar84 ns.WallGroupID - gvar85 ns.ObjectGroupID - gvar86 ns.ObjectGroupID - gvar87 ns.WallGroupID - obj88 ns.ObjectID - obj89 ns.ObjectID - obj90 ns.ObjectID - obj91 ns.ObjectID - obj92 ns.ObjectID - obj93 ns.ObjectID - obj94 ns.ObjectID - obj95 ns.ObjectID - obj96 ns.ObjectID - obj97 ns.ObjectID - obj98 ns.ObjectID - obj99 ns.ObjectID - obj100 ns.ObjectID - obj101 ns.ObjectID - obj102 ns.ObjectID - obj103 ns.ObjectID - obj104 ns.ObjectID - obj105 ns.ObjectID - gvar106 ns.ObjectGroupID - gvar107 ns.ObjectGroupID - gvar108 ns.ObjectGroupID - gvar109 ns.ObjectGroupID - gvar110 ns.ObjectGroupID - gvar111 ns.ObjectGroupID - gvar112 ns.WallGroupID - gvar113 ns.WallGroupID - gvar114 ns.WallGroupID - flag115 bool - flag116 bool - flag117 bool - flag118 bool - wp119 ns.WaypointID - gvar120 ns.ObjectGroupID - wp121 ns.WaypointID - wp122 ns.WaypointID -) - -func init() { - gvar63 = 0 - gvar64 = 1 - gvar65 = 2 - gvar66 = 3 - gvar67 = 4 - gvar68 = 5 - gvar69 = gvar63 - gvar73 = 0 - gvar74 = 1 - gvar75 = gvar73 - flag37 = false - flag38 = false - flag115 = false - flag116 = false - flag117 = false - flag118 = false -} -func PlayerDeath() { - ns.DeathScreen(10) -} -func ActivateSmokePuffs() { - var v0 int - v0 = 0 - for { - if !(v0 < 32) { - goto LABEL1 - } - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp23[v0]), ns.GetWaypointY(wp23[v0]), 0, 0) - v0 += 2 - } -LABEL1: - return -} -func FilterHecubah() int { - if !ns.IsCaller(obj5) { - goto LABEL1 - } - return 1 - goto LABEL2 -LABEL1: - return 0 -LABEL2: - return 0 -} -func HecubahGuard() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - ) - v0 = ns.GetWaypointX(wp13) - v1 = ns.GetWaypointY(wp13) - v2 = ns.GetWaypointX(wp14) - v3 = ns.GetWaypointY(wp14) - ns.CreatureGuard(obj5, v0, v1, v2, v3, 0) - ns.NoWallSound(true) - ns.WallGroupClose(gvar25) - ns.NoWallSound(false) -} -func EnableOrbMonsterGroup() { - ns.ObjectGroupOn(gvar7) - ns.Frozen(ns.GetHost(), false) - ns.WallGroupOpen(gvar6) - ns.FrameTimer(2, ActivateSmokePuffs) - ns.WallGroupClose(gvar10) -} -func HecubahExit() { - ns.Enchant(obj5, ns.ENCHANT_HASTED, 100) - ns.Move(obj5, wp13) - ns.WideScreen(false) - ns.FrameTimer(60, EnableOrbMonsterGroup) -} -func HecubahDialogEnd() { - ns.FrameTimer(30, HecubahExit) - ns.CancelDialog(obj5) -} -func HecubahDialogStart() { - ns.TellStory(ns.DemonRecognize, "Con07H.scr:HecubahTalk02") -} -func HecubahTrigger() { - ns.LookAtObject(obj5, ns.GetHost()) - ns.StoryPic(obj5, "HecubahPic") - ns.SetDialog(obj5, ns.NEXT, HecubahDialogStart, HecubahDialogEnd) - ns.StartDialog(obj5, ns.GetHost()) -} -func HecubahEnter() { - ns.Move(obj5, wp12) -} -func HecubahWallsDown() { - ns.WallGroupOpen(gvar15) - ns.FrameTimer(1, HecubahEnter) -} -func GetOrb() { - ns.ObjectOff(obj4) - ns.ObjectGroupOff(gvar17) - ns.SetHalberd(3) - ns.Frozen(ns.GetHost(), true) - ns.WideScreen(true) - ns.FrameTimer(60, HecubahWallsDown) - ns.ObjectGroupOff(gvar16) - ns.JournalEntry(ns.GetHost(), "War11Hecubah", 1) - ns.JournalEdit(ns.GetHost(), "War10aOrbQuest", 4) -} -func EnableAllMonsters() { - ns.Frozen(ns.GetHost(), false) - ns.ObjectGroupOn(gvar7) - ns.ObjectGroupOn(gvar8) - ns.ObjectGroupOn(gvar9) -} -func HecubahVanish1() { - ns.ObjectOn(obj22) - ns.ObjectGroupOff(gvar18) - ns.Move(obj5, wp19) - ns.AudioEvent(ns.HecubahTaunt, wp13) - ns.WideScreen(false) - ns.FrameTimer(60, EnableAllMonsters) -} -func HecubahTakesOff() { - ns.Frozen(ns.GetHost(), true) - ns.WideScreen(true) - ns.FrameTimer(60, HecubahVanish1) - ns.ObjectGroupOff(gvar7) - ns.ObjectGroupOff(gvar8) - ns.ObjectGroupOff(gvar9) - ns.NoWallSound(true) - ns.WallGroupOpen(gvar25) - ns.NoWallSound(false) -} -func HecubahVanish2() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - ) - v0 = ns.GetWaypointX(wp20) - v1 = ns.GetWaypointY(wp20) - v2 = ns.GetWaypointX(wp19) - v3 = ns.GetWaypointY(wp19) - ns.Effect(ns.SMOKE_BLAST, v2, v3, 0, 0) - ns.AudioEvent(ns.TeleportOut, wp19) - ns.MoveObject(obj5, v0, v1) - ns.ObjectOn(obj24) -} -func MapSwitch() { - var ( - v0 float32 - v1 float32 - ) - v0 = ns.GetWaypointX(wp21) - v1 = ns.GetWaypointY(wp21) - ns.Frozen(ns.GetHost(), false) - ns.MoveObject(ns.GetHost(), v0, v1) -} -func DestroyMe() { - ns.Delete(ns.GetCaller()) -} -func PlayerFadeOut() { - ns.Frozen(ns.GetHost(), true) - ns.Blind() - ns.FrameTimer(60, MapSwitch) -} -func TeleportPlayer() { - ns.Blind() - ns.Frozen(ns.GetHost(), true) -} -func EnableMonsterGroup2() { - ns.AggressionLevel(ns.GetTrigger(), 0.83) - ns.ObjectGroupOn(gvar8) -} -func EnableMonsterGroup3() { - ns.AggressionLevel(ns.GetTrigger(), 0.83) - ns.ObjectGroupOn(gvar9) -} -func LichWallsDown2() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 float32 - v5 float32 - v6 float32 - v7 float32 - v8 float32 - v9 float32 - v10 float32 - v11 float32 - v12 float32 - v13 float32 - v14 float32 - v15 float32 - ) - v0 = ns.GetWaypointX(wp47) - v1 = ns.GetWaypointY(wp47) - v2 = ns.GetWaypointX(wp48) - v3 = ns.GetWaypointY(wp48) - v4 = ns.GetWaypointX(wp49) - v5 = ns.GetWaypointY(wp49) - v6 = ns.GetWaypointX(wp50) - v7 = ns.GetWaypointY(wp50) - v8 = ns.GetWaypointX(wp51) - v9 = ns.GetWaypointY(wp51) - v10 = ns.GetWaypointX(wp52) - v11 = ns.GetWaypointY(wp52) - v12 = ns.GetWaypointX(wp53) - v13 = ns.GetWaypointY(wp53) - v14 = ns.GetWaypointX(wp54) - v15 = ns.GetWaypointY(wp54) - ns.WallGroupOpen(gvar33) - ns.ObjectGroupOn(gvar34) - ns.ObjectGroupOn(gvar31) - ns.FrameTimer(1, LichMove) - ns.Effect(ns.SMOKE_BLAST, v0, v1, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v2, v3, v2, v3) - ns.Effect(ns.SMOKE_BLAST, v4, v5, v4, v5) - ns.Effect(ns.SMOKE_BLAST, v6, v7, v6, v7) - ns.Effect(ns.SMOKE_BLAST, v8, v9, v8, v9) - ns.Effect(ns.SMOKE_BLAST, v10, v11, v10, v11) - ns.Effect(ns.SMOKE_BLAST, v12, v13, v12, v13) - ns.Effect(ns.SMOKE_BLAST, v14, v15, v14, v15) -} -func LichDieCheck() { - if !(flag37 && flag38) { - goto LABEL1 - } - LichWallsDown2() -LABEL1: - return -} -func LichDie1() { - flag37 = true - LichDieCheck() -} -func LichDie2() { - flag38 = true - LichDieCheck() -} -func LichMove() { - ns.Move(obj35, wp55) - ns.Move(obj36, wp56) -} -func LichWallsDown() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 float32 - v5 float32 - v6 float32 - v7 float32 - v8 float32 - v9 float32 - v10 float32 - v11 float32 - v12 float32 - v13 float32 - v14 float32 - v15 float32 - ) - v0 = ns.GetWaypointX(wp39) - v1 = ns.GetWaypointY(wp39) - v2 = ns.GetWaypointX(wp40) - v3 = ns.GetWaypointY(wp40) - v4 = ns.GetWaypointX(wp41) - v5 = ns.GetWaypointY(wp41) - v6 = ns.GetWaypointX(wp42) - v7 = ns.GetWaypointY(wp42) - v8 = ns.GetWaypointX(wp43) - v9 = ns.GetWaypointY(wp43) - v10 = ns.GetWaypointX(wp44) - v11 = ns.GetWaypointY(wp44) - v12 = ns.GetWaypointX(wp45) - v13 = ns.GetWaypointY(wp45) - v14 = ns.GetWaypointX(wp46) - v15 = ns.GetWaypointY(wp46) - ns.WallGroupOpen(gvar32) - ns.ObjectGroupOn(gvar30) - ns.Effect(ns.SMOKE_BLAST, v0, v1, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v2, v3, v2, v3) - ns.Effect(ns.SMOKE_BLAST, v4, v5, v4, v5) - ns.Effect(ns.SMOKE_BLAST, v6, v7, v6, v7) - ns.Effect(ns.SMOKE_BLAST, v8, v9, v8, v9) - ns.Effect(ns.SMOKE_BLAST, v10, v11, v10, v11) - ns.Effect(ns.SMOKE_BLAST, v12, v13, v12, v13) - ns.Effect(ns.SMOKE_BLAST, v14, v15, v14, v15) -} -func SentryRun() { - var v0 int - v0 = gvar69 - if v0 == gvar63 { - goto LABEL1 - } - if v0 == gvar64 { - goto LABEL2 - } - if v0 == gvar65 { - goto LABEL3 - } - if v0 == gvar66 { - goto LABEL4 - } - if v0 == gvar67 { - goto LABEL5 - } - if v0 == gvar68 { - goto LABEL6 - } - goto LABEL7 -LABEL1: - ns.ObjectOff(obj57) - ns.ObjectOn(obj58) - ns.ObjectOn(obj59) - ns.ObjectOn(obj60) - ns.ObjectOn(obj61) - ns.ObjectOff(obj62) - ns.FrameTimer(25, SentryRun) - gvar69 = gvar64 - goto LABEL7 -LABEL2: - ns.ObjectOn(obj57) - ns.ObjectOn(obj58) - ns.ObjectOn(obj59) - ns.ObjectOn(obj60) - ns.ObjectOff(obj61) - ns.ObjectOn(obj62) - ns.FrameTimer(25, SentryRun) - gvar69 = gvar65 - goto LABEL7 -LABEL3: - ns.ObjectOn(obj57) - ns.ObjectOn(obj58) - ns.ObjectOn(obj59) - ns.ObjectOff(obj60) - ns.ObjectOn(obj61) - ns.ObjectOn(obj62) - ns.FrameTimer(25, SentryRun) - gvar69 = gvar66 - goto LABEL7 -LABEL4: - ns.ObjectOn(obj57) - ns.ObjectOn(obj58) - ns.ObjectOff(obj59) - ns.ObjectOn(obj60) - ns.ObjectOn(obj61) - ns.ObjectOn(obj62) - ns.FrameTimer(25, SentryRun) - gvar69 = gvar67 - goto LABEL7 -LABEL5: - ns.ObjectOn(obj57) - ns.ObjectOff(obj58) - ns.ObjectOn(obj59) - ns.ObjectOn(obj60) - ns.ObjectOn(obj61) - ns.ObjectOn(obj62) - ns.FrameTimer(25, SentryRun) - gvar69 = gvar68 - goto LABEL7 -LABEL6: - ns.ObjectOn(obj57) - ns.ObjectOn(obj58) - ns.ObjectOn(obj59) - ns.ObjectOn(obj60) - ns.ObjectOn(obj61) - ns.ObjectOn(obj62) - ns.FrameTimer(25, SentryRun) - gvar69 = gvar63 - goto LABEL7 -LABEL7: - return -} -func LLDies() { - gvar75 = gvar74 -} -func OpenLLWallGroup() { - ns.WallGroupOpen(gvar72) -} -func Ghost1Face() { - ns.LookAtObject(obj70, ns.GetHost()) -} -func Ghost2Face() { - ns.LookAtObject(obj70, ns.GetHost()) -} -func PlayAction2Music() { - ns.Music(27, 100) -} -func MapInitialize() { - var v0 int - gvar30 = ns.ObjectGroup("LichGroup") - gvar31 = ns.ObjectGroup("LichGroup2") - gvar32 = ns.WallGroup("LichWallGroup") - gvar33 = ns.WallGroup("LichWallGroup2") - gvar34 = ns.ObjectGroup("LichElevatorGroup") - obj35 = ns.Object("Lich1") - obj36 = ns.Object("Lich2") - wp39 = ns.Waypoint("DestroyWP1") - wp40 = ns.Waypoint("DestroyWP2") - wp41 = ns.Waypoint("DestroyWP3") - wp42 = ns.Waypoint("DestroyWP4") - wp43 = ns.Waypoint("DestroyWP5") - wp44 = ns.Waypoint("DestroyWP6") - wp45 = ns.Waypoint("DestroyWP7") - wp46 = ns.Waypoint("DestroyWP8") - wp47 = ns.Waypoint("DestroyWP1a") - wp48 = ns.Waypoint("DestroyWP2a") - wp49 = ns.Waypoint("DestroyWP3a") - wp50 = ns.Waypoint("DestroyWP4a") - wp51 = ns.Waypoint("DestroyWP5a") - wp52 = ns.Waypoint("DestroyWP6a") - wp53 = ns.Waypoint("DestroyWP7a") - wp54 = ns.Waypoint("DestroyWP8a") - wp55 = ns.Waypoint("LichWP1") - wp56 = ns.Waypoint("LichWP2") - obj57 = ns.Object("Sentry1") - obj58 = ns.Object("Sentry2") - obj59 = ns.Object("Sentry3") - obj60 = ns.Object("Sentry4") - obj61 = ns.Object("Sentry5") - obj62 = ns.Object("Sentry6") - SentryRun() - obj70 = ns.Object("LLGhost") - wp71[0] = ns.Waypoint("LLGhostWP1") - wp71[1] = ns.Waypoint("LLGhostWP2") - wp71[2] = ns.Waypoint("LLGhostWP3") - wp71[3] = ns.Waypoint("LLGhostWP4") - wp71[4] = ns.Waypoint("LLGhostWP5") - wp71[5] = ns.Waypoint("LLGhostWP6") - gvar72 = ns.WallGroup("LLWallGroup") - obj76 = ns.Object("Spike1") - obj77 = ns.Object("Spike2") - obj78 = ns.Object("Spike3") - obj79 = ns.Object("Spike4") - wp80 = ns.Waypoint("Spike1WP") - wp81 = ns.Waypoint("Spike2WP") - wp82 = ns.Waypoint("Spike3WP") - wp83 = ns.Waypoint("Spike4WP") - gvar84 = ns.WallGroup("SpikeWallGroup") - gvar85 = ns.ObjectGroup("SpikeWallTrigGroup") - gvar86 = ns.ObjectGroup("CherubGroup") - gvar87 = ns.WallGroup("CherubWallGroup") - obj88 = ns.Object("Cherub1") - obj89 = ns.Object("Cherub2") - obj90 = ns.Object("Cherub3") - obj91 = ns.Object("Cherub4") - obj92 = ns.Object("Cherub5") - obj93 = ns.Object("Cherub6") - obj94 = ns.Object("Cherub7") - obj95 = ns.Object("Cherub8") - obj96 = ns.Object("Cherub9") - obj97 = ns.Object("Cherub10") - gvar106 = ns.ObjectGroup("SentryGroup1") - gvar107 = ns.ObjectGroup("SentryGroup2") - gvar108 = ns.ObjectGroup("SentryGroup3") - gvar109 = ns.ObjectGroup("SentryGroup4") - obj98 = ns.Object("Sentry1L") - obj99 = ns.Object("Sentry1R") - obj100 = ns.Object("Sentry2L") - obj101 = ns.Object("Sentry2R") - obj102 = ns.Object("Sentry3L") - obj103 = ns.Object("Sentry3R") - obj104 = ns.Object("Sentry4L") - obj105 = ns.Object("Sentry4R") - gvar111 = ns.ObjectGroup("OrbTriggerGroup") - gvar110 = ns.ObjectGroup("SentryMonsterGroup") - gvar112 = ns.WallGroup("OrbWallGroup1") - gvar113 = ns.WallGroup("OrbWallGroup2") - gvar114 = ns.WallGroup("OrbWallGroup3") - gvar10 = ns.WallGroup("OrbWallGroup4") - wp119 = ns.Waypoint("OrbXPWP") - gvar120 = ns.ObjectGroup("OrbXPTrigGroup") - obj4 = ns.Object("OrbPool1") - obj5 = ns.Object("Hecubah") - gvar7 = ns.ObjectGroup("OrbMonsterGroup") - gvar8 = ns.ObjectGroup("OrbMonsterGroup2") - gvar9 = ns.ObjectGroup("OrbMonsterGroup3") - gvar6 = ns.WallGroup("OrbWallGroupFinal") - wp11 = ns.Waypoint("OrbAudioWP") - gvar15 = ns.WallGroup("HecubahWallGroup") - wp12 = ns.Waypoint("HecubahEnterWP") - wp13 = ns.Waypoint("HecubahExitWP") - wp14 = ns.Waypoint("HecubahLookWP") - gvar16 = ns.ObjectGroup("OrbSoundGroup") - gvar17 = ns.ObjectGroup("OrbPoolTrigGroup") - gvar18 = ns.ObjectGroup("HecubahVanishTrigGroup") - wp19 = ns.Waypoint("HecubahVanishWP") - wp20 = ns.Waypoint("HecubahEndWP") - wp21 = ns.Waypoint("MapSwitchWP") - obj22 = ns.Object("HecubahEndTrig") - obj24 = ns.Object("ExitTeleporter") - wp121 = ns.Waypoint("Secret1AudioWP") - wp122 = ns.Waypoint("Secret2AudioWP") - PlayAction2Music() - gvar25 = ns.WallGroup("InvisibleWallGroup") - ns.WallGroupOpen(gvar25) - v0 = 0 - for { - if !(v0 < 32) { - goto LABEL1 - } - wp23[v0] = ns.Waypoint("SmokeWP" + strconv.Itoa(v0+1)) - v0 += 1 - } -LABEL1: - return -} -func OrbXP() { - ns.ObjectGroupOff(gvar120) - ns.AudioEvent(ns.FlagDrop, wp119) - ns.GiveXp(ns.GetHost(), 2000) -} -func Secret100XP() { - ns.GiveXp(ns.GetHost(), 100) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.AudioEvent(ns.SecretFound, wp121) -} -func Secret200XP() { - ns.GiveXp(ns.GetHost(), 200) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.AudioEvent(ns.SecretFound, wp122) -} -func HostilizeMe() { - ns.AggressionLevel(ns.GetTrigger(), 0.83) -} -func PlayAction3Music() { - ns.Music(28, 100) -} -func PlayOrbMusic() { - ns.Music(12, 100) -} -func SpikeMove() { - ns.ObjectGroupOff(gvar85) - ns.AudioEvent(ns.SpikeBlockMove, wp83) - ns.WallGroupOpen(gvar84) - ns.Move(obj76, wp80) - ns.Move(obj77, wp81) - ns.Move(obj78, wp82) - ns.Move(obj79, wp83) - PlayAction3Music() -} -func OpenOrbWallGroup1() { - if !(!ns.IsObjectOn(obj98) && !ns.IsObjectOn(obj99) && !ns.IsObjectOn(obj100) && !ns.IsObjectOn(obj101) && !ns.IsObjectOn(obj102) && !ns.IsObjectOn(obj103) && !ns.IsObjectOn(obj104) && !ns.IsObjectOn(obj105)) { - goto LABEL1 - } - ns.WallGroupOpen(gvar112) -LABEL1: - return -} -func ToggleSG1() { - ns.ObjectGroupToggle(gvar106) - OpenOrbWallGroup1() -} -func EnableSG1() { - ns.ObjectGroupOn(gvar106) -} -func ToggleSG2() { - ns.ObjectGroupToggle(gvar107) - OpenOrbWallGroup1() -} -func EnableSG2() { - ns.ObjectGroupOn(gvar107) -} -func ToggleSG3() { - ns.ObjectGroupToggle(gvar108) - OpenOrbWallGroup1() -} -func EnableSG3() { - ns.ObjectGroupOn(gvar108) -} -func ToggleSG4() { - ns.ObjectGroupToggle(gvar109) - OpenOrbWallGroup1() -} -func EnableSG4() { - ns.ObjectGroupOn(gvar109) -} -func OpenOrbWallGroup2() { - ns.WallGroupOpen(gvar113) - ns.ObjectGroupOn(gvar110) - ns.ObjectGroupOn(gvar86) - ns.WallGroupOpen(gvar87) -} -func OpenOrbWallGroup3() { - ns.WallGroupOpen(gvar114) -} -func OpenOrbWallGroup4() { - ns.WallGroupOpen(gvar10) - ns.ObjectGroupOff(gvar111) - ns.ObjectGroupOff(gvar106) - ns.ObjectGroupOff(gvar107) - ns.ObjectGroupOff(gvar108) - ns.ObjectGroupOff(gvar109) -} -func BossDieCheck() { - if !(flag115 && flag116 && flag117 && flag118) { - goto LABEL1 - } - OpenOrbWallGroup3() -LABEL1: - return -} -func BossDie1() { - flag115 = true - BossDieCheck() -} -func BossDie2() { - flag116 = true - BossDieCheck() -} -func BossDie3() { - flag117 = true - BossDieCheck() -} -func BossDie4() { - flag118 = true - BossDieCheck() -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapInitialize": - MapInitialize() - } -} diff --git a/examples/war11a/dummy_test.go b/examples/war11a/dummy_test.go deleted file mode 100644 index 03070a9..0000000 --- a/examples/war11a/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package war11a - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/war11a/war11a.go b/examples/war11a/war11a.go deleted file mode 100644 index 283f347..0000000 --- a/examples/war11a/war11a.go +++ /dev/null @@ -1,1921 +0,0 @@ -package war11a - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - gvar4 int - gvar5 int - gvar6 int - gvar7 int - gvar8 int - wp9 [5]ns.WaypointID - wp10 [4]ns.WaypointID - wp11 [9]ns.WaypointID - wp12 [9]ns.WaypointID - wp13 [9]ns.WaypointID - gvar14 int - gvar15 int - gvar16 int - gvar17 int - gvar18 int - gvar19 int - gvar20 int - gvar21 int - gvar22 int - gvar23 int - gvar24 int - gvar25 int - gvar26 int - gvar27 int - gvar28 int - gvar29 int - gvar30 int - gvar31 int - flag32 bool - flag33 bool - fvar34 float32 - fvar35 float32 - ivar36 int - ivar37 int - ivar38 int - ivar39 int - ivar40 int - gvar41 int - gvar42 int - gvar43 int - obj44 ns.ObjectID - obj45 ns.ObjectID - obj46 ns.ObjectID - obj47 ns.ObjectID - obj48 ns.ObjectID - obj49 ns.ObjectID - obj50 ns.ObjectID - obj51 ns.ObjectID - obj52 ns.ObjectID - obj53 ns.ObjectID - obj54 ns.ObjectID - obj55 ns.ObjectID - obj56 ns.ObjectID - obj57 ns.ObjectID - obj58 ns.ObjectID - obj59 ns.ObjectID - obj60 ns.ObjectID - obj61 ns.ObjectID - obj62 ns.ObjectID - obj63 ns.ObjectID - obj64 ns.ObjectID - obj65 ns.ObjectID - obj66 [4]ns.ObjectID - obj67 [5]ns.ObjectID - wp68 [4]ns.WaypointID - wp69 ns.WaypointID - wp70 ns.WaypointID - wp71 ns.WaypointID - wp72 ns.WaypointID - wp73 ns.WaypointID - wp74 ns.WaypointID - wp75 ns.WaypointID -) - -func init() { - gvar4 = 0 - gvar5 = 1 - gvar6 = 2 - gvar7 = 3 - gvar8 = 4 - gvar14 = gvar4 - gvar15 = gvar5 - gvar16 = gvar4 - gvar17 = gvar5 - gvar18 = gvar4 - gvar19 = gvar5 - gvar20 = gvar4 - gvar21 = gvar5 - gvar22 = gvar4 - gvar23 = gvar5 - gvar24 = gvar4 - gvar25 = gvar5 - gvar26 = gvar4 - gvar27 = gvar5 - gvar28 = gvar4 - gvar29 = gvar5 - gvar30 = gvar4 - gvar31 = gvar5 - flag32 = false - flag33 = true - ivar36 = 0 - ivar37 = 0 - ivar39 = 0 - ivar40 = 0 - gvar41 = 0 - gvar42 = 0 - gvar43 = 1 -} -func Flame0() { - var ( - v0 int - v1 [4]ns.ObjectID - v2 int - ) - v2 = gvar15 - if v2 == gvar4 { - goto LABEL1 - } - if v2 == gvar5 { - goto LABEL2 - } - if v2 == gvar6 { - goto LABEL3 - } - if v2 == gvar7 { - goto LABEL4 - } - if v2 == gvar8 { - goto LABEL5 - } - goto LABEL6 -LABEL1: - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL7 - } - ns.Delete(v1[v0]) - v0 += 1 - } -LABEL7: - gvar15 = gvar5 - gvar14 = gvar4 - goto LABEL6 -LABEL2: - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL9 - } - ns.Delete(v1[v0]) - v0 += 1 - } -LABEL9: - v1[0] = ns.CreateObject("SmallFlame", wp9[0]) - v1[1] = ns.CreateObject("SmallFlame", wp11[0]) - v1[2] = ns.CreateObject("SmallFlame", wp12[0]) - v1[3] = ns.CreateObject("SmallFlame", wp13[0]) - if gvar14 != gvar4 { - goto LABEL11 - } - gvar15 = gvar6 - goto LABEL12 -LABEL11: - gvar15 = gvar4 -LABEL12: - gvar14 = gvar5 - goto LABEL6 -LABEL3: - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL13 - } - ns.Delete(v1[v0]) - v0 += 1 - } -LABEL13: - v1[0] = ns.CreateObject("MediumFlame", wp9[0]) - v1[1] = ns.CreateObject("MediumFlame", wp11[0]) - v1[2] = ns.CreateObject("MediumFlame", wp12[0]) - v1[3] = ns.CreateObject("MediumFlame", wp13[0]) - if gvar14 != gvar5 { - goto LABEL15 - } - gvar15 = gvar7 - goto LABEL16 -LABEL15: - gvar15 = gvar5 -LABEL16: - gvar14 = gvar6 - goto LABEL6 -LABEL4: - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL17 - } - ns.Delete(v1[v0]) - v0 += 1 - } -LABEL17: - v1[0] = ns.CreateObject("Flame", wp9[0]) - v1[1] = ns.CreateObject("Flame", wp11[0]) - v1[2] = ns.CreateObject("Flame", wp12[0]) - v1[3] = ns.CreateObject("Flame", wp13[0]) - if gvar14 != gvar6 { - goto LABEL19 - } - gvar15 = gvar8 - goto LABEL20 -LABEL19: - gvar15 = gvar6 -LABEL20: - gvar14 = gvar7 - goto LABEL6 -LABEL5: - ns.AudioEvent(ns.DemonBreath, wp9[0]) - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL21 - } - ns.Delete(v1[v0]) - v0 += 1 - } -LABEL21: - v1[0] = ns.CreateObject("LargeFlame", wp9[0]) - v1[1] = ns.CreateObject("LargeFlame", wp11[0]) - v1[2] = ns.CreateObject("LargeFlame", wp12[0]) - v1[3] = ns.CreateObject("LargeFlame", wp13[0]) - gvar15 = gvar7 - gvar14 = gvar8 - goto LABEL6 -LABEL6: - if gvar14 == gvar4 { - goto LABEL23 - } - ns.FrameTimer(2, Flame0) -LABEL23: - return -} -func Flame1() { - var ( - v0 int - v1 [4]ns.ObjectID - v2 int - ) - v2 = gvar17 - if v2 == gvar4 { - goto LABEL1 - } - if v2 == gvar5 { - goto LABEL2 - } - if v2 == gvar6 { - goto LABEL3 - } - if v2 == gvar7 { - goto LABEL4 - } - if v2 == gvar8 { - goto LABEL5 - } - goto LABEL6 -LABEL1: - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL7 - } - ns.Delete(v1[v0]) - v0 += 1 - } -LABEL7: - gvar17 = gvar5 - gvar16 = gvar4 - goto LABEL6 -LABEL2: - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL9 - } - ns.Delete(v1[v0]) - v0 += 1 - } -LABEL9: - v1[0] = ns.CreateObject("SmallFlame", wp9[1]) - v1[1] = ns.CreateObject("SmallFlame", wp11[1]) - v1[2] = ns.CreateObject("SmallFlame", wp12[1]) - v1[3] = ns.CreateObject("SmallFlame", wp13[1]) - if gvar16 != gvar4 { - goto LABEL11 - } - gvar17 = gvar6 - goto LABEL12 -LABEL11: - gvar17 = gvar4 -LABEL12: - gvar16 = gvar5 - goto LABEL6 -LABEL3: - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL13 - } - ns.Delete(v1[v0]) - v0 += 1 - } -LABEL13: - v1[0] = ns.CreateObject("MediumFlame", wp9[1]) - v1[1] = ns.CreateObject("MediumFlame", wp11[1]) - v1[2] = ns.CreateObject("MediumFlame", wp12[1]) - v1[3] = ns.CreateObject("MediumFlame", wp13[1]) - if gvar16 != gvar5 { - goto LABEL15 - } - gvar17 = gvar7 - goto LABEL16 -LABEL15: - gvar17 = gvar5 -LABEL16: - gvar16 = gvar6 - goto LABEL6 -LABEL4: - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL17 - } - ns.Delete(v1[v0]) - v0 += 1 - } -LABEL17: - v1[0] = ns.CreateObject("Flame", wp9[1]) - v1[1] = ns.CreateObject("Flame", wp11[1]) - v1[2] = ns.CreateObject("Flame", wp12[1]) - v1[3] = ns.CreateObject("Flame", wp13[1]) - if gvar16 != gvar6 { - goto LABEL19 - } - gvar17 = gvar8 - goto LABEL20 -LABEL19: - gvar17 = gvar6 -LABEL20: - gvar16 = gvar7 - goto LABEL6 -LABEL5: - ns.AudioEvent(ns.DemonBreath, wp9[1]) - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL21 - } - ns.Delete(v1[v0]) - v0 += 1 - } -LABEL21: - v1[0] = ns.CreateObject("LargeFlame", wp9[1]) - v1[1] = ns.CreateObject("LargeFlame", wp11[1]) - v1[2] = ns.CreateObject("LargeFlame", wp12[1]) - v1[3] = ns.CreateObject("LargeFlame", wp13[1]) - gvar17 = gvar7 - gvar16 = gvar8 - goto LABEL6 -LABEL6: - if gvar16 == gvar4 { - goto LABEL23 - } - ns.FrameTimer(2, Flame1) -LABEL23: - return -} -func Flame2() { - var ( - v0 int - v1 [4]ns.ObjectID - v2 int - ) - v2 = gvar19 - if v2 == gvar4 { - goto LABEL1 - } - if v2 == gvar5 { - goto LABEL2 - } - if v2 == gvar6 { - goto LABEL3 - } - if v2 == gvar7 { - goto LABEL4 - } - if v2 == gvar8 { - goto LABEL5 - } - goto LABEL6 -LABEL1: - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL7 - } - ns.Delete(v1[v0]) - v0 += 1 - } -LABEL7: - gvar19 = gvar5 - gvar18 = gvar4 - goto LABEL6 -LABEL2: - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL9 - } - ns.Delete(v1[v0]) - v0 += 1 - } -LABEL9: - v1[0] = ns.CreateObject("SmallFlame", wp9[2]) - v1[1] = ns.CreateObject("SmallFlame", wp11[2]) - v1[2] = ns.CreateObject("SmallFlame", wp12[2]) - v1[3] = ns.CreateObject("SmallFlame", wp13[2]) - if gvar18 != gvar4 { - goto LABEL11 - } - gvar19 = gvar6 - goto LABEL12 -LABEL11: - gvar19 = gvar4 -LABEL12: - gvar18 = gvar5 - goto LABEL6 -LABEL3: - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL13 - } - ns.Delete(v1[v0]) - v0 += 1 - } -LABEL13: - v1[0] = ns.CreateObject("MediumFlame", wp9[2]) - v1[1] = ns.CreateObject("MediumFlame", wp11[2]) - v1[2] = ns.CreateObject("MediumFlame", wp12[2]) - v1[3] = ns.CreateObject("MediumFlame", wp13[2]) - if gvar18 != gvar5 { - goto LABEL15 - } - gvar19 = gvar7 - goto LABEL16 -LABEL15: - gvar19 = gvar5 -LABEL16: - gvar18 = gvar6 - goto LABEL6 -LABEL4: - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL17 - } - ns.Delete(v1[v0]) - v0 += 1 - } -LABEL17: - v1[0] = ns.CreateObject("Flame", wp9[2]) - v1[1] = ns.CreateObject("Flame", wp11[2]) - v1[2] = ns.CreateObject("Flame", wp12[2]) - v1[3] = ns.CreateObject("Flame", wp13[2]) - if gvar18 != gvar6 { - goto LABEL19 - } - gvar19 = gvar8 - goto LABEL20 -LABEL19: - gvar19 = gvar6 -LABEL20: - gvar18 = gvar7 - goto LABEL6 -LABEL5: - ns.AudioEvent(ns.DemonBreath, wp9[2]) - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL21 - } - ns.Delete(v1[v0]) - v0 += 1 - } -LABEL21: - v1[0] = ns.CreateObject("LargeFlame", wp9[2]) - v1[1] = ns.CreateObject("LargeFlame", wp11[2]) - v1[2] = ns.CreateObject("LargeFlame", wp12[2]) - v1[3] = ns.CreateObject("LargeFlame", wp13[2]) - gvar19 = gvar7 - gvar18 = gvar8 - goto LABEL6 -LABEL6: - if gvar18 == gvar4 { - goto LABEL23 - } - ns.FrameTimer(2, Flame2) -LABEL23: - return -} -func Flame3() { - var ( - v0 int - v1 [4]ns.ObjectID - v2 int - ) - v2 = gvar21 - if v2 == gvar4 { - goto LABEL1 - } - if v2 == gvar5 { - goto LABEL2 - } - if v2 == gvar6 { - goto LABEL3 - } - if v2 == gvar7 { - goto LABEL4 - } - if v2 == gvar8 { - goto LABEL5 - } - goto LABEL6 -LABEL1: - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL7 - } - ns.Delete(v1[v0]) - v0 += 1 - } -LABEL7: - gvar21 = gvar5 - gvar20 = gvar4 - goto LABEL6 -LABEL2: - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL9 - } - ns.Delete(v1[v0]) - v0 += 1 - } -LABEL9: - v1[0] = ns.CreateObject("SmallFlame", wp9[3]) - v1[1] = ns.CreateObject("SmallFlame", wp11[3]) - v1[2] = ns.CreateObject("SmallFlame", wp12[3]) - v1[3] = ns.CreateObject("SmallFlame", wp13[3]) - if gvar20 != gvar4 { - goto LABEL11 - } - gvar21 = gvar6 - goto LABEL12 -LABEL11: - gvar21 = gvar4 -LABEL12: - gvar20 = gvar5 - goto LABEL6 -LABEL3: - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL13 - } - ns.Delete(v1[v0]) - v0 += 1 - } -LABEL13: - v1[0] = ns.CreateObject("MediumFlame", wp9[3]) - v1[1] = ns.CreateObject("MediumFlame", wp11[3]) - v1[2] = ns.CreateObject("MediumFlame", wp12[3]) - v1[3] = ns.CreateObject("MediumFlame", wp13[3]) - if gvar20 != gvar5 { - goto LABEL15 - } - gvar21 = gvar7 - goto LABEL16 -LABEL15: - gvar21 = gvar5 -LABEL16: - gvar20 = gvar6 - goto LABEL6 -LABEL4: - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL17 - } - ns.Delete(v1[v0]) - v0 += 1 - } -LABEL17: - v1[0] = ns.CreateObject("Flame", wp9[3]) - v1[1] = ns.CreateObject("Flame", wp11[3]) - v1[2] = ns.CreateObject("Flame", wp12[3]) - v1[3] = ns.CreateObject("Flame", wp13[3]) - if gvar20 != gvar6 { - goto LABEL19 - } - gvar21 = gvar8 - goto LABEL20 -LABEL19: - gvar21 = gvar6 -LABEL20: - gvar20 = gvar7 - goto LABEL6 -LABEL5: - ns.AudioEvent(ns.DemonBreath, wp9[3]) - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL21 - } - ns.Delete(v1[v0]) - v0 += 1 - } -LABEL21: - v1[0] = ns.CreateObject("LargeFlame", wp9[3]) - v1[1] = ns.CreateObject("LargeFlame", wp11[3]) - v1[2] = ns.CreateObject("LargeFlame", wp12[3]) - v1[3] = ns.CreateObject("LargeFlame", wp13[3]) - gvar21 = gvar7 - gvar20 = gvar8 - goto LABEL6 -LABEL6: - if gvar20 == gvar4 { - goto LABEL23 - } - ns.FrameTimer(2, Flame3) -LABEL23: - return -} -func Flame4() { - var ( - v0 int - v1 [4]ns.ObjectID - v2 int - ) - v2 = gvar23 - if v2 == gvar4 { - goto LABEL1 - } - if v2 == gvar5 { - goto LABEL2 - } - if v2 == gvar6 { - goto LABEL3 - } - if v2 == gvar7 { - goto LABEL4 - } - if v2 == gvar8 { - goto LABEL5 - } - goto LABEL6 -LABEL1: - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL7 - } - ns.Delete(v1[v0]) - v0 += 1 - } -LABEL7: - gvar23 = gvar5 - gvar22 = gvar4 - goto LABEL6 -LABEL2: - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL9 - } - ns.Delete(v1[v0]) - v0 += 1 - } -LABEL9: - v1[0] = ns.CreateObject("SmallFlame", wp9[4]) - v1[1] = ns.CreateObject("SmallFlame", wp11[4]) - v1[2] = ns.CreateObject("SmallFlame", wp12[4]) - v1[3] = ns.CreateObject("SmallFlame", wp13[4]) - if gvar22 != gvar4 { - goto LABEL11 - } - gvar23 = gvar6 - goto LABEL12 -LABEL11: - gvar23 = gvar4 -LABEL12: - gvar22 = gvar5 - goto LABEL6 -LABEL3: - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL13 - } - ns.Delete(v1[v0]) - v0 += 1 - } -LABEL13: - v1[0] = ns.CreateObject("MediumFlame", wp9[4]) - v1[1] = ns.CreateObject("MediumFlame", wp11[4]) - v1[2] = ns.CreateObject("MediumFlame", wp12[4]) - v1[3] = ns.CreateObject("MediumFlame", wp13[4]) - if gvar22 != gvar5 { - goto LABEL15 - } - gvar23 = gvar7 - goto LABEL16 -LABEL15: - gvar23 = gvar5 -LABEL16: - gvar22 = gvar6 - goto LABEL6 -LABEL4: - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL17 - } - ns.Delete(v1[v0]) - v0 += 1 - } -LABEL17: - v1[0] = ns.CreateObject("Flame", wp9[4]) - v1[1] = ns.CreateObject("Flame", wp11[4]) - v1[2] = ns.CreateObject("Flame", wp12[4]) - v1[3] = ns.CreateObject("Flame", wp13[4]) - if gvar22 != gvar6 { - goto LABEL19 - } - gvar23 = gvar8 - goto LABEL20 -LABEL19: - gvar23 = gvar6 -LABEL20: - gvar22 = gvar7 - goto LABEL6 -LABEL5: - ns.AudioEvent(ns.DemonBreath, wp9[4]) - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL21 - } - ns.Delete(v1[v0]) - v0 += 1 - } -LABEL21: - v1[0] = ns.CreateObject("LargeFlame", wp9[4]) - v1[1] = ns.CreateObject("LargeFlame", wp11[4]) - v1[2] = ns.CreateObject("LargeFlame", wp12[4]) - v1[3] = ns.CreateObject("LargeFlame", wp13[4]) - gvar23 = gvar7 - gvar22 = gvar8 - goto LABEL6 -LABEL6: - if gvar22 == gvar4 { - goto LABEL23 - } - ns.FrameTimer(2, Flame4) -LABEL23: - return -} -func Flame5() { - var ( - v0 int - v1 [4]ns.ObjectID - v2 int - ) - v2 = gvar25 - if v2 == gvar4 { - goto LABEL1 - } - if v2 == gvar5 { - goto LABEL2 - } - if v2 == gvar6 { - goto LABEL3 - } - if v2 == gvar7 { - goto LABEL4 - } - if v2 == gvar8 { - goto LABEL5 - } - goto LABEL6 -LABEL1: - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL7 - } - ns.Delete(v1[v0]) - v0 += 1 - } -LABEL7: - gvar25 = gvar5 - gvar24 = gvar4 - goto LABEL6 -LABEL2: - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL9 - } - ns.Delete(v1[v0]) - v0 += 1 - } -LABEL9: - v1[0] = ns.CreateObject("SmallFlame", wp10[0]) - v1[1] = ns.CreateObject("SmallFlame", wp11[5]) - v1[2] = ns.CreateObject("SmallFlame", wp12[5]) - v1[3] = ns.CreateObject("SmallFlame", wp13[5]) - if gvar24 != gvar4 { - goto LABEL11 - } - gvar25 = gvar6 - goto LABEL12 -LABEL11: - gvar25 = gvar4 -LABEL12: - gvar24 = gvar5 - goto LABEL6 -LABEL3: - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL13 - } - ns.Delete(v1[v0]) - v0 += 1 - } -LABEL13: - v1[0] = ns.CreateObject("MediumFlame", wp10[0]) - v1[1] = ns.CreateObject("MediumFlame", wp11[5]) - v1[2] = ns.CreateObject("MediumFlame", wp12[5]) - v1[3] = ns.CreateObject("MediumFlame", wp13[5]) - if gvar24 != gvar5 { - goto LABEL15 - } - gvar25 = gvar7 - goto LABEL16 -LABEL15: - gvar25 = gvar5 -LABEL16: - gvar24 = gvar6 - goto LABEL6 -LABEL4: - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL17 - } - ns.Delete(v1[v0]) - v0 += 1 - } -LABEL17: - v1[0] = ns.CreateObject("Flame", wp10[0]) - v1[1] = ns.CreateObject("Flame", wp11[5]) - v1[2] = ns.CreateObject("Flame", wp12[5]) - v1[3] = ns.CreateObject("Flame", wp13[5]) - if gvar24 != gvar6 { - goto LABEL19 - } - gvar25 = gvar8 - goto LABEL20 -LABEL19: - gvar25 = gvar6 -LABEL20: - gvar24 = gvar7 - goto LABEL6 -LABEL5: - ns.AudioEvent(ns.DemonBreath, wp10[0]) - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL21 - } - ns.Delete(v1[v0]) - v0 += 1 - } -LABEL21: - v1[0] = ns.CreateObject("LargeFlame", wp10[0]) - v1[1] = ns.CreateObject("LargeFlame", wp11[5]) - v1[2] = ns.CreateObject("LargeFlame", wp12[5]) - v1[3] = ns.CreateObject("LargeFlame", wp13[5]) - gvar25 = gvar7 - gvar24 = gvar8 - goto LABEL6 -LABEL6: - if gvar24 == gvar4 { - goto LABEL23 - } - ns.FrameTimer(2, Flame5) -LABEL23: - return -} -func Flame6() { - var ( - v0 int - v1 [4]ns.ObjectID - v2 int - ) - v2 = gvar27 - if v2 == gvar4 { - goto LABEL1 - } - if v2 == gvar5 { - goto LABEL2 - } - if v2 == gvar6 { - goto LABEL3 - } - if v2 == gvar7 { - goto LABEL4 - } - if v2 == gvar8 { - goto LABEL5 - } - goto LABEL6 -LABEL1: - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL7 - } - ns.Delete(v1[v0]) - v0 += 1 - } -LABEL7: - gvar27 = gvar5 - gvar26 = gvar4 - goto LABEL6 -LABEL2: - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL9 - } - ns.Delete(v1[v0]) - v0 += 1 - } -LABEL9: - v1[0] = ns.CreateObject("SmallFlame", wp10[1]) - v1[1] = ns.CreateObject("SmallFlame", wp11[6]) - v1[2] = ns.CreateObject("SmallFlame", wp12[6]) - v1[3] = ns.CreateObject("SmallFlame", wp13[6]) - if gvar26 != gvar4 { - goto LABEL11 - } - gvar27 = gvar6 - goto LABEL12 -LABEL11: - gvar27 = gvar4 -LABEL12: - gvar26 = gvar5 - goto LABEL6 -LABEL3: - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL13 - } - ns.Delete(v1[v0]) - v0 += 1 - } -LABEL13: - v1[0] = ns.CreateObject("MediumFlame", wp10[1]) - v1[1] = ns.CreateObject("MediumFlame", wp11[6]) - v1[2] = ns.CreateObject("MediumFlame", wp12[6]) - v1[3] = ns.CreateObject("MediumFlame", wp13[6]) - if gvar26 != gvar5 { - goto LABEL15 - } - gvar27 = gvar7 - goto LABEL16 -LABEL15: - gvar27 = gvar5 -LABEL16: - gvar26 = gvar6 - goto LABEL6 -LABEL4: - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL17 - } - ns.Delete(v1[v0]) - v0 += 1 - } -LABEL17: - v1[0] = ns.CreateObject("Flame", wp10[1]) - v1[1] = ns.CreateObject("Flame", wp11[6]) - v1[2] = ns.CreateObject("Flame", wp12[6]) - v1[3] = ns.CreateObject("Flame", wp13[6]) - if gvar26 != gvar6 { - goto LABEL19 - } - gvar27 = gvar8 - goto LABEL20 -LABEL19: - gvar27 = gvar6 -LABEL20: - gvar26 = gvar7 - goto LABEL6 -LABEL5: - ns.AudioEvent(ns.DemonBreath, wp10[1]) - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL21 - } - ns.Delete(v1[v0]) - v0 += 1 - } -LABEL21: - v1[0] = ns.CreateObject("LargeFlame", wp10[1]) - v1[1] = ns.CreateObject("LargeFlame", wp11[6]) - v1[2] = ns.CreateObject("LargeFlame", wp12[6]) - v1[3] = ns.CreateObject("LargeFlame", wp13[6]) - gvar27 = gvar7 - gvar26 = gvar8 - goto LABEL6 -LABEL6: - if gvar26 == gvar4 { - goto LABEL23 - } - ns.FrameTimer(2, Flame6) -LABEL23: - return -} -func Flame7() { - var ( - v0 int - v1 [4]ns.ObjectID - v2 int - ) - v2 = gvar29 - if v2 == gvar4 { - goto LABEL1 - } - if v2 == gvar5 { - goto LABEL2 - } - if v2 == gvar6 { - goto LABEL3 - } - if v2 == gvar7 { - goto LABEL4 - } - if v2 == gvar8 { - goto LABEL5 - } - goto LABEL6 -LABEL1: - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL7 - } - ns.Delete(v1[v0]) - v0 += 1 - } -LABEL7: - gvar29 = gvar5 - gvar28 = gvar4 - goto LABEL6 -LABEL2: - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL9 - } - ns.Delete(v1[v0]) - v0 += 1 - } -LABEL9: - v1[0] = ns.CreateObject("SmallFlame", wp10[2]) - v1[1] = ns.CreateObject("SmallFlame", wp11[7]) - v1[2] = ns.CreateObject("SmallFlame", wp12[7]) - v1[3] = ns.CreateObject("SmallFlame", wp13[7]) - if gvar28 != gvar4 { - goto LABEL11 - } - gvar29 = gvar6 - goto LABEL12 -LABEL11: - gvar29 = gvar4 -LABEL12: - gvar28 = gvar5 - goto LABEL6 -LABEL3: - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL13 - } - ns.Delete(v1[v0]) - v0 += 1 - } -LABEL13: - v1[0] = ns.CreateObject("MediumFlame", wp10[2]) - v1[1] = ns.CreateObject("MediumFlame", wp11[7]) - v1[2] = ns.CreateObject("MediumFlame", wp12[7]) - v1[3] = ns.CreateObject("MediumFlame", wp13[7]) - if gvar28 != gvar5 { - goto LABEL15 - } - gvar29 = gvar7 - goto LABEL16 -LABEL15: - gvar29 = gvar5 -LABEL16: - gvar28 = gvar6 - goto LABEL6 -LABEL4: - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL17 - } - ns.Delete(v1[v0]) - v0 += 1 - } -LABEL17: - v1[0] = ns.CreateObject("Flame", wp10[2]) - v1[1] = ns.CreateObject("Flame", wp11[7]) - v1[2] = ns.CreateObject("Flame", wp12[7]) - v1[3] = ns.CreateObject("Flame", wp13[7]) - if gvar28 != gvar6 { - goto LABEL19 - } - gvar29 = gvar8 - goto LABEL20 -LABEL19: - gvar29 = gvar6 -LABEL20: - gvar28 = gvar7 - goto LABEL6 -LABEL5: - ns.AudioEvent(ns.DemonBreath, wp10[2]) - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL21 - } - ns.Delete(v1[v0]) - v0 += 1 - } -LABEL21: - v1[0] = ns.CreateObject("LargeFlame", wp10[2]) - v1[1] = ns.CreateObject("LargeFlame", wp11[7]) - v1[2] = ns.CreateObject("LargeFlame", wp12[7]) - v1[3] = ns.CreateObject("LargeFlame", wp13[7]) - gvar29 = gvar7 - gvar28 = gvar8 - goto LABEL6 -LABEL6: - if gvar28 == gvar4 { - goto LABEL23 - } - ns.FrameTimer(2, Flame7) -LABEL23: - return -} -func Flame8() { - var ( - v0 int - v1 [4]ns.ObjectID - v2 int - ) - v2 = gvar31 - if v2 == gvar4 { - goto LABEL1 - } - if v2 == gvar5 { - goto LABEL2 - } - if v2 == gvar6 { - goto LABEL3 - } - if v2 == gvar7 { - goto LABEL4 - } - if v2 == gvar8 { - goto LABEL5 - } - goto LABEL6 -LABEL1: - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL7 - } - ns.Delete(v1[v0]) - v0 += 1 - } -LABEL7: - gvar31 = gvar5 - gvar30 = gvar4 - goto LABEL6 -LABEL2: - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL9 - } - ns.Delete(v1[v0]) - v0 += 1 - } -LABEL9: - v1[0] = ns.CreateObject("SmallFlame", wp10[3]) - v1[1] = ns.CreateObject("SmallFlame", wp11[8]) - v1[2] = ns.CreateObject("SmallFlame", wp12[8]) - v1[3] = ns.CreateObject("SmallFlame", wp13[8]) - if gvar30 != gvar4 { - goto LABEL11 - } - gvar31 = gvar6 - goto LABEL12 -LABEL11: - gvar31 = gvar4 -LABEL12: - gvar30 = gvar5 - goto LABEL6 -LABEL3: - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL13 - } - ns.Delete(v1[v0]) - v0 += 1 - } -LABEL13: - v1[0] = ns.CreateObject("MediumFlame", wp10[3]) - v1[1] = ns.CreateObject("MediumFlame", wp11[8]) - v1[2] = ns.CreateObject("MediumFlame", wp12[8]) - v1[3] = ns.CreateObject("MediumFlame", wp13[8]) - if gvar30 != gvar5 { - goto LABEL15 - } - gvar31 = gvar7 - goto LABEL16 -LABEL15: - gvar31 = gvar5 -LABEL16: - gvar30 = gvar6 - goto LABEL6 -LABEL4: - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL17 - } - ns.Delete(v1[v0]) - v0 += 1 - } -LABEL17: - v1[0] = ns.CreateObject("Flame", wp10[3]) - v1[1] = ns.CreateObject("Flame", wp11[8]) - v1[2] = ns.CreateObject("Flame", wp12[8]) - v1[3] = ns.CreateObject("Flame", wp13[8]) - if gvar30 != gvar6 { - goto LABEL19 - } - gvar31 = gvar8 - goto LABEL20 -LABEL19: - gvar31 = gvar6 -LABEL20: - gvar30 = gvar7 - goto LABEL6 -LABEL5: - ns.AudioEvent(ns.DemonBreath, wp10[3]) - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL21 - } - ns.Delete(v1[v0]) - v0 += 1 - } -LABEL21: - v1[0] = ns.CreateObject("LargeFlame", wp10[3]) - v1[1] = ns.CreateObject("LargeFlame", wp11[8]) - v1[2] = ns.CreateObject("LargeFlame", wp12[8]) - v1[3] = ns.CreateObject("LargeFlame", wp13[8]) - gvar31 = gvar7 - gvar30 = gvar8 - goto LABEL6 -LABEL6: - if gvar30 == gvar4 { - goto LABEL23 - } - ns.FrameTimer(2, Flame8) -LABEL23: - return -} -func LightTrigger0() { - ns.ObjectOff(obj60) - ns.ObjectOn(obj56) - ns.ObjectOn(obj52) - ns.ObjectOff(obj44) - ns.ObjectOn(obj48) -} -func LightTrigger1() { - ns.ObjectOff(obj61) - ns.ObjectOn(obj57) - ns.ObjectOn(obj53) - ns.ObjectOff(obj45) - ns.ObjectOn(obj49) -} -func LightTrigger2() { - ns.ObjectOff(obj62) - ns.ObjectOn(obj58) - ns.ObjectOn(obj54) - ns.ObjectOff(obj46) - ns.ObjectOn(obj50) -} -func LightTrigger3() { - ns.ObjectOff(obj63) - ns.ObjectOn(obj59) - ns.ObjectOn(obj55) - ns.ObjectOff(obj47) - ns.ObjectOn(obj51) -} -func LightTrigger0b() { - ns.CreateObject("RedPotion", wp72) - ns.ObjectOn(obj60) - ns.ObjectOff(obj56) - ns.ObjectOff(obj52) - ns.ObjectOn(obj44) - ns.ObjectOff(obj48) -} -func LightTrigger1b() { - ns.CreateObject("RedPotion", wp73) - ns.ObjectOn(obj61) - ns.ObjectOff(obj57) - ns.ObjectOff(obj53) - ns.ObjectOn(obj45) - ns.ObjectOff(obj49) -} -func LightTrigger2b() { - ns.CreateObject("RedPotion", wp74) - ns.ObjectOn(obj62) - ns.ObjectOff(obj58) - ns.ObjectOff(obj54) - ns.ObjectOn(obj46) - ns.ObjectOff(obj50) -} -func LightTrigger3b() { - ns.CreateObject("RedPotion", wp75) - ns.ObjectOn(obj63) - ns.ObjectOff(obj59) - ns.ObjectOff(obj55) - ns.ObjectOn(obj47) - ns.ObjectOff(obj51) -} -func DemonCreate(a1 int) { - ivar37 += 1 - checkTotalDead() - if !(ivar37 < 5) { - goto LABEL1 - } - if gvar41 != 0 { - goto LABEL1 - } - ivar38 = ns.Random(1, 100) - if !(ivar38 <= 25 && gvar42 == 0) { - goto LABEL2 - } - gvar42 = 1 - obj66[a1] = ns.CreateObject("Demon", wp10[a1]) - ns.SetCallback(obj66[a1], 5, DemonDie) - goto LABEL3 -LABEL2: - obj66[a1] = ns.CreateObject("EmberDemon", wp10[a1]) - ns.SetCallback(obj66[a1], 5, EmberDie) -LABEL3: - ns.RetreatLevel(obj66[a1], 0) - ns.SetCallback(obj66[a1], 4, DemonIdle) - ns.SetCallback(obj66[a1], 4, DemonIdle) - ns.LookAtObject(obj66[a1], ns.GetHost()) - ns.FrameTimerWithArg(5, a1, DemonInit) -LABEL1: - return -} -func DemonInit(a1 int) { - ns.SetCallback(obj66[a1], 4, DemonIdle) - ns.LookAtObject(obj66[a1], ns.GetHost()) - ns.AggressionLevel(obj66[a1], 0.83) - ns.Wander(obj66[a1]) -} -func DemonIdle() { - ns.AggressionLevel(ns.GetTrigger(), 0.83) - ns.Wander(ns.GetTrigger()) -} -func DemonDie() { - gvar42 = 0 - if ivar39 != 0 { - goto LABEL1 - } - ivar39 += 1 - ns.FrameTimer(590, Flame6) - ns.FrameTimerWithArg(600, ivar39, DemonCreate) - goto LABEL2 -LABEL1: - if ivar39 != 1 { - goto LABEL3 - } - ivar39 += 1 - ns.FrameTimer(590, Flame7) - ns.FrameTimerWithArg(600, ivar39, DemonCreate) - goto LABEL2 -LABEL3: - if ivar39 != 2 { - goto LABEL4 - } - ivar39 += 1 - ns.FrameTimer(590, Flame8) - ns.FrameTimerWithArg(600, ivar39, DemonCreate) - goto LABEL2 -LABEL4: - if ivar39 != 3 { - goto LABEL2 - } - ivar39 = 0 - ns.FrameTimer(590, Flame5) - ns.FrameTimerWithArg(600, ivar39, DemonCreate) -LABEL2: - return -} -func EmberDie() { - if ivar39 != 0 { - goto LABEL1 - } - ivar39 += 1 - ns.FrameTimer(590, Flame6) - ns.FrameTimerWithArg(600, ivar39, DemonCreate) - goto LABEL2 -LABEL1: - if ivar39 != 1 { - goto LABEL3 - } - ivar39 += 1 - ns.FrameTimer(590, Flame7) - ns.FrameTimerWithArg(600, ivar39, DemonCreate) - goto LABEL2 -LABEL3: - if ivar39 != 2 { - goto LABEL4 - } - ivar39 += 1 - ns.FrameTimer(590, Flame8) - ns.FrameTimerWithArg(600, ivar39, DemonCreate) - goto LABEL2 -LABEL4: - if ivar39 != 3 { - goto LABEL2 - } - ivar39 = 0 - ns.FrameTimer(590, Flame5) - ns.FrameTimerWithArg(600, ivar39, DemonCreate) -LABEL2: - return -} -func SetupGuards() { - ivar40 = 0 - for { - if !(ivar40 < 5) { - goto LABEL1 - } - if ivar40 != 4 { - goto LABEL2 - } - Flame4() - LABEL2: - obj67[ivar40] = ns.CreateObject("EmberDemon", wp9[ivar40]) - ns.RetreatLevel(obj67[ivar40], 0) - ns.CreatureGuard(obj67[ivar40], ns.GetWaypointX(wp9[ivar40]), ns.GetWaypointY(wp9[ivar40]), 2900, 2900, 300) - ns.LookAtObject(obj67[ivar40], ns.GetHost()) - ns.FrameTimerWithArg(2, ivar40, GuardInit) - ivar40 += 1 - } -LABEL1: - ns.SetCallback(obj67[0], 5, Guard0Die) - ns.SetCallback(obj67[1], 5, Guard1Die) - ns.SetCallback(obj67[2], 5, Guard2Die) - ns.SetCallback(obj67[3], 5, Guard3Die) - ns.SetCallback(obj67[4], 5, Guard4Die) -} -func Guard0Die() { - ns.FrameTimer(590, Flame0) - ns.FrameTimerWithArg(600, nil, GuardCreate) -} -func Guard1Die() { - ns.FrameTimer(590, Flame1) - ns.FrameTimerWithArg(600, 1, GuardCreate) -} -func Guard2Die() { - ns.FrameTimer(590, Flame2) - ns.FrameTimerWithArg(600, 2, GuardCreate) -} -func Guard3Die() { - ns.FrameTimer(590, Flame3) - ns.FrameTimerWithArg(600, 3, GuardCreate) -} -func Guard4Die() { - ns.FrameTimer(590, Flame4) - ns.FrameTimerWithArg(600, 4, GuardCreate) -} -func GuardCreate(a1 int) { - ivar36 += 1 - checkTotalDead() - if !(ivar36 < 5) { - goto LABEL1 - } - if gvar41 != 0 { - goto LABEL1 - } - obj67[a1] = ns.CreateObject("EmberDemon", wp9[a1]) - ns.RetreatLevel(obj67[a1], 0) - ns.CreatureGuard(obj67[a1], ns.GetWaypointX(wp9[a1]), ns.GetWaypointY(wp9[a1]), 2900, 2900, 300) - ns.LookAtObject(obj67[a1], ns.GetHost()) - if a1 != 0 { - goto LABEL2 - } - ns.SetCallback(obj67[0], 5, Guard0Die) -LABEL2: - if a1 != 1 { - goto LABEL3 - } - ns.SetCallback(obj67[1], 5, Guard1Die) -LABEL3: - if a1 != 2 { - goto LABEL4 - } - ns.SetCallback(obj67[2], 5, Guard2Die) -LABEL4: - if a1 != 3 { - goto LABEL5 - } - ns.SetCallback(obj67[3], 5, Guard3Die) -LABEL5: - if a1 != 4 { - goto LABEL6 - } - ns.SetCallback(obj67[4], 5, Guard4Die) -LABEL6: - ns.FrameTimerWithArg(2, a1, GuardInit) -LABEL1: - return -} -func GuardInit(a1 int) { - ns.CreatureGuard(obj67[a1], ns.GetWaypointX(wp9[a1]), ns.GetWaypointY(wp9[a1]), 2900, 2900, 300) - ns.LookAtObject(obj67[a1], ns.GetHost()) -} -func SetupDemons() { - if !(ivar39 < 4) { - goto LABEL1 - } - ns.MoveObject(obj66[ivar39], ns.GetWaypointX(wp68[ivar39]), ns.GetWaypointY(wp68[ivar39])) - ivar39 += 1 - ns.FrameTimer(30, SetupDemons) -LABEL1: - return -} -func SetupFight() { - ns.WideScreen(true) - ns.LookAtObject(ns.GetHost(), obj64) - ns.LookAtObject(obj64, ns.GetHost()) - ns.FrameTimer(50, HecTalk1) -} -func StartFight() { - ns.WideScreen(false) - ns.AggressionLevel(obj64, 0.83) - ns.CreatureHunt(obj64) - ns.Frozen(ns.GetHost(), false) - ns.FrameTimer(40, EnableDemons) -} -func HecTalk1() { - ns.Enchant(obj64, ns.ENCHANT_PROTECT_FROM_FIRE, 0) - ns.StoryPic(obj64, "HecubahPic") - ns.SetDialog(obj64, ns.NEXT, HecubahDialogStart, HecubahDialogEnd) - ns.StartDialog(obj64, ns.GetHost()) -} -func HecTalk2() { - gvar43 = 2 - ns.SetDialog(obj64, ns.NORMAL, HecubahDialogStart, HecubahDialogEnd) - ns.StartDialog(obj64, ns.GetHost()) -} -func hecTalkDemonStart() { - if !flag33 { - goto LABEL1 - } - ns.Chat(obj64, "War11a:Bah") - ns.FrameTimer(60, hecTalkDemonEnd) -LABEL1: - return -} -func hecTalkDemonEnd() { - flag32 = true -} -func hecTaunts() { - if !flag32 { - goto LABEL1 - } - flag32 = false - ns.Chat(obj64, "War11a:HecubahTaunts") - ns.FrameTimer(600, resetTaunts) -LABEL1: - return -} -func resetTaunts() { - flag32 = true -} -func hecRetreatTalk() { - if !ns.IsVisibleTo(ns.GetHost(), obj64) { - goto LABEL1 - } - ns.Frozen(ns.GetHost(), true) - ns.SetDialog(obj64, ns.NORMAL, hecTalkRetreatStart, hecTalkRetreatEnd) - ns.StartDialog(obj64, ns.GetHost()) -LABEL1: - return -} -func hecTalkRetreatStart() { - ns.WideScreen(true) - ns.Frozen(obj64, true) - ns.Frozen(obj66[0], true) - ns.Frozen(obj66[1], true) - ns.Frozen(obj66[2], true) - ns.Frozen(obj66[3], true) - ns.Frozen(obj67[0], true) - ns.Frozen(obj67[1], true) - ns.Frozen(obj67[2], true) - ns.Frozen(obj67[3], true) - ns.Frozen(obj67[4], true) - ns.TellStory(ns.HecubahRecognize, "War11a:HecubahIntro") -} -func hecTalkRetreatEnd() { - ns.WideScreen(false) - ns.Frozen(ns.GetHost(), false) - ns.Frozen(obj64, false) - ns.Frozen(obj66[0], false) - ns.Frozen(obj66[1], false) - ns.Frozen(obj66[2], false) - ns.Frozen(obj66[3], false) - ns.Frozen(obj67[0], false) - ns.Frozen(obj67[1], false) - ns.Frozen(obj67[2], false) - ns.Frozen(obj67[3], false) - ns.Frozen(obj67[4], false) - ns.CancelDialog(obj64) -} -func checkTotalDead() { - if !(ivar37 >= 8 && ivar36 >= 9) { - goto LABEL1 - } - hecTalkDemonStart() -LABEL1: - return -} -func EnableDemons() { - SetupGuards() - ivar39 = 0 - for { - if !(ivar39 < 4) { - goto LABEL1 - } - ns.ObjectOn(obj66[ivar39]) - ns.RetreatLevel(obj66[ivar39], 0) - if ivar39 == 2 { - goto LABEL2 - } - ns.SetCallback(obj66[ivar39], 5, EmberDie) - LABEL2: - ns.SetCallback(obj66[ivar39], 4, DemonIdle) - ivar39 += 1 - } -LABEL1: - return -} -func EndScene() { - ns.Music(25, 100) - ns.UnBlind() - ns.MoveObject(ns.GetHost(), ns.GetWaypointX(wp71), ns.GetWaypointY(wp71)) - ns.LookAtObject(ns.GetHost(), obj65) - ns.Frozen(ns.GetHost(), false) - ns.FrameTimer(2, EndScene2) -} -func EndScene2() { - ns.LookAtObject(ns.GetHost(), obj65) - ns.Frozen(ns.GetHost(), true) - ns.Frozen(obj65, true) - gvar43 = 3 - HecubahDies() - ns.SetDialog(obj64, ns.NORMAL, HecubahDialogStart, HecubahDialogEnd) - ns.StartDialog(obj64, ns.GetHost()) -} -func EndScene3() { - ns.EndGame(0) -} -func HecubahDies() { - ns.Frozen(obj65, false) - ns.ObjectOn(obj65) - ns.Damage(obj65, 0, 5000, 0) - fvar34 = ns.GetObjectX(obj65) - fvar35 = ns.GetObjectY(obj65) - ns.MoveWaypoint(wp70, fvar34, fvar35) - ns.Music(0, 100) - ns.AudioEvent(ns.HecubahDieFrame0A, wp70) - ns.FrameTimer(66, HecubahDie1) - ns.FrameTimer(130, HecubahDie2) - ns.FrameTimer(170, HecubahDie3) - ns.FrameTimer(280, HecubahDie4) -} -func HecubahDie1() { - ns.AudioEvent(ns.HecubahDieFrame98, wp70) -} -func HecubahDie2() { - ns.AudioEvent(ns.HecubahDieFrame194, wp70) -} -func HecubahDie3() { - ns.AudioEvent(ns.HecubahDieFrame283, wp70) -} -func HecubahDie4() { - ns.AudioEvent(ns.HecubahDieFrame439, wp70) -} -func HecubahDie5() { - ns.Blind() - ns.FrameTimer(100, EndScene3) -} -func HecubahDialogStart() { - if gvar43 != 1 { - goto LABEL1 - } - ns.TellStory(ns.DemonRecognize, "War11a:PunyFlea") -LABEL1: - if gvar43 != 2 { - goto LABEL2 - } - ns.TellStory(ns.DemonRecognize, "War11a:CatchMe") -LABEL2: - if gvar43 != 3 { - goto LABEL3 - } - ns.TellStory(ns.DemonRecognize, "War11a:Nooooooooo") -LABEL3: - return -} -func HecubahDialogEnd() { - if gvar43 != 1 { - goto LABEL1 - } - ns.CancelDialog(obj64) - SetupDemons() - ns.FrameTimer(150, HecTalk2) -LABEL1: - if gvar43 != 2 { - goto LABEL2 - } - ns.CancelDialog(obj64) - ns.Move(obj64, wp69) -LABEL2: - if gvar43 != 3 { - goto LABEL3 - } - ns.CancelDialog(obj64) - HecubahDie5() -LABEL3: - return -} -func MapInitialize() { - ns.Music(24, 100) - obj64 = ns.Object("Hecubah") - obj65 = ns.Object("Hecubah2") - obj44 = ns.Object("LightTrigger0") - obj45 = ns.Object("LightTrigger1") - obj46 = ns.Object("LightTrigger2") - obj47 = ns.Object("LightTrigger3") - obj48 = ns.Object("LightTrigger0b") - obj49 = ns.Object("LightTrigger1b") - obj50 = ns.Object("LightTrigger2b") - obj51 = ns.Object("LightTrigger3b") - obj52 = ns.Object("InnerLight0") - obj53 = ns.Object("InnerLight1") - obj54 = ns.Object("InnerLight2") - obj55 = ns.Object("InnerLight3") - obj56 = ns.Object("MiddleLight0") - obj57 = ns.Object("MiddleLight1") - obj58 = ns.Object("MiddleLight2") - obj59 = ns.Object("MiddleLight3") - obj60 = ns.Object("OuterLight0") - obj61 = ns.Object("OuterLight1") - obj62 = ns.Object("OuterLight2") - obj63 = ns.Object("OuterLight3") - obj66[0] = ns.Object("Demon0") - obj66[1] = ns.Object("Demon1") - obj66[2] = ns.Object("Demon2") - obj66[3] = ns.Object("Demon3") - obj67[0] = ns.Object("Guard0") - obj67[1] = ns.Object("Guard1") - obj67[2] = ns.Object("Guard2") - obj67[3] = ns.Object("Guard3") - obj67[4] = ns.Object("Guard4") - wp69 = ns.Waypoint("HecRun1") - wp70 = ns.Waypoint("HecubahWP") - wp71 = ns.Waypoint("EndPlayer") - wp68[0] = ns.Waypoint("DemonStart0") - wp68[1] = ns.Waypoint("DemonStart1") - wp68[2] = ns.Waypoint("DemonStart2") - wp68[3] = ns.Waypoint("DemonStart3") - wp10[0] = ns.Waypoint("Loc0") - wp10[1] = ns.Waypoint("Loc1") - wp10[2] = ns.Waypoint("Loc2") - wp10[3] = ns.Waypoint("Loc3") - wp9[0] = ns.Waypoint("GuardLoc0") - wp9[1] = ns.Waypoint("GuardLoc1") - wp9[2] = ns.Waypoint("GuardLoc2") - wp9[3] = ns.Waypoint("GuardLoc3") - wp9[4] = ns.Waypoint("GuardLoc4") - wp72 = ns.Waypoint("PotionLoc0") - wp73 = ns.Waypoint("PotionLoc1") - wp74 = ns.Waypoint("PotionLoc2") - wp75 = ns.Waypoint("PotionLoc3") - wp11[0] = ns.Waypoint("FireLocA0") - wp11[1] = ns.Waypoint("FireLocA1") - wp11[2] = ns.Waypoint("FireLocA2") - wp11[3] = ns.Waypoint("FireLocA3") - wp11[4] = ns.Waypoint("FireLocA4") - wp11[5] = ns.Waypoint("FireLocA5") - wp11[6] = ns.Waypoint("FireLocA6") - wp11[7] = ns.Waypoint("FireLocA7") - wp11[8] = ns.Waypoint("FireLocA8") - wp12[0] = ns.Waypoint("FireLocB0") - wp12[1] = ns.Waypoint("FireLocB1") - wp12[2] = ns.Waypoint("FireLocB2") - wp12[3] = ns.Waypoint("FireLocB3") - wp12[4] = ns.Waypoint("FireLocB4") - wp12[5] = ns.Waypoint("FireLocB5") - wp12[6] = ns.Waypoint("FireLocB6") - wp12[7] = ns.Waypoint("FireLocB7") - wp12[8] = ns.Waypoint("FireLocB8") - wp13[0] = ns.Waypoint("FireLocC0") - wp13[1] = ns.Waypoint("FireLocC1") - wp13[2] = ns.Waypoint("FireLocC2") - wp13[3] = ns.Waypoint("FireLocC3") - wp13[4] = ns.Waypoint("FireLocC4") - wp13[5] = ns.Waypoint("FireLocC5") - wp13[6] = ns.Waypoint("FireLocC6") - wp13[7] = ns.Waypoint("FireLocC7") - wp13[8] = ns.Waypoint("FireLocC8") - ns.StartupScreen(11) - ns.Frozen(ns.GetHost(), true) - ns.FrameTimer(2, SetupFight) -} -func HecubahDie() { - gvar41 = 1 - flag33 = false - ns.Frozen(ns.GetHost(), true) - ns.WideScreen(true) - ns.ObjectOff(obj64) - ns.DestroyEveryChat() - ns.CancelDialog(obj64) - ivar40 = 0 - for { - if !(ivar40 < 5) { - goto LABEL1 - } - ns.Damage(obj67[ivar40], 0, 1000, 0) - ivar40 += 1 - } -LABEL1: - ivar39 = 0 - for { - if !(ivar39 < 4) { - goto LABEL3 - } - ns.Damage(obj66[ivar39], 0, 1000, 0) - ivar39 += 1 - } -LABEL3: - ns.Blind() - ns.FrameTimer(100, EndScene) -} -func killHecubah() { - ns.Damage(obj64, 0, 5000, 0) -} -func PlayerDeath() { - ns.DeathScreen(11) -} -func OnEvent(typ string) { - switch typ { - case "MapInitialize": - MapInitialize() - case "PlayerDeath": - PlayerDeath() - } -} diff --git a/examples/wiz01a/dummy_test.go b/examples/wiz01a/dummy_test.go deleted file mode 100644 index 253b45b..0000000 --- a/examples/wiz01a/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package wiz01a - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/wiz01a/wiz01a.go b/examples/wiz01a/wiz01a.go deleted file mode 100644 index 8b6befe..0000000 --- a/examples/wiz01a/wiz01a.go +++ /dev/null @@ -1,815 +0,0 @@ -package wiz01a - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 ns.ObjectID - obj5 ns.ObjectID - obj6 ns.ObjectID - obj7 ns.ObjectID - obj8 ns.ObjectID - obj9 ns.ObjectID - obj10 ns.ObjectID - obj11 ns.ObjectID - obj12 ns.ObjectID - obj13 ns.ObjectID - obj14 ns.ObjectID - obj15 ns.ObjectID - obj16 ns.ObjectID - obj17 ns.ObjectID - obj18 ns.ObjectID - obj19 ns.ObjectID - obj20 ns.ObjectID - obj21 ns.ObjectID - obj22 ns.ObjectID - gvar23 ns.ObjectGroupID - gvar24 ns.ObjectGroupID - gvar25 ns.ObjectGroupID - gvar26 ns.ObjectGroupID - gvar27 ns.ObjectGroupID - gvar28 ns.ObjectGroupID - gvar29 ns.ObjectGroupID - obj30 ns.ObjectID - obj31 ns.ObjectID - obj32 ns.ObjectID - obj33 ns.ObjectID - obj34 ns.ObjectID - obj35 ns.ObjectID - obj36 ns.ObjectID - obj37 ns.ObjectID - obj38 ns.ObjectID - obj39 ns.ObjectID - wp40 ns.WaypointID - wp41 ns.WaypointID - wp42 ns.WaypointID - wp43 ns.WaypointID - gvar44 ns.WallGroupID - wp45 ns.WaypointID - wp46 ns.WaypointID - flag47 bool - flag48 bool - flag49 bool - flag50 bool - flag51 bool - obj52 ns.ObjectID - gvar53 int - gvar54 int - gvar55 int - gvar56 int - gvar57 int - gvar58 int - gvar59 int - gvar60 int - gvar61 int - gvar62 int - gvar63 int - ivar64 int - ivar65 int - obj66 ns.ObjectID - obj67 ns.ObjectID - obj68 ns.ObjectID - obj69 ns.ObjectID - obj70 ns.ObjectID - obj71 ns.ObjectID - obj72 ns.ObjectID - obj73 ns.ObjectID - obj74 ns.ObjectID - obj75 ns.ObjectID - obj76 ns.ObjectID - obj77 ns.ObjectID - flag78 bool - wp79 ns.WaypointID - wp80 ns.WaypointID - wp81 ns.WaypointID - wp82 ns.WaypointID - wp83 ns.WaypointID - wp84 ns.WaypointID - wp85 ns.WaypointID - flag86 bool -) - -func init() { - flag47 = false - flag48 = false - flag49 = false - flag50 = false - flag51 = false - gvar53 = 0 - gvar54 = 1 - gvar55 = 2 - gvar56 = 3 - gvar57 = 4 - gvar58 = 5 - gvar59 = 6 - gvar60 = gvar53 - gvar61 = 0 - gvar62 = 0 - gvar63 = 0 - flag78 = false - ivar64 = 0 - ivar65 = 12 - flag86 = false -} -func InitializeDialogs() { - ns.SetDialog(obj4, ns.NORMAL, JandorIntroStart, JandorIntroEnd) -} -func OwnObjects() { - ns.SetOwner(ns.GetHost(), obj4) - ns.SetOwner(ns.GetHost(), obj6) - ns.SetOwner(ns.GetHost(), obj8) - ns.SetOwner(ns.GetHost(), obj9) - ns.JournalEntry(ns.GetHost(), "FindHorvath", 2) - ns.PrintToAll("Con01a:NewJournalEntry") - ns.Music(21, 100) - ns.SetDialog(obj4, ns.NORMAL, JandorIntroStart, JandorIntroEnd) - ns.StartDialog(obj4, ns.GetHost()) -} -func OpenSecretWalls() { - ns.ObjectOff(ns.GetTrigger()) - ns.WallGroupOpen(gvar44) -} -func MirrorText() { - ns.PrintToAll("Wiz01A.scr:Mirror") -} -func MovingToLab() { - if !ns.IsCaller(obj5) { - goto LABEL1 - } - if !flag48 { - goto LABEL1 - } - ns.UnlockDoor(obj17) - ns.UnlockDoor(obj18) - ns.Walk(obj5, 2467, 2815) -LABEL1: - return -} -func FirstSecret() { - ns.ObjectGroupOff(gvar27) - ns.MoveWaypoint(wp41, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretFound, wp41) - ns.GiveXp(ns.GetHost(), 50) - ns.PrintToAll("GeneralPrint:SecretFound") -} -func BeachSecret2() { - ns.ObjectOff(ns.GetTrigger()) - ns.MoveWaypoint(wp41, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretFound, wp41) - ns.GiveXp(ns.GetHost(), 50) - ns.PrintToAll("GeneralPrint:SecretFound") -} -func CaveSecret() { - ns.ObjectGroupOff(gvar28) - ns.MoveWaypoint(wp41, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretFound, wp41) - ns.GiveXp(ns.GetHost(), 75) - ns.PrintToAll("GeneralPrint:SecretFound") -} -func RiverSecret() { - ns.ObjectGroupOff(gvar29) - ns.MoveWaypoint(wp41, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretFound, wp41) - ns.GiveXp(ns.GetHost(), 30) - ns.PrintToAll("GeneralPrint:SecretFound") -} -func JandorIntroStart() { - ns.TellStory(ns.HumanMaleEatFood, "Wiz01A.scr:JandorTalk01") -} -func JandorIntroEnd() { - ns.SetDialog(obj4, ns.NORMAL, JandorDoneStart, JandorDoneEnd) -} -func ApprenticeStart() { - ns.Damage(obj7, 0, 500, 0) - ns.TellStory(ns.HumanMaleEatFood, "Wiz01:ApprenticeTalk01") -} -func ApprenticeEnd() { - ns.CancelDialog(obj6) - ns.FrameTimer(5, KillApprentice) -} -func KillApprentice() { - ns.MoveWaypoint(wp40, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.HumanMaleDie, wp40) - ns.MoveObject(obj7, ns.GetObjectX(obj6), ns.GetObjectY(obj6)) - ns.MoveObject(obj6, 4279, 5285) - ns.MoveObject(obj36, 3760, 4868) - ns.MoveObject(obj34, 3691, 4887) -} -func PlayerInRobeRoom() { - if !(!ns.IsLocked(obj19) || !ns.IsLocked(obj20)) { - goto LABEL1 - } - if flag49 { - goto LABEL1 - } - flag49 = true - ns.SetDialog(obj6, ns.NORMAL, ApprenticeStart, ApprenticeEnd) -LABEL1: - return -} -func StopSpawning() { - ns.CreatureGuard(obj5, ns.GetObjectX(obj5), ns.GetObjectY(obj5), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - gvar60 = gvar55 - SetHorvathDialog() -} -func ScriptInit() { - wp79 = ns.Waypoint("SP1WP") - wp80 = ns.Waypoint("SP2WP") - wp81 = ns.Waypoint("SP3WP") - wp82 = ns.Waypoint("SP4WP") - wp83 = ns.Waypoint("SP5WP") - wp84 = ns.Waypoint("SP6WP") - wp85 = ns.Waypoint("HorvathAttackWP") -} -func GoAway() { - r1 := ns.IsAttackedBy(ns.GetHost(), ns.GetCaller()) - if !r1 { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func MapInitialize() { - obj4 = ns.Object("Airship_Captain") - obj5 = ns.Object("Horvath") - obj6 = ns.Object("HorvathApprentice") - obj7 = ns.Object("Apprentice2") - obj8 = ns.Object("Lance") - obj9 = ns.Object("TowerNPC") - obj10 = ns.Object("UrchinA") - obj11 = ns.Object("UrchinB") - obj12 = ns.Object("FinalUrchin1") - obj13 = ns.Object("FinalUrchin2") - obj14 = ns.Object("HorvathHomeDoor") - obj15 = ns.Object("HorvathGate1") - obj16 = ns.Object("HorvathGate2") - obj17 = ns.Object("LabDoor1") - obj18 = ns.Object("LabDoor2") - obj19 = ns.Object("RobeDoor1") - obj20 = ns.Object("RobeDoor2") - obj21 = ns.Object("FacadeGate") - obj22 = ns.Object("HorvathGiveStuffTrigger") - gvar23 = ns.ObjectGroup("UrchinCreateTriggers") - gvar24 = ns.ObjectGroup("FreezeTriggers") - gvar25 = ns.ObjectGroup("FinalTriggers") - gvar26 = ns.ObjectGroup("UrchinTriggers") - gvar27 = ns.ObjectGroup("FirstSecretTriggers") - gvar28 = ns.ObjectGroup("CaveTriggers") - gvar29 = ns.ObjectGroup("RiverTriggers") - obj30 = ns.Object("Crystal1") - obj31 = ns.Object("Heal1") - obj32 = ns.Object("Heal2") - obj33 = ns.Object("LesserHealBook") - obj34 = ns.Object("MagicMissileBook") - obj35 = ns.Object("HorvathStaff") - obj36 = ns.Object("HorvathRobe") - obj37 = ns.Object("Basket") - obj38 = ns.Object("BasketShadow") - obj39 = ns.Object("BriefTeleporter") - wp40 = ns.Waypoint("PlayerSounds") - wp41 = ns.Waypoint("SecretSounds") - wp42 = ns.Waypoint("HorvathMoveWP") - gvar44 = ns.WallGroup("SecretWalls") - wp45 = ns.Waypoint("HorvathTeleporterWP") - wp46 = ns.Waypoint("HorvathStorage") - wp43 = ns.Waypoint("BriefWP") - ns.LockDoor(obj15) - ns.LockDoor(obj16) - ns.LockDoor(obj17) - ns.LockDoor(obj18) - ns.LockDoor(obj21) - ns.StoryPic(obj4, "AirshipCaptainPic") - ns.StoryPic(obj5, "HorvathPic") - ns.StoryPic(obj6, "WoundedApprenticePic") - ns.StoryPic(obj8, "WizardGuard1Pic") - ns.StartupScreen(1) - ScriptInit() - ns.FrameTimer(1, OwnObjects) - ns.FrameTimer(1, StopSpawning) -} -func PlayerDeath() { - ns.DeathScreen(1) -} -func TeleportHorvath() { - ns.MoveObject(ns.GetHost(), ns.GetWaypointX(wp43), ns.GetWaypointY(wp43)) -} -func HorvathGateDialogStart() { - ns.TellStory(ns.SwordsmanHurt, "Wiz02A.scr:Horvath1") -} -func HorvathGateDialogEnd() { - ns.AudioEvent(ns.TeleportOut, ns.Waypoint("FacadeAudioOrigin")) - ns.Effect(ns.TELEPORT, ns.GetObjectX(obj5), ns.GetObjectY(obj5), 0, 0) - ns.MoveObject(obj5, ns.GetWaypointX(wp46), ns.GetWaypointY(wp46)) - ns.Frozen(ns.GetHost(), false) - ns.JournalEntry(ns.GetHost(), "MeetHorvath", 2) - ns.PrintToAll("Con01a:NewJournalEntry") -} -func LanceDialogStart() { - ns.TellStory(ns.SwordsmanHurt, "War01A.scr:Guard1Talk01") -} -func LanceDialogEnd() { -} -func HorvathSpeak() { - ns.ObjectOff(ns.GetTrigger()) - ns.MoveWaypoint(wp40, ns.GetWaypointX(wp43), ns.GetWaypointY(wp43)) - ns.AudioEvent(ns.TeleportIn, wp40) - ns.Effect(ns.TELEPORT, ns.GetWaypointX(wp43), ns.GetWaypointY(wp43), ns.GetWaypointX(wp43), ns.GetWaypointY(wp43)) - ns.Frozen(ns.GetHost(), true) - ns.CreatureIdle(ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj9) - ns.MoveObject(obj5, ns.GetWaypointX(wp45), ns.GetWaypointY(wp45)) -} -func PlayerArrivesAtGate() { - ns.ObjectOff(ns.GetTrigger()) - ns.StartupScreen(2) - ns.CreatureIdle(ns.GetHost()) - ns.LookAtObject(ns.GetHost(), ns.ObjectID(ns.Waypoint("FacadeAudioOrigin"))) // FIXME - ns.FrameTimer(1, TeleportHorvath) - ns.SetDialog(obj8, ns.NORMAL, LanceDialogStart, LanceDialogEnd) -} -func HorvathArrivesAtGate() { - ns.ObjectOff(ns.GetTrigger()) - ns.CreatureIdle(obj5) - ns.LookAtObject(obj5, ns.GetHost()) - ns.SetDialog(obj5, ns.NORMAL, HorvathGateDialogStart, HorvathGateDialogEnd) - ns.StartDialog(obj5, ns.GetHost()) -} -func SetHorvathDialog() { - var v0 int - v0 = gvar60 - if v0 == gvar55 { - goto LABEL1 - } - if v0 == gvar56 { - goto LABEL2 - } - if v0 == gvar57 { - goto LABEL3 - } - if v0 == gvar58 { - goto LABEL4 - } - if v0 == gvar59 { - goto LABEL5 - } - goto LABEL6 -LABEL1: - ns.SetDialog(obj5, ns.NORMAL, HorvathIntroStart, HorvathIntroEnd) - goto LABEL6 -LABEL2: - ns.SetDialog(obj5, ns.NEXT, HorvathBriefStart, HorvathBriefEnd) - goto LABEL6 -LABEL3: - ns.SetDialog(obj5, ns.NORMAL, HorvathWaitStart, HorvathWaitEnd) - goto LABEL6 -LABEL4: - ns.SetDialog(obj5, ns.NORMAL, HorvathWait2Start, HorvathWait2End) - goto LABEL6 -LABEL5: - ns.SetDialog(obj5, ns.NORMAL, HorvathLabStart, HorvathLabEnd) - goto LABEL6 -LABEL6: - return -} -func HorvathRecognize() { - if gvar60 != gvar53 { - goto LABEL1 - } - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - gvar60 = gvar54 - ns.ClearOwner(obj10) - ns.ClearOwner(obj11) - ns.ObjectOn(obj5) -LABEL1: - return -} -func HorvathIntroStart() { - ns.Frozen(obj5, true) - ns.CreatureIdle(obj5) - ns.LookAtObject(obj5, ns.GetHost()) - ns.AggressionLevel(obj5, 0.5) - ns.SetOwner(ns.GetHost(), obj5) - ns.TellStory(ns.HumanMaleEatFood, "Wiz01A.scr:HorvathTalk01") -} -func HorvathIntroEnd() { - ns.Frozen(obj5, false) - ns.CancelDialog(obj5) - ns.JournalEdit(ns.GetHost(), "FindHorvath", 4) - ns.PrintToAll("Con02a:ObjectiveComplete") - ns.Move(obj5, wp42) -} -func HorvathBriefStart() { - ns.TellStory(ns.HumanMaleEatFood, "Wiz01A.scr:HorvathTalk02") - ns.MoveWaypoint(wp40, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.LookAtObject(obj5, ns.GetHost()) -} -func HorvathBriefEnd() { - ns.Pickup(ns.GetHost(), obj30) - ns.Pickup(ns.GetHost(), obj31) - ns.Pickup(ns.GetHost(), obj32) - ns.Pickup(ns.GetHost(), obj33) - gvar60 = gvar58 - SetHorvathDialog() - ns.StartDialog(obj5, ns.GetHost()) -} -func HorvathWaitStart() { - if !ns.HasItem(ns.GetHost(), obj36) { - goto LABEL1 - } - ns.LookAtObject(obj5, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "Wiz01A.scr:HorvathTalk04") - flag48 = true - goto LABEL2 -LABEL1: - ns.LookAtObject(obj5, ns.GetHost()) - flag48 = false - ns.TellStory(ns.HumanMaleEatFood, "Wiz01A.scr:HorvathTalk03") -LABEL2: - return -} -func HorvathWaitEnd() { - if !flag48 { - goto LABEL1 - } - ns.Walk(obj5, 2633, 2934) - ns.GiveXp(ns.GetHost(), 500) - ns.JournalEdit(ns.GetHost(), "FindHorvathApprentice", 4) - ns.PrintToAll("Con02a:ObjectiveComplete") - ns.CancelDialog(obj5) - goto LABEL2 -LABEL1: - ns.SetDialog(obj5, ns.NORMAL, HorvathWaitStart, HorvathWaitEnd) -LABEL2: - return -} -func HorvathWait2Start() { - ns.TellStory(ns.HumanMaleEatFood, "Wiz01A.scr:HorvathTalk02a") -} -func HorvathWait2End() { - ns.UnlockDoor(obj15) - ns.UnlockDoor(obj16) - gvar60 = gvar57 - ns.PrintToAll("Con01a:NewJournalEntry") - ns.JournalEntry(ns.GetHost(), "FindHorvathApprentice", 2) - ns.LookAtObject(obj5, obj15) - ns.CreatureGuard(obj5, ns.GetObjectX(obj5), ns.GetObjectY(obj5), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - SetHorvathDialog() -} -func HorvathLabStart() { - ns.LookAtObject(obj5, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "Wiz01A.scr:HorvathTalk05") -} -func HorvathLabEnd() { - ns.SetDialog(obj5, ns.NORMAL, HorvathLabStart, HorvathLabEnd) -} -func HorvathGoHome() { - if !ns.IsCaller(obj5) { - goto LABEL1 - } - ns.Wander(obj5) -LABEL1: - return -} -func HorvathOpenHomeDoor() { - ns.UnlockDoor(obj14) -} -func HorvathAtGiveStuff() { - ns.CreatureGuard(obj5, ns.GetObjectX(obj5), ns.GetObjectY(obj5), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - gvar60 = gvar56 - ns.ObjectOff(obj22) - ns.LookAtObject(obj5, ns.GetHost()) - SetHorvathDialog() -} -func SayTeleportStuff() { - ns.CreatureGuard(obj5, 2501, 2865, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - gvar60 = gvar59 - SetHorvathDialog() -} -func HorvathFacePlayer() { - if flag48 { - goto LABEL1 - } - ns.LookAtObject(obj5, ns.GetHost()) - ns.FrameTimer(15, HorvathFacePlayer) -LABEL1: - return -} -func SPDie() { - ivar64 += 1 - if !(ivar64 >= ivar65) { - goto LABEL1 - } - ns.WideScreen(false) - ns.Frozen(obj5, true) - ns.FrameTimer(1, HorvathStop) -LABEL1: - if flag51 { - goto LABEL2 - } - flag51 = true - ns.SecondTimer(10, DoubleCheck) -LABEL2: - return -} -func HorvathStop() { - ns.Frozen(obj5, true) - ns.CreatureIdle(obj5) - ns.LookAtObject(obj5, ns.GetHost()) - ns.AggressionLevel(obj5, 0) - ns.FrameTimer(1, HorvathGuard) -} -func HorvathGuard() { - ns.Frozen(obj5, false) - ns.CreatureGuard(obj5, ns.GetObjectX(obj5), ns.GetObjectY(obj5), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - SetHorvathDialog() - ns.FrameTimer(15, HorvathHi) -} -func HorvathHi() { - ns.Frozen(ns.GetHost(), false) - ns.StartDialog(obj5, ns.GetHost()) -} -func SetHorvathLook() { - ns.CreatureGuard(obj5, ns.GetObjectX(obj5), ns.GetObjectY(obj5), ns.GetObjectX(obj15), ns.GetObjectY(obj15), 0) -} -func DoubleCheck() { - ns.Damage(obj66, 0, 50, 9) - ns.Damage(obj67, 0, 50, 9) - ns.Damage(obj68, 0, 50, 9) - ns.Damage(obj69, 0, 50, 9) - ns.Damage(obj70, 0, 50, 9) - ns.Damage(obj71, 0, 50, 9) - ns.Damage(obj72, 0, 50, 9) - ns.Damage(obj73, 0, 50, 9) - ns.Damage(obj74, 0, 50, 9) - ns.Damage(obj75, 0, 50, 9) - ns.Damage(obj76, 0, 50, 9) - ns.Damage(obj77, 0, 50, 9) -} -func JandorDoneStart() { - ns.TellStory(ns.HumanMaleEatFood, "Wiz01A.scr:JandorTalk02") -} -func JandorDoneEnd() { - ns.SetDialog(obj4, ns.NORMAL, JandorDoneStart, JandorDoneEnd) -} -func DestroyCaptain() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.ObjectGroupOff(gvar23) - ns.Delete(obj4) - ns.Delete(obj37) - ns.Delete(obj38) -LABEL1: - return -} -func FinalUrchins() { - obj52 = ns.GetLastItem(ns.GetHost()) - for { - if obj52 == 0 { - goto LABEL1 - } - if obj52 != obj36 { - goto LABEL2 - } - flag48 = true - ns.ObjectGroupOff(gvar25) - ns.MoveObject(obj12, 3449, 2378) - ns.MoveObject(obj13, 3516, 2425) - ns.ObjectOn(obj12) - ns.ObjectOn(obj13) - goto LABEL1 - LABEL2: - obj52 = ns.GetPreviousItem(obj52) - } -LABEL1: - return -} -func HorrendousPainting() { - ns.PrintToAll("Wiz01A.scr:UrchinPainting01") -} -func UrchinPainting1() { - ns.PrintToAll("Wiz01A.scr:UrchinPainting2") -} -func UrchinPainting2() { - ns.PrintToAll("Wiz01A.scr:UrchinPainting3") -} -func UrchinAEnable() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.AggressionLevel(obj10, 0.83) -LABEL1: - return -} -func UrchinBEnable() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.AggressionLevel(obj11, 0.83) -LABEL1: - return -} -func UrchinAway() { - r1 := ns.IsAttackedBy(ns.GetHost(), ns.GetCaller()) - if !r1 { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func UrchinReport() { - ns.AggressionLevel(ns.GetTrigger(), 0.5) -} -func DenReport() { - ns.AggressionLevel(ns.GetTrigger(), 0.83) -} -func UrchinSetup() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - if flag50 { - goto LABEL1 - } - ns.ObjectGroupOff(gvar26) - ns.Frozen(ns.GetHost(), true) - ns.CreatureIdle(ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj68) - ns.WideScreen(true) - ns.ClearOwner(obj10) - ns.ClearOwner(obj11) - obj66 = ns.CreateObject("Urchin", wp79) - obj67 = ns.CreateObject("Urchin", wp80) - obj68 = ns.CreateObject("Urchin", wp81) - obj69 = ns.CreateObject("Urchin", wp82) - obj70 = ns.CreateObject("Urchin", wp83) - obj71 = ns.CreateObject("Urchin", wp84) - flag50 = true - ns.FrameTimer(1, UrchinBegin) -LABEL1: - return -} -func UrchinBegin() { - if !(ns.CurrentHealth(obj10) > 0) { - goto LABEL1 - } - ns.CreatureFollow(obj10, ns.GetHost()) -LABEL1: - if !(ns.CurrentHealth(obj11) > 0) { - goto LABEL2 - } - ns.CreatureFollow(obj11, ns.GetHost()) -LABEL2: - ns.SetCallback(obj66, 5, SPDie) - ns.SetCallback(obj67, 5, SPDie) - ns.SetCallback(obj68, 5, SPDie) - ns.SetCallback(obj69, 5, SPDie) - ns.SetCallback(obj70, 5, SPDie) - ns.SetCallback(obj71, 5, SPDie) - ns.SetCallback(obj66, 3, AttackHorvath) - ns.SetCallback(obj67, 3, AttackHorvath) - ns.SetCallback(obj68, 3, AttackHorvath) - ns.SetCallback(obj69, 3, AttackHorvath) - ns.SetCallback(obj70, 3, AttackHorvath) - ns.SetCallback(obj71, 3, AttackHorvath) - ns.AggressionLevel(obj66, 0) - ns.AggressionLevel(obj67, 0) - ns.AggressionLevel(obj68, 0) - ns.AggressionLevel(obj69, 0) - ns.AggressionLevel(obj70, 0) - ns.AggressionLevel(obj71, 0) - ns.CreatureFollow(obj66, ns.GetHost()) - ns.CreatureFollow(obj67, ns.GetHost()) - ns.CreatureFollow(obj68, ns.GetHost()) - ns.CreatureFollow(obj69, ns.GetHost()) - ns.CreatureFollow(obj70, ns.GetHost()) - ns.CreatureFollow(obj71, ns.GetHost()) - ns.RetreatLevel(obj66, 0) - ns.RetreatLevel(obj67, 0) - ns.RetreatLevel(obj68, 0) - ns.RetreatLevel(obj69, 0) - ns.RetreatLevel(obj70, 0) - ns.RetreatLevel(obj71, 0) - ns.SecondTimer(1, UrchinBegin2) -} -func UrchinBegin2() { - obj72 = ns.CreateObject("Urchin", wp79) - obj73 = ns.CreateObject("Urchin", wp80) - obj74 = ns.CreateObject("Urchin", wp81) - obj75 = ns.CreateObject("Urchin", wp82) - obj76 = ns.CreateObject("Urchin", wp83) - obj77 = ns.CreateObject("Urchin", wp84) - ns.FrameTimer(1, UrchinGroup2Go) -} -func UrchinGroup2Go() { - ns.SetCallback(obj72, 5, SPDie) - ns.SetCallback(obj73, 5, SPDie) - ns.SetCallback(obj74, 5, SPDie) - ns.SetCallback(obj75, 5, SPDie) - ns.SetCallback(obj76, 5, SPDie) - ns.SetCallback(obj77, 5, SPDie) - ns.SetCallback(obj72, 3, AttackHorvath) - ns.SetCallback(obj73, 3, AttackHorvath) - ns.SetCallback(obj74, 3, AttackHorvath) - ns.SetCallback(obj75, 3, AttackHorvath) - ns.SetCallback(obj76, 3, AttackHorvath) - ns.SetCallback(obj77, 3, AttackHorvath) - ns.AggressionLevel(obj72, 0) - ns.AggressionLevel(obj73, 0) - ns.AggressionLevel(obj74, 0) - ns.AggressionLevel(obj75, 0) - ns.AggressionLevel(obj76, 0) - ns.AggressionLevel(obj77, 0) - ns.CreatureFollow(obj72, obj66) - ns.CreatureFollow(obj73, obj67) - ns.CreatureFollow(obj74, obj68) - ns.CreatureFollow(obj75, obj69) - ns.CreatureFollow(obj76, obj70) - ns.CreatureFollow(obj77, obj71) - ns.RetreatLevel(obj72, 0) - ns.RetreatLevel(obj73, 0) - ns.RetreatLevel(obj74, 0) - ns.RetreatLevel(obj75, 0) - ns.RetreatLevel(obj76, 0) - ns.RetreatLevel(obj77, 0) - ns.SecondTimer(2, HorvathApproach) -} -func RenewAttack() { - ns.HitFarLocation(ns.GetTrigger(), ns.GetObjectX(obj5), ns.GetObjectY(obj5)) -} -func HorvathApproach() { - ns.Move(obj5, wp85) - if !(ns.CurrentHealth(obj10) > 0) { - goto LABEL1 - } - ns.AggressionLevel(obj10, 0) - ns.GoBackHome(obj10) -LABEL1: - if !(ns.CurrentHealth(obj11) > 0) { - goto LABEL2 - } - ns.AggressionLevel(obj11, 0) - ns.GoBackHome(obj11) -LABEL2: - ns.SetCallback(obj66, 11, RenewAttack) - ns.SetCallback(obj67, 11, RenewAttack) - ns.SetCallback(obj68, 11, RenewAttack) - ns.SetCallback(obj69, 11, RenewAttack) - ns.SetCallback(obj70, 11, RenewAttack) - ns.SetCallback(obj71, 11, RenewAttack) - ns.SetCallback(obj72, 11, RenewAttack) - ns.SetCallback(obj73, 11, RenewAttack) - ns.SetCallback(obj74, 11, RenewAttack) - ns.SetCallback(obj75, 11, RenewAttack) - ns.SetCallback(obj76, 11, RenewAttack) - ns.SetCallback(obj77, 11, RenewAttack) - ns.SecondTimer(3, StopTheSpawning) -} -func AttackHorvath() { - if !ns.IsCaller(obj5) { - goto LABEL1 - } - ns.HitFarLocation(ns.GetTrigger(), ns.GetObjectX(obj5), ns.GetObjectY(obj5)) -LABEL1: - return -} -func HorvathArrived() { - ns.AggressionLevel(obj5, 0.83) -} -func StopTheSpawning() { - flag86 = true -} -func UrchinSecret1() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.MoveWaypoint(wp41, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretFound, wp41) - ns.GiveXp(ns.GetHost(), 25) - ns.PrintToAll("GeneralPrint:SecretFound") -LABEL1: - return -} -func UrchinSecret2() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.MoveWaypoint(wp41, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretFound, wp41) - ns.GiveXp(ns.GetHost(), 25) - ns.PrintToAll("GeneralPrint:SecretFound") -LABEL1: - return -} -func OnEvent(typ string) { - switch typ { - case "MapInitialize": - MapInitialize() - case "PlayerDeath": - PlayerDeath() - } -} diff --git a/examples/wiz02a/dummy_test.go b/examples/wiz02a/dummy_test.go deleted file mode 100644 index e0ab54c..0000000 --- a/examples/wiz02a/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package wiz02a - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/wiz02a/wiz02a.go b/examples/wiz02a/wiz02a.go deleted file mode 100644 index 12e6bbc..0000000 --- a/examples/wiz02a/wiz02a.go +++ /dev/null @@ -1,1058 +0,0 @@ -package wiz02a - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 ns.ObjectID - obj5 ns.ObjectID - obj6 ns.ObjectID - obj7 ns.ObjectID - obj8 ns.ObjectID - obj9 ns.ObjectID - obj10 ns.ObjectID - obj11 ns.ObjectID - obj12 ns.ObjectID - obj13 ns.ObjectID - obj14 ns.ObjectID - flag15 bool - gvar16 ns.WallID - wp17 ns.WaypointID - obj18 ns.ObjectID - obj19 ns.ObjectID - obj20 ns.ObjectID - obj21 ns.ObjectID - obj22 ns.ObjectID - obj23 ns.ObjectID - obj24 ns.ObjectID - obj25 ns.ObjectID - obj26 ns.ObjectID - obj27 ns.ObjectID - obj28 ns.ObjectID - obj29 ns.ObjectID - obj30 ns.ObjectID - obj31 ns.ObjectID - obj32 ns.ObjectID - obj33 ns.ObjectID - obj34 ns.ObjectID - obj35 ns.ObjectID - obj36 ns.ObjectID - obj37 ns.ObjectID - obj38 ns.ObjectID - obj39 ns.ObjectID - obj40 ns.ObjectID - obj41 ns.ObjectID - obj42 ns.ObjectID - obj43 ns.ObjectID - obj44 ns.ObjectID - obj45 ns.ObjectID - obj46 ns.ObjectID - obj47 ns.ObjectID - obj48 ns.ObjectID - obj49 ns.ObjectID - obj50 ns.ObjectID - obj51 ns.ObjectID - obj52 ns.ObjectID - obj53 ns.ObjectID - obj54 ns.ObjectID - obj55 ns.ObjectID - obj56 ns.ObjectID - obj57 ns.ObjectID - obj58 ns.ObjectID - obj59 ns.ObjectID - obj60 ns.ObjectID - obj61 ns.ObjectID - obj62 ns.ObjectID - obj63 ns.ObjectID - obj64 ns.ObjectID - obj65 ns.ObjectID - obj66 ns.ObjectID - obj67 ns.ObjectID - obj68 ns.ObjectID - obj69 ns.ObjectID - obj70 ns.ObjectID - obj71 ns.ObjectID - obj72 ns.ObjectID - obj73 ns.ObjectID - obj74 ns.ObjectID - obj75 ns.ObjectID - obj76 ns.ObjectID - obj77 ns.ObjectID - obj78 ns.ObjectID - obj79 ns.ObjectID - gvar80 ns.ObjectGroupID - gvar81 ns.ObjectGroupID - gvar82 ns.WallGroupID - wp83 ns.WaypointID - wp84 ns.WaypointID - wp85 ns.WaypointID - wp86 ns.WaypointID - wp87 ns.WaypointID - wp88 ns.WaypointID - wp89 ns.WaypointID - gvar90 ns.WaypointGroupID - gvar91 ns.WaypointGroupID - flag92 bool - flag93 bool - flag94 bool - flag95 bool - flag96 bool - flag97 bool - flag98 bool - flag99 bool - flag100 bool - flag101 bool - flag102 bool - flag103 bool - flag104 bool - flag105 bool - flag106 bool - flag107 bool - gvar108 int - ivar109 int - ivar110 int - ivar111 int - ivar112 int - ivar113 int - gvar114 ns.TimerID -) - -func init() { - flag15 = false - flag92 = false - flag93 = false - flag94 = false - flag95 = false - flag96 = false - flag97 = false - flag98 = false - flag99 = false - flag100 = false - flag101 = false - flag102 = false - flag103 = false - flag104 = false - flag105 = false - flag106 = false - flag107 = false - ivar111 = 0 - ivar112 = 0 - ivar113 = 0 -} -func CrowdQuiet() { - if flag15 { - goto LABEL1 - } - flag15 = true - ns.ObjectOff(obj4) - ns.ObjectOff(obj5) - ns.ObjectOff(obj6) - ns.Frozen(obj8, true) - ns.Frozen(obj9, true) - ns.Frozen(obj10, true) - ns.Frozen(obj11, true) - ns.Frozen(obj12, true) - ns.Frozen(obj13, true) - ns.Frozen(obj14, true) - ns.CreatureIdle(obj8) - ns.CreatureIdle(obj9) - ns.CreatureIdle(obj10) - ns.CreatureIdle(obj11) - ns.CreatureIdle(obj12) - ns.CreatureIdle(obj13) - ns.CreatureIdle(obj14) - ns.LookAtObject(obj8, ns.GetHost()) - ns.LookAtObject(obj9, ns.GetHost()) - ns.LookAtObject(obj10, ns.GetHost()) - ns.LookAtObject(obj11, ns.GetHost()) - ns.LookAtObject(obj12, ns.GetHost()) - ns.LookAtObject(obj13, ns.GetHost()) - ns.LookAtObject(obj14, ns.GetHost()) - CrowdFacePlayer() -LABEL1: - return -} -func CrowdNoisy() { - if !flag15 { - goto LABEL1 - } - if ns.IsObjectOn(obj4) { - goto LABEL1 - } - ns.ObjectOn(obj4) - ns.ObjectOn(obj5) - ns.ObjectOn(obj6) - ns.LookAtObject(obj8, obj9) - ns.LookAtObject(obj9, obj8) - ns.LookAtObject(obj10, obj11) - ns.LookAtObject(obj11, obj10) - ns.LookAtObject(obj12, obj11) - ns.LookAtObject(obj13, obj7) - ns.LookAtObject(obj14, obj7) - flag15 = false -LABEL1: - return -} -func CrowdFacePlayer() { - if !flag15 { - goto LABEL1 - } - ns.LookAtObject(obj8, ns.GetHost()) - ns.LookAtObject(obj9, ns.GetHost()) - ns.LookAtObject(obj10, ns.GetHost()) - ns.LookAtObject(obj11, ns.GetHost()) - ns.LookAtObject(obj12, ns.GetHost()) - ns.LookAtObject(obj13, ns.GetHost()) - ns.LookAtObject(obj14, ns.GetHost()) - ns.FrameTimer(2, CrowdFacePlayer) -LABEL1: - return -} -func SecretsInit() { - gvar16 = ns.Wall(97, 69) - wp17 = ns.Waypoint("SecretSounds") -} -func FireballSecret() { - ns.ObjectOff(ns.GetTrigger()) - ns.MoveWaypoint(wp17, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretFound, wp17) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 50) -} -func OpenPushSecret() { - ns.WallOpen(gvar16) -} -func PushSecretXP() { - ns.ObjectOff(ns.GetTrigger()) - ns.MoveWaypoint(wp17, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretFound, wp17) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 25) -} -func MakeAWish() { - var v0 int - v0 = ns.MaxHealth(ns.GetCaller()) - ns.RestoreHealth(ns.GetCaller(), v0-ns.CurrentHealth(ns.GetCaller())) - ns.PrintToAll("GeneralPrint:WellSignRefresh") - ns.AudioEvent(ns.RestoreHealthName, ns.Waypoint("WellWP")) -} -func PlayerEnterCell() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - flag104 = true - ns.UnlockDoor(obj64) -LABEL1: - return -} -func PlayerExitCell() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - flag104 = false - ns.LockDoor(obj64) -LABEL1: - return -} -func GenericStart() { - ns.TellStory(ns.HumanMaleEatFood, "Wiz02A.scr:UndertakerTalk01") -} -func GenericEnd() { - ns.SetDialog(obj30, ns.NORMAL, GenericStart, GenericEnd) -} -func GrillfStart() { - ns.TellStory(ns.HumanMaleEatFood, "Wiz02A.scr:GrillfTalk01") -} -func GrillfEnd() { - ns.SetDialog(obj28, ns.NORMAL, GrillfStart, GrillfEnd) -} -func GrillfReset() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.LookAtObject(obj28, obj79) -LABEL1: - return -} -func PriestStart() { - ns.TellStory(ns.HumanMaleEatFood, "Wiz02A.scr:PriestTalk01") -} -func PriestEnd() { - ns.SetDialog(obj31, ns.NORMAL, PriestStart, PriestEnd) -} -func SetMaxWelcome() { - flag92 = false -} -func MaxSayWelcome() { - if flag92 { - goto LABEL1 - } - ns.Chat(obj27, "Wiz02A.scr:MaxTalk01") - flag92 = true -LABEL1: - return -} -func MaxRumor1Start() { - ns.DestroyEveryChat() - ns.TellStory(ns.HumanMaleEatFood, "Wiz02A.scr:MaxRumor01") -} -func MaxRumor1End() { - ChooseMaxRumor() -} -func MaxRumor2Start() { - ns.DestroyEveryChat() - ns.TellStory(ns.HumanMaleEatFood, "Wiz02A.scr:MaxRumor02") -} -func MaxRumor2End() { - ChooseMaxRumor() -} -func MaxRumor3Start() { - ns.DestroyEveryChat() - ns.TellStory(ns.HumanMaleEatFood, "Wiz02A.scr:MaxRumor03") -} -func MaxRumor3End() { - ChooseMaxRumor() -} -func MaxRumor4Start() { - ns.DestroyEveryChat() - ns.TellStory(ns.HumanMaleEatFood, "Wiz02A.scr:MaxRumor04") -} -func MaxRumor4End() { - ChooseMaxRumor() -} -func BarKeepRumor1Start() { - ns.TellStory(ns.HumanMaleEatFood, "Wiz02A.scr:LameBarKeepRumor01") -} -func BarKeepRumorEnd() { - var v0 int - ivar110 = ns.Random(1, 4) - v0 = ivar110 - if v0 == 1 { - goto LABEL1 - } - if v0 == 2 { - goto LABEL2 - } - if v0 == 3 { - goto LABEL3 - } - if v0 == 4 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - ns.SetDialog(obj7, ns.NORMAL, BarKeepRumor1Start, BarKeepRumorEnd) - goto LABEL5 -LABEL2: - ns.SetDialog(obj7, ns.NORMAL, BarKeepRumor2Start, BarKeepRumorEnd) - goto LABEL5 -LABEL3: - ns.SetDialog(obj7, ns.NORMAL, BarKeepRumor3Start, BarKeepRumorEnd) - goto LABEL5 -LABEL4: - ns.SetDialog(obj7, ns.NORMAL, BarKeepRumor4Start, BarKeepRumorEnd) - goto LABEL5 -LABEL5: - return -} -func BarKeepRumor2Start() { - ns.TellStory(ns.HumanMaleEatFood, "Wiz02A.scr:LameBarKeepRumor02") -} -func BarKeepRumor3Start() { - ns.TellStory(ns.HumanMaleEatFood, "Wiz02A.scr:LameBarKeepRumor03") -} -func BarKeepRumor4Start() { - ns.TellStory(ns.HumanMaleEatFood, "Wiz02A.scr:LameBarKeepRumor04") -} -func ChooseMaxRumor() { - var v0 int - ivar109 = ns.Random(1, 4) - v0 = ivar109 - if v0 == 1 { - goto LABEL1 - } - if v0 == 2 { - goto LABEL2 - } - if v0 == 3 { - goto LABEL3 - } - if v0 == 4 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - ns.SetDialog(obj27, ns.NORMAL, MaxRumor1Start, MaxRumor1End) - goto LABEL5 -LABEL2: - ns.SetDialog(obj27, ns.NORMAL, MaxRumor2Start, MaxRumor2End) - goto LABEL5 -LABEL3: - ns.SetDialog(obj27, ns.NORMAL, MaxRumor3Start, MaxRumor3End) - goto LABEL5 -LABEL4: - ns.SetDialog(obj27, ns.NORMAL, MaxRumor4Start, MaxRumor4End) - goto LABEL5 -LABEL5: - return -} -func MaxGiveRewardStart() { - ns.DestroyEveryChat() - ns.TellStory(ns.HumanMaleEatFood, "Wiz02A.scr:MaxTalk03") - ns.Pickup(ns.GetHost(), obj72) -} -func MaxGiveRewardEnd() { - if !flag106 { - goto LABEL1 - } - ns.JournalEdit(ns.GetHost(), "ArrestRogues", 4) - ns.PrintToAll("Con02a:ObjectiveComplete") -LABEL1: - ChooseMaxRumor() -} -func MaxProblemStart() { - ns.DestroyEveryChat() - ns.TellStory(ns.HumanMaleEatFood, "Wiz02A.scr:MaxTalk02") -} -func MaxProblemEnd() { - if flag106 { - goto LABEL1 - } - ns.PrintToAll("Con01a:NewJournalEntry") - ns.JournalEntry(ns.GetHost(), "ArrestRogues", 2) - flag106 = true -LABEL1: - ChooseMaxRumor() -} -func WardenGreetStart() { - ns.TellStory(ns.HumanMaleEatFood, "Wiz02A.scr:WardenTalk01") -} -func WardenGreetEnd() { - if flag99 { - goto LABEL1 - } - ns.PrintToAll("Con01a:NewJournalEntry") - ns.JournalEntry(ns.GetHost(), "ArrestMorgan", 2) - flag99 = true -LABEL1: - ns.SetDialog(obj29, ns.NORMAL, WardenGreetStart, WardenGreetEnd) -} -func Warden1Start() { - ns.TellStory(ns.HumanMaleEatFood, "Wiz02A.scr:WardenTalk02") - flag97 = true -} -func Warden1End() { - flag107 = true - ns.CancelDialog(obj29) - ns.GiveXp(ns.GetHost(), 500) - ns.Pickup(ns.GetHost(), obj74) - if !flag99 { - goto LABEL1 - } - ns.JournalEdit(ns.GetHost(), "ArrestMorgan", 4) - ns.PrintToAll("Con02a:ObjectiveComplete") -LABEL1: - ns.Frozen(ns.GetHost(), false) - ns.SetDialog(obj27, ns.NORMAL, MaxGiveRewardStart, MaxGiveRewardEnd) - ns.WideScreen(false) - MorganEscortWarden() -} -func OpenJailDoor() { - if !ns.IsCaller(obj29) { - goto LABEL1 - } - ns.UnlockDoor(obj61) - ns.ObjectOff(obj68) -LABEL1: - return -} -func EnableRogueElevator() { - ns.MoveWaypoint(wp83, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.CreatureCageAppears, wp83) - ns.AudioEvent(ns.ChangeSpellbar, wp83) - ns.ObjectGroupOn(gvar80) - ns.ObjectOn(obj66) - ns.SetQuestStatus(1, "RogueElevatorEnabled") -} -func CryptChairTrigger() { - if flag95 { - goto LABEL1 - } - flag95 = true - ns.WallGroupOpen(gvar82) - goto LABEL2 -LABEL1: - flag95 = false - ns.WallGroupClose(gvar82) -LABEL2: - return -} -func MorganSecretXP() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.ObjectGroupOff(gvar81) - ns.MoveWaypoint(wp17, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretFound, wp17) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 150) -LABEL1: - return -} -func MorganGo() { - if !(flag93 == true && flag98 == false && flag107 == false) { - goto LABEL1 - } - ns.SetDialog(obj29, ns.NORMAL, Warden1Start, Warden1End) - ns.MoveObject(obj29, 3365, 5093) - ns.CreatureGuard(obj29, ns.GetObjectX(obj29), ns.GetObjectY(obj29), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) -LABEL1: - return -} -func MorganDied() { - flag98 = true - flag97 = true - ns.SetQuestStatus(1, "MorganDead") - ns.SetDialog(obj27, ns.NORMAL, MaxGiveRewardStart, MaxGiveRewardEnd) - ns.SetDialog(obj29, ns.NORMAL, WardenGiveDeadRewardStart, WardenGiveDeadRewardEnd) -} -func MorganEscortWarden() { - if !(ns.Distance(ns.GetObjectX(obj25), ns.GetObjectY(obj25), ns.GetObjectX(obj29), ns.GetObjectY(obj29)) < 250) { - goto LABEL1 - } - ns.WayPointGroupOn(gvar90) - flag100 = true - ns.Wander(obj29) - ns.CreatureFollow(obj25, obj29) - goto LABEL2 -LABEL1: - ns.FrameTimer(15, MorganEscortWarden) -LABEL2: - return -} -func MoveWardenToTossTrigger() { - if !ns.IsCaller(obj29) { - goto LABEL1 - } - ns.Walk(obj29, ns.GetObjectX(obj70), ns.GetObjectY(obj70)) -LABEL1: - return -} -func WardenTossMorgan() { - if !ns.IsCaller(obj29) { - goto LABEL1 - } - ns.WayPointGroupOff(gvar90) - if !(ns.IsVisibleTo(ns.GetHost(), obj25) || ns.IsVisibleTo(ns.GetHost(), obj29)) { - goto LABEL2 - } - ns.Chat(obj29, "Wiz02A.scr:WardenTalk03") -LABEL2: - ns.Walk(obj25, 3588, 5426) -LABEL1: - return -} -func WardenBack() { - flag101 = true - ns.SetDialog(obj29, ns.NORMAL, WardenGiveAliveRewardStart, WardenGiveAliveRewardEnd) - ns.CreatureGuard(obj29, ns.GetObjectX(obj29), ns.GetObjectY(obj29), ns.GetObjectX(obj78), ns.GetObjectY(obj78), 0) - ns.Frozen(obj29, true) - ns.CreatureIdle(obj29) - ns.LookAtObject(obj29, obj78) -} -func WardenGiveDeadRewardStart() { - ns.TellStory(ns.HumanMaleEatFood, "Wiz02A.scr:WardenTalk04") - ns.Pickup(ns.GetHost(), obj73) -} -func WardenGiveDeadRewardEnd() { - ns.GiveXp(ns.GetHost(), 300) - ns.JournalEdit(ns.GetHost(), "ArrestMorgan", 4) - ns.PrintToAll("Con02a:ObjectiveComplete") - ns.CancelDialog(obj29) -} -func WardenGiveAliveRewardStart() { - ns.TellStory(ns.HumanMaleEatFood, "Wiz02A.scr:WardenTalk05") -} -func WardenGiveAliveRewardEnd() { - ns.SetDialog(obj29, ns.NORMAL, WardenGiveAliveRewardStart, WardenGiveAliveRewardEnd) -} -func LockMorganCell() { - if !ns.IsCaller(obj25) { - goto LABEL1 - } - ns.CreatureGuard(obj25, ns.GetObjectX(obj25), ns.GetObjectY(obj25), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - if flag104 { - goto LABEL1 - } - ns.LockDoor(obj64) - ns.ObjectOff(obj69) - ns.WayPointGroupOff(gvar90) - ns.WayPointGroupOn(gvar91) - ns.Wander(obj29) - ns.ObjectOn(obj71) - ns.SetQuestStatus(1, "MorganCaptured") -LABEL1: - return -} -func Civvy1Start() { - var v0 int - ns.Frozen(obj39, true) - ns.CreatureIdle(obj39) - ns.LookAtObject(obj39, ns.GetHost()) - if !flag105 { - goto LABEL1 - } - ivar113 = 2 - goto LABEL2 -LABEL1: - ivar113 = ns.Random(1, 2) -LABEL2: - v0 = ivar113 - if v0 == 1 { - goto LABEL3 - } - if v0 == 2 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - ns.TellStory(ns.HumanMaleEatFood, "Wiz02A.scr:JorganTalk01") - goto LABEL5 -LABEL4: - ns.TellStory(ns.HumanMaleEatFood, "Wiz02A.scr:MaidenTalk01") - goto LABEL5 -LABEL5: - return -} -func Civvy1End() { - ns.Frozen(obj39, false) - ns.Wander(obj39) - ns.SetDialog(obj39, ns.NORMAL, Civvy1Start, Civvy1End) -} -func Civvy2Start() { - ns.Frozen(obj34, true) - ns.CreatureIdle(obj34) - ns.LookAtObject(obj34, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "Wiz02A.scr:GrunbarTalk01") -} -func Civvy2End() { - ns.Frozen(obj34, false) - ns.Wander(obj34) - ns.SetDialog(obj34, ns.NORMAL, Civvy2Start, Civvy2End) -} -func Civvy5Start() { - ns.Frozen(obj37, true) - ns.CreatureIdle(obj37) - ns.LookAtObject(obj37, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "Wiz02A.scr:AlbiTalk01") -} -func Civvy5End() { - ns.Frozen(obj37, false) - ns.Wander(obj37) - ns.SetDialog(obj37, ns.NORMAL, Civvy5Start, Civvy5End) -} -func Civvy6Start() { - ns.Frozen(obj38, true) - ns.CreatureIdle(obj38) - ns.LookAtObject(obj38, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "Wiz02A.scr:DorianTalk01") -} -func Civvy6End() { - ns.Frozen(obj38, false) - ns.Wander(obj38) - ns.SetDialog(obj38, ns.NORMAL, Civvy6Start, Civvy6End) -} -func ShariStart() { - var v0 int - ns.Frozen(obj40, true) - ns.CreatureIdle(obj40) - ns.LookAtObject(obj40, ns.GetHost()) - ivar111 = ns.Random(1, 2) - v0 = ivar111 - if v0 == 1 { - goto LABEL1 - } - if v0 == 2 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.TellStory(ns.HumanMaleEatFood, "Wiz02A.scr:MaidenTalk02") - goto LABEL3 -LABEL2: - ns.TellStory(ns.HumanMaleEatFood, "Wiz02A.scr:MaidenTalk03") - goto LABEL3 -LABEL3: - return -} -func ShariEnd() { - ns.Frozen(obj40, false) - ns.Wander(obj40) - ns.SetDialog(obj40, ns.NORMAL, ShariStart, ShariEnd) -} -func KaylaStart() { - var v0 int - ns.Frozen(obj41, true) - ns.CreatureIdle(obj41) - ns.LookAtObject(obj41, ns.GetHost()) - ivar112 = ns.Random(1, 2) - v0 = ivar112 - if v0 == 1 { - goto LABEL1 - } - if v0 == 2 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.TellStory(ns.HumanMaleEatFood, "Wiz02A.scr:MaidenTalk04") - goto LABEL3 -LABEL2: - ns.TellStory(ns.HumanMaleEatFood, "Wiz02A.scr:MaidenTalk05") - goto LABEL3 -LABEL3: - return -} -func KaylaEnd() { - ns.Frozen(obj41, false) - ns.Wander(obj41) - ns.SetDialog(obj41, ns.NORMAL, KaylaStart, KaylaEnd) -} -func JorganStart() { - ns.Frozen(obj33, true) - ns.CreatureIdle(obj33) - ns.LookAtObject(obj33, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "Con03C.scr:ForemanF") -} -func JorganEnd() { - ns.Frozen(obj33, false) - ns.Wander(obj33) - ns.SetDialog(obj33, ns.NORMAL, JorganStart, JorganEnd) -} -func FentonStart() { - ns.Frozen(obj35, true) - ns.CreatureIdle(obj35) - ns.LookAtObject(obj35, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "War02a:NewTownsman3") -} -func FentonEnd() { - ns.Frozen(obj35, false) - ns.Wander(obj35) - ns.SetDialog(obj35, ns.NORMAL, FentonStart, FentonEnd) -} -func KelvinStart() { - ns.Frozen(obj36, true) - ns.CreatureIdle(obj36) - ns.LookAtObject(obj36, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "War02a:NewTownsman4") -} -func KelvinEnd() { - ns.Frozen(obj36, false) - ns.Wander(obj36) - ns.SetDialog(obj36, ns.NORMAL, KelvinStart, KelvinEnd) -} -func EowynnEnterMax() { - if !ns.IsCaller(obj39) { - goto LABEL1 - } - flag105 = true -LABEL1: - return -} -func EowynnExitMax() { - if !ns.IsCaller(obj39) { - goto LABEL1 - } - flag105 = false -LABEL1: - return -} -func CreatureSetup() { - ns.SetOwner(ns.GetHost(), obj18) - ns.SetOwner(ns.GetHost(), obj37) - ns.SetOwner(ns.GetHost(), obj38) - ns.SetOwner(ns.GetHost(), obj34) - ns.SetOwner(ns.GetHost(), obj33) - ns.SetOwner(ns.GetHost(), obj35) - ns.SetOwner(ns.GetHost(), obj36) - ns.SetOwner(ns.GetHost(), obj29) - ns.SetOwner(ns.GetHost(), obj27) - ns.SetOwner(ns.GetHost(), obj28) - ns.SetOwner(ns.GetHost(), obj22) - ns.SetOwner(ns.GetHost(), obj23) - ns.SetOwner(ns.GetHost(), obj24) - ns.SetOwner(ns.GetHost(), obj30) - ns.SetOwner(ns.GetHost(), obj7) - ns.SetOwner(ns.GetHost(), obj31) - ns.SetOwner(ns.GetHost(), obj32) - ns.SetOwner(ns.GetHost(), obj39) - ns.SetOwner(ns.GetHost(), obj40) - ns.SetOwner(ns.GetHost(), obj41) - ns.SetOwner(ns.GetHost(), obj42) - ns.SetOwner(ns.GetHost(), obj43) - ns.SetOwner(ns.GetHost(), obj44) - ns.SetOwner(ns.GetHost(), obj45) - ns.SetOwner(ns.GetHost(), obj46) - ns.SetOwner(ns.GetHost(), obj47) - ns.SetOwner(ns.GetHost(), obj48) - ns.SetOwner(ns.GetHost(), obj49) - ns.SetOwner(ns.GetHost(), obj50) - ns.SetOwner(ns.GetHost(), obj51) - ns.SetOwner(ns.GetHost(), obj8) - ns.SetOwner(ns.GetHost(), obj9) - ns.SetOwner(ns.GetHost(), obj10) - ns.SetOwner(ns.GetHost(), obj11) - ns.SetOwner(ns.GetHost(), obj12) - ns.SetOwner(ns.GetHost(), obj13) - ns.SetOwner(ns.GetHost(), obj14) - ns.SetOwner(ns.GetHost(), obj52) - ns.SetOwner(ns.GetHost(), obj53) - ns.SetOwner(ns.GetHost(), obj54) - ns.Wander(obj33) - ns.Wander(obj34) - ns.Wander(obj35) - ns.Wander(obj36) - ns.Wander(obj37) - ns.Wander(obj38) - ns.Wander(obj39) - ns.Wander(obj40) - ns.Wander(obj41) -} -func StateEngine() { - if !(ns.CurrentHealth(obj26) <= 0) { - goto LABEL1 - } - if !(flag93 == false && flag98 == false) { - goto LABEL1 - } - if !ns.IsVisibleTo(obj25, ns.GetHost()) { - goto LABEL1 - } - ns.Chat(obj25, "Wiz02A.scr:MorganTalk01") - ns.SetOwner(ns.GetHost(), obj25) - ns.CreatureFollow(obj25, ns.GetHost()) - flag93 = true -LABEL1: - if !flag101 { - goto LABEL2 - } - ns.LookAtObject(obj29, ns.GetHost()) -LABEL2: - gvar114 = ns.FrameTimer(2, StateEngine) -} -func EnemyRun() { - r1 := ns.IsAttackedBy(ns.GetHost(), ns.GetCaller()) - if !r1 { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func InitObjects() { - obj18 = ns.Object("F6Guard4") - obj19 = ns.Object("Sheriff") - obj7 = ns.Object("Mlurgh") - obj20 = ns.Object("Kincaid") - obj22 = ns.Object("Mystic") - obj21 = ns.Object("BrightBlades") - obj23 = ns.Object("MiscVendor") - obj24 = ns.Object("Phim") - obj30 = ns.Object("Undertaker") - obj31 = ns.Object("Priest") - obj55 = ns.Object("EmptyRoomDoor") - obj56 = ns.Object("GuardDoor1") - obj57 = ns.Object("GuardDoor2") - obj27 = ns.Object("Max") - obj28 = ns.Object("Grillf") - obj32 = ns.Object("Loproc") - obj33 = ns.Object("Jorgan") - obj34 = ns.Object("Grunbar") - obj35 = ns.Object("Fenton") - obj36 = ns.Object("Kelvin") - obj37 = ns.Object("Albi") - obj38 = ns.Object("Dorian") - obj39 = ns.Object("Eowynn") - obj40 = ns.Object("Shari") - obj41 = ns.Object("Kayla") - obj42 = ns.Object("Maiden1") - obj43 = ns.Object("Maiden2") - obj44 = ns.Object("Maiden5") - obj45 = ns.Object("Maiden6") - obj46 = ns.Object("Maiden7") - obj47 = ns.Object("Maiden8") - obj48 = ns.Object("Maiden9") - obj49 = ns.Object("BarFly1") - obj50 = ns.Object("BarFly2") - obj51 = ns.Object("BarFly3") - obj8 = ns.Object("MlurghPatron1") - obj9 = ns.Object("MlurghPatron2") - obj10 = ns.Object("MlurghPatron3") - obj11 = ns.Object("MlurghPatron4") - obj12 = ns.Object("MlurghPatron5") - obj13 = ns.Object("MlurghPatron6") - obj14 = ns.Object("MlurghPatron7") - obj52 = ns.Object("TowerNPC") - obj53 = ns.Object("TowerNPC2") - obj54 = ns.Object("TowerMaiden") - obj78 = ns.Object("WardenFace") - obj72 = ns.Object("MaxReward") - obj58 = ns.Object("MaxHomeDoor1") - obj59 = ns.Object("MaxHomeDoor2") - obj60 = ns.Object("GearRoomDoor") - obj66 = ns.Object("RogueElevator") - obj67 = ns.Object("PlayerElevatorTopTrigger") - obj61 = ns.Object("FirstJailDoor") - obj68 = ns.Object("JailDoorTrigger") - obj79 = ns.Object("GrillfFace") - obj29 = ns.Object("Warden") - obj4 = ns.Object("AmbSound1") - obj5 = ns.Object("AmbSound2") - obj6 = ns.Object("AmbSound3") - obj73 = ns.Object("DeadReward") - obj74 = ns.Object("AliveReward") - obj75 = ns.Object("RogueKey") - obj65 = ns.Object("RogueDoor") - obj25 = ns.Object("Morgan") - obj76 = ns.Object("CryptChairMover") - obj26 = ns.Object("MorganGuard1") - obj69 = ns.Object("MorganCellTrigger") - obj71 = ns.Object("WardenBackTrigger") - obj64 = ns.Object("MorganCellDoor") - obj77 = ns.Object("MorganKey") - obj62 = ns.Object("MorganDoor1") - obj63 = ns.Object("MorganDoor2") - gvar80 = ns.ObjectGroup("RogueGears") - gvar81 = ns.ObjectGroup("MorganSecret") - gvar82 = ns.WallGroup("TroveWalls") -} -func SetTownDialog() { - if ns.GetQuestStatus("MorganCaptured") != 1 { - goto LABEL1 - } - flag93 = true - flag97 = true - if ns.GetQuestStatus("MorganDead") == 1 { - goto LABEL2 - } - ns.ObjectOff(obj69) - ns.ObjectOff(obj70) - ns.ObjectOff(obj67) - ns.ObjectOff(obj68) - ns.ObjectOff(obj71) - ns.LockDoor(obj64) - ns.UnlockDoor(obj61) - ns.UnlockDoor(obj65) - ns.UnlockDoor(obj62) - ns.UnlockDoor(obj63) - ns.ObjectOn(obj66) - ns.MoveObject(obj25, 3627, 5467) -LABEL2: - goto LABEL3 -LABEL1: - ns.SetDialog(obj27, ns.NORMAL, MaxProblemStart, MaxProblemEnd) - ns.SetDialog(obj29, ns.NORMAL, WardenGreetStart, WardenGreetEnd) -LABEL3: - ns.SetDialog(obj31, ns.NORMAL, PriestStart, PriestEnd) - ns.SetDialog(obj23, ns.NORMAL, GenericStart, GenericEnd) - ns.SetDialog(obj30, ns.NORMAL, GenericStart, GenericEnd) - ns.SetDialog(obj39, ns.NORMAL, Civvy1Start, Civvy1End) - ns.SetDialog(obj34, ns.NORMAL, Civvy2Start, Civvy2End) - ns.SetDialog(obj37, ns.NORMAL, Civvy5Start, Civvy5End) - ns.SetDialog(obj38, ns.NORMAL, Civvy6Start, Civvy6End) - ns.SetDialog(obj40, ns.NORMAL, ShariStart, ShariEnd) - ns.SetDialog(obj41, ns.NORMAL, KaylaStart, KaylaEnd) - ns.SetDialog(obj33, ns.NORMAL, JorganStart, JorganEnd) - ns.SetDialog(obj35, ns.NORMAL, FentonStart, FentonEnd) - ns.SetDialog(obj36, ns.NORMAL, KelvinStart, KelvinEnd) - ns.StoryPic(obj27, "MaxPic") - ns.StoryPic(obj30, "UndertakerPic") - ns.StoryPic(obj38, "Townsman2Pic") - ns.StoryPic(obj34, "MalePic7") - ns.StoryPic(obj37, "MalePic1") - ns.StoryPic(obj33, "Townsman3Pic") - ns.StoryPic(obj35, "MalePic8") - ns.StoryPic(obj36, "MalePic5") - ns.StoryPic(obj29, "WardenPic") - ns.StoryPic(obj31, "GalavaPriestPic") - ns.StoryPic(obj39, "MaidenPic3") - ns.StoryPic(obj40, "MaidenPic") - ns.StoryPic(obj41, "MaidenPic2") -} -func LoprocSeesPlayer() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Chat(obj32, "Wiz02A.scr:AppleManTalk01") -LABEL1: - return -} -func MorganCapturePiece() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - if !(flag93 == true && flag107 != true) { - goto LABEL1 - } - if !(ns.CurrentHealth(obj25) > 0) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.WideScreen(true) - ns.Frozen(ns.GetHost(), true) - ns.CreatureIdle(ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj29) - ns.SetDialog(obj29, ns.NORMAL, Warden1Start, Warden1End) - ns.StartDialog(obj29, ns.GetHost()) -LABEL1: - return -} -func MapInitialize() { - InitObjects() - wp84 = ns.Waypoint("Inn1WP") - wp85 = ns.Waypoint("Inn2WP") - wp86 = ns.Waypoint("RogueElevatorWP") - wp83 = ns.Waypoint("PlayerSounds") - wp87 = ns.Waypoint("ExitTowerWP") - wp88 = ns.Waypoint("CryptChairStartWP") - wp89 = ns.Waypoint("CryptChairEndWP") - gvar90 = ns.WaypointGroup("ToJailWPPath") - gvar91 = ns.WaypointGroup("WardenGoBackWP") - ns.ObjectOn(obj76) - ns.ObjectGroupOff(gvar80) - ns.ObjectOff(obj66) - ns.ObjectOff(obj71) - ns.WayPointGroupOff(gvar90) - ns.WayPointGroupOff(gvar91) - ns.LockDoor(obj56) - ns.LockDoor(obj57) - ns.LockDoor(obj58) - ns.LockDoor(obj59) - ns.LockDoor(obj60) - ns.LockDoor(obj61) - if ns.GetQuestStatus("MorganDead") != 1 { - goto LABEL1 - } - ns.Delete(obj25) -LABEL1: - SecretsInit() - SetTownDialog() - ns.FrameTimer(1, CreatureSetup) - StateEngine() -} -func MapEntry() { - ns.UnBlind() - ns.Music(17, 100) -} -func PlayerDeath() { - ns.DeathScreen(2) -} -func OnEvent(typ string) { - switch typ { - case "MapInitialize": - MapInitialize() - case "MapEntry": - MapEntry() - case "PlayerDeath": - PlayerDeath() - } -} diff --git a/examples/wiz02b/dummy_test.go b/examples/wiz02b/dummy_test.go deleted file mode 100644 index bfa3a78..0000000 --- a/examples/wiz02b/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package wiz02b - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/wiz02b/wiz02b.go b/examples/wiz02b/wiz02b.go deleted file mode 100644 index e72b927..0000000 --- a/examples/wiz02b/wiz02b.go +++ /dev/null @@ -1,1458 +0,0 @@ -package wiz02b - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 ns.ObjectID - obj5 ns.ObjectID - obj6 ns.ObjectID - obj7 ns.ObjectID - obj8 ns.ObjectID - gvar9 ns.ObjectID - gvar10 ns.ObjectID - obj11 ns.ObjectID - obj12 ns.ObjectID - obj13 ns.ObjectID - gvar14 ns.WallGroupID - wp15 ns.WaypointID - wp16 ns.WaypointID - wp17 ns.WaypointID - wp18 ns.WaypointID - flag19 bool - flag20 bool - flag21 bool - flag22 bool - flag23 bool - gvar24 int - gvar25 int - gvar26 int - gvar27 int - gvar28 int - gvar29 int - gvar30 int - gvar31 int - gvar32 int - gvar33 int - gvar34 int - gvar35 int - fvar36 float32 - fvar37 float32 - fvar38 float32 - fvar39 float32 - fvar40 float32 - fvar41 float32 - fvar42 float32 - fvar43 float32 - fvar44 float32 - fvar45 float32 - fvar46 float32 - fvar47 float32 - fvar48 float32 - fvar49 float32 - fvar50 float32 - fvar51 float32 - fvar52 float32 - fvar53 float32 - flag54 bool - flag55 bool - flag56 bool - flag57 bool - flag58 bool - flag59 bool - flag60 bool - flag61 bool - flag62 bool - flag63 bool - flag64 bool - flag65 bool - flag66 bool - flag67 bool - flag68 bool - flag69 bool - flag70 bool - flag71 bool - flag72 bool - flag73 bool - flag74 bool - flag75 bool - flag76 bool - flag77 bool - ivar78 int - ivar79 int - ivar80 int - gvar81 int - ivar82 int - ivar83 int - ivar84 int - gvar85 int - gvar86 int - ivar87 int - gvar88 int - gvar89 int - ivar90 int - ivar91 int - obj92 ns.ObjectID - obj93 ns.ObjectID - obj94 ns.ObjectID - obj95 ns.ObjectID - obj96 ns.ObjectID - obj97 ns.ObjectID - obj98 ns.ObjectID - obj99 ns.ObjectID - obj100 ns.ObjectID - obj101 ns.ObjectID - obj102 ns.ObjectID - obj103 ns.ObjectID - obj104 ns.ObjectID - obj105 ns.ObjectID - obj106 ns.ObjectID - obj107 ns.ObjectID - gvar108 ns.ObjectGroupID - gvar109 ns.ObjectGroupID - obj110 ns.ObjectID - obj111 ns.ObjectID - obj112 ns.ObjectID - obj113 ns.ObjectID - obj114 ns.ObjectID - obj115 ns.ObjectID - obj116 ns.ObjectID - obj117 ns.ObjectID - obj118 ns.ObjectID - obj119 ns.ObjectID - obj120 ns.ObjectID - obj121 ns.ObjectID - obj122 ns.ObjectID - obj123 ns.ObjectID - obj124 ns.ObjectID - obj125 ns.ObjectID - obj126 ns.ObjectID - gvar127 ns.ObjectID - gvar128 ns.ObjectID - gvar129 ns.ObjectID - obj130 ns.ObjectID - obj131 ns.ObjectID - obj132 ns.ObjectID - obj133 ns.ObjectID - obj134 ns.ObjectID - obj135 ns.ObjectID - gvar136 ns.ObjectGroupID - gvar137 ns.ObjectGroupID - gvar138 ns.WallGroupID - gvar139 ns.WallGroupID - gvar140 ns.WallGroupID - gvar141 ns.WallGroupID - gvar142 ns.WallGroupID - wp143 ns.WaypointID - wp144 ns.WaypointID - wp145 ns.WaypointID - wp146 ns.WaypointID - wp147 ns.WaypointID - gvar148 ns.WaypointGroupID - gvar149 ns.WaypointGroupID - gvar150 ns.WaypointGroupID -) - -func init() { - flag19 = false - flag20 = false - flag21 = false - flag22 = false - flag23 = false - gvar24 = 0 - gvar25 = 1 - gvar26 = 2 - gvar27 = 3 - gvar28 = 4 - gvar29 = 5 - gvar30 = 6 - gvar31 = 7 - gvar32 = 8 - gvar33 = 9 - gvar34 = 10 - gvar35 = gvar24 - fvar36 = 4586 - fvar37 = 4430 - fvar38 = 4539 - fvar39 = 4373 - fvar44 = 4471 - fvar45 = 4423 - fvar46 = 4312 - fvar47 = 4257 - flag54 = false - flag55 = false - flag56 = false - flag57 = false - flag58 = false - flag59 = false - flag60 = false - flag61 = false - flag62 = false - flag63 = false - flag64 = false - flag65 = false - flag66 = false - flag67 = false - flag68 = false - flag69 = false - flag70 = false - flag71 = false - flag72 = false - flag73 = false - flag74 = false - flag75 = false - flag76 = false - flag77 = false - ivar78 = 0 - ivar79 = 0 - ivar80 = 0 - gvar81 = 0 - ivar82 = 0 - ivar83 = 0 - ivar84 = 0 - gvar85 = 0 - gvar86 = 1 - ivar87 = 1 - gvar89 = 0 - ivar90 = 0 - ivar91 = 0 -} -func LibrarySetup() { - obj4 = ns.Object("Librarian1") - obj5 = ns.Object("Librarian2") - obj6 = ns.Object("Archivist") - obj7 = ns.Object("Necromancer") - obj8 = ns.Object("FakeBook") - obj11 = ns.Object("FakeBookMover") - obj13 = ns.Object("SwapbookMover") - gvar14 = ns.WallGroup("SecretExitWalls") - wp15 = ns.Waypoint("AttackWP") - wp16 = ns.Waypoint("NecroStealWP") - wp17 = ns.Waypoint("NecroVanishWP") - ns.FrameTimer(1, OwnPeople) -} -func OwnPeople() { - ns.SetOwner(ns.GetHost(), obj4) - ns.SetOwner(ns.GetHost(), obj5) - ns.SetOwner(ns.GetHost(), obj6) - ns.StoryPic(obj6, "ArchivistPic") - ns.StoryPic(obj7, "NecromancerPic") - ns.ObjectOn(obj11) - ns.ObjectOn(obj13) -} -func TheftPieceCheck() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - if ns.GetQuestStatus("BookStolen") == 1 { - goto LABEL1 - } - ns.SetQuestStatus(1, "BookStolen") - ns.WideScreen(true) - ns.SetQuestStatus(1, "InLetterboxMode") - ns.Frozen(ns.GetHost(), true) - ns.LookAtObject(ns.GetHost(), obj6) - flag19 = true - ns.Move(obj7, wp15) - ns.Music(11, 100) -LABEL1: - return -} -func TheftPieceBegin() { - if !ns.IsCaller(obj7) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.Frozen(obj4, true) - ns.Frozen(obj5, true) - ns.Frozen(obj7, true) - ns.Frozen(obj6, true) - ns.CreatureIdle(obj4) - ns.CreatureIdle(obj5) - ns.CreatureIdle(obj7) - ns.CreatureIdle(obj6) - ns.LookAtObject(obj4, obj7) - ns.LookAtObject(obj5, obj7) - ns.LookAtObject(obj6, obj7) - ns.LookAtObject(obj7, obj6) - ns.SetDialog(obj6, ns.NEXT, ArchivistTalkStart, ArchivistTalkEnd) - ns.StartDialog(obj6, ns.GetHost()) -LABEL1: - return -} -func Lib1Talk() { - ns.DestroyEveryChat() - ns.Frozen(obj4, false) - ns.Frozen(obj5, false) - ns.Frozen(obj7, false) - ns.SecondTimer(1, StartTheFight) -} -func StartTheFight() { - ns.Frozen(obj7, true) - ns.CreatureIdle(obj7) - ns.LookAtObject(obj7, obj4) - ns.CastSpellObjectLocation(ns.SPELL_FIREBALL, obj7, ns.GetObjectX(obj4), ns.GetObjectY(obj4)) -} -func Lib1Die() { - ns.MoveWaypoint(wp18, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.NecromancerTaunt, wp18) - ns.SecondTimer(1, ShootLib2) -} -func Lib2Die() { - ns.AudioEvent(ns.NecromancerTaunt, wp18) - ns.Frozen(obj7, false) - ns.Chat(obj5, "Wiz02:MiscWizard02") - ns.Move(obj7, wp16) -} -func ShootLib2() { - if !(ns.CurrentHealth(obj5) > 0) { - goto LABEL1 - } - ns.LookAtObject(obj7, obj5) - ns.CastSpellObjectLocation(ns.SPELL_FIREBALL, obj7, ns.GetObjectX(obj5), ns.GetObjectY(obj5)) - ns.FrameTimer(1, ShootLib2) -LABEL1: - return -} -func NecroExit() { - if !ns.IsCaller(obj7) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - gvar35 = gvar29 - ns.Frozen(obj7, true) - ns.CreatureIdle(obj7) - ns.LookAtObject(obj7, obj6) - ns.SetDialog(obj7, ns.NEXT, NecromancerStart, ArchivistTalkEnd) - flag23 = true - ns.StartDialog(obj7, ns.GetHost()) -LABEL1: - return -} -func NecroWalkAway() { - ns.Move(obj7, wp17) - gvar35 = gvar31 - ns.SetDialog(obj6, ns.NORMAL, ArchivistTalkStart, ArchivistTalkEnd) - ns.StartDialog(obj6, ns.GetHost()) -} -func RemoveNecro() { - if !ns.IsCaller(obj7) { - goto LABEL1 - } - if !flag23 { - goto LABEL1 - } - flag20 = true - ns.ObjectOff(ns.GetTrigger()) - ns.MoveObject(obj7, 4004, 651) - ns.ObjectOff(obj7) - ns.SetQuestStatus(0, "InLetterboxMode") - if !flag22 { - goto LABEL1 - } - ns.WideScreen(false) - ns.Frozen(ns.GetHost(), false) - ns.Frozen(obj6, false) - ns.CreatureGuard(obj6, ns.GetObjectX(obj6), ns.GetObjectY(obj6), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - EnableGroupA() - ns.Music(18, 100) -LABEL1: - return -} -func OpenExitWalls() { - ns.WallGroupOpen(gvar14) - CheckArchivist() -} -func ArchivistTalkStart() { - var v0 int - ns.Frozen(ns.GetHost(), true) - ns.CreatureIdle(ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj6) - if !ns.HasItem(ns.GetHost(), gvar9) { - goto LABEL1 - } - if gvar35 == gvar34 { - goto LABEL1 - } - gvar35 = gvar33 -LABEL1: - v0 = gvar35 - if v0 == gvar24 { - goto LABEL2 - } - if v0 == gvar26 { - goto LABEL3 - } - if v0 == gvar31 { - goto LABEL4 - } - if v0 == gvar32 { - goto LABEL5 - } - if v0 == gvar33 { - goto LABEL6 - } - if v0 == gvar34 { - goto LABEL7 - } - goto LABEL8 -LABEL2: - ns.TellStory(ns.HumanMaleEatFood, "Wiz02:ArchivistSurprise") - gvar35 = gvar25 - goto LABEL8 -LABEL3: - ns.TellStory(ns.HumanMaleEatFood, "Wiz02:ArchivistSnob") - gvar35 = gvar27 - goto LABEL8 -LABEL4: - ns.TellStory(ns.HumanMaleEatFood, "Wiz02:OldArchivist01") - ns.CreatureGuard(obj6, 3650, 1056, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - goto LABEL8 -LABEL5: - ns.TellStory(ns.HumanMaleEatFood, "Wiz02:OldArchivist02") - ns.CreatureGuard(obj6, 3650, 1056, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - goto LABEL8 -LABEL6: - ns.TellStory(ns.HumanMaleEatFood, "Wiz02:OldArchivist03") - ns.CreatureGuard(obj6, 3650, 1056, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - goto LABEL8 -LABEL7: - ns.TellStory(ns.HumanMaleEatFood, "Wiz02:OldArchivistTalk04") - ns.CreatureGuard(obj6, 3650, 1056, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - goto LABEL8 -LABEL8: - return -} -func ArchivistTalkEnd() { - var v0 int - v0 = gvar35 - if v0 == gvar25 { - goto LABEL1 - } - if v0 == gvar26 { - goto LABEL2 - } - if v0 == gvar27 { - goto LABEL3 - } - if v0 == gvar28 { - goto LABEL4 - } - if v0 == gvar29 { - goto LABEL5 - } - if v0 == gvar30 { - goto LABEL6 - } - if v0 == gvar31 { - goto LABEL7 - } - if v0 == gvar32 { - goto LABEL8 - } - if v0 == gvar33 { - goto LABEL9 - } - if v0 == gvar34 { - goto LABEL10 - } - goto LABEL11 -LABEL1: - ns.SetDialog(obj7, ns.NEXT, NecromancerStart, ArchivistTalkEnd) - ns.StartDialog(obj7, ns.GetHost()) - goto LABEL11 -LABEL2: - ns.SetDialog(obj6, ns.NEXT, ArchivistTalkStart, ArchivistTalkEnd) - ns.StartDialog(obj6, ns.GetHost()) - goto LABEL11 -LABEL3: - ns.SetDialog(obj7, ns.NEXT, NecromancerStart, ArchivistTalkEnd) - ns.StartDialog(obj7, ns.GetHost()) - goto LABEL11 -LABEL4: - ns.CancelDialog(obj7) - ns.CancelDialog(obj6) - Lib1Talk() - goto LABEL11 -LABEL5: - ns.SetDialog(obj7, ns.NEXT, NecromancerStart, ArchivistTalkEnd) - ns.StartDialog(obj7, ns.GetHost()) - goto LABEL11 -LABEL6: - ns.CancelDialog(obj7) - ns.Pickup(obj7, obj8) - ns.Frozen(obj7, false) - ns.FrameTimer(1, NecroWalkAway) - goto LABEL11 -LABEL7: - ns.SetDialog(obj6, ns.NORMAL, ArchivistTalkStart, ArchivistTalkEnd) - if flag21 { - goto LABEL12 - } - ns.JournalEntry(ns.GetHost(), "GetNecromancer", 2) - ns.PrintToAll("Con01a:NewJournalEntry") - flag21 = true -LABEL12: - gvar35 = gvar32 - flag22 = true - if !flag20 { - goto LABEL13 - } - ns.WideScreen(false) - ns.Frozen(ns.GetHost(), false) - ns.Frozen(obj6, false) - EnableGroupA() - ns.Music(18, 100) -LABEL13: - goto LABEL11 -LABEL8: - ns.Frozen(ns.GetHost(), false) - ns.SetDialog(obj6, ns.NORMAL, ArchivistTalkStart, ArchivistTalkEnd) - EnableGroupA() - goto LABEL11 -LABEL9: - if ns.HasItem(ns.GetHost(), gvar10) { - goto LABEL14 - } - ns.Pickup(ns.GetHost(), gvar10) - ns.JournalEdit(ns.GetHost(), "ArchivistBook", 4) - ns.PrintToAll("Con02a:ObjectiveComplete") - ns.GiveXp(ns.GetHost(), 300) - ns.PrintToAll("GeneralPrint:GainedItem") -LABEL14: - ns.Frozen(ns.GetHost(), false) - ns.SetDialog(obj6, ns.NORMAL, ArchivistTalkStart, ArchivistTalkEnd) - gvar35 = gvar34 - ns.Music(15, 100) - goto LABEL11 -LABEL10: - ns.Frozen(ns.GetHost(), false) - ns.SetDialog(obj6, ns.NORMAL, ArchivistTalkStart, ArchivistTalkEnd) - goto LABEL11 -LABEL11: - return -} -func NecromancerStart() { - var v0 int - v0 = gvar35 - if v0 == gvar25 { - goto LABEL1 - } - if v0 == gvar27 { - goto LABEL2 - } - if v0 == gvar29 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - ns.TellStory(ns.HumanMaleEatFood, "Wiz02:Necromancer01") - gvar35 = gvar26 - goto LABEL4 -LABEL2: - ns.TellStory(ns.HumanMaleEatFood, "Wiz02:NecroTaunt") - gvar35 = gvar28 - goto LABEL4 -LABEL3: - ns.TellStory(ns.HumanMaleEatFood, "Wiz02:NecroHappy") - gvar35 = gvar30 - goto LABEL4 -LABEL4: - return -} -func CheckArchivist() { - if !(ns.Distance(ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), ns.GetObjectX(obj6), ns.GetObjectY(obj6)) <= 100) { - goto LABEL1 - } - ns.Frozen(ns.GetHost(), true) - ns.CreatureIdle(ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj6) - ns.LookAtObject(obj6, ns.GetHost()) - ns.StartDialog(obj6, ns.GetHost()) - goto LABEL2 -LABEL1: - ns.FrameTimer(15, CheckArchivist) -LABEL2: - return -} -func ReleasePlayer() { -} -func EnableGroupA() { - ns.ObjectGroupOn(gvar108) -} -func MainReceptionistGreetingStart() { - ns.TellStory(ns.HumanMaleEatFood, "Wiz02B.scr:MRTalk01") - ns.UnlockDoor(obj110) - ns.UnlockDoor(obj111) - ns.SetQuestStatus(1, "MainReceptionistTalked") -} -func MainReceptionistGreetingEnd() { - ns.CancelDialog(obj92) -} -func HorvathGivesTaskStart() { - ns.JournalEdit(ns.GetHost(), "MeetHorvath", 4) - ns.PrintToAll("Con02a:ObjectiveComplete") - ns.TellStory(ns.HumanMaleEatFood, "Wiz02B.scr:HorvathTalk01") - ns.SetQuestStatus(1, "HorvathGaveAmuletQuest") -} -func HorvathGivesTaskEnd() { - ns.SetDialog(obj95, ns.NEXT, HorvathGivesTask1aStart, HorvathGivesTask1aEnd) - ns.StartDialog(obj95, ns.GetHost()) -} -func HorvathGivesTask1aStart() { - ns.TellStory(ns.HumanMaleEatFood, "Wiz02B.scr:HorvathTalk01a") -} -func HorvathGivesTask1aEnd() { - ns.SetDialog(obj95, ns.NORMAL, HorvathGivesTask1bStart, HorvathGivesTask1bEnd) - ns.StartDialog(obj95, ns.GetHost()) -} -func HorvathGivesTask1bStart() { - ns.TellStory(ns.HumanMaleEatFood, "Wiz02B.scr:HorvathTalk01b") -} -func HorvathGivesTask1bEnd() { - ns.PrintToAll("Con01a:NewJournalEntry") - ns.JournalEntry(ns.GetHost(), "ReturnToHorvath", 2) - ns.SetDialog(obj95, ns.NORMAL, HorvathWaitingStart, HorvathWaitingEnd) - ns.SetDialog(obj101, ns.NORMAL, ArchivistHappyStart, ArchivistHappyEnd) -} -func HorvathWaitingStart() { - if ns.HasItem(ns.GetHost(), gvar10) { - goto LABEL1 - } - ns.TellStory(ns.HumanMaleEatFood, "Wiz02B.scr:HorvathTalk02") - goto LABEL2 -LABEL1: - ns.TellStory(ns.HumanMaleEatFood, "Wiz02B.scr:HorvathTalk03") -LABEL2: - return -} -func HorvathWaitingEnd() { - if ns.HasItem(ns.GetHost(), gvar10) { - goto LABEL1 - } - ns.SetDialog(obj95, ns.NORMAL, HorvathWaitingStart, HorvathWaitingEnd) - goto LABEL2 -LABEL1: - ns.CancelDialog(obj95) - ns.GiveXp(ns.GetHost(), 1000) - flag72 = true - ns.JournalEdit(ns.GetHost(), "ReturnToHorvath", 4) - ns.PrintToAll("Con02a:ObjectiveComplete") - gvar127 = ns.GetLastItem(ns.GetHost()) - for { - if gvar127 == 0 { - goto LABEL3 - } - gvar129 = ns.GetPreviousItem(gvar127) - if gvar127 != gvar9 { - goto LABEL4 - } - ns.Delete(gvar127) - LABEL4: - gvar127 = gvar129 - } -LABEL3: - ns.FrameTimer(1, DropAmulet) -LABEL2: - return -} -func LewisIntroStart() { - ns.LookAtObject(obj96, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "Wiz02B.scr:LewisTalk01") -} -func LewisIntroEnd() { - ns.Walk(obj96, 4582, 4363) - ns.CancelDialog(obj96) -} -func LewisInPositionTrigger() { - if !ns.IsCaller(obj96) { - goto LABEL1 - } - flag56 = true - ns.Chat(obj96, "Wiz02B.scr:LewisTalk02") - flag57 = true - ns.Frozen(obj96, true) - ns.Frozen(obj97, true) - ns.CreatureIdle(obj96) - ns.LookAtObject(obj96, ns.GetHost()) -LABEL1: - return -} -func LewisBookQuest() { - ns.SetDialog(obj97, ns.NEXT, FrogTalk3Start, FrogTalk3End) - ns.StartDialog(obj97, ns.GetHost()) -} -func ReadyForFirstSwap() { -} -func ReadyForFirstReturn() { - var v0 int - v0 = ivar82 - if v0 == 30 { - goto LABEL1 - } - if v0 == 150 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.Chat(obj97, "Wiz02B.scr:LewisTalk04") - goto LABEL3 -LABEL2: - ns.Chat(obj97, "Wiz02B.scr:LewisTalk05") - flag58 = true - goto LABEL3 -LABEL3: - ivar82 += 2 -} -func ShowOnOff() { - if !(flag59 == false && flag57 == true && flag60 == false) { - goto LABEL1 - } - ns.WideScreen(true) - ns.Frozen(ns.GetHost(), true) - ns.CreatureIdle(ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj96) - flag59 = true - FrogRoomStuff() -LABEL1: - if !(flag59 == false && flag58 == true && flag61 == false) { - goto LABEL2 - } - ns.WideScreen(true) - ns.Frozen(ns.GetHost(), true) - ns.CreatureIdle(ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj97) - flag59 = true - FrogRoomStuff() -LABEL2: - return -} -func GetArchivistButton() { - flag76 = true - flag77 = false - ns.MoveWaypoint(wp18, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.ShortBellsUp, wp18) - ns.WayPointGroupOff(gvar150) - ns.WayPointGroupOn(gvar149) - ns.Wander(obj101) - if ns.GetQuestStatus("HorvathGaveAmuletQuest") != 1 { - goto LABEL1 - } - if ns.GetQuestStatus("LockLibraryGates") == 1 { - goto LABEL2 - } - if !ns.IsLocked(obj112) { - goto LABEL2 - } - ns.SetDialog(obj101, ns.NORMAL, ArchivistHappyStart, ArchivistHappyEnd) -LABEL2: - goto LABEL3 -LABEL1: - ns.SetDialog(obj101, ns.NORMAL, ArchivistMadStart, ArchivistMadEnd) -LABEL3: - return -} -func ArchivistAtGate() { - if !ns.IsCaller(obj101) { - goto LABEL1 - } - ns.WayPointGroupOff(gvar149) - if ns.IsTalking() { - goto LABEL1 - } - if !(flag76 == true && flag77 == false) { - goto LABEL1 - } - ns.Chat(obj101, "Wiz02B.scr:ArchivistTalk01") - flag77 = true - flag76 = false -LABEL1: - return -} -func ArchivistGuard() { - if !ns.IsCaller(obj101) { - goto LABEL1 - } - ns.CreatureGuard(obj101, ns.GetObjectX(obj101), ns.GetObjectY(obj101), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) -LABEL1: - return -} -func ArchivistHappyStart() { - ns.DestroyEveryChat() - ns.Frozen(obj101, true) - ns.CreatureIdle(obj101) - ns.LookAtObject(obj101, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "Wiz02B.scr:ArchivistTalk05") - flag76 = false - flag77 = true -} -func ArchivistHappyEnd() { - ns.Frozen(obj101, false) - ns.ObjectOff(obj135) - ns.UnlockDoor(obj112) - ns.UnlockDoor(obj113) - ns.ObjectOff(obj130) - ns.WayPointGroupOff(gvar149) - ns.WayPointGroupOn(gvar150) - ns.CreatureIdle(obj101) - ns.Wander(obj101) - ns.CancelDialog(obj101) -} -func ArchivistMadStart() { - var v0 int - ns.DestroyEveryChat() - ns.Frozen(obj101, true) - ns.CreatureIdle(obj101) - ns.LookAtObject(obj101, ns.GetHost()) - flag76 = false - flag77 = true - v0 = ivar87 - if v0 == 1 { - goto LABEL1 - } - if v0 == 2 { - goto LABEL2 - } - if v0 == 3 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - ns.TellStory(ns.HumanMaleEatFood, "Wiz02B.scr:ArchivistTalk02") - ivar87 += 1 - goto LABEL4 -LABEL2: - ns.TellStory(ns.HumanMaleEatFood, "Wiz02B.scr:ArchivistTalk03") - ivar87 += 1 - goto LABEL4 -LABEL3: - ns.TellStory(ns.HumanMaleEatFood, "Wiz02B.scr:ArchivistTalk04") - ivar78 += 1 - goto LABEL4 -LABEL4: - return -} -func ArchivistMadEnd() { - ns.WayPointGroupOff(gvar149) - ns.WayPointGroupOn(gvar150) - ns.Frozen(obj101, false) - ns.CreatureIdle(obj101) - ns.Wander(obj101) -} -func OpenLibrarySecret1() { - ns.MoveWaypoint(wp18, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretWallWoodOpen, wp18) - ns.NoWallSound(true) - ns.ObjectOn(obj131) - ns.ObjectOn(obj132) - ns.WallOpen(ns.Wall(141, 99)) - ns.NoWallSound(false) - ns.ObjectGroupOn(gvar109) - SwapRoomCheck() -} -func CloseLibrarySecret1() { - if flag64 { - goto LABEL1 - } - ns.WallClose(ns.Wall(141, 99)) - flag64 = true -LABEL1: - return -} -func OpenClassSecretWalls() { - ns.WallGroupOpen(gvar141) - ns.UnlockDoor(obj121) - flag71 = true -} -func OpenSwapWalls() { - ns.WallGroupOpen(gvar140) -} -func CloseSpiderWalls() { - ivar90 += 1 - ns.WallGroupClose(gvar139) - flag65 = true - OpenSwapWalls() - if !(ns.CurrentHealth(obj102) > 0) { - goto LABEL1 - } - ns.CreatureIdle(obj102) -LABEL1: - if !(ns.CurrentHealth(obj103) > 0) { - goto LABEL2 - } - ns.CreatureIdle(obj103) -LABEL2: - if !(ns.CurrentHealth(obj104) > 0) { - goto LABEL3 - } - ns.CreatureIdle(obj104) -LABEL3: - return -} -func SpiderSwapCountDown() { - ivar90 -= 1 -} -func LibrarianTalkStart() { - ns.TellStory(ns.HumanMaleEatFood, "Wiz02B.scr:Librarian3") -} -func LibrarianTalkEnd() { - ns.CancelDialog(obj107) -} -func GiveLightBook() { - ns.Pickup(ns.GetHost(), obj126) -} -func CheckIfReturningToMap() { - flag67 = true - if ns.GetQuestStatus("FirstSwapComplete") != 1 { - goto LABEL1 - } - ns.ObjectOff(obj98) - ns.MoveObject(obj97, 4564, 4382) - ns.MoveObject(obj96, 4496, 4684) - ns.WayPointGroupOn(gvar148) - ns.Wander(obj96) - flag55 = true - flag56 = true - flag57 = true - flag58 = true - flag59 = false - flag60 = true - flag61 = true - flag62 = true - flag63 = true - ns.SetOwner(ns.GetHost(), obj97) - ns.SetOwner(ns.GetHost(), obj96) - ns.UnlockDoor(obj110) - ns.UnlockDoor(obj111) -LABEL1: - if ns.GetQuestStatus("MainReceptionistTalked") != 1 { - goto LABEL2 - } - if !(ns.IsLocked(obj110) && ns.IsLocked(obj111)) { - goto LABEL2 - } - ns.UnlockDoor(obj110) - ns.UnlockDoor(obj111) -LABEL2: - if ns.GetQuestStatus("SwapBookTaken") != 1 { - goto LABEL3 - } - ns.Delete(obj12) -LABEL3: - if ns.GetQuestStatus("LockLibraryGates") != 1 { - goto LABEL4 - } - ns.LockDoor(obj112) - ns.LockDoor(obj113) -LABEL4: - return -} -func FinalSwapRoomCheck() { - flag68 = true -} -func PlayerMadeFinalSwap() { - ivar91 += 1 -} -func FinalSwapCountDown() { - ivar91 -= 1 -} -func FrogRoomStuff() { - if !(flag56 == true && flag57 == true && flag59 == false && flag61 == false) { - goto LABEL1 - } - ns.LookAtObject(obj96, obj99) -LABEL1: - if !(flag59 == true && flag60 == false) { - goto LABEL2 - } - if ns.GetQuestStatus("FirstSwapComplete") == 1 { - goto LABEL2 - } - ns.Effect(ns.LIGHTNING, fvar40, fvar41, fvar42, fvar43) - ns.Effect(ns.LIGHTNING, fvar44, fvar48, fvar45, fvar49) - ns.MoveWaypoint(wp18, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - if ivar79 != 0 { - goto LABEL3 - } - ns.AudioEvent(ns.LightningBolt, wp18) - ivar79 += 2 - goto LABEL4 -LABEL3: - ivar79 += 2 -LABEL4: - if !(ivar79 > 8) { - goto LABEL5 - } - ivar79 = 0 -LABEL5: - if ivar80 != 0 { - goto LABEL6 - } - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(obj96), ns.GetObjectY(obj96), 0, 0) - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(obj97), ns.GetObjectY(obj97), 0, 0) - if !(ivar83 < 92) { - goto LABEL7 - } - if flag73 { - goto LABEL7 - } - ns.Chat(obj96, "Wiz02B.scr:LewisTalk03") - ns.Chat(obj97, "Wiz02B.scr:FrogTalk01") - flag73 = true -LABEL7: - if ivar83 != 92 { - goto LABEL8 - } - flag73 = false -LABEL8: - if !(ivar83 > 92 && ivar83 < 182) { - goto LABEL9 - } - if flag73 { - goto LABEL9 - } - ns.Chat(obj96, "Wiz02B.scr:FrogTalk01") - ns.Chat(obj97, "Wiz02B.scr:LewisTalk03") - flag73 = true -LABEL9: - ivar80 += 2 - goto LABEL10 -LABEL6: - ivar80 += 2 -LABEL10: - if !(ivar80 > 14) { - goto LABEL11 - } - ivar80 = 0 -LABEL11: - if !(fvar43 < 4333) { - goto LABEL12 - } - fvar41 = fvar37 - fvar43 = fvar39 - goto LABEL13 -LABEL12: - fvar41 -= 2 - fvar43 -= 2 -LABEL13: - if !(fvar49 < 4217) { - goto LABEL14 - } - fvar48 = fvar46 - fvar49 = fvar47 - goto LABEL15 -LABEL14: - fvar48 -= 2 - fvar49 -= 2 -LABEL15: - if ivar83 != 92 { - goto LABEL16 - } - fvar52 = ns.GetObjectX(obj97) - fvar53 = ns.GetObjectY(obj97) - fvar50 = ns.GetObjectX(obj96) - fvar51 = ns.GetObjectY(obj96) - ns.ObjectOff(obj98) - ns.Frozen(obj96, false) - ns.Frozen(obj97, false) - ns.MoveObject(obj96, fvar52, fvar53) - ns.MoveObject(obj97, fvar50, fvar51) - ns.CreatureGuard(obj97, ns.GetObjectX(obj97), ns.GetObjectY(obj97), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - ns.CreatureGuard(obj96, ns.GetObjectX(obj96), ns.GetObjectY(obj96), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) -LABEL16: - ivar83 += 2 - if !(ivar83 > 152) { - goto LABEL17 - } - flag60 = true - flag59 = false - ns.SetQuestStatus(1, "FirstSwapComplete") - flag73 = false - ns.SetDialog(obj97, ns.NEXT, FrogTalk1Start, FrogTalk1End) - ns.StartDialog(obj97, ns.GetHost()) - goto LABEL2 -LABEL17: - ns.FrameTimer(2, FrogRoomStuff) -LABEL2: - if !(flag58 == true && flag59 == true) { - goto LABEL18 - } - ns.Effect(ns.LIGHTNING, fvar40, fvar41, fvar42, fvar43) - ns.Effect(ns.LIGHTNING, fvar44, fvar48, fvar45, fvar49) - ns.MoveWaypoint(wp18, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - if ivar79 != 0 { - goto LABEL19 - } - ns.AudioEvent(ns.LightningBolt, wp18) - ivar79 += 2 - goto LABEL20 -LABEL19: - ivar79 += 2 -LABEL20: - if !(ivar79 > 8) { - goto LABEL21 - } - ivar79 = 0 -LABEL21: - if ivar80 != 0 { - goto LABEL22 - } - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(obj96), ns.GetObjectY(obj96), 0, 0) - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(obj97), ns.GetObjectY(obj97), 0, 0) - if !(ivar84 < 92) { - goto LABEL23 - } - if flag73 { - goto LABEL23 - } - ns.Chat(obj97, "Wiz02B.scr:LewisTalk03") - ns.Chat(obj96, "Wiz02B.scr:FrogTalk01") - flag73 = true -LABEL23: - if ivar84 != 92 { - goto LABEL24 - } - flag73 = false -LABEL24: - if !(ivar84 > 92 && ivar83 < 182) { - goto LABEL25 - } - if flag73 { - goto LABEL25 - } - ns.Chat(obj96, "Wiz02B.scr:FrogTalk01") - ns.Chat(obj97, "Wiz02B.scr:LewisTalk03") - flag73 = true -LABEL25: - ivar80 += 2 - goto LABEL26 -LABEL22: - ivar80 += 2 -LABEL26: - if !(ivar80 > 14) { - goto LABEL27 - } - ivar80 = 0 -LABEL27: - if !(fvar43 < 4333) { - goto LABEL28 - } - fvar41 = fvar37 - fvar43 = fvar39 - goto LABEL29 -LABEL28: - fvar41 -= 2 - fvar43 -= 2 -LABEL29: - if !(fvar49 < 4217) { - goto LABEL30 - } - fvar48 = fvar46 - fvar49 = fvar47 - goto LABEL31 -LABEL30: - fvar48 -= 2 - fvar49 -= 2 -LABEL31: - ivar84 += 2 - if !(ivar84 > 152) { - goto LABEL32 - } - flag61 = true - flag59 = false - ns.SetQuestStatus(1, "FirstReverseComplete") - goto LABEL18 -LABEL32: - ns.FrameTimer(2, FrogRoomStuff) -LABEL18: - if !(flag61 == true && flag63 == false) { - goto LABEL33 - } - LewisBookQuest() -LABEL33: - return -} -func FrogTalk1Start() { - ns.TellStory(ns.HumanMaleEatFood, "Wiz02B.scr:LewisTalk04") -} -func FrogTalk1End() { - ns.SetDialog(obj97, ns.NORMAL, FrogTalk2Start, FrogTalk2End) - ns.StartDialog(obj97, ns.GetHost()) -} -func FrogTalk2Start() { - ns.TellStory(ns.HumanMaleEatFood, "Wiz02B.scr:LewisTalk05") -} -func FrogTalk2End() { - ns.WideScreen(false) - ns.Frozen(ns.GetHost(), false) - flag58 = true - ns.CancelDialog(obj97) -} -func FrogTalk3Start() { - ns.TellStory(ns.HumanMaleEatFood, "Wiz02B.scr:LewisTalk06") -} -func FrogTalk3End() { - ns.SetDialog(obj97, ns.NEXT, FrogTalk4Start, FrogTalk4End) - ns.WayPointGroupOn(gvar148) - ns.Wander(obj96) - ns.StartDialog(obj97, ns.GetHost()) -} -func FrogTalk4Start() { - ns.TellStory(ns.HumanMaleEatFood, "Wiz02B.scr:LewisTalk07") -} -func FrogTalk4End() { - ns.SetDialog(obj97, ns.NORMAL, FrogTalk5Start, FrogTalk5End) - ns.StartDialog(obj97, ns.GetHost()) -} -func FrogTalk5Start() { - ns.TellStory(ns.HumanMaleEatFood, "Wiz02B.scr:LewisTalk08") -} -func FrogTalk5End() { - if flag75 { - goto LABEL1 - } - flag75 = true - ns.WideScreen(false) - ns.Frozen(ns.GetHost(), false) -LABEL1: - ns.SetDialog(obj97, ns.NORMAL, FrogTalk5Start, FrogTalk5End) -} -func TeacherBegin() { - ns.SetDialog(obj94, ns.NORMAL, TeacherTalkStart, TeacherTalkEnd) - ns.StartDialog(obj94, ns.GetHost()) -} -func TeacherTalkStart() { - ns.LookAtObject(obj94, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "Wiz02B.scr:TeacherTalk03") -} -func TeacherTalkEnd() { - ns.CancelDialog(obj94) -} -func MapSwitch() { - ns.MoveObject(ns.GetHost(), 4682, 5302) -} -func CreatureSetup() { - ns.SetOwner(ns.GetHost(), obj101) - ns.SetOwner(ns.GetHost(), obj96) - ns.SetOwner(ns.GetHost(), obj92) - ns.SetOwner(ns.GetHost(), obj97) - ns.SetOwner(ns.GetHost(), obj107) - ns.SetOwner(ns.GetHost(), obj95) - ns.SetOwner(ns.GetHost(), obj94) - LibrarySetup() -} -func TrapSpiderCheck() { - if !(ns.CurrentHealth(obj106) <= 0) { - goto LABEL1 - } - if !(ivar91 > 0) { - goto LABEL1 - } - ns.LookAtObject(obj106, ns.GetHost()) -LABEL1: - if !(ns.CurrentHealth(obj106) <= 0) { - goto LABEL2 - } - if !(ivar91 <= 0) { - goto LABEL2 - } - obj106 = ns.CreateObject("SmallAlbinoSpider", wp147) -LABEL2: - ns.FrameTimer(8, TrapSpiderCheck) -} -func SwapRoomCheck() { - if !(ns.CurrentHealth(obj105) > 0) { - goto LABEL1 - } - if !(ivar90 > 0) { - goto LABEL1 - } - ns.LookAtObject(obj105, ns.GetHost()) -LABEL1: - if !flag65 { - goto LABEL2 - } - if !(ns.CurrentHealth(obj105) <= 0) { - goto LABEL2 - } - if !(ivar90 > 0) { - goto LABEL2 - } - if gvar86 != 1 { - goto LABEL3 - } - obj105 = ns.CreateObject("SmallAlbinoSpider", wp145) - gvar86 = 2 - goto LABEL2 -LABEL3: - obj105 = ns.CreateObject("SmallAlbinoSpider", wp146) - gvar86 = 1 -LABEL2: - if ns.GetQuestStatus("SwapBookTaken") == 1 { - goto LABEL4 - } - if !(ivar90 <= 0) { - goto LABEL4 - } - ns.WallGroupOpen(gvar139) -LABEL4: - if ns.GetQuestStatus("SwapBookTaken") == 1 { - goto LABEL5 - } - ns.FrameTimer(15, SwapRoomCheck) -LABEL5: - return -} -func DropAmulet() { - gvar128 = ns.GetLastItem(ns.GetHost()) - for { - if gvar128 == 0 { - goto LABEL1 - } - gvar129 = ns.GetPreviousItem(gvar128) - if gvar128 != gvar10 { - goto LABEL2 - } - ns.Delete(gvar128) - LABEL2: - gvar128 = gvar129 - } -LABEL1: - ns.Blind() - ns.FrameTimer(60, MapSwitch) -} -func NoBubbles() { - ns.DestroyEveryChat() -} -func MapEntry() { - ns.UnBlind() - gvar10 = ns.Object("AmuletOfClarity") - gvar9 = ns.Object("Wiz02C:BookOfOblivion") - if ns.GetQuestStatus("InLetterboxMode") != 1 { - goto LABEL1 - } - ns.WideScreen(true) -LABEL1: - ns.Music(15, 100) - CheckIfReturningToMap() -} -func MapInitialize() { - obj92 = ns.Object("Main_Receptionist") - obj93 = ns.Object("Mystic") - obj95 = ns.Object("Horvath") - obj96 = ns.Object("Lewis") - obj97 = ns.Object("Frog") - obj98 = ns.Object("FrogMover") - obj99 = ns.Object("LewisFaceThis") - obj100 = ns.Object("LabEntrance") - obj101 = ns.Object("Zaris") - obj102 = ns.Object("BigSpider1") - obj103 = ns.Object("BigSpider2") - obj104 = ns.Object("BigSpider3") - gvar108 = ns.ObjectGroup("LibraryGroupA") - gvar109 = ns.ObjectGroup("LibraryGroupB") - obj130 = ns.Object("ElevatorChain") - obj110 = ns.Object("SDoor1") - obj111 = ns.Object("SDoor2") - obj112 = ns.Object("ArchiveGate1") - obj113 = ns.Object("ArchiveGate2") - obj114 = ns.Object("ArchiveDoor1") - obj135 = ns.Object("ArchiveDoorChain") - obj115 = ns.Object("SouthHallDoor1") - obj116 = ns.Object("SouthHallDoor2") - obj117 = ns.Object("SouthDoorUp1") - obj118 = ns.Object("SouthDoorUp2") - obj119 = ns.Object("NorthDoor1") - obj120 = ns.Object("NorthDoor2") - obj122 = ns.Object("VaultDoor") - obj121 = ns.Object("ClassDoor") - obj123 = ns.Object("BookCase1") - obj124 = ns.Object("BookCase2") - obj131 = ns.Object("Mover1") - obj132 = ns.Object("Mover2") - obj107 = ns.Object("Receptionist1") - obj125 = ns.Object("VaultKey") - obj126 = ns.Object("LightBook") - obj94 = ns.Object("Teacher") - obj12 = ns.Object("SwapBook") - obj133 = ns.Object("HorvathBookcaseMover1") - obj134 = ns.Object("HorvathBookcaseMover2") - gvar136 = ns.ObjectGroup("HecubahTriggers") - gvar137 = ns.ObjectGroup("SwapTriggers") - gvar140 = ns.WallGroup("SwapWalls") - gvar138 = ns.WallGroup("LabWalls") - gvar139 = ns.WallGroup("SpiderWalls") - gvar141 = ns.WallGroup("ClassSecretWalls") - gvar142 = ns.WallGroup("HorvathWalls") - wp18 = ns.Waypoint("PlayerSounds") - wp143 = ns.Waypoint("TeacherSounds") - wp144 = ns.Waypoint("LibraryExitWP") - wp145 = ns.Waypoint("SpiderWP1") - wp146 = ns.Waypoint("SpiderWP2") - wp147 = ns.Waypoint("TrapSpiderWP") - gvar148 = ns.WaypointGroup("FrogWaypoints") - gvar149 = ns.WaypointGroup("ArchivistToGateWP") - gvar150 = ns.WaypointGroup("ArchivistGoBackWP") - fvar40 = fvar36 - fvar41 = fvar37 - fvar42 = fvar38 - fvar43 = fvar39 - fvar48 = fvar46 - fvar49 = fvar47 - ns.WayPointGroupOff(gvar148) - ns.WayPointGroupOff(gvar149) - ns.WayPointGroupOff(gvar150) - ns.ObjectOn(obj98) - obj105 = ns.CreateObject("SmallAlbinoSpider", wp145) - obj106 = ns.CreateObject("SmallAlbinoSpider", wp147) - ns.LockDoor(obj100) - ns.LockDoor(obj110) - ns.LockDoor(obj111) - ns.LockDoor(obj115) - ns.LockDoor(obj116) - ns.LockDoor(obj117) - ns.LockDoor(obj118) - ns.LockDoor(obj119) - ns.LockDoor(obj120) - ns.LockDoor(obj121) - ns.LockDoor(obj112) - ns.LockDoor(obj113) - if ns.GetQuestStatus("MainReceptionistTalked") == 1 { - goto LABEL1 - } - ns.SetQuestStatus(0, "MainReceptionistTalked") - ns.SetDialog(obj92, ns.NORMAL, MainReceptionistGreetingStart, MainReceptionistGreetingEnd) -LABEL1: - ns.SetDialog(obj107, ns.NORMAL, LibrarianTalkStart, LibrarianTalkEnd) - ns.SetDialog(obj96, ns.NORMAL, LewisIntroStart, LewisIntroEnd) - if ns.GetQuestStatus("HorvathGaveAmuletQuest") != 1 { - goto LABEL2 - } - ns.SetDialog(obj95, ns.NORMAL, HorvathWaitingStart, HorvathWaitingEnd) - goto LABEL3 -LABEL2: - ns.SetDialog(obj95, ns.NEXT, HorvathGivesTaskStart, HorvathGivesTaskEnd) -LABEL3: - ns.StoryPic(obj92, "WizardGuard1Pic") - ns.StoryPic(obj96, "WizardGuard2Pic") - ns.StoryPic(obj101, "WizardGuard1Pic") - ns.StoryPic(obj97, "FrogPic") - ns.StoryPic(obj94, "WizardGuard2Pic") - ns.StoryPic(obj95, "HorvathPic") - ns.ObjectGroupOff(gvar108) - ns.ObjectGroupOff(gvar109) - ns.FrameTimer(1, CreatureSetup) - CheckIfReturningToMap() -} -func PlayerDeath() { - ns.DeathScreen(2) -} -func OnEvent(typ string) { - switch typ { - case "MapEntry": - MapEntry() - case "MapInitialize": - MapInitialize() - case "PlayerDeath": - PlayerDeath() - } -} diff --git a/examples/wiz02c/dummy_test.go b/examples/wiz02c/dummy_test.go deleted file mode 100644 index 2865203..0000000 --- a/examples/wiz02c/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package wiz02c - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/wiz02c/wiz02c.go b/examples/wiz02c/wiz02c.go deleted file mode 100644 index 7b09945..0000000 --- a/examples/wiz02c/wiz02c.go +++ /dev/null @@ -1,668 +0,0 @@ -package wiz02c - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 ns.ObjectID - obj5 ns.ObjectID - obj6 ns.ObjectID - obj7 ns.ObjectID - obj8 ns.ObjectID - obj9 ns.ObjectID - obj10 ns.ObjectID - obj11 ns.ObjectID - obj12 ns.ObjectID - obj13 ns.ObjectID - obj14 ns.ObjectID - obj15 ns.ObjectID - obj16 ns.ObjectID - obj17 ns.ObjectID - obj18 ns.ObjectID - obj19 ns.ObjectID - gvar20 ns.ObjectGroupID - gvar21 ns.WallGroupID - gvar22 ns.WallGroupID - gvar23 ns.WallGroupID - gvar24 ns.WallGroupID - gvar25 ns.WallGroupID - gvar26 ns.WallGroupID - gvar27 ns.WallGroupID - gvar28 ns.WallGroupID - gvar29 ns.WallGroupID - gvar30 ns.WallGroupID - flag31 bool - flag32 bool - flag33 bool - flag34 bool - flag35 bool - flag36 bool - flag37 bool - flag38 bool - flag39 bool - flag40 bool - wp41 ns.WaypointID - wp42 ns.WaypointID - wp43 ns.WaypointID - obj44 ns.ObjectID - obj45 ns.ObjectID - obj46 ns.ObjectID - obj47 ns.ObjectID - obj48 ns.ObjectID - gvar49 ns.ObjectGroupID - gvar50 ns.ObjectGroupID - gvar51 ns.ObjectGroupID - flag52 bool - flag53 bool - wp54 ns.WaypointID - wp55 ns.WaypointID - wp56 ns.WaypointID - wp57 ns.WaypointID - obj58 ns.ObjectID - obj59 ns.ObjectID - obj60 ns.ObjectID - obj61 ns.ObjectID - obj62 ns.ObjectID - obj63 ns.ObjectID - obj64 ns.ObjectID - obj65 ns.ObjectID - obj66 ns.ObjectID - gvar67 ns.WallGroupID - gvar68 ns.WallGroupID - gvar69 ns.WallGroupID - gvar70 ns.WallGroupID - gvar71 ns.WallGroupID - gvar72 ns.WallGroupID - gvar73 ns.WallGroupID - flag74 bool - flag75 bool - flag76 bool - flag77 bool - flag78 bool - flag79 bool - flag80 bool - flag81 bool - flag82 bool - flag83 bool - flag84 bool - fvar85 float32 - fvar86 float32 -) - -func init() { - flag31 = false - flag32 = false - flag33 = false - flag34 = false - flag35 = false - flag36 = false - flag37 = false - flag38 = false - flag39 = false - flag40 = false - flag52 = false - flag53 = false - flag74 = false - flag75 = false - flag76 = false - flag77 = false - flag78 = false - flag79 = false - flag80 = false - flag81 = false - flag82 = true - flag83 = false - flag84 = false -} -func BookcaseSetup() { - obj4 = ns.Object("Bookcase1AMover") - obj5 = ns.Object("Bookcase1BMover") - obj6 = ns.Object("Bookcase2AMover") - obj7 = ns.Object("Bookcase2BMover") - obj8 = ns.Object("Bookcase3AMover") - obj9 = ns.Object("Bookcase3BMover") - obj10 = ns.Object("Bookcase4AMover") - obj11 = ns.Object("Bookcase4BMover") - obj12 = ns.Object("Bookcase5AMover") - obj13 = ns.Object("Bookcase5BMover") - obj14 = ns.Object("Bookcase6AMover") - obj15 = ns.Object("Bookcase7AMover") - obj16 = ns.Object("Bookcase7BMover") - obj17 = ns.Object("Orb1Mover") - obj18 = ns.Object("Orb1BookcaseMover") - gvar20 = ns.ObjectGroup("CreatureGroup1") - gvar21 = ns.WallGroup("SecretWalls1") - gvar22 = ns.WallGroup("SecretWalls2") - gvar23 = ns.WallGroup("SecretWalls3") - gvar24 = ns.WallGroup("SecretWalls4") - gvar25 = ns.WallGroup("SecretWalls5") - gvar26 = ns.WallGroup("SecretWalls6") - gvar27 = ns.WallGroup("SecretWalls7") - gvar28 = ns.WallGroup("SecretWalls10") - gvar29 = ns.WallGroup("BreakableWalls1") - gvar30 = ns.WallGroup("Orb1Walls") - ns.ObjectOn(obj17) -} -func ActivateBookcase1() { - ns.ObjectOff(ns.GetTrigger()) - ns.NoWallSound(true) - ns.MoveWaypoint(wp42, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretWallWoodOpen, wp42) - ns.ObjectOn(obj4) - ns.ObjectOn(obj5) - ns.WallGroupOpen(gvar21) - ns.NoWallSound(false) - ns.WallGroupBreak(gvar29) -} -func ActivateBookcase2() { - ns.ObjectOff(ns.GetTrigger()) - ns.NoWallSound(true) - ns.MoveWaypoint(wp42, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretWallWoodOpen, wp42) - ns.ObjectOn(obj6) - ns.ObjectOn(obj7) - ns.WallGroupOpen(gvar22) - ns.NoWallSound(false) -} -func ActivateBookcase3() { - ns.ObjectOff(ns.GetTrigger()) - ns.NoWallSound(true) - ns.MoveWaypoint(wp42, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretWallWoodOpen, wp42) - ns.ObjectOn(obj8) - ns.ObjectOn(obj9) - ns.WallGroupOpen(gvar23) - ns.NoWallSound(false) -} -func ActivateBookcase4() { - ns.ObjectOff(ns.GetTrigger()) - ns.NoWallSound(true) - ns.MoveWaypoint(wp42, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretWallWoodOpen, wp42) - ns.ObjectOn(obj10) - ns.ObjectOn(obj11) - ns.WallGroupOpen(gvar24) - ns.NoWallSound(false) -} -func ActivateBookcase5() { - ns.ObjectOff(ns.GetTrigger()) - ns.NoWallSound(true) - ns.MoveWaypoint(wp42, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretWallWoodOpen, wp42) - ns.ObjectOn(obj12) - ns.ObjectOn(obj13) - ns.WallGroupOpen(gvar25) - ns.NoWallSound(false) - if flag32 { - goto LABEL1 - } - flag32 = true - ns.PauseObject(ns.GetCaller(), 30) - ns.MoveWaypoint(wp42, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.NecromancerTaunt, wp42) -LABEL1: - return -} -func ActivateBookcase6() { - ns.ObjectOff(ns.GetTrigger()) - ns.NoWallSound(true) - ns.MoveWaypoint(wp42, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretWallWoodOpen, wp42) - ns.ObjectOn(obj14) - ns.WallGroupOpen(gvar26) - ns.NoWallSound(false) -} -func ActivateBookcase7() { - ns.ObjectOff(ns.GetTrigger()) - ns.NoWallSound(true) - ns.MoveWaypoint(wp42, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretWallWoodOpen, wp42) - ns.ObjectOn(obj15) - ns.ObjectOn(obj16) - ns.WallGroupOpen(gvar27) - ns.NoWallSound(false) -} -func OpenOrb1Bookcase() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.NoWallSound(true) - ns.MoveWaypoint(wp42, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretWallWoodOpen, wp42) - ns.WallGroupOpen(gvar30) - ns.ObjectOn(obj18) - ns.NoWallSound(false) -LABEL1: - return -} -func Orb1Secret() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.MoveWaypoint(wp43, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretFound, wp43) - ns.GiveXp(ns.GetHost(), 50) - ns.PrintToAll("GeneralPrint:SecretFound") -LABEL1: - return -} -func OpenWalls() { - ns.WallGroupOpen(gvar28) -} -func CloseWalls() { - ns.WallGroupClose(gvar28) -} -func SetPieceSetup() { - obj19 = ns.Object("Necromancer") - obj45 = ns.Object("NecroTemp") - obj48 = ns.Object("ThePit") - gvar50 = ns.ObjectGroup("Piece1Triggers") - gvar51 = ns.ObjectGroup("Piece2Triggers") - gvar49 = ns.ObjectGroup("NecroRunTriggers") - wp54 = ns.Waypoint("NecroWP1") - wp41 = ns.Waypoint("NecroExitWP1") - wp55 = ns.Waypoint("SummonWP1") - wp56 = ns.Waypoint("SummonWP2") - wp57 = ns.Waypoint("NecroPitWP") - wp42 = ns.Waypoint("PlayerSounds") - ns.StoryPic(obj19, "NecromancerPic") - ns.FrameTimer(1, DisableStuff) -} -func InitScript() { - obj58 = ns.Object("StatueN") - obj59 = ns.Object("StatueS") - obj60 = ns.Object("StatueE") - obj61 = ns.Object("StatueW") - obj62 = ns.Object("StatueTriggerN") - obj64 = ns.Object("StatueTriggerE") - obj63 = ns.Object("StatueTriggerW") - obj65 = ns.Object("WallLight1") - obj66 = ns.Object("WallLight2") - gvar67 = ns.WallGroup("SpikeWalls1") - gvar68 = ns.WallGroup("SpikeWalls2") - gvar69 = ns.WallGroup("StatueWalls") - gvar70 = ns.WallGroup("EastWalls") - gvar71 = ns.WallGroup("EastExitWalls") - gvar72 = ns.WallGroup("WestWalls") - gvar73 = ns.WallGroup("WestExitWalls") - fvar85 = ns.GetObjectX(obj59) - fvar86 = ns.GetObjectY(obj59) -} -func LastSetup() { - ns.ObjectGroupOff(gvar20) -} -func MapEntry() { - ns.UnBlind() -} -func MapInitialize() { - obj44 = ns.Object("BookOfOblivion") - wp43 = ns.Waypoint("SecretSounds") - BookcaseSetup() - SetPieceSetup() - InitScript() - ns.FrameTimer(1, LastSetup) -} -func PlayerDeath() { - ns.DeathScreen(2) -} -func DisableStuff() { - ns.ObjectOff(obj48) -} -func Piece1Start() { - ns.ObjectGroupOff(gvar50) - ns.WideScreen(true) - ns.Frozen(ns.GetHost(), true) - ns.LookAtObject(ns.GetHost(), ns.ObjectID(wp54)) // FIXME - ns.MoveObject(obj19, 1214, 4744) - ns.Move(obj19, wp54) -} -func NecroSeePlayer() { - if !ns.IsCaller(obj19) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.Frozen(obj19, true) - ns.CreatureIdle(obj19) - ns.LookAtObject(obj19, ns.GetHost()) - ns.Chat(obj19, "Wiz02:Necromancer02") - ns.SecondTimer(2, SummonSpiders) -LABEL1: - return -} -func SummonSpiders() { - ns.CastSpellObjectLocation(ns.SPELL_SUMMON_SPIDER, obj19, ns.GetWaypointX(wp55), ns.GetWaypointY(wp55)) - ns.CastSpellLocationLocation(ns.SPELL_SUMMON_SPIDER, ns.GetObjectX(obj19), ns.GetObjectY(obj19), ns.GetWaypointX(wp56), ns.GetWaypointY(wp56)) -} -func Spider1Trigger() { - if ns.IsCaller(obj19) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - obj46 = ns.GetCaller() - ns.Frozen(obj46, true) - ns.CreatureIdle(obj46) - ns.LookAtObject(obj46, ns.GetHost()) - ns.Frozen(obj19, false) - ns.SetOwner(obj19, obj46) - ns.Move(obj19, wp41) -LABEL1: - return -} -func Spider2Trigger() { - if ns.IsCaller(obj19) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - obj47 = ns.GetCaller() - ns.Frozen(obj47, true) - ns.CreatureIdle(obj47) - ns.LookAtObject(obj47, ns.GetHost()) - ns.Frozen(obj19, false) - ns.SetOwner(obj19, obj47) - ns.Move(obj19, wp41) -LABEL1: - return -} -func SetPiece1Over() { - ns.ObjectOff(ns.GetTrigger()) - ns.WideScreen(false) - ns.Frozen(ns.GetHost(), false) - ns.Frozen(obj46, false) - ns.Frozen(obj47, false) - ns.SetOwner(obj46, obj47) - ns.MoveObject(obj19, 3507, 3496) - ns.CreatureIdle(obj19) - ns.ObjectOff(obj19) - ns.ObjectGroupOn(gvar20) -} -func PlayerFollowCheck() { - ns.ObjectGroupOff(gvar51) - ns.MoveObject(obj19, 3874, 3383) - flag52 = true - ns.WideScreen(true) - ns.Frozen(ns.GetHost(), true) - ns.CreatureIdle(ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj19) - ns.ObjectOn(obj19) - ns.FrameTimer(1, NecroGo) -} -func NecroRun() { - ns.ObjectGroupOff(gvar49) - ns.ObjectOn(obj19) - ns.FrameTimer(1, NecroGo) -} -func NecroGo() { - ns.Wander(obj19) -} -func Piece2Start() { - if !flag52 { - goto LABEL1 - } - if !ns.IsCaller(obj19) { - goto LABEL2 - } - ns.ObjectOff(ns.GetTrigger()) - ns.Frozen(obj19, true) - ns.CreatureIdle(obj19) - ns.LookAtObject(obj19, ns.GetHost()) - ns.SetDialog(obj19, ns.NORMAL, NecroTauntStart, NecroTauntEnd) - ns.StartDialog(obj19, ns.GetHost()) -LABEL2: - goto LABEL3 -LABEL1: - ns.FrameTimer(1, Piece2Start) -LABEL3: - return -} -func NecroWalkOnPit() { - ns.Frozen(obj19, false) - ns.Move(obj19, wp57) -} -func NecroScream1() { - if flag53 { - goto LABEL1 - } - if !ns.IsCaller(obj19) { - goto LABEL1 - } - flag53 = true - ns.MoveWaypoint(wp42, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.WallDestroyed, wp42) - ns.Chat(obj19, "Wiz02:Necromancer05") -LABEL1: - return -} -func NecroScream2() { - if !ns.IsCaller(obj19) { - goto LABEL1 - } - ns.DestroyEveryChat() - ns.AudioEvent(ns.TrollRecognize, wp42) - ns.MoveObject(obj19, 3935, 2442) - ns.Chat(obj48, "Wiz02:Necromancer06") - ns.WideScreen(false) - ns.Frozen(ns.GetHost(), false) - ns.FrameTimer(1, KillNecroTemp) -LABEL1: - return -} -func NecroTauntStart() { - ns.TellStory(ns.HumanMaleEatFood, "Wiz02:Necromancer04") -} -func NecroTauntEnd() { - ns.CancelDialog(obj19) - NecroWalkOnPit() -} -func CheckForBook() { - ns.JournalEdit(ns.GetHost(), "GetNecromancer", 4) - ns.MoveWaypoint(wp42, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.FlagCapture, wp42) - ns.GiveXp(ns.GetHost(), 250) - ns.JournalEntry(ns.GetHost(), "ArchivistBook", 2) - ns.PrintToAll("Con01a:NewJournalEntry") -} -func KillNecroTemp() { - ns.Damage(obj45, 0, 500, 0) -} -func OpenSpikeWalls1() { - if flag74 { - goto LABEL1 - } - flag74 = true - ns.WallGroupOpen(gvar67) - ns.MoveObject(obj65, 1871, 3998) - goto LABEL2 -LABEL1: - ns.WallGroupOpen(gvar68) - ns.MoveObject(obj66, 1818, 3928) -LABEL2: - return -} -func OpenSpikeWalls2() { - if flag74 { - goto LABEL1 - } - flag74 = true - ns.WallGroupOpen(gvar67) - ns.MoveObject(obj65, 1871, 3998) - goto LABEL2 -LABEL1: - ns.WallGroupOpen(gvar68) - ns.MoveObject(obj66, 1818, 3928) -LABEL2: - return -} -func TriggerNHit() { - flag76 = true - ns.MoveObject(obj59, 1957, 3768) - ns.MoveObject(obj61, 1957, 3768) - ns.MoveObject(obj60, 1957, 3768) - ns.MoveObject(obj58, fvar85, fvar86) - ns.WallGroupOpen(gvar69) - ns.WallGroupClose(gvar72) - ns.WallGroupClose(gvar70) -} -func TriggerEHit() { - flag77 = true - ns.MoveObject(obj59, 1957, 3768) - ns.MoveObject(obj61, 1957, 3768) - ns.MoveObject(obj58, 1957, 3768) - ns.MoveObject(obj60, fvar85, fvar86) - ns.WallGroupOpen(gvar70) - ns.WallGroupClose(gvar69) - ns.WallGroupClose(gvar72) -} -func TriggerWHit() { - flag78 = true - ns.MoveObject(obj59, 1957, 3768) - ns.MoveObject(obj60, 1957, 3768) - ns.MoveObject(obj58, 1957, 3768) - ns.MoveObject(obj61, fvar85, fvar86) - ns.WallGroupOpen(gvar72) - ns.WallGroupClose(gvar70) - ns.WallGroupClose(gvar69) -} -func TriggerNRelease() { - flag76 = false - if !flag79 { - goto LABEL1 - } - flag79 = false - ns.WallGroupClose(gvar69) - ns.WallGroupClose(gvar70) - ns.WallGroupClose(gvar72) -LABEL1: - return -} -func TriggerWRelease() { - flag78 = false - if !flag81 { - goto LABEL1 - } - flag81 = false - ns.WallGroupClose(gvar72) - ns.WallGroupClose(gvar69) - ns.WallGroupClose(gvar70) -LABEL1: - return -} -func TriggerERelease() { - flag77 = false - if !flag80 { - goto LABEL1 - } - flag79 = false - ns.WallGroupClose(gvar70) - ns.WallGroupClose(gvar69) - ns.WallGroupClose(gvar72) -LABEL1: - return -} -func OpenEastExitWalls() { - ns.WallGroupOpen(gvar71) -} -func CloseEastExitWalls() { - ns.WallGroupClose(gvar71) -} -func OpenWestExitWalls() { - ns.WallGroupOpen(gvar73) -} -func CloseWestExitWalls() { - ns.WallGroupClose(gvar73) -} -func OpenPuzzleWalls() { - ns.WallGroupOpen(gvar69) - ns.WallGroupOpen(gvar67) - ns.WallGroupOpen(gvar68) -} -func SecretXP1() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - if flag83 { - goto LABEL1 - } - flag83 = true - ns.MoveWaypoint(wp43, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretFound, wp43) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 100) -LABEL1: - return -} -func SecretXP2() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - if flag84 { - goto LABEL1 - } - flag84 = true - ns.MoveWaypoint(wp43, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretFound, wp43) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 100) -LABEL1: - return -} -func HallSecret1() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.MoveWaypoint(wp43, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretFound, wp43) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 25) -LABEL1: - return -} -func HallSecret2() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.MoveWaypoint(wp43, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretFound, wp43) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 25) -LABEL1: - return -} -func SuperSecretXP() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.MoveWaypoint(wp43, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretFound, wp43) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 150) -LABEL1: - return -} -func SuperSecret2XP() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.MoveWaypoint(wp43, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretFound, wp43) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 50) -LABEL1: - return -} -func OnEvent(typ string) { - switch typ { - case "MapEntry": - MapEntry() - case "MapInitialize": - MapInitialize() - case "PlayerDeath": - PlayerDeath() - } -} diff --git a/examples/wiz03a/dummy_test.go b/examples/wiz03a/dummy_test.go deleted file mode 100644 index 8ab7110..0000000 --- a/examples/wiz03a/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package wiz03a - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/wiz03a/wiz03a.go b/examples/wiz03a/wiz03a.go deleted file mode 100644 index 48986ba..0000000 --- a/examples/wiz03a/wiz03a.go +++ /dev/null @@ -1,480 +0,0 @@ -package wiz03a - -import ( - "strconv" - - "github.com/noxworld-dev/noxscript/ns/v3" -) - -var ( - obj4 ns.ObjectID - wp5 ns.WaypointID - wp6 [70]ns.WaypointID - obj7 ns.ObjectID - obj8 ns.ObjectID - gvar9 ns.ObjectGroupID - obj10 ns.ObjectID - obj11 ns.ObjectID - obj12 ns.ObjectID - obj13 ns.ObjectID - wp14 ns.WaypointID - obj15 ns.ObjectID - obj16 ns.ObjectID - gvar17 ns.WallGroupID - gvar18 int - gvar19 int - gvar20 int - gvar21 int - gvar22 int - wp23 ns.WaypointID - wp24 ns.WaypointID - obj25 ns.ObjectID - wp26 ns.WaypointID - wp27 ns.WaypointID - wp28 ns.WaypointID - wp29 ns.WaypointID - obj30 ns.ObjectID - gvar31 ns.ObjectID - gvar32 ns.ObjectID - gvar33 ns.ObjectGroupID - obj34 ns.ObjectID - obj35 ns.ObjectID - gvar36 ns.ObjectGroupID - gvar37 ns.ObjectGroupID - gvar38 ns.WallGroupID - wp39 ns.WaypointID - gvar40 int - gvar41 int - gvar42 int - obj43 ns.ObjectID - gvar44 ns.ObjectGroupID - obj45 ns.ObjectID - gvar46 ns.ObjectGroupID - gvar47 int - gvar48 [6]int - gvar49 int - gvar50 int -) - -func init() { - gvar18 = 0 - gvar19 = 1 - gvar20 = 2 - gvar21 = 3 - gvar22 = gvar18 - gvar40 = 0 - gvar41 = 1 - gvar42 = gvar40 -} -func ArcherIdle() { - ns.AggressionLevel(obj4, 1) - ns.CreatureIdle(obj4) -} -func MissileAttackBarrel() { - var ( - v0 float32 - v1 float32 - ) - v0 = ns.GetWaypointX(wp5) - v1 = ns.GetWaypointY(wp5) - ns.HitFarLocation(obj4, v0, v1) -} -func AttackBarrel() { - ns.FrameTimer(3, MissileAttackBarrel) -} -func FlamesCreate() { - var ( - v0 int - v1 int - ) - v0 = 0 - for { - if !(v0 < 70) { - goto LABEL1 - } - v1 = v0 % 3 - if v1 == 0 { - goto LABEL2 - } - if v1 == 1 { - goto LABEL3 - } - if v1 == 2 { - goto LABEL4 - } - goto LABEL5 - LABEL2: - ns.CreateObject("MediumFlame", wp6[v0]) - goto LABEL5 - LABEL3: - ns.CreateObject("Flame", wp6[v0]) - goto LABEL5 - LABEL4: - ns.CreateObject("SmallFlame", wp6[v0]) - goto LABEL5 - LABEL5: - v0 += 1 - } -LABEL1: - return -} -func PlayerDeath() { - ns.DeathScreen(3) -} -func HorvathTalkStart() { - var v0 int - if !ns.HasItem(ns.GetHost(), ns.Object("Wiz03b:AmuletofTeleportation")) { - goto LABEL1 - } - gvar22 = gvar21 -LABEL1: - v0 = gvar22 - if v0 == gvar18 { - goto LABEL2 - } - if v0 == gvar19 { - goto LABEL3 - } - if v0 == gvar20 { - goto LABEL4 - } - if v0 == gvar21 { - goto LABEL5 - } - goto LABEL6 -LABEL2: - ns.TellStory(ns.SwordsmanHurt, "Wiz03a:HorvathIntro") - goto LABEL6 -LABEL3: - ns.TellStory(ns.SwordsmanHurt, "Wiz03a:HorvathPre") - goto LABEL6 -LABEL4: - ns.TellStory(ns.SwordsmanHurt, "Wiz03a:HorvathPre2") - goto LABEL6 -LABEL5: - ns.TellStory(ns.SwordsmanHurt, "Wiz03a:HorvathFinish") - goto LABEL6 - ns.Blind() - ns.FrameTimer(60, PlayerExit) - goto LABEL6 -LABEL6: - return -} -func HorvathTalkEnd() { - var v0 int - v0 = gvar22 - if v0 == gvar18 { - goto LABEL1 - } - if v0 == gvar19 { - goto LABEL2 - } - if v0 == gvar21 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - ns.ObjectOn(obj16) - ns.JournalEntry(ns.GetHost(), "Wiz03aGetAmulet", 2) - ns.Print("Con01a:NewJournalEntry") - gvar22 = gvar19 - goto LABEL4 -LABEL2: - gvar22 = gvar20 - goto LABEL4 -LABEL3: - ns.Frozen(ns.GetHost(), true) - ns.JournalEdit(ns.GetHost(), "Journal:Wiz03aGetAmulet", 4) - gvar31 = ns.GetLastItem(ns.GetHost()) - for { - if gvar31 == 0 { - goto LABEL5 - } - gvar32 = ns.GetPreviousItem(gvar31) - if gvar31 != ns.Object("Wiz03b:AmuletofTeleportation") { - goto LABEL6 - } - ns.Delete(gvar31) - LABEL6: - gvar31 = gvar32 - } -LABEL5: - ns.CancelDialog(obj10) - ns.Blind() - ns.FrameTimer(60, PlayerExit) - goto LABEL4 -LABEL4: - return -} -func AirshipCaptainAppear() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - ) - v0 = ns.GetWaypointX(wp26) - v1 = ns.GetWaypointY(wp26) - v2 = ns.GetWaypointX(wp27) - v3 = ns.GetWaypointY(wp27) - ns.MoveObject(obj25, v0, v1) - ns.CreatureGuard(obj25, v0, v1, v2, v3, 500) -} -func PlayerExit() { - var ( - v0 float32 - v1 float32 - ) - v0 = ns.GetWaypointX(wp28) - v1 = ns.GetWaypointY(wp28) - ns.MoveObject(ns.GetHost(), v0, v1) - ns.Frozen(ns.GetHost(), false) -} -func MissionStart() { - ns.ObjectOff(obj8) -} -func BrennethSpeaks() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - ) - v0 = ns.GetObjectX(obj35) - v1 = ns.GetObjectY(obj35) - v2 = ns.GetObjectX(ns.GetHost()) - v3 = ns.GetObjectY(ns.GetHost()) - if !(ns.Distance(v0, v1, v2, v3) < 230) { - goto LABEL1 - } - ns.LookAtObject(obj35, ns.GetHost()) - ns.StartDialog(obj35, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "Wiz03a:BrennethExplains") - goto LABEL2 -LABEL1: - ns.FrameTimer(30, BrennethSpeaks) -LABEL2: - return -} -func BrennethTalkStart() { - var v0 int - v0 = gvar42 - if v0 == gvar41 { - goto LABEL1 - } - goto LABEL2 -LABEL1: - ns.LookAtObject(obj35, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "Wiz03a:BrennethEnd") - goto LABEL2 -LABEL2: - return -} -func BrennethTalkEnd() { - var v0 int - v0 = gvar42 - if v0 == gvar40 { - goto LABEL1 - } - if v0 == gvar41 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.Move(obj35, wp39) - ns.CreatureGuard(obj35, 4938, 1032, 4923, 1078, 500) - gvar42 = gvar41 - goto LABEL3 -LABEL2: - goto LABEL3 -LABEL3: - return -} -func MapInitialize() { - var v0 int - obj8 = ns.Object("MissionTrig") - obj10 = ns.Object("Horvath") - gvar9 = ns.ObjectGroup("HorvathTrigGroup") - ns.StoryPic(obj10, "HorvathPic") - ns.SetDialog(obj10, ns.NORMAL, HorvathTalkStart, HorvathTalkEnd) - obj11 = ns.Object("HorvathDoor1") - obj12 = ns.Object("HorvathDoor2") - ns.SetOwner(ns.GetHost(), obj10) - obj13 = ns.Object("HorvathBookcaseMover1") - obj15 = ns.Object("HorvathBookcaseMover2") - obj16 = ns.Object("HorvathBookcaseTrigger") - ns.LockDoor(obj11) - ns.LockDoor(obj12) - wp23 = ns.Waypoint("JournalSoundWP") - wp14 = ns.Waypoint("HorvathBookcase1WP") - obj25 = ns.Object("Airship_Captain") - wp26 = ns.Waypoint("AirshipCaptainWP") - wp27 = ns.Waypoint("AirshipCaptainLook") - ns.SetOwner(ns.GetHost(), obj25) - gvar38 = ns.WallGroup("InvisibleWallGroup") - gvar33 = ns.ObjectGroup("ElevatorTrigGroup") - obj34 = ns.Object("CellarElevator") - obj35 = ns.Object("Brenneth") - gvar36 = ns.ObjectGroup("BrennethGroup") - ns.GroupSetOwner(ns.GetHost(), gvar36) - ns.StoryPic(obj35, "MalePic8") - ns.SetDialog(obj35, ns.NORMAL, BrennethTalkStart, BrennethTalkEnd) - wp39 = ns.Waypoint("BrennethWP") - gvar37 = ns.ObjectGroup("GearGroup") - obj43 = ns.Object("Bandit01") - ns.Damage(obj43, 0, 100, 5) - gvar46 = ns.ObjectGroup("MonsterGroup1") - ns.ObjectGroupOff(gvar46) - gvar44 = ns.ObjectGroup("MissionExitGroup") - obj45 = ns.Object("Wiz03b:AmuletofTeleportation") - gvar17 = ns.WallGroup("HorvathWallGroup") - wp28 = ns.Waypoint("ExitWP") - wp29 = ns.Waypoint("Wiz03bExitWP") - obj30 = ns.Object("ExitTrig") - obj4 = ns.Object("Archer01") - wp5 = ns.Waypoint("Barrel1WP") - obj7 = ns.Object("Barrel01") - wp24 = ns.Waypoint("Secret01WP") - ns.StartupScreen(3) - v0 = 0 - for { - if !(v0 < 70) { - goto LABEL1 - } - wp6[v0] = ns.Waypoint(strconv.Itoa(v0+1) + "WP") - v0 += 1 - } -LABEL1: - return -} -func MapEntry() { - ns.UnBlind() - ns.ObjectOn(obj30) -} -func HorvathPickup() { - ns.Pickup(obj10, ns.Object("Wiz03b:AmuletofTeleportation")) -} -func OpenHorvathWalls() { - ns.ObjectOff(ns.GetTrigger()) - ns.ObjectOn(obj13) - ns.ObjectOn(obj15) - ns.WallGroupOpen(gvar17) -} -func QuestSwitch() { - if !ns.HasItem(ns.GetHost(), ns.Object("Wiz03b:AmuletofTeleportation")) { - goto LABEL1 - } - ns.MoveObject(obj35, 5457, 1685) - ns.ObjectGroupOn(gvar37) - ns.ObjectOn(obj34) - AirshipCaptainAppear() -LABEL1: - return -} -func QuestXP() { - if !ns.HasItem(ns.GetHost(), ns.Object("Wiz03b:AmuletofTeleportation")) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.GiveXp(ns.GetHost(), 1000) - ns.AudioEvent(ns.FlagDrop, wp23) - ns.Music(0, 100) -LABEL1: - return -} -func DisableElevator() { - ns.NoWallSound(true) - ns.WallGroupOpen(gvar38) - ns.NoWallSound(false) - ns.ObjectOff(obj34) - ns.ObjectGroupOff(gvar37) - ns.ObjectGroupOff(gvar33) - ns.CreatureFollow(obj35, ns.GetHost()) - ns.AudioEvent(ns.WoodenArmorBreak, wp39) - ns.AudioEvent(ns.MetalArmorBreak, wp39) - ns.AudioEvent(ns.WallDestroyed, wp39) - ns.AudioEvent(ns.LightningWand, wp39) - ns.Effect(ns.SMOKE_BLAST, 4953, 1047, 4953, 1047) - ns.Effect(ns.BLUE_SPARKS, 4953, 1047, 4953, 1047) - BrennethSpeaks() -} -func MonsterGoHome() { - r1 := ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) - if !r1 { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func MonsterGroup1Enable() { - ns.ObjectGroupOn(gvar46) -} -func PlayerWiz03bExit() { - var ( - v0 float32 - v1 float32 - ) - v0 = ns.GetWaypointX(wp29) - v1 = ns.GetWaypointY(wp29) - ns.MoveObject(ns.GetHost(), v0, v1) -} -func FreezePlayer() { - ns.Frozen(ns.GetHost(), true) -} -func GotoWiz03b() { - ns.ObjectOff(obj30) - ns.Blind() - ns.FrameTimer(30, FreezePlayer) - ns.FrameTimer(60, PlayerWiz03bExit) -} -func QuestCheck() { - if !ns.HasItem(ns.GetHost(), ns.Object("Wiz03b:AmuletofTeleportation")) { - goto LABEL1 - } - ns.Chat(ns.GetHost(), "I got it!") -LABEL1: - return -} -func Secret50XP() { - ns.GiveXp(ns.GetHost(), 50) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.AudioEvent(ns.SecretFound, wp24) -} -func Award100XP() { - ns.GiveXp(ns.GetHost(), 100) -} -func PlaySubMusic() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Music(19, 100) -LABEL1: - return -} -func PlayNoMusic() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Music(0, 100) -LABEL1: - return -} -func PlayWanderMusic() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Music(22, 100) -LABEL1: - return -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapInitialize": - MapInitialize() - case "MapEntry": - MapEntry() - } -} diff --git a/examples/wiz03b/dummy_test.go b/examples/wiz03b/dummy_test.go deleted file mode 100644 index 5d237be..0000000 --- a/examples/wiz03b/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package wiz03b - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/wiz03b/wiz03b.go b/examples/wiz03b/wiz03b.go deleted file mode 100644 index 8db378a..0000000 --- a/examples/wiz03b/wiz03b.go +++ /dev/null @@ -1,382 +0,0 @@ -package wiz03b - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 ns.ObjectID - gvar5 ns.ObjectGroupID - wp6 ns.WaypointID - gvar7 ns.ObjectGroupID - obj8 ns.ObjectID - obj9 ns.ObjectID - obj10 ns.ObjectID - obj11 ns.ObjectID - obj12 ns.ObjectID - obj13 ns.ObjectID - gvar14 ns.ObjectGroupID - gvar15 ns.ObjectGroupID - gvar16 ns.WallGroupID - obj17 ns.ObjectID - obj18 ns.ObjectID - obj19 ns.ObjectID - obj20 ns.ObjectID - obj21 ns.ObjectID - obj22 ns.ObjectID - obj23 ns.ObjectID - obj24 ns.ObjectID - obj25 ns.ObjectID - obj26 ns.ObjectID - gvar27 ns.ObjectGroupID - wp28 ns.WaypointID - wp29 ns.WaypointID - wp30 ns.WaypointID - wp31 ns.WaypointID - wp32 ns.WaypointID - wp33 ns.WaypointID - wp34 ns.WaypointID - wp35 ns.WaypointID - wp36 ns.WaypointID - wp37 ns.WaypointID - wp38 ns.WaypointID - obj39 ns.ObjectID - obj40 ns.ObjectID - gvar41 ns.ObjectGroupID - gvar42 ns.ObjectGroupID - gvar43 ns.ObjectGroupID - obj44 ns.ObjectID - obj45 ns.ObjectID - gvar46 ns.ObjectGroupID - obj47 ns.ObjectID - gvar48 ns.WallGroupID - wp49 ns.WaypointID - wp50 ns.WaypointID - wp51 ns.WaypointID - gvar52 ns.WallGroupID - obj53 ns.ObjectID - wp54 ns.WaypointID - wp55 ns.WaypointID - wp56 ns.WaypointID - gvar57 ns.ObjectGroupID - ivar58 int -) - -func init() { - ivar58 = 0 -} -func PlayerDeath() { - ns.DeathScreen(3) -} -func TauntBegin() { - ns.NoWallSound(true) - ns.WallGroupOpen(gvar16) - ns.NoWallSound(false) - ns.ObjectGroupOn(gvar5) - ns.Frozen(ns.GetHost(), true) - ns.ObjectGroupOff(gvar15) - ns.WideScreen(true) - ns.Move(obj4, wp6) - ns.ObjectOn(obj12) - ns.ObjectGroupOff(gvar7) -} -func Taunt() { - ns.StartDialog(obj4, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "Wiz03b:RogueLeader") - ns.ObjectOff(obj12) -} -func Unfreeze() { - ns.Music(27, 100) - ns.UnlockDoor(obj13) - ns.CancelDialog(obj4) - ns.ClearOwner(obj4) - ns.ClearOwner(obj8) - ns.ClearOwner(obj9) - ns.ClearOwner(obj10) - ns.ClearOwner(obj11) - ns.Frozen(ns.GetHost(), false) - ns.ObjectGroupOn(gvar15) - ns.GroupAggressionLevel(gvar14, 0.83) -} -func GilgoreTalkEnd() { - ns.WideScreen(false) - ns.FrameTimer(60, Unfreeze) -} -func GilgoreTalkStart() { -} -func DisableElevator() { - if ns.GetElevatorStatus(obj39) != 2 { - goto LABEL1 - } - ns.ObjectOff(obj39) - goto LABEL2 -LABEL1: - ns.FrameTimer(1, DisableElevator) -LABEL2: - return -} -func BanditDeath() { - ivar58 += 1 - if !(ivar58 >= 8) { - goto LABEL1 - } - ns.Music(16, 100) -LABEL1: - return -} -func PlaySubMusic() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Music(16, 100) -LABEL1: - return -} -func PlayActionMusic() { - ns.Music(27, 100) -} -func MapInitialize() { - obj17 = ns.Object("Swordsman01") - obj18 = ns.Object("Swordsman02") - obj19 = ns.Object("Swordsman03") - obj20 = ns.Object("Swordsman04") - obj21 = ns.Object("Swordsman05") - obj22 = ns.Object("Archer01") - obj23 = ns.Object("Archer02") - obj24 = ns.Object("Archer03") - obj25 = ns.Object("Archer04") - obj26 = ns.Object("Archer05") - wp28 = ns.Waypoint("AmbushWP01") - wp29 = ns.Waypoint("AmbushWP02") - wp30 = ns.Waypoint("AmbushWP03") - wp31 = ns.Waypoint("AmbushWP04") - wp32 = ns.Waypoint("AmbushWP05") - wp33 = ns.Waypoint("AmbushWP06") - wp34 = ns.Waypoint("AmbushWP07") - wp35 = ns.Waypoint("AmbushWP08") - wp36 = ns.Waypoint("AmbushWP09") - wp37 = ns.Waypoint("AmbushWP10") - wp38 = ns.Waypoint("AmbushLook") - obj39 = ns.Object("AmbushElevator") - obj40 = ns.Object("AmbushElevator2") - gvar41 = ns.ObjectGroup("AmbushTrigGroup") - gvar27 = ns.ObjectGroup("AmbushMonsterGroup") - gvar42 = ns.ObjectGroup("WaspGroup") - ns.GroupWander(gvar42) - gvar43 = ns.ObjectGroup("Wasp2Group") - ns.GroupWander(gvar43) - gvar46 = ns.ObjectGroup("BoulderTrigGroup") - gvar48 = ns.WallGroup("RogueWallGroup") - wp49 = ns.Waypoint("BoulderWP") - obj45 = ns.Object("Boulder") - obj47 = ns.Object("RogueDoor") - wp50 = ns.Waypoint("IronBlockWP") - wp51 = ns.Waypoint("SoundWP") - gvar52 = ns.WallGroup("RogueSecretWallGroup") - DisableElevator() - obj53 = ns.Object("Wiz03b:AmuletofTeleportation") - obj4 = ns.Object("Gilgore") - gvar5 = ns.ObjectGroup("GilgoreGroup") - ns.StoryPic(obj4, "GilgorePic") - ns.SetDialog(obj4, ns.NORMAL, GilgoreTalkStart, GilgoreTalkEnd) - ns.GroupSetOwner(ns.GetHost(), gvar5) - ns.SetOwner(ns.GetHost(), obj44) - wp6 = ns.Waypoint("TauntWP") - gvar7 = ns.ObjectGroup("GilgoreTrigGroup") - obj8 = ns.Object("LeadRogue1") - obj9 = ns.Object("LeadRogue2") - obj10 = ns.Object("LeadRogue3") - obj11 = ns.Object("LeadRogue4") - obj12 = ns.Object("TauntTrig") - gvar15 = ns.ObjectGroup("BackDoorGroup") - gvar14 = ns.ObjectGroup("RogueGroup1") - obj13 = ns.Object("RogueDoor2") - ns.LockDoor(obj13) - wp54 = ns.Waypoint("Wiz03aExitWP") - wp55 = ns.Waypoint("Wiz03cExitWP") - gvar57 = ns.ObjectGroup("ExitTrigGroup") - wp56 = ns.Waypoint("Secret01WP") - gvar16 = ns.WallGroup("InvisibleWallGroup") -} -func MapEntry() { - ns.UnBlind() - ns.ObjectGroupOn(gvar57) -} -func Ambush() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 float32 - v5 float32 - v6 float32 - v7 float32 - v8 float32 - v9 float32 - v10 float32 - v11 float32 - v12 float32 - v13 float32 - v14 float32 - v15 float32 - v16 float32 - v17 float32 - v18 float32 - v19 float32 - v20 float32 - v21 float32 - ) - v0 = ns.GetWaypointX(wp28) - v1 = ns.GetWaypointY(wp28) - v2 = ns.GetWaypointX(wp29) - v3 = ns.GetWaypointY(wp29) - v4 = ns.GetWaypointX(wp30) - v5 = ns.GetWaypointY(wp30) - v6 = ns.GetWaypointX(wp31) - v7 = ns.GetWaypointY(wp31) - v8 = ns.GetWaypointX(wp32) - v9 = ns.GetWaypointY(wp32) - v10 = ns.GetWaypointX(wp33) - v11 = ns.GetWaypointY(wp33) - v12 = ns.GetWaypointX(wp34) - v13 = ns.GetWaypointY(wp34) - v14 = ns.GetWaypointX(wp35) - v15 = ns.GetWaypointY(wp35) - v16 = ns.GetWaypointX(wp36) - v17 = ns.GetWaypointY(wp36) - v18 = ns.GetWaypointX(wp37) - v19 = ns.GetWaypointY(wp37) - v20 = ns.GetWaypointX(wp38) - v21 = ns.GetWaypointY(wp38) - ns.ObjectGroupOn(gvar27) - ns.MoveObject(obj17, v0, v1) - ns.MoveObject(obj18, v2, v3) - ns.MoveObject(obj19, v4, v5) - ns.MoveObject(obj20, v16, v17) - ns.MoveObject(obj21, v18, v19) - ns.MoveObject(obj22, v6, v7) - ns.CreatureGuard(obj22, v6, v7, v20, v21, 500) - ns.MoveObject(obj23, v8, v9) - ns.CreatureGuard(obj23, v8, v9, v20, v21, 500) - ns.MoveObject(obj24, v10, v11) - ns.CreatureGuard(obj24, v10, v11, v20, v21, 500) - ns.MoveObject(obj25, v12, v13) - ns.CreatureGuard(obj25, v12, v13, v20, v21, 500) - ns.MoveObject(obj26, v14, v15) - ns.CreatureGuard(obj26, v14, v15, v20, v21, 500) - ns.ObjectGroupOff(gvar41) - ns.ObjectOn(obj39) - ns.ObjectGroupOn(gvar15) -} -func BanditAmbush() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Chat(obj17, "Wiz03b:BanditAmbush") - PlayActionMusic() -LABEL1: - return -} -func BoulderGo() { - ns.AudioEvent(ns.BoulderRoll, wp51) - ns.WallGroupOpen(gvar48) - ns.Move(obj45, wp49) - ns.ObjectGroupOff(gvar46) - ns.LockDoor(obj47) -} -func IronBlock() { - ns.CreateObject("ExtentBoxLarge", wp50) -} -func BlockFilter() int { - if !ns.IsCaller(obj45) { - goto LABEL1 - } - return 1 - goto LABEL2 -LABEL1: - return 0 -LABEL2: - return 0 -} -func OpenRogueSecretWallGroup() { - ns.WallGroupOpen(gvar52) -} -func MonsterGoHome() { - r1 := ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) - if !r1 { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func MonsterGoHomeShop() { - if !ns.HasClass(ns.GetCaller(), ns.MONSTER) { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func PlayerWiz03aExit() { - var ( - v0 float32 - v1 float32 - ) - v0 = ns.GetWaypointX(wp54) - v1 = ns.GetWaypointY(wp54) - ns.MoveObject(ns.GetHost(), v0, v1) -} -func FreezePlayer() { - ns.Frozen(ns.GetHost(), true) -} -func GotoWiz03a() { - ns.ObjectGroupOff(gvar57) - ns.Blind() - ns.FrameTimer(30, FreezePlayer) - ns.FrameTimer(60, PlayerWiz03aExit) -} -func PlayerWiz03cExit() { - var ( - v0 float32 - v1 float32 - ) - v0 = ns.GetWaypointX(wp55) - v1 = ns.GetWaypointY(wp55) - ns.MoveObject(ns.GetHost(), v0, v1) -} -func GotoWiz03c() { - ns.ObjectGroupOff(gvar57) - ns.Blind() - ns.FrameTimer(30, FreezePlayer) - ns.FrameTimer(60, PlayerWiz03cExit) -} -func Secret01XP() { - ns.AudioEvent(ns.SecretFound, wp56) - ns.GiveXp(ns.GetHost(), 50) - ns.PrintToAll("GeneralPrint:SecretFound") -} -func FoundAmulet() { - ns.GiveXp(ns.GetHost(), 100) - ns.PrintToAll("Con05B.scr:FoundAmulet") -} -func PlayWanderMusic() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Music(22, 100) -LABEL1: - return -} -func PlayDunMirMusic() { - ns.Music(16, 100) -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapInitialize": - MapInitialize() - case "MapEntry": - MapEntry() - } -} diff --git a/examples/wiz03c/dummy_test.go b/examples/wiz03c/dummy_test.go deleted file mode 100644 index 11c85b6..0000000 --- a/examples/wiz03c/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package wiz03c - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/wiz03c/wiz03c.go b/examples/wiz03c/wiz03c.go deleted file mode 100644 index 2c3355c..0000000 --- a/examples/wiz03c/wiz03c.go +++ /dev/null @@ -1,117 +0,0 @@ -package wiz03c - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 ns.ObjectID - obj5 ns.ObjectID - gvar6 ns.ObjectGroupID - gvar7 ns.ObjectGroupID - obj8 ns.ObjectID - obj9 ns.ObjectID - obj10 ns.ObjectID - obj11 ns.ObjectID - gvar12 ns.ObjectGroupID - obj13 ns.ObjectID - wp14 ns.WaypointID -) - -func PlayerDeath() { - ns.DeathScreen(3) -} -func PlaySubMusic() { - ns.ObjectOff(ns.GetTrigger()) - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Music(19, 100) -LABEL1: - return -} -func MapInitialize() { - obj4 = ns.Object("Wiz03b:AmuletofTeleportation") - obj5 = ns.Object("FloorPit") - gvar6 = ns.ObjectGroup("CreatureGroup1") - ns.ObjectGroupOff(gvar6) - gvar7 = ns.ObjectGroup("CreatureGroup2") - ns.ObjectGroupOff(gvar7) - obj8 = ns.Object("WizardDesk1") - obj9 = ns.Object("WizardDesk2") - obj10 = ns.Object("WizardDesk3") - obj11 = ns.Object("WizardDesk4") - ns.Damage(obj8, 0, 100, 12) - ns.Damage(obj9, 0, 100, 12) - ns.Damage(obj10, 0, 100, 12) - ns.Damage(obj11, 0, 100, 12) - gvar12 = ns.ObjectGroupID(ns.Object("SpiderAmbushGroup")) // FIXME - ns.ObjectGroupOff(gvar12) - wp14 = ns.Waypoint("Wiz03bExitWP") - obj13 = ns.Object("ExitTrig") -} -func MapEntry() { - PlaySubMusic() - ns.UnBlind() - ns.ObjectOn(obj13) -} -func SpiderAmbush() { - ns.ObjectGroupOn(gvar12) -} -func EnableCreatureGroup1() { - ns.ObjectGroupOn(gvar6) -} -func EnableCreatureGroup2() { - ns.ObjectGroupOn(gvar7) -} -func QuestSwitch() { - if !ns.HasItem(ns.GetHost(), ns.Object("Wiz03b:AmuletofTeleportation")) { - goto LABEL1 - } - ns.ObjectOn(obj5) -LABEL1: - return -} -func PlayerWiz03bExit() { - var ( - v0 float32 - v1 float32 - ) - v0 = ns.GetWaypointX(wp14) - v1 = ns.GetWaypointY(wp14) - ns.MoveObject(ns.GetHost(), v0, v1) -} -func FreezePlayer() { - ns.Frozen(ns.GetHost(), true) -} -func GotoWiz03b() { - ns.ObjectOff(obj13) - ns.Blind() - ns.FrameTimer(30, FreezePlayer) - ns.FrameTimer(60, PlayerWiz03bExit) -} -func MonsterGoHome() { - r1 := ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) - if !r1 { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func PlayWanderMusic() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Music(22, 100) -LABEL1: - return -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapInitialize": - MapInitialize() - case "MapEntry": - MapEntry() - } -} diff --git a/examples/wiz04a/dummy_test.go b/examples/wiz04a/dummy_test.go deleted file mode 100644 index b1f2768..0000000 --- a/examples/wiz04a/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package wiz04a - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/wiz04a/wiz04a.go b/examples/wiz04a/wiz04a.go deleted file mode 100644 index 3406fa1..0000000 --- a/examples/wiz04a/wiz04a.go +++ /dev/null @@ -1,224 +0,0 @@ -package wiz04a - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - ivar4 int - ivar5 int - gvar6 int - fvar7 float32 - obj8 ns.ObjectID - obj9 ns.ObjectID - obj10 ns.ObjectID - obj11 ns.ObjectID - obj12 ns.ObjectID - obj13 ns.ObjectID - wp14 ns.WaypointID - wp15 ns.WaypointID - wp16 ns.WaypointID - wp17 ns.WaypointID - gvar18 int - gvar19 int - gvar20 int - gvar21 ns.ObjectGroupID - gvar22 ns.ObjectGroupID - obj23 ns.ObjectID - wp24 ns.WaypointID -) - -func init() { - ivar4 = 50 - ivar5 = 20 - gvar6 = 1 - fvar7 = 5 - gvar18 = 0 - gvar19 = 1 - gvar20 = gvar18 -} -func CloseBlockTrap01() { - ns.ObjectOff(obj12) - ns.Move(obj8, wp14) - ns.Move(obj9, wp15) - ns.FrameTimerWithArg(ivar5, 1, BlockTrapBoom) - ns.FrameTimerWithArg(ivar4, 1, ResetBlockTrap) -} -func CloseBlockTrap02() { - ns.ObjectOff(obj13) - ns.Move(obj10, wp16) - ns.Move(obj11, wp17) - ns.FrameTimerWithArg(ivar5, 2, BlockTrapBoom) - ns.FrameTimerWithArg(ivar4, 2, ResetBlockTrap) -} -func BlockTrapLoop() { - var v0 int - v0 = gvar6 - if v0 == 1 { - goto LABEL1 - } - if v0 == 2 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - CloseBlockTrap01() - gvar6 = 2 - goto LABEL3 -LABEL2: - CloseBlockTrap02() - gvar6 = 1 - goto LABEL3 -LABEL3: - ns.FrameTimer(30, BlockTrapLoop) -} -func InitializeBlockTrap() { - obj8 = ns.Object("SpikeBlock01") - obj9 = ns.Object("SpikeBlock02") - obj10 = ns.Object("SpikeBlock03") - obj11 = ns.Object("SpikeBlock04") - wp14 = ns.Waypoint("BlockWP01") - wp15 = ns.Waypoint("BlockWP02") - wp16 = ns.Waypoint("BlockWP03") - wp17 = ns.Waypoint("BlockWP04") - obj12 = ns.Object("BlockTrap01Trigger") - obj13 = ns.Object("BlockTrap02Trigger") - BlockTrapLoop() -} -func BlockTrapBoom(a1 int) { - var v0 int - v0 = a1 - if v0 == 1 { - goto LABEL1 - } - if v0 == 2 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.AudioEvent(ns.HammerMissing, wp14) - ns.Effect(ns.JIGGLE, ns.GetWaypointX(wp14), ns.GetWaypointY(wp14), fvar7, 0) - goto LABEL3 -LABEL2: - ns.AudioEvent(ns.HammerMissing, wp16) - ns.Effect(ns.JIGGLE, ns.GetWaypointX(wp16), ns.GetWaypointY(wp16), fvar7, 0) - goto LABEL3 -LABEL3: - return -} -func ResetBlockTrap(a1 int) { - var v0 int - v0 = a1 - if v0 == 1 { - goto LABEL1 - } - if v0 == 2 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.ObjectOn(obj12) - ns.AudioEvent(ns.TriggerReleased, wp14) - goto LABEL3 -LABEL2: - ns.ObjectOn(obj13) - ns.AudioEvent(ns.TriggerReleased, wp16) - goto LABEL3 -LABEL3: - return -} -func PlayerDeath() { - ns.DeathScreen(4) -} -func CaptainDialogStart() { - var v0 int - v0 = gvar20 - if v0 == gvar18 { - goto LABEL1 - } - if v0 == gvar19 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.TellStory(ns.SwordsmanHurt, "Con04a:CaptainGreet") - goto LABEL3 -LABEL2: - ns.TellStory(ns.SwordsmanHurt, "Con04a:CaptainIdle") - goto LABEL3 -LABEL3: - return -} -func CaptainDialogEnd() { - var v0 int - v0 = gvar20 - if v0 == gvar18 { - goto LABEL1 - } - if v0 == gvar19 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.JournalEntry(ns.GetHost(), "Chapter4SearchCrypts", 2) - ns.PrintToAll("Con01a:NewJournalEntry") - ns.AwardSpell(ns.GetHost(), ns.SPELL_GLYPH) - ns.PrintToAll("GeneralPrint:Trap") - ns.JournalEntry(ns.GetHost(), "TrapHint", 8) - gvar20 = gvar19 - goto LABEL3 -LABEL2: - goto LABEL3 -LABEL3: - return -} -func StartCaptainConversation() { - ns.SetDialog(obj23, ns.NORMAL, CaptainDialogStart, CaptainDialogEnd) - ns.StartDialog(obj23, ns.GetHost()) -} -func PlayOutdoorMusic() { - ns.Music(22, 100) -} -func MapInitialize() { - gvar21 = ns.ObjectGroup("Secret2Triggers") - gvar22 = ns.ObjectGroup("Fish") - obj23 = ns.Object("Airship_Captain") - wp24 = ns.Waypoint("SecretAudioOrigin") - ns.StoryPic(obj23, "AirshipCaptainPic") - ns.SetOwner(ns.GetHost(), obj23) - ns.GroupWander(gvar22) - PlayOutdoorMusic() - InitializeBlockTrap() - ns.StartupScreen(4) - ns.FrameTimer(5, StartCaptainConversation) -} -func OpenSecretPassageWalls() { - ns.WallOpen(ns.Wall(129, 137)) -} -func ExitMessage() { - ns.PrintToAll("War04a:ExitMessage") -} -func PlayUndergroundMusic() { - ns.Music(20, 100) -} -func SecretSFX() { - ns.MoveWaypoint(wp24, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretFound, wp24) -} -func FoundSecret1() { - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 25) - SecretSFX() -} -func FoundSecret2() { - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 100) - ns.ObjectGroupOff(gvar21) - SecretSFX() -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapInitialize": - MapInitialize() - } -} diff --git a/examples/wiz04b/dummy_test.go b/examples/wiz04b/dummy_test.go deleted file mode 100644 index 46115f5..0000000 --- a/examples/wiz04b/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package wiz04b - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/wiz04b/wiz04b.go b/examples/wiz04b/wiz04b.go deleted file mode 100644 index f28b292..0000000 --- a/examples/wiz04b/wiz04b.go +++ /dev/null @@ -1,740 +0,0 @@ -package wiz04b - -import ( - "strconv" - - "github.com/noxworld-dev/noxscript/ns/v3" -) - -var ( - gvar4 int - gvar5 int - gvar6 int - gvar7 int - gvar8 int - gvar9 int - gvar10 int - gvar11 int - gvar12 int - gvar13 int - gvar14 int - gvar15 int - flag16 bool - flag17 bool - flag18 bool - flag19 bool - flag20 bool - ivar21 int - ivar22 int - gvar23 int - gvar24 int - gvar25 int - obj26 [13]ns.ObjectID - obj27 [13]ns.ObjectID - ivar28 int - obj29 [56]ns.ObjectID - obj30 ns.ObjectID - obj31 ns.ObjectID - obj32 ns.ObjectID - obj33 ns.ObjectID - obj34 ns.ObjectID - obj35 ns.ObjectID - obj36 ns.ObjectID - obj37 ns.ObjectID - obj38 ns.ObjectID - obj39 ns.ObjectID - obj40 ns.ObjectID - obj41 ns.ObjectID - obj42 ns.ObjectID - obj43 ns.ObjectID - obj44 ns.ObjectID - obj45 ns.ObjectID - gvar46 ns.ObjectGroupID - gvar47 ns.WallGroupID - wp48 ns.WaypointID - wp49 ns.WaypointID - wp50 ns.WaypointID - wp51 ns.WaypointID - wp52 [56]ns.WaypointID - wp53 ns.WaypointID - gvar54 ns.WaypointGroupID - gvar55 ns.WaypointGroupID - gvar56 ns.WaypointGroupID -) - -func init() { - gvar4 = 0 - gvar5 = 1 - gvar6 = 2 - gvar7 = 3 - gvar8 = 0 - gvar9 = 1 - gvar10 = 2 - gvar11 = 3 - gvar12 = 4 - gvar13 = 5 - gvar14 = 6 - gvar15 = 7 - flag16 = false - flag17 = true - flag18 = false - flag19 = false - flag20 = false - ivar21 = 0 - ivar22 = 0 - gvar23 = gvar9 - gvar24 = 0 - gvar25 = gvar4 - ivar28 = 120 -} -func setUpFlameLever() { - if !flag16 { - goto LABEL1 - } - return -LABEL1: - flag16 = true - gvar23 = gvar9 - ivar22 = 2 - ivar21 = 0 - for { - if !(ivar21 < 56) { - goto LABEL2 - } - obj29[ivar21] = 0 - ivar21 += 1 - } -LABEL2: - ns.FrameTimer(3, flameLever) -} -func flameLever() { - var v0 int - if !flag16 { - goto LABEL1 - } - v0 = gvar23 - if v0 == gvar9 { - goto LABEL2 - } - if v0 == gvar10 { - goto LABEL3 - } - if v0 == gvar11 { - goto LABEL4 - } - if v0 == gvar12 { - goto LABEL5 - } - if v0 == gvar13 { - goto LABEL6 - } - if v0 == gvar14 { - goto LABEL7 - } - if v0 == gvar15 { - goto LABEL8 - } - if v0 == gvar8 { - goto LABEL9 - } - goto LABEL10 -LABEL2: - ivar21 = 0 - for { - if !(ivar21 < 56) { - goto LABEL11 - } - ns.Delete(obj29[ivar21]) - obj29[ivar21] = ns.CreateObject("SmallFlame", wp52[ivar21]) - ivar21 += 1 - } -LABEL11: - gvar23 = gvar10 - ns.AudioEvent(ns.FireballCast, wp50) - ns.AudioEvent(ns.FireballCast, wp51) - ivar22 = 2 - goto LABEL10 -LABEL3: - ivar21 = 0 - for { - if !(ivar21 < 56) { - goto LABEL13 - } - ns.Delete(obj29[ivar21]) - obj29[ivar21] = ns.CreateObject("MediumFlame", wp52[ivar21]) - ivar21 += 1 - } -LABEL13: - gvar23 = gvar11 - ns.AudioEvent(ns.DemonBreath, wp50) - ns.AudioEvent(ns.DemonBreath, wp51) - ivar22 = 2 - goto LABEL10 -LABEL4: - ivar21 = 0 - for { - if !(ivar21 < 56) { - goto LABEL15 - } - ns.Delete(obj29[ivar21]) - obj29[ivar21] = ns.CreateObject("Flame", wp52[ivar21]) - ivar21 += 1 - } -LABEL15: - gvar23 = gvar12 - ivar22 = 2 - goto LABEL10 -LABEL5: - ivar21 = 0 - for { - if !(ivar21 < 56) { - goto LABEL17 - } - ns.Delete(obj29[ivar21]) - obj29[ivar21] = ns.CreateObject("LargeFlame", wp52[ivar21]) - ivar21 += 1 - } -LABEL17: - gvar23 = gvar13 - ivar22 = 150 - goto LABEL10 -LABEL6: - ivar21 = 0 - for { - if !(ivar21 < 56) { - goto LABEL19 - } - ns.Delete(obj29[ivar21]) - obj29[ivar21] = ns.CreateObject("Flame", wp52[ivar21]) - ivar21 += 1 - } -LABEL19: - gvar23 = gvar14 - ivar22 = 2 - goto LABEL10 -LABEL7: - ivar21 = 0 - for { - if !(ivar21 < 56) { - goto LABEL21 - } - ns.Delete(obj29[ivar21]) - obj29[ivar21] = ns.CreateObject("MediumFlame", wp52[ivar21]) - ivar21 += 1 - } -LABEL21: - gvar23 = gvar15 - ns.AudioEvent(ns.FireExtinguish, wp50) - ns.AudioEvent(ns.FireExtinguish, wp51) - ivar22 = 2 - goto LABEL10 -LABEL8: - ivar21 = 0 - for { - if !(ivar21 < 56) { - goto LABEL23 - } - ns.Delete(obj29[ivar21]) - obj29[ivar21] = ns.CreateObject("SmallFlame", wp52[ivar21]) - ivar21 += 1 - } -LABEL23: - gvar23 = gvar8 - ivar22 = 2 - goto LABEL10 -LABEL9: - ivar21 = 0 - for { - if !(ivar21 < 56) { - goto LABEL25 - } - ns.Delete(obj29[ivar21]) - obj29[ivar21] = 0 - ivar21 += 1 - } -LABEL25: - gvar23 = gvar9 - flag16 = false - goto LABEL10 -LABEL10: - ns.FrameTimer(ivar22, flameLever) -LABEL1: - return -} -func skullHallOn() { - if !flag17 { - goto LABEL1 - } - ns.CastSpellLocationLocation(ns.SPELL_FIREBALL, 3012, 2229, 3185, 2403) - ns.CastSpellLocationLocation(ns.SPELL_FIREBALL, 2896, 2346, 3070, 2517) - ns.FrameTimer(60, skullHallOn) -LABEL1: - return -} -func skullHallOff() { - flag17 = false -} -func Zombie1Rise() { - var ( - v0 float32 - v1 float32 - ) - _ = v1 - _ = v0 - v0 = ns.GetObjectX(obj38) - v1 = ns.GetObjectY(obj38) - ns.RaiseZombie(obj38) - ns.AudioEvent(ns.ZombieRecognize, ns.Waypoint("ZombieAttackWP")) - ns.LookAtObject(obj30, obj38) -} -func Zombie2Rise() { - var ( - v0 float32 - v1 float32 - ) - _ = v1 - _ = v0 - v0 = ns.GetObjectX(obj39) - v1 = ns.GetObjectY(obj39) - ns.RaiseZombie(obj39) - ns.AudioEvent(ns.ZombieRecognize, ns.Waypoint("ZombieAttackWP")) - ns.LookAtObject(obj30, obj39) -} -func Zombie3Rise() { - var ( - v0 float32 - v1 float32 - ) - _ = v1 - _ = v0 - v0 = ns.GetObjectX(obj40) - v1 = ns.GetObjectY(obj40) - ns.RaiseZombie(obj40) - ns.AudioEvent(ns.ZombieRecognize, ns.Waypoint("ZombieAttackWP")) - ns.LookAtObject(obj30, obj40) -} -func ZombieAttackHecubah() { - ns.WayPointGroupOn(gvar55) - ns.WayPointGroupOff(gvar54) - ns.HitLocation(obj38, ns.GetWaypointX(ns.Waypoint("ZombieAttackWP")), ns.GetWaypointY(ns.Waypoint("ZombieAttackWP"))) - ns.HitLocation(obj39, ns.GetWaypointX(ns.Waypoint("ZombieAttackWP")), ns.GetWaypointY(ns.Waypoint("ZombieAttackWP"))) - ns.HitLocation(obj40, ns.GetWaypointX(ns.Waypoint("ZombieAttackWP")), ns.GetWaypointY(ns.Waypoint("ZombieAttackWP"))) -} -func HecubahShootZombie1() { - ns.LookAtObject(obj30, obj38) - ns.CastSpellObjectObject(ns.SPELL_FIREBALL, obj30, obj38) - ns.FrameTimer(30, HecubahShootZombie2) -} -func HecubahShootZombie2() { - ns.LookAtObject(obj30, obj39) - ns.CastSpellObjectObject(ns.SPELL_FIREBALL, obj30, obj39) - ns.FrameTimer(30, HecubahShootZombie3) -} -func HecubahShootZombie3() { - ns.LookAtObject(obj30, obj40) - ns.CastSpellObjectObject(ns.SPELL_FIREBALL, obj30, obj40) - ns.FrameTimer(30, HecubahEncounterSEG3) -} -func HecubahEncounterSEG4() { - ns.SetDialog(obj30, ns.NORMAL, HecubahDialogStart, HecubahDialogEnd) - gvar25 = gvar7 - ns.StartDialog(obj30, ns.GetHost()) -} -func HecubahEncounterSEG3() { - ns.SetDialog(obj31, ns.NEXT, HecubahDialogStart, HecubahDialogEnd) - gvar25 = gvar6 - ns.StartDialog(obj31, ns.GetHost()) -} -func hecGone() { - if !ns.IsCaller(obj30) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.MoveObject(obj30, ns.GetWaypointX(wp49), ns.GetWaypointY(wp49)) - ns.ObjectOff(obj30) -LABEL1: - return -} -func ReleasePlayer() { - if !ns.IsCaller(obj30) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.LockDoor(obj36) - ns.LockDoor(obj37) - ns.NoWallSound(true) - ns.WallGroupOpen(gvar47) - ns.NoWallSound(false) - ns.WideScreen(false) - ns.Frozen(ns.GetHost(), false) - ns.SetDialog(obj31, ns.NORMAL, necroTalkStart, necroTalkEnd) - gvar24 = 5 - ns.StartDialog(obj31, ns.GetHost()) -LABEL1: - return -} -func necroDies() { - ns.UnlockDoor(obj36) - ns.UnlockDoor(obj37) - ns.CancelDialog(obj31) - ns.SetDialog(obj31, ns.NORMAL, necroTalkStart, necroTalkEnd) - gvar24 = 4 - ns.StartDialog(obj31, ns.GetHost()) -} -func necroTalkStart() { - var v0 int - v0 = gvar24 - if v0 == 1 { - goto LABEL1 - } - if v0 == 2 { - goto LABEL2 - } - if v0 == 3 { - goto LABEL3 - } - if v0 == 4 { - goto LABEL4 - } - if v0 == 5 { - goto LABEL5 - } - goto LABEL6 -LABEL1: - ns.TellStory(ns.DemonRecognize, "Con04a:NecroTaunts") - ns.Frozen(obj31, true) - ns.Frozen(obj38, true) - ns.Frozen(obj40, true) - goto LABEL6 -LABEL2: - ns.TellStory(ns.DemonRecognize, "Con04a:NecroGloats") - ns.Frozen(obj31, true) - ns.Frozen(obj38, true) - ns.Frozen(obj40, true) - goto LABEL6 -LABEL3: - ns.TellStory(ns.DemonRecognize, "Con04a:NecroThreatens2") - ns.Frozen(obj31, true) - ns.Frozen(obj38, true) - ns.Frozen(obj40, true) - goto LABEL6 -LABEL4: - ns.WayPointGroupOff(gvar55) - ns.WayPointGroupOn(gvar56) - ns.LookAtObject(obj31, ns.GetHost()) - ns.TellStory(ns.DemonRecognize, "Con04a:NecroDies") - ns.Frozen(obj31, true) - ns.Frozen(obj38, true) - ns.Frozen(obj40, true) - goto LABEL6 -LABEL5: - ns.AggressionLevel(obj31, 0.83) - ns.TellStory(ns.DemonRecognize, "Con04a:NecroThreatens") - ns.LookAtObject(obj31, ns.GetHost()) - ns.Frozen(obj31, true) - ns.Frozen(obj38, true) - ns.Frozen(obj40, true) - goto LABEL6 -LABEL6: - return -} -func necroTalkEnd() { - ns.CancelDialog(obj31) - ns.Frozen(obj31, false) - ns.Frozen(obj38, false) - ns.Frozen(obj40, false) - if gvar24 != 4 { - goto LABEL1 - } - ns.JournalEdit(ns.GetHost(), "Chapter4SearchCrypts", 4) - ns.JournalEntry(ns.GetHost(), "Chapter4Escape", 2) - ns.PrintToAll("Con02a:ObjectiveComplete") - ns.PrintToAll("Con01a:NewJournalEntry") -LABEL1: - return -} -func ZombieInjured() { - ns.Damage(ns.GetTrigger(), 0, 100, 1) -} -func InitializeFistTraps() { - obj27[0] = ns.Object("FistTrap01") - obj27[1] = ns.Object("FistTrap02") - obj27[2] = ns.Object("FistTrap03") - obj27[3] = ns.Object("FistTrap04") - obj27[4] = ns.Object("FistTrap05") - obj27[5] = ns.Object("FistTrap06") - obj27[6] = ns.Object("FistTrap07") - obj27[7] = ns.Object("FistTrap08") - obj27[8] = ns.Object("FistTrap09") - obj27[9] = ns.Object("FistTrap10") - obj27[10] = ns.Object("FistTrap11") - obj27[11] = ns.Object("FistTrap12") - obj27[12] = ns.Object("FistTrap13") - obj26[0] = ns.Object("FistTrapLight01") - obj26[1] = ns.Object("FistTrapLight02") - obj26[2] = ns.Object("FistTrapLight03") - obj26[3] = ns.Object("FistTrapLight04") - obj26[4] = ns.Object("FistTrapLight05") - obj26[5] = ns.Object("FistTrapLight06") - obj26[6] = ns.Object("FistTrapLight07") - obj26[7] = ns.Object("FistTrapLight08") - obj26[8] = ns.Object("FistTrapLight09") - obj26[9] = ns.Object("FistTrapLight10") - obj26[10] = ns.Object("FistTrapLight11") - obj26[11] = ns.Object("FistTrapLight12") - obj26[12] = ns.Object("FistTrapLight13") -} -func MapInitialize() { - ivar21 = 0 - for { - if !(ivar21 < 56) { - goto LABEL1 - } - wp52[ivar21] = ns.Waypoint("FlameWay" + strconv.Itoa(ivar21+1)) - ivar21 += 1 - } -LABEL1: - obj30 = ns.Object("Hecubah") - obj31 = ns.Object("Necromancer") - obj32 = ns.Object("EntranceGate1") - obj33 = ns.Object("EntranceGate2") - obj34 = ns.Object("EntranceGate3") - obj35 = ns.Object("EntranceGate4") - obj36 = ns.Object("PitGate1") - obj37 = ns.Object("PitGate2") - obj38 = ns.Object("DeadZombie1") - obj39 = ns.Object("DeadZombie2") - obj40 = ns.Object("DeadZombie3") - obj41 = ns.Object("Zombie01") - obj42 = ns.Object("Zombie02") - obj43 = ns.Object("Zombie03") - obj44 = ns.Object("FlameLever1") - obj45 = ns.Object("FlameLever2") - gvar46 = ns.ObjectGroup("Zombies") - gvar47 = ns.WallGroup("InvisibleBlockWall") - wp50 = ns.Waypoint("FlameSound1") - wp51 = ns.Waypoint("FlameSound2") - wp48 = ns.Waypoint("AudioOrigin") - wp53 = ns.Waypoint("WP") - wp49 = ns.Waypoint("HecubahStorage") - gvar54 = ns.WaypointGroup("BeforeSetpieceWay") - gvar55 = ns.WaypointGroup("SetpieceWay") - gvar56 = ns.WaypointGroup("AfterSetpieceWay") - ns.WayPointGroupOff(gvar55) - ns.WayPointGroupOff(gvar56) - ns.Damage(obj38, 0, 100, 0) - ns.Damage(obj39, 0, 100, 0) - ns.Damage(obj40, 0, 100, 0) - ns.ZombieStayDown(obj38) - ns.ZombieStayDown(obj39) - ns.ZombieStayDown(obj40) - ns.StoryPic(obj31, "NecromancerPic") - InitializeFistTraps() -} -func PlayerDeath() { - ns.DeathScreen(4) -} -func ToggleSkullHall() { - if !flag17 { - goto LABEL1 - } - flag17 = false - goto LABEL2 -LABEL1: - flag17 = true - skullHallOn() -LABEL2: - return -} -func HecubahDialogStart() { - var v0 int - v0 = gvar25 - if v0 == gvar4 { - goto LABEL1 - } - if v0 == gvar5 { - goto LABEL2 - } - if v0 == gvar6 { - goto LABEL3 - } - if v0 == gvar7 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - ns.TellStory(ns.GhostRecognize, "War04a:Hecubah") - goto LABEL5 -LABEL2: - ns.TellStory(ns.GhostRecognize, "War04a:HecubahSEG2") - goto LABEL5 -LABEL3: - ns.LookAtObject(obj31, ns.GetHost()) - ns.TellStory(ns.DemonRecognize, "Con04a:NecroWarnsHec") - goto LABEL5 -LABEL4: - ns.LookAtObject(obj30, ns.GetHost()) - ns.TellStory(ns.GhostRecognize, "War04a:HecubahSEG3") - goto LABEL5 -LABEL5: - return -} -func HecubahDialogEnd() { - var ( - v0 float32 - v1 float32 - v4 ns.WaypointID - v5 int - ) - _ = v1 - _ = v0 - v5 = gvar25 - if v5 == gvar4 { - goto LABEL1 - } - if v5 == gvar5 { - goto LABEL2 - } - if v5 == gvar6 { - goto LABEL3 - } - if v5 == gvar7 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - ns.FrameTimer(20, Zombie2Rise) - ns.FrameTimer(45, Zombie1Rise) - ns.FrameTimer(60, Zombie3Rise) - ns.FrameTimer(60, ZombieAttackHecubah) - gvar25 = gvar5 - ns.CancelDialog(obj30) - goto LABEL5 -LABEL2: - ns.LookAtObject(obj30, obj39) - gvar25 = gvar6 - ns.CancelDialog(obj30) - ns.AggressionLevel(obj38, 0) - ns.AggressionLevel(obj39, 0) - ns.AggressionLevel(obj40, 0) - ns.PushObject(obj38, 40, ns.GetObjectX(obj30), ns.GetObjectY(obj30)) - ns.PushObject(obj39, 40, ns.GetObjectX(obj30), ns.GetObjectY(obj30)) - ns.PushObject(obj40, 40, ns.GetObjectX(obj30), ns.GetObjectY(obj30)) - ns.SetOwner(obj36, obj38) - ns.SetOwner(obj36, obj39) - ns.SetOwner(obj36, obj40) - ns.SetCallback(obj38, 7, ZombieInjured) - ns.SetCallback(obj39, 7, ZombieInjured) - ns.SetCallback(obj40, 7, ZombieInjured) - ns.FrameTimer(20, HecubahShootZombie1) - goto LABEL5 -LABEL3: - gvar25 = gvar7 - ns.CancelDialog(obj31) - ns.FrameTimer(5, HecubahEncounterSEG4) - goto LABEL5 -LABEL4: - v4 = ns.Waypoint("WP") - v0 = ns.GetObjectX(obj30) - v1 = ns.GetObjectY(obj30) - ns.CreatureIdle(obj31) - ns.UnlockDoor(obj32) - ns.UnlockDoor(obj33) - ns.LockDoor(obj34) - ns.LockDoor(obj35) - ns.ObjectOn(obj30) - ns.Move(obj30, v4) - flag19 = true - ns.CancelDialog(obj30) - goto LABEL5 -LABEL5: - return -} -func AttackSuccessful() { - ns.SetDialog(obj30, ns.NEXT, HecubahDialogStart, HecubahDialogEnd) - ns.StartDialog(obj30, ns.GetHost()) -} -func HecubahEncounterSEG2() { - ns.StoryPic(obj30, "HecubahPic") - ns.SetDialog(obj30, ns.NEXT, HecubahDialogStart, HecubahDialogEnd) - ns.StartDialog(obj30, ns.GetHost()) -} -func HecubahEncounterSEG1() { - if !(!flag18 && ns.IsCaller(ns.GetHost())) { - goto LABEL1 - } - flag18 = true - ns.Frozen(ns.GetHost(), true) - ns.WideScreen(true) - ns.FrameTimer(60, HecubahEncounterSEG2) -LABEL1: - return -} -func ResetFistTrap(a1 int) { - ns.ObjectOn(obj26[a1]) - ns.ObjectOn(obj27[a1]) - ns.MoveWaypoint(wp48, ns.GetObjectX(obj27[a1]), ns.GetObjectY(obj27[a1])) - ns.AudioEvent(ns.TriggerReleased, wp48) -} -func DropFist(a1 int) { - ns.CastSpellObjectLocation(ns.SPELL_FIST, obj27[a1], ns.GetObjectX(obj27[a1]), ns.GetObjectY(obj27[a1])) - ns.ObjectOff(obj27[a1]) - ns.ObjectOff(obj26[a1]) - ns.FrameTimerWithArg(ivar28, a1, ResetFistTrap) -} -func ActivateFistTrap01() { - DropFist(0) -} -func ActivateFistTrap02() { - DropFist(1) -} -func ActivateFistTrap03() { - DropFist(2) -} -func ActivateFistTrap04() { - DropFist(3) -} -func ActivateFistTrap05() { - DropFist(4) -} -func ActivateFistTrap06() { - DropFist(5) -} -func ActivateFistTrap07() { - DropFist(6) -} -func ActivateFistTrap08() { - DropFist(7) -} -func ActivateFistTrap09() { - DropFist(8) -} -func ActivateFistTrap10() { - DropFist(9) -} -func ActivateFistTrap11() { - DropFist(10) -} -func ActivateFistTrap12() { - DropFist(11) -} -func ActivateFistTrap13() { - DropFist(12) -} -func NoEnemys() { - r1 := ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) - if !r1 { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func OnEvent(typ string) { - switch typ { - case "MapInitialize": - MapInitialize() - case "PlayerDeath": - PlayerDeath() - } -} diff --git a/examples/wiz04c/dummy_test.go b/examples/wiz04c/dummy_test.go deleted file mode 100644 index 0172bbb..0000000 --- a/examples/wiz04c/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package wiz04c - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/wiz04c/wiz04c.go b/examples/wiz04c/wiz04c.go deleted file mode 100644 index 7336d06..0000000 --- a/examples/wiz04c/wiz04c.go +++ /dev/null @@ -1,923 +0,0 @@ -package wiz04c - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - gvar4 ns.WallGroupID - obj5 ns.ObjectID - obj6 ns.ObjectID - ivar7 int - ivar8 int - fvar9 float32 - obj10 ns.ObjectID - obj11 ns.ObjectID - obj12 ns.ObjectID - obj13 ns.ObjectID - obj14 ns.ObjectID - obj15 ns.ObjectID - obj16 ns.ObjectID - obj17 ns.ObjectID - obj18 ns.ObjectID - obj19 ns.ObjectID - obj20 ns.ObjectID - obj21 ns.ObjectID - obj22 ns.ObjectID - obj23 ns.ObjectID - obj24 ns.ObjectID - obj25 ns.ObjectID - wp26 ns.WaypointID - wp27 ns.WaypointID - wp28 ns.WaypointID - wp29 ns.WaypointID - wp30 ns.WaypointID - wp31 ns.WaypointID - wp32 ns.WaypointID - wp33 ns.WaypointID - wp34 ns.WaypointID - wp35 ns.WaypointID - wp36 ns.WaypointID - wp37 ns.WaypointID - wp38 ns.WaypointID - wp39 ns.WaypointID - wp40 ns.WaypointID - wp41 ns.WaypointID - gvar42 ns.ObjectGroupID - gvar43 ns.ObjectGroupID - gvar44 ns.ObjectGroupID - obj45 [13]ns.ObjectID - obj46 [13]ns.ObjectID - ivar47 int - wp48 ns.WaypointID - obj49 ns.ObjectID - obj50 ns.ObjectID - obj51 ns.ObjectID - obj52 ns.ObjectID - obj53 ns.ObjectID - obj54 ns.ObjectID - wp55 ns.WaypointID - wp56 ns.WaypointID - gvar57 ns.WallGroupID - gvar58 ns.WallGroupID - flag59 bool - flag60 bool - gvar61 int - gvar62 int - gvar63 int - obj64 ns.ObjectID - obj65 ns.ObjectID - obj66 ns.ObjectID - obj67 ns.ObjectID - obj68 ns.ObjectID - obj69 ns.ObjectID - wp70 [4]ns.WaypointID - wp71 ns.WaypointID - wp72 ns.WaypointID - flag73 bool - flag74 bool - ivar75 int - wp76 ns.WaypointID - gvar77 ns.ObjectGroupID - ivar78 int - ivar79 int - ivar80 int - ivar81 int - ivar82 int - ivar83 int - ivar84 int - ivar85 int - ivar86 int - ivar87 int - ivar88 int - gvar89 int - gvar90 int - obj91 ns.ObjectID - obj92 ns.ObjectID - obj93 ns.ObjectID - obj94 ns.ObjectID - obj95 ns.ObjectID - obj96 ns.ObjectID - obj97 ns.ObjectID - obj98 ns.ObjectID - obj99 ns.ObjectID - obj100 ns.ObjectID - obj101 ns.ObjectID -) - -func init() { - ivar7 = 50 - ivar8 = 20 - fvar9 = 5 - ivar47 = 120 - flag59 = false - flag60 = false - gvar61 = 0 - gvar62 = 1 - gvar63 = gvar62 - flag73 = false - flag74 = false - ivar75 = 0 - ivar78 = 0 - ivar79 = 0 - ivar80 = 0 - ivar81 = 0 - ivar82 = 0 - ivar83 = 0 - ivar84 = 0 - ivar85 = 0 - ivar86 = 0 - ivar87 = 0 - ivar88 = 0 - gvar89 = 0 - gvar90 = 0 -} -func InitializeSkeletonAmbush() { - gvar4 = ns.WallGroup("SkeletonAmbushWalls") -} -func SkeletonAmbush() { - ns.WallGroupBreak(gvar4) -} -func SkeletonAmbushTimer() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.FrameTimer(45, SkeletonAmbush) -LABEL1: - return -} -func EnablePitTrapElevator01() { - ns.ObjectOff(ns.GetTrigger()) - ns.ObjectOn(ns.Object("PitTrapElevator01")) -} -func EnablePitTrapElevator02() { - ns.ObjectOff(ns.GetTrigger()) - ns.ObjectOn(ns.Object("PitTrapElevator02")) -} -func OpenPitElevatorWalls01() { - ns.ObjectOff(ns.GetTrigger()) - ns.WallGroupOpen(ns.WallGroup("PitTrapElevatorWalls01")) -} -func OpenPitElevatorWalls02() { - ns.ObjectOff(ns.GetTrigger()) - ns.WallGroupOpen(ns.WallGroup("PitTrapElevatorWalls02")) -} -func ZombieAmbush() { - ns.ObjectOff(ns.GetTrigger()) - ns.WallGroupBreak(ns.WallGroup("ZombieAmbushWalls")) -} -func InitializeHallwayArrowTraps() { - obj5 = ns.Object("HallwayArrowTrap01") - obj6 = ns.Object("HallwayArrowTrap02") -} -func ResetHallwayArrowTrap01() { - ns.ObjectOff(obj5) -} -func ResetHallwayArrowTrap02() { - ns.ObjectOff(obj6) -} -func ActivateHallwayArrowTrap01() { - ns.ObjectOn(obj5) - ns.FrameTimer(1, ResetHallwayArrowTrap01) -} -func ActivateHallwayArrowTrap02() { - ns.ObjectOn(obj6) - ns.FrameTimer(1, ResetHallwayArrowTrap02) -} -func InitializeBlockTrap() { - obj10 = ns.Object("SpikeBlock01") - obj11 = ns.Object("SpikeBlock02") - obj12 = ns.Object("SpikeBlock03") - obj13 = ns.Object("SpikeBlock04") - obj14 = ns.Object("SpikeBlock05") - obj15 = ns.Object("SpikeBlock06") - obj16 = ns.Object("SpikeBlock07") - obj17 = ns.Object("SpikeBlock08") - obj18 = ns.Object("SpikeBlock09") - obj19 = ns.Object("SpikeBlock10") - obj20 = ns.Object("SpikeBlock11") - obj21 = ns.Object("SpikeBlock12") - obj22 = ns.Object("SpikeBlock13") - obj23 = ns.Object("SpikeBlock14") - obj24 = ns.Object("SpikeBlock15") - obj25 = ns.Object("SpikeBlock16") - wp26 = ns.Waypoint("BlockWP01") - wp27 = ns.Waypoint("BlockWP02") - wp28 = ns.Waypoint("BlockWP03") - wp29 = ns.Waypoint("BlockWP04") - wp30 = ns.Waypoint("BlockWP05") - wp31 = ns.Waypoint("BlockWP06") - wp32 = ns.Waypoint("BlockWP07") - wp33 = ns.Waypoint("BlockWP08") - wp34 = ns.Waypoint("BlockWP09") - wp35 = ns.Waypoint("BlockWP10") - wp36 = ns.Waypoint("BlockWP11") - wp37 = ns.Waypoint("BlockWP12") - wp38 = ns.Waypoint("BlockWP13") - wp39 = ns.Waypoint("BlockWP14") - wp40 = ns.Waypoint("BlockWP15") - wp41 = ns.Waypoint("BlockWP16") - gvar42 = ns.ObjectGroup("BlockTrap01Triggers") - gvar43 = ns.ObjectGroup("BlockTrap02Triggers") - gvar44 = ns.ObjectGroup("BlockTrap03Triggers") -} -func BlockTrapBoom(a1 int) { - var v0 int - v0 = a1 - if v0 == 1 { - goto LABEL1 - } - if v0 == 2 { - goto LABEL2 - } - if v0 == 3 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - ns.AudioEvent(ns.HammerMissing, wp28) - ns.Effect(ns.JIGGLE, ns.GetWaypointX(wp28), ns.GetWaypointY(wp28), fvar9, 0) - goto LABEL4 -LABEL2: - ns.AudioEvent(ns.HammerMissing, wp34) - ns.Effect(ns.JIGGLE, ns.GetWaypointX(wp34), ns.GetWaypointY(wp34), fvar9, 0) - goto LABEL4 -LABEL3: - ns.AudioEvent(ns.HammerMissing, wp38) - ns.Effect(ns.JIGGLE, ns.GetWaypointX(wp38), ns.GetWaypointY(wp38), fvar9, 0) - goto LABEL4 -LABEL4: - return -} -func ResetBlockTrap(a1 int) { - var v0 int - v0 = a1 - if v0 == 1 { - goto LABEL1 - } - if v0 == 2 { - goto LABEL2 - } - if v0 == 3 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - ns.ObjectGroupOn(gvar42) - ns.AudioEvent(ns.TriggerReleased, wp28) - goto LABEL4 -LABEL2: - ns.ObjectGroupOn(gvar43) - ns.AudioEvent(ns.TriggerReleased, wp34) - goto LABEL4 -LABEL3: - ns.ObjectGroupOn(gvar44) - ns.AudioEvent(ns.TriggerReleased, wp38) - goto LABEL4 -LABEL4: - return -} -func CloseBlockTrap01() { - ns.ObjectGroupOff(gvar42) - ns.Move(obj10, wp26) - ns.Move(obj11, wp27) - ns.Move(obj12, wp28) - ns.Move(obj13, wp29) - ns.Move(obj14, wp30) - ns.Move(obj15, wp31) - ns.FrameTimerWithArg(ivar8, 1, BlockTrapBoom) - ns.FrameTimerWithArg(ivar7, 1, ResetBlockTrap) -} -func CloseBlockTrap02() { - ns.ObjectGroupOff(gvar43) - ns.Move(obj16, wp32) - ns.Move(obj17, wp33) - ns.Move(obj18, wp34) - ns.Move(obj19, wp35) - ns.Move(obj20, wp36) - ns.Move(obj21, wp37) - ns.FrameTimerWithArg(ivar8, 2, BlockTrapBoom) - ns.FrameTimerWithArg(ivar7, 2, ResetBlockTrap) -} -func CloseBlockTrap03() { - ns.ObjectGroupOff(gvar44) - ns.Move(obj22, wp38) - ns.Move(obj23, wp39) - ns.Move(obj24, wp40) - ns.Move(obj25, wp41) - ns.FrameTimerWithArg(ivar8, 3, BlockTrapBoom) - ns.FrameTimerWithArg(ivar7, 3, ResetBlockTrap) -} -func InitializeFistTraps() { - obj46[0] = ns.Object("FistTrap01") - obj46[1] = ns.Object("FistTrap02") - obj46[2] = ns.Object("FistTrap03") - obj46[3] = ns.Object("FistTrap04") - obj46[4] = ns.Object("FistTrap05") - obj46[5] = ns.Object("FistTrap06") - obj46[6] = ns.Object("FistTrap07") - obj46[7] = ns.Object("FistTrap08") - obj46[8] = ns.Object("FistTrap09") - obj46[9] = ns.Object("FistTrap10") - obj46[10] = ns.Object("FistTrap11") - obj46[11] = ns.Object("FistTrap12") - obj46[12] = ns.Object("FistTrap13") - obj45[0] = ns.Object("FistTrapLight01") - obj45[1] = ns.Object("FistTrapLight02") - obj45[2] = ns.Object("FistTrapLight03") - obj45[3] = ns.Object("FistTrapLight04") - obj45[4] = ns.Object("FistTrapLight05") - obj45[5] = ns.Object("FistTrapLight06") - obj45[6] = ns.Object("FistTrapLight07") - obj45[7] = ns.Object("FistTrapLight08") - obj45[8] = ns.Object("FistTrapLight09") - obj45[9] = ns.Object("FistTrapLight10") - obj45[10] = ns.Object("FistTrapLight11") - obj45[11] = ns.Object("FistTrapLight12") - obj45[12] = ns.Object("FistTrapLight13") -} -func ResetFistTrap(a1 int) { - ns.ObjectOn(obj45[a1]) - ns.ObjectOn(obj46[a1]) - ns.MoveWaypoint(wp48, ns.GetObjectX(obj46[a1]), ns.GetObjectY(obj46[a1])) - ns.AudioEvent(ns.TriggerReleased, wp48) -} -func DropFist(a1 int) { - ns.CastSpellObjectLocation(ns.SPELL_FIST, obj46[a1], ns.GetObjectX(obj46[a1]), ns.GetObjectY(obj46[a1])) - ns.ObjectOff(obj46[a1]) - ns.ObjectOff(obj45[a1]) - ns.FrameTimerWithArg(ivar47, a1, ResetFistTrap) -} -func ActivateFistTrap01() { - DropFist(0) -} -func ActivateFistTrap02() { - DropFist(1) -} -func ActivateFistTrap03() { - DropFist(2) -} -func ActivateFistTrap04() { - DropFist(3) -} -func ActivateFistTrap05() { - DropFist(4) -} -func ActivateFistTrap06() { - DropFist(5) -} -func ActivateFistTrap07() { - DropFist(6) -} -func ActivateFistTrap08() { - DropFist(7) -} -func ActivateFistTrap09() { - DropFist(8) -} -func ActivateFistTrap10() { - DropFist(9) -} -func ActivateFistTrap11() { - DropFist(10) -} -func ActivateFistTrap12() { - DropFist(11) -} -func ActivateFistTrap13() { - DropFist(12) -} -func EnableGuardian() { - ns.WideScreen(false) - ns.AudioEvent(ns.SwordsmanRecognize, wp48) - ns.Frozen(ns.GetHost(), false) - ns.AggressionLevel(obj53, 0.83) - ns.NoWallSound(false) -} -func GuardianEnterFX() { - ns.MoveWaypoint(wp48, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.WallDestroyedStone, wp48) - ns.Effect(ns.JIGGLE, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 10, 0) -} -func GuardianMoveToArena() { - ns.Move(obj53, wp55) -} -func InitializeGuardian() { - obj53 = ns.Object("Guardian") - obj49 = ns.Object("RightGuardianGate") - obj50 = ns.Object("LeftGuardianGate") - obj51 = ns.Object("RightGuardianDoor") - obj52 = ns.Object("LeftGuardianDoor") - obj54 = ns.Object("GuardianDoorTrigger") - wp55 = ns.Waypoint("GuardianArena") - wp56 = ns.Waypoint("GuardianDoorWP") - gvar57 = ns.WallGroup("GuardianWalls") - gvar58 = ns.WallGroup("GuardianDestructableWalls") - ns.LockDoor(obj49) - ns.LockDoor(obj50) -} -func GuardianEnter() { - if !(!flag59 && ns.IsCaller(ns.GetHost())) { - goto LABEL1 - } - ns.ObjectOn(obj54) - ns.MusicPushEvent() - ns.Music(26, 100) - ns.LockDoor(obj51) - ns.LockDoor(obj52) - flag59 = true - ns.WideScreen(true) - ns.Frozen(ns.GetHost(), true) - ns.FrameTimer(60, GuardianMoveToArena) - ns.FrameTimer(30, GuardianEnterFX) -LABEL1: - return -} -func BreakGuardianWalls() { - ns.ObjectOff(ns.GetTrigger()) - ns.NoWallSound(true) - ns.AudioEvent(ns.WallDestroyedStone, wp48) - ns.Effect(ns.JIGGLE, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 10, 0) - ns.WallGroupOpen(gvar57) - ns.WallGroupBreak(gvar58) -} -func GuardianArrivesInArena() { - if !ns.IsCaller(obj53) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.ObjectOff(obj54) - ns.LookAtObject(obj53, ns.GetHost()) - ns.FrameTimer(30, EnableGuardian) -LABEL1: - return -} -func GuardianDie() { - if flag60 { - goto LABEL1 - } - flag60 = true - ns.UnlockDoor(obj50) - ns.UnlockDoor(obj49) - ns.UnlockDoor(obj52) - ns.UnlockDoor(obj51) - ns.MoveWaypoint(wp48, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.FlagDrop, wp48) - ns.PrintToAll("War04d:WarriorDie") - ns.GiveXp(ns.GetHost(), 700) - ns.MusicPopEvent() -LABEL1: - return -} -func ClearGuardianDoor() { - if ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.MoveObject(ns.GetCaller(), ns.GetWaypointX(wp56), ns.GetWaypointY(wp56)) -LABEL1: - return -} -func EnableKeeper() { - ns.LookAtObject(obj64, ns.GetHost()) - ns.AggressionLevel(obj64, 0.83) -} -func InitializeKeeper() { - obj64 = ns.Object("Keeper") - obj65 = ns.Object("LeftKeeperEntranceDoor") - obj66 = ns.Object("RightKeeperEntranceDoor") - obj67 = ns.Object("LeftKeeperExitDoor") - obj68 = ns.Object("RightKeeperExitDoor") - obj69 = ns.Object("KeeperDoorTrigger") - wp70[0] = ns.Waypoint("BlinkWP1") - wp70[1] = ns.Waypoint("BlinkWP2") - wp70[2] = ns.Waypoint("BlinkWP3") - wp70[3] = ns.Waypoint("BlinkWP4") - wp71 = ns.Waypoint("KeeperEnterWP") - wp72 = ns.Waypoint("KeeperDoorWP") - ns.LockDoor(obj67) - ns.LockDoor(obj68) -} -func EnemyGoHome() { - r1 := ns.IsAttackedBy(ns.GetHost(), ns.GetCaller()) - if !(r1 && ns.GetCaller() != obj64) { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func GoInvisible() { - var ( - v0 int - v1 float32 - v2 float32 - v3 float32 - v4 float32 - v5 [4]float32 - v6 float32 - v7 int - ) - v6 = 0 - v7 = 0 - ivar75 += 1 - if gvar63 != gvar62 { - goto LABEL1 - } - gvar63 = gvar61 - return - goto LABEL2 -LABEL1: - gvar63 = gvar62 -LABEL2: - v3 = ns.GetObjectX(obj64) - v4 = ns.GetObjectY(obj64) - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL3 - } - v5[v0] = ns.Distance(v3, v4, ns.GetWaypointX(wp70[v0]), ns.GetWaypointY(wp70[v0])) - v0 += 1 - } -LABEL3: - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL5 - } - if !(v5[v0] > v6) { - goto LABEL6 - } - v6 = v5[v0] - v7 = v0 - LABEL6: - v0 += 1 - } -LABEL5: - if !(ns.CurrentHealth(obj64) > 0) { - goto LABEL8 - } - v1 = ns.GetWaypointX(wp70[v7]) - v2 = ns.GetWaypointY(wp70[v7]) - if !(ivar75 >= 4) { - goto LABEL9 - } - ivar75 = 0 - ns.Enchant(obj64, ns.ENCHANT_INVISIBLE, 3) -LABEL9: - ns.Effect(ns.TELEPORT, v3, v4, 0, 0) - ns.MoveWaypoint(wp48, v3, v4) - ns.AudioEvent(ns.BlinkCast, wp48) - ns.Effect(ns.SMOKE_BLAST, v1, v2, 0, 0) - ns.MoveObject(obj64, v1, v2) -LABEL8: - return -} -func DisableKeeperDoorTrigger() { - ns.ObjectOff(obj69) -} -func KeeperEnter() { - var ( - v0 float32 - v1 float32 - ) - v0 = ns.GetWaypointX(wp71) - v1 = ns.GetWaypointY(wp71) - if !(ns.IsCaller(ns.GetHost()) && flag74 == false) { - goto LABEL1 - } - ns.ObjectOn(obj69) - ns.MusicPushEvent() - ns.Music(4, 100) - flag74 = true - ns.Effect(ns.TELEPORT, v0, v1, 0, 0) - ns.AudioEvent(ns.TeleportIn, wp71) - ns.MoveObject(obj64, v0, v1) - ns.LockDoor(obj65) - ns.LockDoor(obj66) - ns.FrameTimer(1, EnableKeeper) - ns.FrameTimer(30, DisableKeeperDoorTrigger) -LABEL1: - return -} -func KeeperDie() { - if flag73 { - goto LABEL1 - } - ns.MusicPopEvent() - flag73 = true - ns.MoveWaypoint(wp48, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.FlagCapture, wp48) - ns.PrintToAll("War04f:WizardDie") - ns.GiveXp(ns.GetHost(), 1000) - ns.UnlockDoor(obj68) - ns.UnlockDoor(obj67) - ns.UnlockDoor(obj66) - ns.UnlockDoor(obj65) -LABEL1: - return -} -func ClearKeeperDoor() { - if ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.MoveObject(ns.GetCaller(), ns.GetWaypointX(wp72), ns.GetWaypointY(wp72)) -LABEL1: - return -} -func InitializeSkullGuns() { - obj91 = ns.Object("ArrowTrap01") - obj92 = ns.Object("ArrowTrap02") - obj93 = ns.Object("ArrowTrap03") - obj94 = ns.Object("ArrowTrap04") - obj95 = ns.Object("ArrowTrap05") - obj96 = ns.Object("ArrowTrap06") - obj97 = ns.Object("ArrowTrap07") - obj98 = ns.Object("ArrowTrap08") - obj99 = ns.Object("ArrowTrap09") - obj100 = ns.Object("ArrowTrap10") - obj101 = ns.Object("ArrowTrap11") -} -func InitializeMonsterGroups() { - gvar77 = ns.ObjectGroup("MonsterGroup01") -} -func MapInitialize() { - wp48 = ns.Waypoint("AudioOrigin") - wp76 = ns.Waypoint("SecretAudioOrigin") - InitializeSkullGuns() - InitializeSkeletonAmbush() - InitializeGuardian() - InitializeKeeper() - InitializeFistTraps() - InitializeHallwayArrowTraps() - InitializeMonsterGroups() - InitializeBlockTrap() -} -func PlayerDeath() { - ns.DeathScreen(4) -} -func EnableMonsterGroup01() { - ns.ObjectOff(ns.GetTrigger()) - ns.ObjectGroupOn(gvar77) -} -func SecretSFX() { - ns.MoveWaypoint(wp76, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretFound, wp76) -} -func Secret01Found() { - ns.ObjectOff(ns.GetTrigger()) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 100) - ns.AggressionLevel(ns.Object("Secret01Spider"), 0.83) - SecretSFX() -} -func Secret02Found() { - ns.ObjectOff(ns.GetTrigger()) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 50) - SecretSFX() -} -func CheckRows(a1 int) { - var v0 int - v0 = a1 - if v0 == 1 { - goto LABEL1 - } - if v0 == 2 { - goto LABEL2 - } - if v0 == 3 { - goto LABEL3 - } - if v0 == 4 { - goto LABEL4 - } - if v0 == 5 { - goto LABEL5 - } - if v0 == 6 { - goto LABEL6 - } - if v0 == 7 { - goto LABEL7 - } - if v0 == 8 { - goto LABEL8 - } - if v0 == 9 { - goto LABEL9 - } - if v0 == 10 { - goto LABEL10 - } - if v0 == 11 { - goto LABEL11 - } - goto LABEL12 -LABEL1: - if !(ivar78 > 0) { - goto LABEL13 - } - ns.ObjectOn(obj91) - goto LABEL14 -LABEL13: - ns.ObjectOff(obj91) -LABEL14: - goto LABEL12 -LABEL2: - if !(ivar79 > 0) { - goto LABEL15 - } - ns.ObjectOn(obj92) - goto LABEL16 -LABEL15: - ns.ObjectOff(obj92) -LABEL16: - goto LABEL12 -LABEL3: - if !(ivar80 > 0) { - goto LABEL17 - } - ns.ObjectOn(obj93) - goto LABEL18 -LABEL17: - ns.ObjectOff(obj93) -LABEL18: - goto LABEL12 -LABEL4: - if !(ivar81 > 0) { - goto LABEL19 - } - ns.ObjectOn(obj94) - goto LABEL20 -LABEL19: - ns.ObjectOff(obj94) -LABEL20: - goto LABEL12 -LABEL5: - if !(ivar82 > 0) { - goto LABEL21 - } - ns.ObjectOn(obj95) - goto LABEL22 -LABEL21: - ns.ObjectOff(obj95) -LABEL22: - goto LABEL12 -LABEL6: - if !(ivar83 > 0) { - goto LABEL23 - } - ns.ObjectOn(obj96) - goto LABEL24 -LABEL23: - ns.ObjectOff(obj96) -LABEL24: - goto LABEL12 -LABEL7: - if !(ivar84 > 0) { - goto LABEL25 - } - ns.ObjectOn(obj97) - goto LABEL26 -LABEL25: - ns.ObjectOff(obj97) -LABEL26: - goto LABEL12 -LABEL8: - if !(ivar85 > 0) { - goto LABEL27 - } - ns.ObjectOn(obj98) - goto LABEL28 -LABEL27: - ns.ObjectOff(obj98) -LABEL28: - goto LABEL12 -LABEL9: - if !(ivar86 > 0) { - goto LABEL29 - } - ns.ObjectOn(obj99) - goto LABEL30 -LABEL29: - ns.ObjectOff(obj99) -LABEL30: - goto LABEL12 -LABEL10: - if !(ivar87 > 0) { - goto LABEL31 - } - ns.ObjectOn(obj100) - goto LABEL32 -LABEL31: - ns.ObjectOff(obj100) -LABEL32: - goto LABEL12 -LABEL11: - if !(ivar88 > 0) { - goto LABEL33 - } - ns.ObjectOn(obj101) - goto LABEL34 -LABEL33: - ns.ObjectOff(obj101) -LABEL34: - goto LABEL12 -LABEL12: - return -} -func ActivateRow01() { - ivar78 += 1 - CheckRows(1) -} -func DisableRow01() { - ivar78 -= 1 - CheckRows(1) -} -func ActivateRow02() { - ivar79 += 1 - CheckRows(2) -} -func DisableRow02() { - ivar79 -= 1 - CheckRows(2) -} -func ActivateRow03() { - ivar80 += 1 - CheckRows(3) -} -func DisableRow03() { - ivar80 -= 1 - CheckRows(3) -} -func ActivateRow04() { - ivar81 += 1 - CheckRows(4) -} -func DisableRow04() { - ivar81 -= 1 - CheckRows(4) -} -func ActivateRow05() { - ivar82 += 1 - CheckRows(5) -} -func DisableRow05() { - ivar82 -= 1 - CheckRows(5) -} -func ActivateRow06() { - ivar83 += 1 - CheckRows(6) -} -func DisableRow06() { - ivar83 -= 1 - CheckRows(6) -} -func ActivateRow07() { - ivar84 += 1 - CheckRows(7) -} -func DisableRow07() { - ivar84 -= 1 - CheckRows(7) -} -func ActivateRow08() { - ivar85 += 1 - CheckRows(8) -} -func DisableRow08() { - ivar85 -= 1 - CheckRows(8) -} -func ActivateRow09() { - ivar86 += 1 - CheckRows(9) -} -func DisableRow09() { - ivar86 -= 1 - CheckRows(9) -} -func ActivateRow10() { - ivar87 += 1 - CheckRows(10) -} -func DisableRow10() { - ivar87 -= 1 - CheckRows(10) -} -func ActivateRow11() { - ivar88 += 1 - CheckRows(11) -} -func DisableRow11() { - ivar88 -= 1 - CheckRows(11) -} -func OnEvent(typ string) { - switch typ { - case "MapInitialize": - MapInitialize() - case "PlayerDeath": - PlayerDeath() - } -} diff --git a/examples/wiz05a/dummy_test.go b/examples/wiz05a/dummy_test.go deleted file mode 100644 index 6c8ec32..0000000 --- a/examples/wiz05a/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package wiz05a - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/wiz05a/wiz05a.go b/examples/wiz05a/wiz05a.go deleted file mode 100644 index fce8c63..0000000 --- a/examples/wiz05a/wiz05a.go +++ /dev/null @@ -1,1712 +0,0 @@ -package wiz05a - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - gvar4 int - gvar5 int - gvar6 int - gvar7 int - gvar8 int - gvar9 int - gvar10 int - gvar11 int - gvar12 int - gvar13 int - gvar14 int - gvar15 int - gvar16 int - gvar17 int - gvar18 int - gvar19 int - gvar20 int - gvar21 int - gvar22 int - gvar23 int - gvar24 int - gvar25 int - gvar26 int - gvar27 int - gvar28 int - gvar29 int - wp30 ns.WaypointID - wp31 ns.WaypointID - wp32 ns.WaypointID - wp33 ns.WaypointID - wp34 ns.WaypointID - wp35 ns.WaypointID - wp36 ns.WaypointID - wp37 ns.WaypointID - wp38 ns.WaypointID - wp39 ns.WaypointID - obj40 ns.ObjectID - wp41 ns.WaypointID - wp42 ns.WaypointID - obj43 ns.ObjectID - obj44 ns.ObjectID - obj45 ns.ObjectID - obj46 ns.ObjectID - obj47 ns.ObjectID - obj48 ns.ObjectID - obj49 ns.ObjectID - obj50 ns.ObjectID - obj51 ns.ObjectID - obj52 ns.ObjectID - obj53 ns.ObjectID - obj54 ns.ObjectID - obj55 ns.ObjectID - obj56 ns.ObjectID - obj57 ns.ObjectID - obj58 ns.ObjectID - obj59 ns.ObjectID - obj60 ns.ObjectID - obj61 ns.ObjectID - obj62 ns.ObjectID - obj63 ns.ObjectID - obj64 ns.ObjectID - gvar65 ns.ObjectGroupID - gvar66 ns.ObjectGroupID - gvar67 ns.ObjectGroupID - ivar68 int - gvar69 int - gvar70 int - flag71 bool - gvar72 int - gvar73 int - gvar74 int - gvar75 int - gvar76 int - gvar77 int - gvar78 int - gvar79 int - gvar80 int - gvar81 int - gvar82 int - gvar83 int - gvar84 int - gvar85 int - gvar86 int - flag87 bool - flag88 bool - obj89 ns.ObjectID - obj90 ns.ObjectID - obj91 ns.ObjectID - obj92 ns.ObjectID - obj93 ns.ObjectID - obj94 ns.ObjectID - obj95 ns.ObjectID - obj96 ns.ObjectID - obj97 ns.ObjectID - obj98 ns.ObjectID - obj99 ns.ObjectID - obj100 ns.ObjectID - obj101 ns.ObjectID - obj102 ns.ObjectID - obj103 ns.ObjectID - obj104 ns.ObjectID - obj105 ns.ObjectID - obj106 ns.ObjectID - obj107 ns.ObjectID - obj108 ns.ObjectID - obj109 ns.ObjectID - obj110 ns.ObjectID - gvar111 int - obj112 ns.ObjectID - gvar113 int - gvar114 int - obj115 ns.ObjectID - obj116 ns.ObjectID - obj117 ns.ObjectID - wp118 int - wp119 int - obj120 ns.ObjectID - obj121 ns.ObjectID - obj122 ns.ObjectID - obj123 ns.ObjectID - obj124 ns.ObjectID - obj125 ns.ObjectID - obj126 ns.ObjectID - obj127 ns.ObjectID - obj128 ns.ObjectID - obj129 ns.ObjectID - obj130 ns.ObjectID - obj131 ns.ObjectID - obj132 ns.ObjectID - obj133 ns.ObjectID - obj134 ns.ObjectID - obj135 ns.ObjectID - obj136 ns.ObjectID - obj137 ns.ObjectID - obj138 ns.ObjectID - obj139 ns.ObjectID - obj140 ns.ObjectID - obj141 ns.ObjectID - obj142 ns.ObjectID - obj143 ns.ObjectID - obj144 ns.ObjectID - obj145 ns.ObjectID - obj146 ns.ObjectID - gvar147 int - gvar148 int - gvar149 int - gvar150 int - obj151 ns.ObjectID - obj152 ns.ObjectID - obj153 ns.ObjectID - obj154 ns.ObjectID - obj155 ns.ObjectID - obj156 ns.ObjectID - obj157 ns.ObjectID - obj158 ns.ObjectID - obj159 ns.ObjectID - obj160 ns.ObjectID - gvar161 int - wp162 ns.WaypointID - wp163 ns.WaypointID - wp164 ns.WaypointID - wp165 ns.WaypointID - wp166 ns.WaypointID - wp167 ns.WaypointID - wp168 ns.WaypointID - gvar169 int - gvar170 int - gvar171 int - gvar172 int - gvar173 int - gvar174 int - wp175 ns.WaypointID - wp176 ns.WaypointID - wp177 ns.WaypointID - wp178 ns.WaypointID - wp179 ns.WaypointID - wp180 ns.WaypointID - wp181 ns.WaypointID - wp182 ns.WaypointID - wp183 ns.WaypointID - wp184 ns.WaypointID - wp185 ns.WaypointID - wp186 ns.WaypointID - wp187 ns.WaypointID - wp188 ns.WaypointID - wp189 ns.WaypointID - wp190 ns.WaypointID - wp191 ns.WaypointID - wp192 ns.WaypointID - wp193 ns.WaypointID - wp194 ns.WaypointID - wp195 ns.WaypointID - ivar196 int -) - -func init() { - gvar4 = 0 - gvar5 = 1 - gvar6 = 2 - gvar7 = 3 - gvar8 = 4 - gvar9 = 5 - gvar10 = 0 - gvar11 = 1 - gvar12 = 0 - gvar13 = 1 - gvar14 = 0 - gvar15 = 1 - gvar16 = 2 - gvar17 = 3 - gvar18 = 4 - gvar19 = 5 - gvar20 = 0 - gvar21 = 1 - gvar22 = 2 - gvar23 = 3 - gvar24 = 0 - gvar25 = 1 - gvar26 = 0 - gvar27 = 1 - gvar28 = 2 - gvar29 = 3 - ivar68 = 0 - gvar69 = 0 - gvar70 = 0 - flag71 = false - gvar72 = gvar4 - gvar73 = gvar10 - gvar74 = gvar12 - gvar75 = gvar20 - gvar76 = gvar14 - gvar77 = gvar24 - gvar84 = 0 - gvar85 = 0 - gvar86 = 0 - flag88 = false - ivar196 = 0 -} -func OgreDeath() { - ivar68 += 1 - if !(ivar68 >= 4) { - goto LABEL1 - } - ns.ObjectGroupOff(gvar67) - SetTownDialog() - ns.CreatureGuard(obj102, ns.GetWaypointX(wp164), ns.GetWaypointY(wp164), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - ns.Music(23, 100) -LABEL1: - return -} -func SetTownDialog() { - ns.SetDialog(obj152, ns.NORMAL, Villager1Start, Villager1End) - ns.StoryPic(obj152, "MalePic8") - ns.SetDialog(obj153, ns.NORMAL, Villager2Start, Villager2End) - ns.StoryPic(obj153, "MalePic3") - ns.SetDialog(obj154, ns.NORMAL, Villager3Start, Villager3End) - ns.StoryPic(obj154, "MalePic2") - ns.SetDialog(obj155, ns.NORMAL, Villager4Start, Villager4End) - ns.StoryPic(obj155, "MalePic14") - ns.SetDialog(obj156, ns.NORMAL, Villager5Start, Villager5End) - ns.StoryPic(obj156, "MalePic9") -} -func CaptainGuard() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - ) - v0 = ns.GetWaypointX(wp32) - v1 = ns.GetWaypointY(wp32) - v2 = ns.GetObjectX(ns.GetHost()) - v3 = ns.GetObjectY(ns.GetHost()) - ns.CreatureGuard(obj93, v0, v1, v2, v3, 0) -} -func EnterCaptainArea() { - if !(ns.IsCaller(ns.GetHost()) && flag71 == false) { - goto LABEL1 - } - flag71 = true - LetterBoxOn() - ns.Frozen(ns.GetHost(), true) - ns.Move(obj93, wp33) - ns.FrameTimer(60, ExitCaptainArea) -LABEL1: - return -} -func ExitCaptainArea() { - ns.LookAtObject(obj93, ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj93) - ns.StartDialog(obj93, ns.GetHost()) -} -func ExitCaptainArea2() { - LetterBoxOff() - CaptainGuard() - ns.FrameTimer(30, ExitCaptainArea3) -} -func ExitCaptainArea3() { - ns.Frozen(ns.GetHost(), false) -} -func CheckForHorvath() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - if ns.GetQuestStatus("Wiz05B:GotHorvath") != 1 { - goto LABEL1 - } - ns.Frozen(ns.GetHost(), true) - ns.CreatureIdle(ns.GetHost()) - ns.LookAtObject(ns.GetHost(), ns.ObjectID(wp39)) // FIXME - ns.WideScreen(true) - ns.Move(obj93, wp39) -LABEL1: - return -} -func CaptainCongrat() { - if !ns.IsCaller(obj93) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.SetDialog(obj93, ns.NEXT, CaptainCongratStart, CaptainCongratEnd) - ns.Frozen(obj93, true) - ns.CreatureIdle(obj93) - ns.LookAtObject(obj93, ns.GetHost()) - ns.StartDialog(obj93, ns.GetHost()) -LABEL1: - return -} -func CaptainCongratStart() { - ns.TellStory(ns.HumanMaleEatFood, "Wiz05B.scr:CaptainReturned") -} -func CaptainCongratEnd() { - ns.CancelDialog(obj93) - ns.StoryPic(obj57, "HorvathPic") - ns.SetDialog(obj57, ns.NORMAL, HorvathCongratStart, HorvathCongratEnd) - ns.Pickup(ns.GetHost(), obj58) - ns.StartDialog(obj57, ns.GetHost()) -} -func HorvathCongratStart() { - ns.TellStory(ns.HumanMaleEatFood, "Wiz05B.scr:HorvathIdle") -} -func HorvathCongratEnd() { - ns.CancelDialog(obj57) - ns.GiveXp(ns.GetHost(), 1000) - ns.WideScreen(false) - ns.Blind() - ns.Frozen(ns.GetHost(), false) - ns.MakeEnemy(obj57) - ns.FrameTimer(45, ChangeMaps) -} -func ChangeMaps() { - ns.MoveObject(ns.GetHost(), 3955, 1051) -} -func KillCorpses() { - ns.FrameTimer(30, KillCorpses2) -} -func SwordsmanStart() { - var v0 int - ns.Frozen(obj116, true) - ns.CreatureIdle(obj116) - ns.LookAtObject(obj116, ns.GetHost()) - v0 = gvar74 - if v0 == gvar12 { - goto LABEL1 - } - if v0 == gvar13 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.LookAtObject(obj116, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:SwordsmanGreeting") - goto LABEL3 -LABEL2: - ns.LookAtObject(obj116, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:SwordsmanEnd") - goto LABEL3 -LABEL3: - return -} -func SwordsmanEnd() { - var v0 int - ns.Frozen(obj116, false) - ns.CreatureGuard(obj116, ns.GetWaypointX(wp162), ns.GetWaypointY(wp162), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 240) - v0 = gvar74 - if v0 == gvar12 { - goto LABEL1 - } - if v0 == gvar13 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.FrameTimer(1, SwordsmanTriggerC) - gvar74 = gvar13 - goto LABEL3 -LABEL2: - ns.LookAtDirection(obj116, ns.NE) - goto LABEL3 -LABEL3: - return -} -func DrunkStart() { - ns.LookAtObject(ns.GetTrigger(), ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:DrunkGreeting") -} -func DrunkEnd() { - ns.LookAtDirection(ns.GetTrigger(), ns.NW) -} -func FarmerStart() { - var ( - v0 float32 - v1 float32 - v2 int - ) - _ = v1 - _ = v0 - v2 = gvar72 - if v2 == gvar4 { - goto LABEL1 - } - if v2 == gvar5 { - goto LABEL2 - } - if v2 == gvar6 { - goto LABEL3 - } - if v2 == gvar7 { - goto LABEL4 - } - if v2 == gvar8 { - goto LABEL5 - } - if v2 == gvar9 { - goto LABEL6 - } - goto LABEL7 -LABEL1: - if !ns.HasItem(ns.GetHost(), obj101) { - goto LABEL8 - } - gvar72 = gvar7 - ns.SetDialog(obj102, ns.NORMAL, FarmerStart, FarmerEnd) - FarmerStart() - goto LABEL7 - goto LABEL2 -LABEL8: - ns.CreatureIdle(obj102) - ns.LookAtObject(obj102, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:FarmerGreeting") - goto LABEL7 -LABEL2: - ns.CreatureIdle(obj102) - ns.LookAtObject(obj102, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:FarmerGreeting") - goto LABEL7 -LABEL3: - ns.CreatureIdle(obj102) - ns.LookAtObject(obj102, ns.GetHost()) - if !ns.HasItem(ns.GetHost(), obj101) { - goto LABEL9 - } - v0 = ns.GetWaypointX(wp164) - v1 = ns.GetWaypointY(wp164) - gvar72 = gvar7 - FarmerStart() - goto LABEL4 -LABEL9: - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:FarmerWaiting") - goto LABEL7 -LABEL4: - ns.CreatureIdle(obj102) - ns.LookAtObject(obj102, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:FarmerReturned") - goto LABEL7 -LABEL5: - ns.CreatureIdle(obj102) - ns.LookAtObject(obj102, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:FarmerIdle") - goto LABEL7 -LABEL6: - if !ns.HasItem(ns.GetHost(), obj101) { - goto LABEL10 - } - gvar72 = gvar7 - FarmerStart() - goto LABEL7 -LABEL10: - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:FarmerHuffy") - goto LABEL7 -LABEL7: - return -} -func FarmerEnd() { - var ( - v0 int - v1 int - v2 int - v3 ns.ObjectID - v4 int - ) - v0 = 0 - v1 = 1 - v2 = 2 - v3 = 0 - v0 = ns.GetAnswer(obj102) - v4 = gvar72 - if v4 == gvar4 { - goto LABEL1 - } - if v4 == gvar5 { - goto LABEL2 - } - if v4 == gvar6 { - goto LABEL3 - } - if v4 == gvar7 { - goto LABEL4 - } - if v4 == gvar8 { - goto LABEL5 - } - if v4 == gvar9 { - goto LABEL6 - } - goto LABEL7 -LABEL1: - if v0 != v1 { - goto LABEL8 - } - gvar72 = gvar6 - ns.SetDialog(obj102, ns.NORMAL, FarmerStart, FarmerEnd) - ns.PrintToAll("Con01a:NewJournalEntry") - ns.JournalEntry(ns.GetHost(), "War05Quest8", 2) - goto LABEL7 - goto LABEL2 -LABEL8: - if v0 != v2 { - goto LABEL9 - } - ns.SetDialog(obj102, ns.YESNO, FarmerStart, FarmerEnd) - gvar72 = gvar5 - goto LABEL7 - goto LABEL2 -LABEL9: - if obj102 != v3 { - goto LABEL2 - } - gvar72 = gvar4 -LABEL2: - if v0 != v1 { - goto LABEL10 - } - gvar72 = gvar6 - ns.SetDialog(obj102, ns.NORMAL, FarmerStart, FarmerEnd) - ns.PrintToAll("Con01a:NewJournalEntry") - ns.JournalEntry(ns.GetHost(), "War05Quest8", 2) - goto LABEL7 - goto LABEL3 -LABEL10: - if v0 != v2 { - goto LABEL11 - } - ns.SetDialog(obj102, ns.NORMAL, FarmerStart, FarmerEnd) - gvar72 = gvar9 - goto LABEL7 - goto LABEL3 -LABEL11: - if obj102 != v3 { - goto LABEL3 - } - gvar72 = gvar4 -LABEL3: - goto LABEL7 -LABEL4: - ns.JournalEdit(ns.GetHost(), "War05Quest8", 4) - ns.PrintToAll("War05A.scr:ObjectiveComplete") - ns.GiveXp(ns.GetHost(), 250) - ns.Pickup(ns.GetHost(), obj99) - ns.Delete(obj101) - EndCurse() - gvar72 = gvar8 - goto LABEL7 -LABEL5: - goto LABEL7 -LABEL6: - goto LABEL7 -LABEL7: - return -} -func HoundStart() { - ns.CreatureIdle(obj103) - ns.LookAtObject(obj103, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:HoundGreeting") -} -func HoundEnd() { - ns.SetRoamFlag(obj103, 2) - ns.Wander(obj103) -} -func FarmerWifeStart() { - var v0 int - v0 = gvar73 - if v0 == gvar10 { - goto LABEL1 - } - if v0 == gvar11 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.LookAtObject(obj104, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:FarmerWifeGreeting") - goto LABEL3 -LABEL2: - ns.LookAtObject(obj104, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:FarmerWifeIdle") - goto LABEL3 -LABEL3: - return -} -func FarmerWifeEnd() { - var v0 int - v0 = gvar73 - if v0 == gvar10 { - goto LABEL1 - } - if v0 == gvar11 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - gvar73 = gvar11 - LetterBoxOff() - ns.Frozen(ns.GetHost(), false) - goto LABEL3 -LABEL2: - goto LABEL3 -LABEL3: - return -} -func CaptainStart() { - var v0 int - v0 = gvar77 - if v0 == gvar24 { - goto LABEL1 - } - if v0 == gvar25 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.LookAtObject(obj93, ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj93) - ns.TellStory(ns.SwordsmanHurt, "Wiz05A.scr:CaptainGreeting") - goto LABEL3 -LABEL2: - ns.LookAtObject(obj93, ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj93) - ns.TellStory(ns.SwordsmanHurt, "Wiz05A.scr:CaptainWaiting") - goto LABEL3 -LABEL3: - return -} -func CaptainEnd() { - var v0 int - v0 = gvar77 - if v0 == gvar24 { - goto LABEL1 - } - if v0 == gvar25 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.PrintToAll("Con01a:NewJournalEntry") - ns.JournalEntry(ns.GetHost(), "Wiz05Quest1", 2) - ExitCaptainArea2() - gvar77 = gvar25 - goto LABEL3 -LABEL2: - goto LABEL3 -LABEL3: - return -} -func BartenderStart() { - ns.Frozen(obj95, true) - ns.LookAtObject(obj95, ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj95) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:BartenderGreeting") -} -func BartenderEnd() { - ns.Frozen(obj95, false) - ns.LookAtDirection(obj95, ns.SE) -} -func EndCurse() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 float32 - v5 float32 - v6 float32 - v7 float32 - v8 float32 - v9 float32 - ) - _ = v7 - _ = v6 - _ = v3 - _ = v2 - _ = v1 - _ = v0 - v8 = ns.GetWaypointX(wp164) - v9 = ns.GetWaypointY(wp164) - v0 = ns.GetWaypointX(wp180) - v1 = ns.GetWaypointY(wp180) - v2 = ns.GetWaypointX(wp178) - v3 = ns.GetWaypointY(wp178) - v6 = ns.GetWaypointX(wp179) - v7 = ns.GetWaypointY(wp179) - v4 = ns.GetObjectX(obj103) - v5 = ns.GetObjectY(obj103) - ns.Frozen(ns.GetHost(), true) - LetterBoxOn() - ns.AudioEvent(ns.CurePoisonCast, wp164) - ns.AudioEvent(ns.CurePoisonEffect, wp164) - ns.Effect(ns.LIGHTNING, v8, v9, v4, v5) - ns.FrameTimer(10, EndCurse2) -} -func EndCurse2() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 float32 - v5 float32 - v6 float32 - v7 float32 - v8 float32 - v9 float32 - ) - _ = v7 - _ = v6 - _ = v3 - _ = v2 - _ = v1 - _ = v0 - v8 = ns.GetWaypointX(wp164) - v9 = ns.GetWaypointY(wp164) - v0 = ns.GetWaypointX(wp180) - v1 = ns.GetWaypointY(wp180) - v2 = ns.GetWaypointX(wp178) - v3 = ns.GetWaypointY(wp178) - v6 = ns.GetWaypointX(wp179) - v7 = ns.GetWaypointY(wp179) - v4 = ns.GetObjectX(obj103) - v5 = ns.GetObjectY(obj103) - ns.Effect(ns.LIGHTNING, v8, v9, v4, v5) - ns.FrameTimer(7, EndCurse3) -} -func EndCurse3() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 float32 - v5 float32 - v6 float32 - v7 float32 - v8 float32 - v9 float32 - ) - _ = v7 - _ = v6 - _ = v3 - _ = v2 - _ = v1 - _ = v0 - v8 = ns.GetWaypointX(wp164) - v9 = ns.GetWaypointY(wp164) - v0 = ns.GetWaypointX(wp180) - v1 = ns.GetWaypointY(wp180) - v2 = ns.GetWaypointX(wp178) - v3 = ns.GetWaypointY(wp178) - v6 = ns.GetWaypointX(wp179) - v7 = ns.GetWaypointY(wp179) - v4 = ns.GetObjectX(obj103) - v5 = ns.GetObjectY(obj103) - ns.Effect(ns.LIGHTNING, v8, v9, v4, v5) - ns.FrameTimer(3, EndCurse4) -} -func EndCurse4() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 float32 - v5 float32 - v6 float32 - v7 float32 - v8 float32 - v9 float32 - ) - v8 = ns.GetWaypointX(wp164) - v9 = ns.GetWaypointY(wp164) - v0 = ns.GetWaypointX(wp180) - v1 = ns.GetWaypointY(wp180) - v2 = ns.GetWaypointX(wp178) - v3 = ns.GetWaypointY(wp178) - v6 = ns.GetWaypointX(wp179) - v7 = ns.GetWaypointY(wp179) - v4 = ns.GetObjectX(obj103) - v5 = ns.GetObjectY(obj103) - ns.Effect(ns.BLUE_SPARKS, v4, v5, 0, 0) - ns.MoveObject(obj103, v0, v1) - ns.MoveObject(obj104, v4, v5) - ns.CreatureGuard(obj104, v2, v3, v6, v7, 0) - ns.CreatureGuard(obj102, v8, v9, v8, v9, 0) -} -func EndCurse5() { - if !ns.IsCaller(obj104) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.LookAtObject(obj104, ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj104) - ns.StartDialog(obj104, ns.GetHost()) -LABEL1: - return -} -func FrogStart() { - var v0 int - v0 = gvar75 - if v0 == gvar20 { - goto LABEL1 - } - if v0 == gvar21 { - goto LABEL2 - } - if v0 == gvar22 { - goto LABEL3 - } - if v0 == gvar23 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - ns.LookAtObject(obj106, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:FrogGreeting") - ns.Frozen(obj106, false) - ns.ObjectOff(obj108) - ns.ObjectOff(obj109) - ns.ObjectOff(obj110) - ns.ObjectOn(obj106) - ns.CreatureFollow(obj106, ns.GetHost()) - goto LABEL5 -LABEL2: - ns.LookAtObject(obj106, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:FrogFollowing") - goto LABEL5 -LABEL3: - ns.LookAtObject(obj106, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:FrogThanks") - goto LABEL5 -LABEL4: - ns.LookAtObject(obj106, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:FrogIdle") - goto LABEL5 -LABEL5: - return -} -func FrogEnd() { - var v0 int - v0 = gvar75 - if v0 == gvar20 { - goto LABEL1 - } - if v0 == gvar21 { - goto LABEL2 - } - if v0 == gvar22 { - goto LABEL3 - } - if v0 == gvar23 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - gvar75 = gvar21 - goto LABEL5 -LABEL2: - goto LABEL5 -LABEL3: - gvar75 = gvar23 - goto LABEL5 -LABEL4: - goto LABEL5 -LABEL5: - return -} -func FrogGuard() { - if !ns.IsCaller(obj106) { - goto LABEL1 - } - if flag88 { - goto LABEL1 - } - flag88 = true - gvar75 = gvar22 - ns.Enchant(obj106, ns.ENCHANT_INVULNERABLE, 0) - gvar76 = gvar16 - ns.SetDialog(obj105, ns.NORMAL, SadVillagerStart, SadVillagerEnd) - ns.StartDialog(obj105, ns.GetHost()) - gvar86 = 1 -LABEL1: - return -} -func Villager1Start() { - ns.Frozen(obj152, true) - ns.CreatureIdle(obj152) - ns.LookAtObject(obj152, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "Con05:Townsman9Talk01") -} -func Villager1End() { - ns.Frozen(obj152, false) - ns.Wander(obj152) -} -func Villager2Start() { - ns.Frozen(obj153, true) - ns.CreatureIdle(obj153) - ns.LookAtObject(obj153, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "Con05:Townsman10Talk01") -} -func Villager2End() { - ns.Frozen(obj153, false) - ns.Wander(obj153) -} -func Villager3Start() { - ns.Frozen(obj154, true) - ns.CreatureIdle(obj154) - ns.LookAtObject(obj154, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "Con05:Townsman11Talk01") -} -func Villager3End() { - ns.Frozen(obj154, false) - ns.Wander(obj154) -} -func Villager4Start() { - ns.Frozen(obj155, true) - ns.CreatureIdle(obj155) - ns.LookAtObject(obj155, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "Con05:Townsman11Talk02") -} -func Villager4End() { - ns.Frozen(obj155, false) - ns.Wander(obj155) -} -func Villager5Start() { - ns.Frozen(obj156, true) - ns.CreatureIdle(obj156) - ns.LookAtObject(obj156, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:VillagerGreeting") -} -func Villager5End() { - ns.Frozen(obj156, false) - ns.Wander(obj156) -} -func SadVillagerStart() { - var ( - v0 float32 - v1 float32 - v2 int - ) - _ = v1 - _ = v0 - v2 = gvar76 - if v2 == gvar14 { - goto LABEL1 - } - if v2 == gvar15 { - goto LABEL2 - } - if v2 == gvar16 { - goto LABEL3 - } - if v2 == gvar17 { - goto LABEL4 - } - if v2 == gvar18 { - goto LABEL5 - } - if v2 == gvar19 { - goto LABEL6 - } - goto LABEL7 -LABEL1: - ns.LookAtObject(obj105, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:SadVillagerGreeting") - goto LABEL7 -LABEL2: - ns.LookAtObject(obj105, ns.GetHost()) - if gvar86 != 1 { - goto LABEL8 - } - v0 = ns.GetWaypointX(wp175) - v1 = ns.GetWaypointY(wp175) - ns.AudioEvent(ns.CurePoisonCast, wp175) - ns.AudioEvent(ns.CurePoisonEffect, wp175) - gvar76 = gvar16 - ns.SetDialog(obj105, ns.NEXT, SadVillagerStart, SadVillagerEnd) - ns.CreatureFollow(obj106, obj105) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:SadVillagerReturned") - goto LABEL3 -LABEL8: - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:SadVillagerWaiting") - goto LABEL7 -LABEL3: - ns.LookAtObject(obj105, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:SadVillagerReturned") - goto LABEL7 -LABEL4: - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:SadVillagerIdle") - goto LABEL7 -LABEL5: - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:SadVillagerDead") - goto LABEL7 -LABEL6: - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:SadVillagerDeadIdle") - goto LABEL7 -LABEL7: - return -} -func SadVillagerEnd() { - var ( - v0 int - v1 int - v2 int - v3 int - v4 int - ) - _ = v3 - _ = v2 - _ = v1 - v0 = 0 - v1 = 1 - v2 = 2 - v3 = 0 - v0 = ns.GetAnswer(obj105) - v4 = gvar76 - if v4 == gvar14 { - goto LABEL1 - } - if v4 == gvar15 { - goto LABEL2 - } - if v4 == gvar16 { - goto LABEL3 - } - if v4 == gvar17 { - goto LABEL4 - } - if v4 == gvar18 { - goto LABEL5 - } - if v4 == gvar19 { - goto LABEL6 - } - goto LABEL7 -LABEL1: - if v0 != 1 { - goto LABEL8 - } - gvar76 = gvar15 - ns.SetDialog(obj105, ns.NORMAL, SadVillagerStart, SadVillagerEnd) - ns.JournalEntry(ns.GetHost(), "War05Quest9", 2) - ns.PrintToAll("Con01a:NewJournalEntry") - goto LABEL7 -LABEL8: - if v0 != 2 { - goto LABEL9 - } - gvar76 = gvar14 - ns.SetDialog(obj105, ns.YESNO, SadVillagerStart, SadVillagerEnd) - goto LABEL7 -LABEL9: - if v0 != 0 { - goto LABEL2 - } - gvar76 = gvar14 - ns.SetDialog(obj105, ns.YESNO, SadVillagerStart, SadVillagerEnd) - goto LABEL7 -LABEL2: - ns.SetDialog(obj105, ns.NORMAL, SadVillagerStart, SadVillagerEnd) - goto LABEL7 -LABEL3: - gvar76 = gvar17 - ns.SetDialog(obj105, ns.NORMAL, SadVillagerStart, SadVillagerEnd) - ns.JournalEdit(ns.GetHost(), "War05Quest9", 4) - ns.PrintToAll("War05A.scr:ObjectiveComplete") - ns.GiveXp(ns.GetHost(), 250) - ns.Pickup(ns.GetHost(), obj98) - ns.FrameTimer(1, FrogThanksPlayer) - ns.FrameTimer(1, SadVillagerGuard) - goto LABEL7 -LABEL4: - ns.SetDialog(obj105, ns.NORMAL, SadVillagerStart, SadVillagerEnd) - goto LABEL7 -LABEL5: - gvar76 = gvar19 - ns.Move(obj105, wp175) - ns.SetCallback(obj105, 9, DummyBump) - ns.JournalDelete(ns.GetHost(), "War05Quest9") - ns.PrintToAll("War05A.scr:ObjectiveFailed") - ns.SetDialog(obj105, ns.NORMAL, SadVillagerStart, SadVillagerEnd) - goto LABEL7 -LABEL6: - ns.CancelDialog(obj105) - goto LABEL7 -LABEL7: - return -} -func OwnVillagers() { - ns.FrameTimer(1, OwnVillagers2) -} -func OwnVillagers2() { - ns.Frozen(obj152, true) - ns.Frozen(obj153, true) - ns.Frozen(obj154, true) - ns.Frozen(obj155, true) - ns.Frozen(obj156, true) - ns.Frozen(obj157, true) - ns.Frozen(obj158, true) - ns.Frozen(obj159, true) - ns.Frozen(obj160, true) - ns.Frozen(obj51, true) - ns.Frozen(obj52, true) - ns.Frozen(obj49, true) - ns.Frozen(obj50, true) - ns.Frozen(obj53, true) -} -func KillCorpses2() { - ns.Damage(obj120, 0, 300, 5) - ns.Damage(obj121, 0, 300, 5) - ns.Damage(obj122, 0, 300, 5) - ns.Damage(obj123, 0, 300, 5) - ns.Damage(obj124, 0, 300, 5) - ns.Damage(obj125, 0, 300, 5) - ns.Damage(obj126, 0, 300, 5) - ns.Damage(obj127, 0, 300, 5) - ns.Damage(obj128, 0, 300, 5) - ns.Damage(obj129, 0, 300, 5) - ns.Damage(obj130, 0, 300, 5) - ns.Damage(obj131, 0, 300, 5) - ns.Damage(obj132, 0, 300, 5) - ns.Damage(obj133, 0, 300, 5) - ns.Damage(obj134, 0, 300, 5) - ns.Damage(obj135, 0, 300, 0) - ns.Damage(obj136, 0, 300, 0) - ns.Damage(obj137, 0, 300, 0) - ns.Damage(obj115, 0, 300, 0) - ns.Damage(obj46, 0, 300, 0) - ns.Damage(obj47, 0, 300, 0) - ns.Damage(obj59, 0, 300, 0) - ns.Damage(obj60, 0, 300, 0) - ns.Damage(obj61, 0, 300, 0) - ns.Damage(obj62, 0, 300, 0) - ns.Damage(obj63, 0, 300, 0) - ns.Damage(obj64, 0, 300, 0) -} -func VillagePath() { - ns.Wander(obj152) - ns.Wander(obj153) - ns.Wander(obj154) - ns.Wander(obj155) - ns.Wander(obj156) -} -func EnableElevator() { - ns.ObjectOn(obj151) -} -func DisableElevator() { - ns.ObjectOff(obj151) -} -func StartSwordsmanTrigger() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.FrameTimer(1, SwordsmanTrigger) -LABEL1: - return -} -func SwordsmanTrigger() { - ns.AggressionLevel(obj116, 0.83) - ns.AggressionLevel(obj54, 0.83) - ns.AggressionLevel(obj48, 0.83) - ns.Attack(obj48, obj116) - ns.CreatureHunt(obj48) -} -func SwordsmanTriggerB() { - gvar74 = gvar12 - ns.SetDialog(obj116, ns.NORMAL, SwordsmanStart, SwordsmanEnd) - ns.StoryPic(obj116, "Warrior8Pic") - ns.FrameTimer(1, SwordsmanTriggerC) -} -func SwordsmanTriggerC() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - ) - v0 = ns.GetWaypointX(wp162) - v1 = ns.GetWaypointY(wp162) - v2 = ns.GetWaypointX(wp163) - v3 = ns.GetWaypointY(wp163) - ns.CreatureGuard(obj116, v0, v1, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 240) - ns.CreatureGuard(obj54, v2, v3, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 240) -} -func ShopKeeperGuard() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - ) - v0 = ns.GetWaypointX(wp192) - v1 = ns.GetWaypointY(wp192) - v2 = ns.GetWaypointX(wp193) - v3 = ns.GetWaypointY(wp193) - ns.CreatureGuard(obj96, v0, v1, v2, v3, 0) - ns.FrameTimer(1, GypsyGuard) -} -func BartenderGuard() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - ) - v0 = ns.GetWaypointX(wp194) - v1 = ns.GetWaypointY(wp194) - v2 = ns.GetWaypointX(wp195) - v3 = ns.GetWaypointY(wp195) - ns.CreatureGuard(obj95, v0, v1, v2, v3, 0) - ns.FrameTimer(1, SadVillagerGuard) -} -func GypsyGuard() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - ) - v0 = ns.GetWaypointX(wp190) - v1 = ns.GetWaypointY(wp190) - v2 = ns.GetWaypointX(wp191) - v3 = ns.GetWaypointY(wp191) - ns.CreatureGuard(obj94, v0, v1, v2, v3, 0) - ns.FrameTimer(1, BartenderGuard) -} -func SadVillagerGuard() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - ) - v0 = ns.GetWaypointX(wp175) - v1 = ns.GetWaypointY(wp175) - v2 = ns.GetWaypointX(wp176) - v3 = ns.GetWaypointY(wp176) - ns.CreatureGuard(obj105, v0, v1, v2, v3, 0) -} -func OpenGates() { - ns.WallOpen(ns.Wall(88, 34)) - ns.WallOpen(ns.Wall(87, 35)) - ns.WallOpen(ns.Wall(88, 36)) - ns.WallOpen(ns.Wall(89, 35)) - ns.PrintToAll("War05A.scr:CityGatesOpen") -} -func CloseGates() { - ns.WallClose(ns.Wall(88, 34)) - ns.WallClose(ns.Wall(87, 35)) - ns.WallClose(ns.Wall(88, 36)) - ns.WallClose(ns.Wall(89, 35)) - ns.PrintToAll("War05A.scr:CityGatesClosed") -} -func NoBump() { - flag87 = false - ns.FrameTimer(90, YesBump) -} -func YesBump() { - flag87 = true -} -func BumpVillager() { -} -func LetterBoxOn() { - ns.WideScreen(true) -} -func LetterBoxOff() { - ns.WideScreen(false) -} -func FrogThanksPlayer() { - ns.StartDialog(obj106, ns.GetHost()) -} -func DummyBump() { -} -func FreePlayer() { - ns.Frozen(ns.GetHost(), false) -} -func HorvathAppears() { - ns.Frozen(ns.GetHost(), true) - LetterBoxOn() - ns.FrameTimer(30, HorvathAppears2) - ns.FrameTimer(1, VillagePath) -} -func HorvathAppears2() { - ns.Move(obj93, wp181) - ns.FrameTimer(45, HorvathAppears3) -} -func HorvathAppears3() { - ns.Frozen(obj93, true) - ns.CreatureIdle(obj93) - ns.CreatureIdle(ns.GetHost()) - ns.LookAtObject(obj93, ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj93) - ns.StartDialog(obj93, ns.GetHost()) -} -func HorvathAppears4() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - ) - v0 = ns.GetWaypointX(wp183) - v1 = ns.GetWaypointY(wp183) - v2 = ns.GetWaypointX(wp181) - v3 = ns.GetWaypointY(wp181) - ns.Frozen(obj93, false) - ns.CreatureGuard(obj93, v0, v1, v2, v3, 0) - LetterBoxOff() - ns.FrameTimer(45, HorvathAppears5) -} -func HorvathAppears5() { - ns.Frozen(ns.GetHost(), false) -} -func HorvathDeath() { - ns.PrintToAll("Wiz05C.scr:ObjectiveFailed") - ns.FrameTimer(30, PlayerDeath) -} -func MapInitialize() { - gvar66 = ns.ObjectGroup("ExitEnemies") - wp30 = ns.Waypoint("WoundedRefugeeWayPoint") - wp31 = ns.Waypoint("WoundedRefugeeWayPoint2") - wp32 = ns.Waypoint("CaptainWayPoint") - wp33 = ns.Waypoint("CaptainWayPoint2") - wp34 = ns.Waypoint("DeadGuyWP") - wp35 = ns.Waypoint("PlayerSounds") - wp36 = ns.Waypoint("LunchOgre1WP") - wp37 = ns.Waypoint("LunchOgre2WP") - wp38 = ns.Waypoint("CaptainWaitingWP") - wp39 = ns.Waypoint("CaptainCongratWP") - obj43 = ns.Object("WoundedRefugee") - obj44 = ns.Object("WoundedRefugee2") - obj45 = ns.Object("Antidote") - obj40 = ns.Object("WellWP") - wp41 = ns.Waypoint("OgressYell1WP") - wp42 = ns.Waypoint("OgressYell2WP") - obj46 = ns.Object("Kill") - obj47 = ns.Object("Kill2") - obj48 = ns.Object("FirstOgre") - obj49 = ns.Object("LunchOgre1") - obj50 = ns.Object("LunchOgre2") - obj51 = ns.Object("TownOgre1") - obj52 = ns.Object("TownOgre2") - obj53 = ns.Object("DeadGuy") - obj54 = ns.Object("Swordsman2") - obj55 = ns.Object("Archer1") - obj56 = ns.Object("Archer2") - obj58 = ns.Object("CapReward") - obj59 = ns.Object("Bubbles1") - obj60 = ns.Object("Bubbles2") - obj61 = ns.Object("Bubbles3") - obj62 = ns.Object("Bubbles4") - obj63 = ns.Object("Bubbles5") - obj64 = ns.Object("Bubbles6") - gvar65 = ns.ObjectGroup("OgreAttackTriggers") - obj93 = ns.Object("W5Captain") - obj95 = ns.Object("W5Bartender") - obj96 = ns.Object("W5ShopKeeper") - obj94 = ns.Object("W5Gypsy") - obj116 = ns.Object("W5Swordsman") - obj117 = ns.Object("W5Swordsman2") - wp118 = int(ns.Object("SwordsmanTrigger1")) - wp119 = int(ns.Object("SwordsmanTrigger2")) - obj115 = ns.Object("KeyGuy") - obj112 = ns.Object("W5Drunk1") - obj98 = ns.Object("SadVillagerReward") - obj99 = ns.Object("FarmerReward1") - obj100 = ns.Object("FarmerReward2") - obj102 = ns.Object("W5Farmer") - obj105 = ns.Object("W5SadVillager") - obj106 = ns.Object("W5Frog") - obj107 = ns.Object("FrogTrigger") - obj101 = ns.Object("FarmerStaff") - obj120 = ns.Object("Corpse1") - obj121 = ns.Object("Corpse2") - obj122 = ns.Object("Corpse3") - obj123 = ns.Object("Corpse4") - obj124 = ns.Object("Corpse5") - obj125 = ns.Object("Corpse6") - obj126 = ns.Object("Corpse7") - obj127 = ns.Object("Corpse8") - obj128 = ns.Object("Corpse9") - obj129 = ns.Object("Corpse10") - obj130 = ns.Object("Corpse11") - obj131 = ns.Object("Corpse12") - obj132 = ns.Object("Corpse13") - obj133 = ns.Object("Corpse14") - obj134 = ns.Object("Corpse15") - obj97 = ns.Object("JackLine5Trigger") - obj135 = ns.Object("OgreCorpse1") - obj136 = ns.Object("OgreCorpse2") - obj137 = ns.Object("OgreCorpse3") - obj151 = ns.Object("EntranceElevator") - obj138 = ns.Object("Ogre1") - obj139 = ns.Object("Ogre2") - obj140 = ns.Object("Ogre3") - obj141 = ns.Object("Ogre4") - obj142 = ns.Object("Ogre5") - obj143 = ns.Object("Ogre6") - obj144 = ns.Object("Ogre7") - obj145 = ns.Object("Ogre8") - obj146 = ns.Object("Ogre9") - obj146 = ns.Object("Ogre10") - obj146 = ns.Object("Ogre11") - obj146 = ns.Object("Ogre12") - obj146 = ns.Object("Ogre13") - obj152 = ns.Object("W5Villager1") - obj153 = ns.Object("W5Villager2") - obj154 = ns.Object("W5Villager3") - obj155 = ns.Object("W5Villager4") - obj156 = ns.Object("W5Villager5") - obj157 = ns.Object("W5Villager6") - obj158 = ns.Object("W5Villager7") - obj159 = ns.Object("W5Villager8") - obj160 = ns.Object("W5Villager9") - wp163 = ns.Waypoint("Swordsman2WayPoint") - wp162 = ns.Waypoint("SwordsmanWayPoint") - wp118 = int(ns.Waypoint("SwordsmanTrigger1")) - wp119 = int(ns.Waypoint("SwordsmanTrigger2")) - wp181 = ns.Waypoint("HorvathWayPoint") - wp182 = ns.Waypoint("HorvathWayPoint2") - wp183 = ns.Waypoint("HorvathAppears") - wp164 = ns.Waypoint("FarmerWayPoint") - wp165 = ns.Waypoint("Farmer2WayPoint") - wp178 = ns.Waypoint("FarmerWifeWayPoint") - wp179 = ns.Waypoint("FarmerWife2WayPoint") - wp166 = ns.Waypoint("HoundWayPoint") - wp180 = ns.Waypoint("Hound2WayPoint") - wp177 = ns.Waypoint("WoundedVillagerWayPoint") - wp175 = ns.Waypoint("SadVillagerWayPoint") - wp176 = ns.Waypoint("SadVillagerWayPoint2") - wp167 = ns.Waypoint("FrogWayPoint1") - wp168 = ns.Waypoint("FrogWayPoint2") - wp184 = ns.Waypoint("Villager1Goal") - wp185 = ns.Waypoint("Villager2Goal") - wp186 = ns.Waypoint("Villager3Goal") - wp187 = ns.Waypoint("Villager4Goal") - wp188 = ns.Waypoint("Villager5Goal") - wp190 = ns.Waypoint("GypsyWayPoint") - wp191 = ns.Waypoint("GypsyWayPoint2") - wp192 = ns.Waypoint("ShopKeeperWayPoint") - wp193 = ns.Waypoint("ShopKeeperWayPoint2") - wp194 = ns.Waypoint("BartenderWayPoint") - wp195 = ns.Waypoint("BartenderWayPoint2") - gvar67 = ns.ObjectGroup("OgressYellTriggerGroup") - wp189 = ns.Waypoint("PlayerStartWayPoint") - ns.SetDialog(obj112, ns.NORMAL, DrunkStart, DrunkEnd) - ns.StoryPic(obj112, "Townsman3Pic") - ns.SetDialog(obj105, ns.YESNO, SadVillagerStart, SadVillagerEnd) - ns.StoryPic(obj105, "GerardPic") - ns.SetDialog(obj106, ns.NORMAL, FrogStart, FrogEnd) - ns.StoryPic(obj106, "FrogPic") - ns.SetDialog(obj93, ns.NORMAL, CaptainStart, CaptainEnd) - ns.StoryPic(obj93, "AirshipCaptainPic") - ns.Frozen(obj106, true) - KillCorpses() - OwnVillagers() - EnableElevator() - ns.FrameTimer(90, DisableElevator) - ShopKeeperGuard() - ns.StartupScreen(5) -} -func KeepOut() { - r1 := ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) - if !r1 { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func FrogReturned() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - ) - if !ns.IsCaller(obj106) { - goto LABEL1 - } - v0 = ns.GetWaypointX(wp167) - v1 = ns.GetWaypointY(wp167) - v2 = ns.GetWaypointX(wp168) - v3 = ns.GetWaypointY(wp168) - ns.ObjectOff(obj107) - ns.CreatureGuard(obj106, v0, v1, v2, v3, 0) - gvar76 = gvar15 -LABEL1: - return -} -func FrogDeath() { - gvar86 = 2 - gvar76 = gvar18 - ns.CancelDialog(obj106) -} -func AutoSave1() { - ns.AutoSave() - ns.ObjectOff(obj89) -} -func AutoSave2() { - ns.AutoSave() - ns.ObjectOff(obj90) -} -func AutoSave3() { - ns.AutoSave() - ns.FrameTimer(1, VillagePath) - ns.ObjectOff(obj91) -} -func AutoSave4() { - ns.AutoSave() - ns.ObjectOff(obj92) -} -func SecretFound() { - ns.PrintToAll("War05A.scr:Secret") - ns.MoveWaypoint(wp35, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.AudioEvent(ns.SecretFound, wp35) - ns.GiveXp(ns.GetHost(), 250) -} -func Hint() { - ns.PrintToAll("Journal:War05Hint1") - ns.JournalEntry(ns.GetHost(), "War05Hint1", 4) -} -func PlayerDeath() { - ns.DeathScreen(5) -} -func MapEntry() { - ns.Music(23, 100) - ns.Frozen(ns.GetHost(), false) - LetterBoxOff() - if ns.GetQuestStatus("Wiz05B:GotHorvath") != 1 { - goto LABEL1 - } - ns.MoveObject(obj93, ns.GetWaypointX(wp38), ns.GetWaypointY(wp38)) - ns.CreatureGuard(obj93, ns.GetObjectX(obj93), ns.GetObjectY(obj93), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - obj57 = ns.Object("Wiz05B:Horvath") - ns.StoryPic(obj57, "HorvathPic") - ns.GroupDamage(gvar66, 0, 1000, 0) - ns.SetCallback(obj57, 5, HorvathDeath) -LABEL1: - flag87 = true -} -func OgressYell1() { - ns.AudioEvent(ns.GruntRecognize, wp41) -} -func OgressYell2() { - ns.AudioEvent(ns.GruntRecognize, wp42) -} -func CrapFile() { -} -func OgreAttackStart() { - ns.ObjectGroupOff(gvar65) - UnfreezeAll() - ns.Music(26, 100) - ns.Frozen(obj49, false) - ns.Frozen(obj50, false) - ns.Frozen(obj53, false) - ns.AggressionLevel(obj49, 0.83) - ns.AggressionLevel(obj50, 0.83) - ns.Attack(obj53, obj49) - ns.Attack(obj49, obj53) - ns.Attack(obj50, obj53) -} -func DeadGuyArrive() { - if !ns.IsCaller(obj53) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.Frozen(obj53, true) - ns.Frozen(obj49, true) - ns.Frozen(obj50, true) - ns.CreatureIdle(obj53) - ns.CreatureIdle(obj49) - ns.CreatureIdle(obj50) - ns.LookAtObject(obj49, obj53) - ns.LookAtObject(obj53, obj50) - ns.LookAtObject(obj50, obj53) - ns.Chat(obj50, "Con05:OgreKingTalk06") - ns.SecondTimer(2, OgresAttackDeadGuy) -LABEL1: - return -} -func OgresAttackDeadGuy() { - ns.Frozen(obj53, false) - ns.Frozen(obj49, false) - ns.Frozen(obj50, false) - ns.Attack(obj53, obj50) - ns.Attack(obj49, obj53) - ns.Attack(obj50, obj53) -} -func DeadGuyDie() { - ns.AggressionLevel(obj49, 0) - ns.AggressionLevel(obj50, 0) - ns.Move(obj49, wp36) - ns.Move(obj50, wp37) - UnfreezeAll() -} -func LunchOgreReport() { - if !(ns.CurrentHealth(obj53) > 0) { - goto LABEL1 - } - ns.Attack(ns.GetTrigger(), obj53) -LABEL1: - return -} -func LunchOgre1Trigger() { - if !ns.IsCaller(obj49) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ivar196 += 1 - ns.AggressionLevel(obj49, 0.83) -LABEL1: - return -} -func LunchOgre2Trigger() { - if !ns.IsCaller(obj50) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ivar196 += 1 - ns.AggressionLevel(obj50, 0.83) -LABEL1: - return -} -func UnfreezeAll() { - ns.Frozen(obj152, false) - ns.Frozen(obj153, false) - ns.Frozen(obj154, false) - ns.Frozen(obj155, false) - ns.Frozen(obj156, false) - ns.Frozen(obj157, false) - ns.Frozen(obj158, false) - ns.Frozen(obj159, false) - ns.Frozen(obj160, false) - ns.Frozen(obj51, false) - ns.Frozen(obj52, false) - ns.Frozen(obj102, false) - ns.Wander(obj102) - ns.CreatureFollow(obj51, obj102) -} -func GoAway() { - r1 := ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) - if !r1 { - goto LABEL1 - } - if !(ns.CurrentHealth(ns.GetCaller()) > 0) { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func MakeAWish() { - var v0 int - v0 = ns.MaxHealth(ns.GetCaller()) - ns.RestoreHealth(ns.GetCaller(), v0-ns.CurrentHealth(ns.GetCaller())) - ns.PrintToAll("GeneralPrint:WellSignRefresh") - ns.AudioEvent(ns.RestoreHealthName, ns.Waypoint("WellWP")) -} -func OnEvent(typ string) { - switch typ { - case "MapInitialize": - MapInitialize() - case "PlayerDeath": - PlayerDeath() - case "MapEntry": - MapEntry() - } -} diff --git a/examples/wiz05b/dummy_test.go b/examples/wiz05b/dummy_test.go deleted file mode 100644 index 98824ac..0000000 --- a/examples/wiz05b/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package wiz05b - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/wiz05b/wiz05b.go b/examples/wiz05b/wiz05b.go deleted file mode 100644 index eb2b4e1..0000000 --- a/examples/wiz05b/wiz05b.go +++ /dev/null @@ -1,434 +0,0 @@ -package wiz05b - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 ns.ObjectID - gvar5 ns.WallGroupID - obj6 ns.ObjectID - obj7 ns.ObjectID - obj8 ns.ObjectID - obj9 ns.ObjectID - obj10 ns.ObjectID - obj11 ns.ObjectID - wp12 ns.WaypointID - gvar13 int - gvar14 int - gvar15 int - gvar16 int - gvar17 int - gvar18 int - gvar19 int - gvar20 int - flag21 bool - flag22 bool - flag23 bool - obj24 ns.ObjectID - obj25 ns.ObjectID - obj26 ns.ObjectID - obj27 ns.ObjectID - obj28 ns.ObjectID - obj29 ns.ObjectID - obj30 ns.ObjectID - obj31 ns.ObjectID - obj32 ns.ObjectID - obj33 ns.ObjectID - obj34 ns.ObjectID - gvar35 ns.ObjectGroupID - gvar36 ns.ObjectGroupID - gvar37 ns.ObjectGroupID - gvar38 ns.WallGroupID - wp39 ns.WaypointID - wp40 ns.WaypointID - wp41 ns.WaypointID - wp42 ns.WaypointID - wp43 ns.WaypointID -) - -func init() { - gvar13 = 0 - gvar14 = 1 - gvar15 = 2 - gvar16 = 3 - gvar17 = 4 - gvar18 = 5 - gvar19 = gvar13 - gvar20 = gvar17 - flag21 = false - flag22 = false - flag23 = false -} -func StopElevator() { - ns.ObjectOff(obj4) - ns.FrameTimer(60, LowerKeyProtectWalls) -} -func LowerKeyProtectWalls() { - ns.NoWallSound(true) - ns.WallGroupOpen(gvar5) - ns.NoWallSound(false) -} -func RaiseKey() { - ns.ObjectOn(obj4) - ns.FrameTimer(5, StopElevator) -} -func UnlockMainGates() { - ns.ObjectOff(obj10) - ns.UnlockDoor(obj6) - ns.UnlockDoor(obj7) -} -func OpenKingGate() { - ns.ObjectOff(obj11) - ns.UnlockDoor(obj8) - ns.UnlockDoor(obj9) -} -func SecretFound() { - ns.PrintToAll("GeneralPrint:SecretFound") - ns.MoveWaypoint(wp12, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.AudioEvent(ns.SecretFound, wp12) - ns.GiveXp(ns.GetHost(), 40) -} -func CallForGuards() { - ns.Frozen(obj31, true) - ns.CreatureIdle(obj31) - ns.SetDialog(obj31, ns.NEXT, KingStart, KingEnd) - ns.StoryPic(obj31, "OgreWarlordPic") - ns.StartDialog(obj31, ns.GetHost()) -} -func ProtectTheKing() { - LetterBoxOff() - ns.Frozen(ns.GetHost(), false) - ns.EnchantOff(obj31, ns.ENCHANT_INVULNERABLE) - ns.Frozen(obj31, false) - ns.ObjectOn(obj32) - ns.ObjectOn(obj33) - ns.AggressionLevel(obj31, 0.5) - ns.MoveObject(obj32, ns.GetWaypointX(wp40), ns.GetWaypointY(wp40)) - ns.MoveObject(obj33, ns.GetWaypointX(wp41), ns.GetWaypointY(wp41)) - ns.Wander(obj32) - ns.Wander(obj33) -} -func KingStart() { - var v0 int - v0 = gvar20 - if v0 == gvar17 { - goto LABEL1 - } - if v0 == gvar18 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.TellStory(ns.SwordsmanHurt, "Con05:OgreTalk07") - ns.LookAtObject(obj31, ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj31) - goto LABEL3 -LABEL2: - ns.TellStory(ns.SwordsmanHurt, "Con05:OgreTalk08") - goto LABEL3 -LABEL3: - return -} -func KingEnd() { - var v0 int - v0 = gvar20 - if v0 == gvar17 { - goto LABEL1 - } - if v0 == gvar18 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - gvar20 = gvar18 - ns.StartDialog(obj31, ns.GetHost()) - goto LABEL3 -LABEL2: - ns.CancelDialog(obj31) - ns.CreatureGuard(obj31, ns.GetWaypointX(wp39), ns.GetWaypointY(wp39), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 400) - ProtectTheKing() - goto LABEL3 -LABEL3: - return -} -func HorvathStart() { - var v0 int - v0 = gvar19 - if v0 == gvar13 { - goto LABEL1 - } - if v0 == gvar14 { - goto LABEL2 - } - if v0 == gvar15 { - goto LABEL3 - } - if v0 == gvar16 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - ns.DestroyChat(obj24) - ns.Frozen(obj24, true) - ns.LookAtObject(obj24, ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj24) - ns.TellStory(ns.SwordsmanHurt, "Wiz05C.scr:HorvathGreeting") - goto LABEL5 -LABEL2: - ns.Frozen(obj24, true) - ns.LookAtObject(obj24, ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj24) - ns.TellStory(ns.SwordsmanHurt, "Wiz05C.scr:HorvathWaiting") - goto LABEL5 -LABEL3: - ns.LookAtObject(obj24, ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj24) - ns.TellStory(ns.SwordsmanHurt, "Wiz05C.scr:HorvathFreed") - goto LABEL5 -LABEL4: - ns.LookAtObject(obj24, ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj24) - ns.TellStory(ns.SwordsmanHurt, "Wiz05C.scr:HorvathFollowing") - goto LABEL5 -LABEL5: - return -} -func HorvathEnd() { - var v0 int - v0 = gvar19 - if v0 == gvar13 { - goto LABEL1 - } - if v0 == gvar14 { - goto LABEL2 - } - if v0 == gvar15 { - goto LABEL3 - } - if v0 == gvar16 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - gvar19 = gvar14 - ns.Frozen(obj24, false) - goto LABEL5 -LABEL2: - ns.Frozen(obj24, false) - goto LABEL5 -LABEL3: - ns.CancelDialog(obj24) - gvar19 = gvar16 - ns.AggressionLevel(obj24, 0.5) - ns.BecomePet(obj24) - ns.MakeFriendly(obj24) - ns.WideScreen(false) - ns.Frozen(ns.GetHost(), false) - ns.ObjectGroupOn(gvar37) - goto LABEL5 -LABEL4: - goto LABEL5 -LABEL5: - return -} -func HorvathDeath() { - ns.PrintToAll("Wiz05C.scr:ObjectiveFailed") - ns.FrameTimer(30, PlayerDeath) -} -func LetterBoxOn() { - ns.WideScreen(true) -} -func LetterBoxOff() { - ns.WideScreen(false) -} -func PlayerDeath() { - ns.DeathScreen(5) -} -func WhoDidWhat() { - if !flag23 { - goto LABEL1 - } - if !ns.IsVisibleTo(obj25, ns.GetHost()) { - goto LABEL2 - } - if !ns.IsVisibleTo(obj25, obj24) { - goto LABEL3 - } - if flag22 { - goto LABEL4 - } - flag22 = true - ns.ObjectGroupOff(gvar37) - ns.ObjectGroupOff(gvar36) - ns.ObjectOff(obj27) - ns.ObjectOff(obj28) - gvar19 = gvar15 - ns.GiveXp(ns.GetHost(), 500) - ns.SetQuestStatus(1, "GotHorvath") - ns.WideScreen(true) - ns.Frozen(ns.GetHost(), true) - ns.AggressionLevel(obj24, 0.5) - ns.CreatureFollow(obj24, ns.GetHost()) - ns.StartDialog(obj24, ns.GetHost()) - return -LABEL4: - goto LABEL5 -LABEL3: - if flag22 { - goto LABEL5 - } - ns.ObjectOn(obj27) - ns.ObjectOn(obj28) -LABEL5: - goto LABEL6 -LABEL2: - if !ns.IsVisibleTo(obj25, obj24) { - goto LABEL6 - } - ns.ObjectGroupOff(gvar36) - ns.ObjectOff(obj27) - ns.ObjectOff(obj28) - gvar19 = gvar14 - ns.AggressionLevel(obj24, 0.16) - ns.CreatureGuard(obj24, ns.GetWaypointX(wp42), ns.GetWaypointY(wp42), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) -LABEL6: - ns.FrameTimer(25, WhoDidWhat) -LABEL1: - return -} -func MapInitialize() { - obj24 = ns.Object("Horvath") - obj25 = ns.Object("Spy") - obj26 = ns.Object("CellDoor") - obj27 = ns.Object("En") - obj28 = ns.Object("Dis") - obj6 = ns.Object("MainGate1") - obj7 = ns.Object("MainGate2") - obj29 = ns.Object("TownGate1") - obj30 = ns.Object("TownGate2") - obj8 = ns.Object("KingDoor1") - obj9 = ns.Object("KingDoor2") - obj10 = ns.Object("MainGateSwitch") - obj11 = ns.Object("KingGateSwitch") - obj31 = ns.Object("OgreKing") - obj34 = ns.Object("CallForGuardsTrigger") - obj4 = ns.Object("KeyElevator") - obj32 = ns.Object("Guard1") - obj33 = ns.Object("Guard2") - gvar35 = ns.ObjectGroup("KingTriggerGroup") - gvar36 = ns.ObjectGroup("HorvathRescueTrigger") - gvar37 = ns.ObjectGroup("AllEnemies") - gvar38 = ns.WallGroup("LordSafetyWalls") - gvar5 = ns.WallGroup("KeyProtectWalls") - wp39 = ns.Waypoint("OgreKingWaypoint") - wp40 = ns.Waypoint("Guard1WP") - wp41 = ns.Waypoint("Guard2WP") - wp42 = ns.Waypoint("HorvathSpot") - wp43 = ns.Waypoint("Spot") - wp12 = ns.Waypoint("PlayerSounds") - ns.SetDialog(obj24, ns.NORMAL, HorvathStart, HorvathEnd) - ns.StoryPic(obj24, "HorvathPic") - ns.LockDoor(obj8) - ns.LockDoor(obj9) - ns.LockDoor(obj6) - ns.LockDoor(obj7) -} -func EnableRescueTrigger() { - ns.ObjectGroupOn(gvar36) -} -func DisableRescueTrigger() { - ns.ObjectGroupOff(gvar36) -} -func RescueHorvath() { - flag22 = true - ns.ObjectGroupOff(gvar37) - ns.ObjectGroupOff(gvar36) - ns.ObjectOff(obj27) - ns.ObjectOff(obj28) - gvar19 = gvar15 - ns.SetQuestStatus(1, "GotHorvath") - LetterBoxOn() - ns.Frozen(ns.GetHost(), true) - ns.AggressionLevel(obj24, 0.5) - ns.CreatureFollow(obj24, ns.GetHost()) - ns.StartDialog(obj24, ns.GetHost()) -} -func PollForRescue() { - if !(ns.IsCaller(ns.GetHost()) && flag22 == false) { - goto LABEL1 - } - flag23 = true - WhoDidWhat() -LABEL1: - return -} -func PlayerExited() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - flag23 = false -LABEL1: - return -} -func GotoSpot() { - if flag22 { - goto LABEL1 - } - if !ns.IsCaller(obj24) { - goto LABEL2 - } - ns.CreatureGuard(obj24, ns.GetWaypointX(wp43), ns.GetWaypointY(wp43), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) -LABEL2: - if !ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) { - goto LABEL1 - } - ns.CreatureGuard(ns.GetCaller(), ns.GetWaypointX(wp43), ns.GetWaypointY(wp43), ns.GetWaypointX(wp41), ns.GetWaypointY(wp41), 0) -LABEL1: - return -} -func Activate() { - flag21 = true - ns.ObjectGroupOff(gvar35) - ns.ObjectOn(obj34) - ns.Frozen(ns.GetHost(), true) - ns.FrameTimer(1, LetterBoxOn) - ns.NoWallSound(true) - ns.WallGroupOpen(gvar38) - ns.NoWallSound(false) - ns.Move(obj31, wp39) -} -func PummelPlayer() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.HitLocation(ns.GetTrigger(), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) -LABEL1: - return -} -func MapEntry() { - ns.Frozen(ns.GetHost(), false) - ns.WideScreen(false) - ns.NoWallSound(false) - ns.Music(7, 100) - if ns.GetQuestStatus("Wiz05B:GotHorvath") != 1 { - goto LABEL1 - } - obj24 = ns.Object("Wiz05B:Horvath") - ns.SetCallback(obj24, 5, HorvathDeath) -LABEL1: - return -} -func FadeOut() { - ns.Frozen(ns.GetHost(), true) - ns.CreatureIdle(ns.GetHost()) - ns.Blind() -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapInitialize": - MapInitialize() - case "MapEntry": - MapEntry() - } -} diff --git a/examples/wiz05c/dummy_test.go b/examples/wiz05c/dummy_test.go deleted file mode 100644 index 5941b38..0000000 --- a/examples/wiz05c/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package wiz05c - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/wiz05c/wiz05c.go b/examples/wiz05c/wiz05c.go deleted file mode 100644 index 97f3e65..0000000 --- a/examples/wiz05c/wiz05c.go +++ /dev/null @@ -1,530 +0,0 @@ -package wiz05c - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - gvar4 ns.WallGroupID - gvar5 ns.WallGroupID - gvar6 ns.WallGroupID - obj7 ns.ObjectID - obj8 ns.ObjectID - obj9 ns.ObjectID - obj10 ns.ObjectID - obj11 ns.ObjectID - obj12 ns.ObjectID - obj13 ns.ObjectID - obj14 ns.ObjectID - obj15 ns.ObjectID - obj16 ns.ObjectID - obj17 ns.ObjectID - obj18 ns.ObjectID - obj19 ns.ObjectID - obj20 ns.ObjectID - obj21 ns.ObjectID - obj22 ns.ObjectID - obj23 ns.ObjectID - obj24 ns.ObjectID - obj25 ns.ObjectID - obj26 ns.ObjectID - obj27 ns.ObjectID - obj28 ns.ObjectID - obj29 ns.ObjectID - obj30 ns.ObjectID - obj31 ns.ObjectID - obj32 ns.ObjectID - obj33 ns.ObjectID - obj34 ns.ObjectID - obj35 ns.ObjectID - obj36 ns.ObjectID - wp37 ns.WaypointID - wp38 ns.WaypointID - wp39 ns.WaypointID - wp40 ns.WaypointID - wp41 ns.WaypointID - wp42 ns.WaypointID - wp43 ns.WaypointID - wp44 ns.WaypointID - wp45 ns.WaypointID - wp46 ns.WaypointID - wp47 ns.WaypointID - wp48 ns.WaypointID - wp49 ns.WaypointID - wp50 ns.WaypointID - wp51 ns.WaypointID - gvar52 ns.ObjectGroupID - obj53 ns.ObjectID - obj54 ns.ObjectID - obj55 ns.ObjectID - obj56 ns.ObjectID - gvar57 int - gvar58 ns.WallGroupID - obj59 ns.ObjectID - obj60 ns.ObjectID - obj61 ns.ObjectID - obj62 ns.ObjectID - obj63 ns.ObjectID - obj64 ns.ObjectID - obj65 ns.ObjectID - obj66 ns.ObjectID - obj67 ns.ObjectID - obj68 ns.ObjectID - obj69 ns.ObjectID - obj70 ns.ObjectID - obj71 ns.ObjectID - obj72 ns.ObjectID - obj73 ns.ObjectID - obj74 ns.ObjectID - obj75 ns.ObjectID - obj76 ns.ObjectID - obj77 ns.ObjectID - obj78 ns.ObjectID - obj79 ns.ObjectID - obj80 ns.ObjectID - obj81 ns.ObjectID - obj82 ns.ObjectID - obj83 ns.ObjectID - obj84 ns.ObjectID - obj85 ns.ObjectID - obj86 ns.ObjectID - obj87 ns.ObjectID - obj88 ns.ObjectID - obj89 ns.ObjectID - obj90 ns.ObjectID - obj91 ns.ObjectID - obj92 ns.ObjectID - obj93 ns.ObjectID - obj94 ns.ObjectID - obj95 ns.ObjectID - gvar96 ns.WallGroupID - wp97 ns.WaypointID - wp98 ns.WaypointID - wp99 ns.WaypointID - wp100 ns.WaypointID - wp101 ns.WaypointID - wp102 ns.WaypointID - wp103 ns.WaypointID - wp104 ns.WaypointID - wp105 ns.WaypointID - wp106 ns.WaypointID - wp107 ns.WaypointID - wp108 ns.WaypointID - wp109 ns.WaypointID - wp110 ns.WaypointID - wp111 ns.WaypointID - wp112 ns.WaypointID - wp113 ns.WaypointID - wp114 ns.WaypointID - wp115 ns.WaypointID - wp116 ns.WaypointID - wp117 ns.WaypointID - wp118 ns.WaypointID - wp119 ns.WaypointID - wp120 ns.WaypointID - wp121 ns.WaypointID - gvar122 int - obj123 ns.ObjectID - obj124 ns.ObjectID - obj125 ns.ObjectID - obj126 ns.ObjectID - wp127 ns.WaypointID - wp128 ns.WaypointID - obj129 ns.ObjectID - obj130 ns.ObjectID - obj131 ns.ObjectID - obj132 ns.ObjectID - wp133 ns.WaypointID - wp134 ns.WaypointID -) - -func DisableElevators() { - ns.ObjectOff(obj24) - ns.ObjectOff(obj25) - ns.ObjectOff(obj26) - ns.ObjectOff(obj27) - ns.ObjectOff(obj28) - ns.ObjectOff(obj29) -} -func EnableSkeletons() { - ns.AggressionLevel(obj30, 0.83) - ns.AggressionLevel(obj31, 0.83) - ns.AggressionLevel(obj32, 0.83) - ns.AggressionLevel(obj34, 0.83) - ns.AggressionLevel(obj35, 0.83) -} -func BreakWalls1() { - ns.WallGroupOpen(gvar4) -} -func EnableElevators1() { - ns.ObjectOn(obj24) - ns.ObjectOn(obj25) - ns.ObjectOn(obj26) - ns.ObjectOn(obj27) - ns.ObjectOn(obj28) - ns.ObjectOn(obj29) - ns.FrameTimer(20, SkeletonGoal) - EnableSkeletons() -} -func SkeletonGoal() { - ns.Move(obj30, wp51) - ns.Move(obj31, wp51) - ns.Move(obj32, wp51) - ns.Move(obj34, wp51) - ns.Move(obj35, wp51) -} -func EndTrap1() { - ns.Move(obj9, wp41) - ns.Move(obj10, wp42) - ns.Move(obj11, wp43) - ns.Move(obj12, wp44) - ns.ObjectOff(obj36) - ns.AudioEvent(ns.EarthRumbleMinor, wp37) - ns.AudioEvent(ns.SecretWallSecret, wp37) -} -func OpenGates() { - ns.WallOpen(ns.Wall(96, 208)) - ns.WallOpen(ns.Wall(95, 209)) - ns.WallOpen(ns.Wall(94, 210)) -} -func CloseBlocks() { - ns.Move(obj7, wp45) - ns.Move(obj8, wp46) - ns.AudioEvent(ns.BoulderMove, wp38) - ns.AudioEvent(ns.EarthRumbleMinor, wp38) - ns.AudioEvent(ns.SecretWallOpen, wp38) - ns.AudioEvent(ns.StoneBlockMove, wp38) -} -func OpenBlocks() { - ns.ObjectOff(ns.GetTrigger()) - ns.Move(obj7, wp39) - ns.Move(obj8, wp40) - ns.AudioEvent(ns.BoulderMove, wp38) - ns.AudioEvent(ns.EarthRumbleMinor, wp38) - ns.AudioEvent(ns.SecretWallOpen, wp38) - ns.AudioEvent(ns.StoneBlockMove, wp38) -} -func Trap1() { - ns.ObjectOff(obj13) - ns.ObjectOff(obj14) - ns.ObjectOff(obj15) - ns.ObjectOff(obj16) - ns.ObjectOff(obj17) - ns.Move(obj9, wp47) - ns.Move(obj10, wp48) - ns.Move(obj11, wp49) - ns.Move(obj12, wp50) - ns.AudioEvent(ns.EarthRumbleMajor, wp50) - ns.SecondTimer(1, BreakWalls1) - ns.SecondTimer(2, EnableElevators1) - ns.Music(27, 100) -} -func CloseBlocks2() { - ns.Move(obj7, wp45) - ns.Move(obj8, wp46) - ns.Move(obj9, wp47) - ns.Move(obj10, wp48) -} -func LockCellDoors() { - ns.LockDoor(obj68) - ns.LockDoor(obj69) - ns.LockDoor(obj70) - ns.LockDoor(obj71) - ns.LockDoor(obj72) - ns.LockDoor(obj73) - ns.LockDoor(obj74) - ns.LockDoor(obj75) - ns.LockDoor(obj76) - ns.LockDoor(obj77) - ns.LockDoor(obj78) - ns.LockDoor(obj79) -} -func EnableSpikes() { - ns.Move(obj81, wp110) - ns.Move(obj82, wp111) - ns.Move(obj83, wp112) - ns.Move(obj84, wp113) - ns.Move(obj85, wp114) - ns.Move(obj86, wp115) - ns.Move(obj87, wp116) - ns.Move(obj88, wp117) - ns.Move(obj89, wp118) - ns.Move(obj90, wp119) - ns.Move(obj91, wp120) - ns.Move(obj92, wp121) - ns.FrameTimer(50, DisableSpikes) -} -func DisableSpikes() { - ns.Move(obj81, wp98) - ns.Move(obj82, wp99) - ns.Move(obj83, wp100) - ns.Move(obj84, wp101) - ns.Move(obj85, wp102) - ns.Move(obj86, wp103) - ns.Move(obj87, wp104) - ns.Move(obj88, wp105) - ns.Move(obj89, wp106) - ns.Move(obj90, wp107) - ns.Move(obj91, wp108) - ns.Move(obj92, wp109) - ns.FrameTimer(50, EnableSpikes) -} -func EnableGears() { - ns.ObjectOn(obj59) - ns.ObjectOn(obj60) - ns.SecondTimer(2, DisableGears) -} -func DisableGears() { - ns.ObjectOff(obj59) - ns.ObjectOff(obj60) -} -func KillSkeleton7() { - ns.Damage(obj67, 0, 1000, 0) -} -func LetterBoxOff() { - ns.WideScreen(false) -} -func PlayerDeath() { - ns.Blind() - ns.FrameTimer(30, ChapterFail2) -} -func SpikeNoise1() { - ns.AudioEvent(ns.EarthRumbleMajor, wp119) - ns.AudioEvent(ns.EarthRumbleMajor, wp113) - ns.FrameTimer(60, SpikeNoise1) -} -func HorvathDeath() { - ns.PrintToAll("Wiz05C.scr:ObjectiveFailed") - ns.FrameTimer(30, PlayerDeath) -} -func MapInitialize() { - wp133 = ns.Waypoint("Secret01WP") - wp134 = ns.Waypoint("Secret02WP") - wp97 = ns.Waypoint("FadeoutExitWP") - gvar52 = ns.ObjectGroup("BatEntryGroup") - obj53 = ns.Object("Bear1") - obj93 = ns.Object("Ogre1") - obj94 = ns.Object("Ogre2") - gvar58 = ns.WallGroup("ScorpionWallGroup") - obj7 = ns.Object("Block1") - obj8 = ns.Object("Block2") - obj9 = ns.Object("Block3") - obj10 = ns.Object("Block4") - obj11 = ns.Object("Block5") - obj12 = ns.Object("Block6") - obj18 = ns.Object("BlockMover1") - obj19 = ns.Object("BlockMover2") - obj20 = ns.Object("BlockMover3") - obj21 = ns.Object("BlockMover4") - obj22 = ns.Object("BlockMover5") - obj23 = ns.Object("BlockMover6") - obj129 = ns.Object("SilverKeyTrigger1") - obj130 = ns.Object("SilverKeyTrigger2") - obj131 = ns.Object("SilverKeyTrigger3") - obj132 = ns.Object("SilverKeyTrigger4") - gvar96 = ns.WallGroup("SilverKeyWallGroup") - obj123 = ns.Object("Grunt1") - obj124 = ns.Object("Grunt2") - obj125 = ns.Object("Grunt3") - obj126 = ns.Object("Grunt4") - gvar4 = ns.WallGroup("AmbushWallGroup") - obj61 = ns.Object("Pit1") - obj62 = ns.Object("Pit2") - obj63 = ns.Object("Pit3") - obj64 = ns.Object("Pit4") - obj65 = ns.Object("Pit5") - obj66 = ns.Object("Pit6") - obj24 = ns.Object("Elevator1") - obj25 = ns.Object("Elevator2") - obj26 = ns.Object("Elevator3") - obj27 = ns.Object("Elevator4") - obj28 = ns.Object("Elevator5") - obj29 = ns.Object("Elevator6") - obj30 = ns.Object("Skeleton1") - obj31 = ns.Object("Skeleton2") - obj32 = ns.Object("Skeleton3") - obj33 = ns.Object("Skeleton4") - obj34 = ns.Object("Skeleton5") - obj35 = ns.Object("Skeleton6") - obj67 = ns.Object("Skeleton7") - obj36 = ns.Object("EndTrapTrigger") - obj59 = ns.Object("Gear1") - obj60 = ns.Object("Gear2") - obj13 = ns.Object("Plate1") - obj14 = ns.Object("Plate2") - obj15 = ns.Object("Plate3") - obj16 = ns.Object("Plate4") - obj17 = ns.Object("Plate5") - obj81 = ns.Object("Spike1") - obj82 = ns.Object("Spike2") - obj83 = ns.Object("Spike3") - obj84 = ns.Object("Spike4") - obj85 = ns.Object("Spike5") - obj86 = ns.Object("Spike6") - obj87 = ns.Object("Spike7") - obj88 = ns.Object("Spike8") - obj89 = ns.Object("Spike9") - obj90 = ns.Object("Spike10") - obj91 = ns.Object("Spike11") - obj92 = ns.Object("Spike12") - obj68 = ns.Object("CellDoor1") - obj69 = ns.Object("CellDoor2") - obj70 = ns.Object("CellDoor3") - obj71 = ns.Object("CellDoor4") - obj72 = ns.Object("CellDoor5") - obj73 = ns.Object("CellDoor6") - obj74 = ns.Object("CellDoor7") - obj75 = ns.Object("CellDoor8") - obj76 = ns.Object("CellDoor9") - obj77 = ns.Object("CellDoor10") - obj78 = ns.Object("CellDoor11") - obj79 = ns.Object("CellDoor12") - obj80 = ns.Object("CellLever") - wp39 = ns.Waypoint("BlockOpen1") - wp45 = ns.Waypoint("BlockClosed1") - wp40 = ns.Waypoint("BlockOpen2") - wp46 = ns.Waypoint("BlockClosed2") - wp41 = ns.Waypoint("BlockOpen3") - wp47 = ns.Waypoint("BlockClosed3") - wp42 = ns.Waypoint("BlockOpen4") - wp48 = ns.Waypoint("BlockClosed4") - wp43 = ns.Waypoint("BlockOpen5") - wp49 = ns.Waypoint("BlockClosed5") - wp44 = ns.Waypoint("BlockOpen6") - wp50 = ns.Waypoint("BlockClosed6") - wp127 = ns.Waypoint("Gates1WP") - wp128 = ns.Waypoint("Gates2WP") - gvar5 = ns.WallGroup("Gates1") - gvar6 = ns.WallGroup("Gates2") - wp38 = ns.Waypoint("BlockAudio1WP") - wp98 = ns.Waypoint("Spike1Open") - wp99 = ns.Waypoint("Spike2Open") - wp100 = ns.Waypoint("Spike3Open") - wp101 = ns.Waypoint("Spike4Open") - wp102 = ns.Waypoint("Spike5Open") - wp103 = ns.Waypoint("Spike6Open") - wp104 = ns.Waypoint("Spike7Open") - wp105 = ns.Waypoint("Spike8Open") - wp106 = ns.Waypoint("Spike9Open") - wp107 = ns.Waypoint("Spike10Open") - wp108 = ns.Waypoint("Spike11Open") - wp109 = ns.Waypoint("Spike12Open") - wp110 = ns.Waypoint("Spike1Closed") - wp111 = ns.Waypoint("Spike2Closed") - wp112 = ns.Waypoint("Spike3Closed") - wp113 = ns.Waypoint("Spike4Closed") - wp114 = ns.Waypoint("Spike5Closed") - wp115 = ns.Waypoint("Spike6Closed") - wp116 = ns.Waypoint("Spike7Closed") - wp117 = ns.Waypoint("Spike8Closed") - wp118 = ns.Waypoint("Spike9Closed") - wp119 = ns.Waypoint("Spike10Closed") - wp120 = ns.Waypoint("Spike11Closed") - wp121 = ns.Waypoint("Spike12Closed") - wp51 = ns.Waypoint("SkeletonGoal") - wp37 = ns.Waypoint("EndTrapAudioWP") - OpenGates() - CloseBlocks() - LockCellDoors() - KillSkeleton7() - ns.Move(obj11, wp49) - ns.Move(obj12, wp50) - EnableSpikes() -} -func BatsHostilize() { - ns.GroupAggressionLevel(gvar52, 0.83) -} -func BearHostilize() { - ns.AggressionLevel(obj53, 0.83) -} -func OgresHostilize() { - ns.AggressionLevel(obj93, 0.83) - ns.AggressionLevel(obj94, 0.83) -} -func DestroyWalls() { - ns.WallGroupBreak(gvar58) - ns.Attack(obj54, ns.GetHost()) - ns.Attack(obj55, ns.GetHost()) - ns.Attack(obj56, ns.GetHost()) -} -func OpenCellDoors() { - ns.UnlockDoor(obj68) - ns.UnlockDoor(obj69) - ns.UnlockDoor(obj70) - ns.UnlockDoor(obj71) - ns.UnlockDoor(obj72) - ns.UnlockDoor(obj73) - ns.UnlockDoor(obj74) - ns.UnlockDoor(obj75) - ns.UnlockDoor(obj76) - ns.UnlockDoor(obj77) - ns.UnlockDoor(obj78) - ns.UnlockDoor(obj79) - ns.ObjectOff(obj80) - EnableGears() -} -func ToggleGates1() { - ns.AudioEvent(ns.FireBallExplode, wp127) - ns.WallGroupOpen(gvar5) -} -func ToggleGates2() { - ns.AudioEvent(ns.FireBallExplode, wp128) - ns.WallGroupOpen(gvar6) -} -func ChapterFail2() { - ns.EnchantOff(ns.GetHost(), ns.ENCHANT_INVULNERABLE) - ns.DeathScreen(5) -} -func SilverKeyTrap() { - ns.ObjectOff(obj129) - ns.ObjectOff(obj130) - ns.ObjectOff(obj131) - ns.ObjectOff(obj132) - ns.WallGroupBreak(gvar96) - ns.AggressionLevel(obj123, 0.83) - ns.AggressionLevel(obj124, 0.83) - ns.AggressionLevel(obj125, 0.83) - ns.AggressionLevel(obj126, 0.83) -} -func MapEntry() { - ns.UnBlind() - LetterBoxOff() - ns.Frozen(ns.GetHost(), false) - if ns.GetQuestStatus("Wiz05B:GotHorvath") != 1 { - goto LABEL1 - } - obj95 = ns.Object("Wiz05B:Horvath") - ns.SetCallback(obj95, 5, HorvathDeath) -LABEL1: - return -} -func PlaySubMusic() { - ns.Music(20, 100) -} -func MonsterGoHome() { - r1 := ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) - if !r1 { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func Secret01() { - ns.AudioEvent(ns.SecretFound, wp133) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 50) -} -func Secret02() { - ns.AudioEvent(ns.SecretFound, wp134) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 100) -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapInitialize": - MapInitialize() - case "MapEntry": - MapEntry() - } -} diff --git a/examples/wiz06a/dummy_test.go b/examples/wiz06a/dummy_test.go deleted file mode 100644 index eeae71c..0000000 --- a/examples/wiz06a/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package wiz06a - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/wiz06a/wiz06a.go b/examples/wiz06a/wiz06a.go deleted file mode 100644 index ca06739..0000000 --- a/examples/wiz06a/wiz06a.go +++ /dev/null @@ -1,556 +0,0 @@ -package wiz06a - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - ivar4 int - ivar5 int - ivar6 int - flag7 bool - flag8 bool - flag9 bool - flag10 bool - flag11 bool - flag12 bool - flag13 bool - flag14 bool - gvar15 int - ivar16 int - gvar17 int - ivar18 int - obj19 ns.ObjectID - obj20 ns.ObjectID - obj21 ns.ObjectID - obj22 ns.ObjectID - obj23 ns.ObjectID - obj24 ns.ObjectID - obj25 ns.ObjectID - obj26 ns.ObjectID - obj27 ns.ObjectID - obj28 ns.ObjectID - obj29 ns.ObjectID - obj30 ns.ObjectID - obj31 ns.ObjectID - obj32 ns.ObjectID - obj33 ns.ObjectID - obj34 ns.ObjectID - obj35 ns.ObjectID - obj36 ns.ObjectID - obj37 ns.ObjectID - obj38 ns.ObjectID - obj39 ns.ObjectID - obj40 ns.ObjectID - obj41 ns.ObjectID - obj42 ns.ObjectID - obj43 ns.ObjectID - obj44 ns.ObjectID - obj45 ns.ObjectID - obj46 ns.ObjectID - obj47 ns.ObjectID - obj48 ns.ObjectID - obj49 ns.ObjectID - obj50 ns.ObjectID - obj51 ns.ObjectID - obj52 ns.ObjectID - gvar53 ns.ObjectGroupID - gvar54 ns.ObjectGroupID - gvar55 ns.ObjectGroupID - gvar56 ns.WallGroupID - wp57 ns.WaypointID - wp58 ns.WaypointID - wp59 ns.WaypointID - wp60 ns.WaypointID - wp61 ns.WaypointID - wp62 ns.WaypointID - wp63 ns.WaypointID - wp64 ns.WaypointID - wp65 ns.WaypointID - wp66 ns.WaypointID - wp67 ns.WaypointID - wp68 ns.WaypointID - wp69 ns.WaypointID - wp70 ns.WaypointID - wp71 ns.WaypointID - wp72 ns.WaypointID - wp73 ns.WaypointID - wp74 ns.WaypointID - wp75 ns.WaypointID - obj76 ns.ObjectID - gvar77 ns.ObjectGroupID - wp78 ns.WaypointID - wp79 ns.WaypointID - wp80 ns.WaypointID - wp81 ns.WaypointID -) - -func init() { - ivar4 = 60 - ivar5 = 0 - ivar6 = 90 - flag7 = true - flag8 = true - flag9 = true - flag10 = true - flag11 = true - flag12 = true - flag13 = true - flag14 = true - gvar15 = 0 - ivar16 = 0 - gvar17 = 0 - ivar18 = 60 -} -func SayCountdown() { - ivar5 -= 1 - if !(ivar5 <= 0) { - goto LABEL1 - } - ivar5 = 0 - goto LABEL2 -LABEL1: - ns.FrameTimer(30, SayCountdown) -LABEL2: - return -} -func WarriorRecognize() { - var v0 int - if !(ns.IsCaller(ns.GetHost()) && ivar5 == 0) { - goto LABEL1 - } - v0 = ns.Random(0, 3) - ivar5 = ivar4 - SayCountdown() - if v0 != 0 { - goto LABEL2 - } - ns.ChatTimer(ns.GetTrigger(), "Wiz06a:Guard2Recognize", ivar6) - goto LABEL1 -LABEL2: - ns.ChatTimer(ns.GetTrigger(), "Wiz06a:Guard1Recognize", ivar6) -LABEL1: - return -} -func WarriorEngage() { - var v0 int - if !(ns.IsCaller(ns.GetHost()) && ivar5 == 0) { - goto LABEL1 - } - v0 = ns.Random(0, 1) - ivar5 = ivar4 - SayCountdown() - if v0 != 0 { - goto LABEL2 - } - ns.ChatTimer(ns.GetTrigger(), "Wiz06a:Guard1Recognize", ivar6) - goto LABEL1 -LABEL2: - ns.ChatTimer(ns.GetTrigger(), "Wiz06a:Guard2Recognize", ivar6) -LABEL1: - return -} -func WarriorListen() { - if !(ns.IsCaller(ns.GetHost()) && ivar5 == 0) { - goto LABEL1 - } - if ns.IsVisibleTo(ns.GetTrigger(), ns.GetHost()) { - goto LABEL1 - } - ivar5 = ivar4 - SayCountdown() - ns.ChatTimer(ns.GetTrigger(), "Wiz06a:Guard2Listen", ivar6) -LABEL1: - return -} -func delwinTalkStart() { - ns.TellStory(ns.UrchinRecognize, "Wiz06b:Delwin1") - ns.Frozen(ns.GetHost(), true) - ns.ObjectGroupOff(gvar53) -} -func delwinTalkEnd() { - ns.Frozen(ns.GetHost(), false) - ns.ObjectGroupOn(gvar53) - ns.CancelDialog(obj37) -} -func delwinLeaves() { - if !flag13 { - goto LABEL1 - } - if !ns.IsVisibleTo(obj37, ns.GetHost()) { - goto LABEL1 - } - flag13 = false - ns.Walk(obj37, ns.GetObjectX(ns.GetHost())+50, ns.GetObjectY(ns.GetHost())) - ns.SetDialog(obj37, ns.NORMAL, delwin1TalkStart, delwin1TalkEnd) - ns.StartDialog(obj37, ns.GetHost()) -LABEL1: - return -} -func delwin1TalkStart() { - ns.TellStory(ns.UrchinRecognize, "Wiz06b:Delwin2") - ns.AggressionLevel(obj37, 0) - ns.ObjectGroupOff(gvar53) -} -func delwin1TalkEnd() { - ns.CancelDialog(obj37) - ns.JournalEdit(ns.GetHost(), "Wiz6SneakIn", 4) - ns.JournalEntry(ns.GetHost(), "Wiz6Bull", 2) - ns.JournalEntry(ns.GetHost(), "Wiz6Fortress", 2) - ns.CreateObject("BluePotion", wp75) - ns.Frozen(ns.GetHost(), false) - ns.CreatureIdle(obj37) - ns.AggressionLevel(obj37, 0.16) - ns.ObjectGroupOn(gvar53) - ns.GiveXp(ns.GetHost(), 2500) - delwinGoesHome() -} -func delwinGoesHome() { - if !flag14 { - goto LABEL1 - } - if ns.IsVisibleTo(ns.GetHost(), obj37) { - goto LABEL2 - } - flag14 = false - ns.BecomeEnemy(obj37) - ns.MoveObject(obj37, 3749, 3497) -LABEL2: - ns.FrameTimer(10, delwinGoesHome) -LABEL1: - return -} -func heardYou() { - if !flag12 { - goto LABEL1 - } - flag12 = false - ns.HitLocation(ns.GetTrigger(), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.Chat(ns.GetTrigger(), "Wiz06b:Guard1") - ns.FrameTimer(90, hearingRestored) -LABEL1: - return -} -func hearingRestored() { - flag12 = true -} -func sawYou() { - if !ns.IsVisibleTo(ns.GetTrigger(), ns.GetHost()) { - goto LABEL1 - } - if !flag11 { - goto LABEL1 - } - flag11 = false - ns.Chat(ns.GetTrigger(), "Wiz06b:Guard2") - ns.FrameTimer(360, sightRestored) -LABEL1: - return -} -func sightRestored() { - flag11 = true -} -func march() { - ns.Wander(ns.GetTrigger()) -} -func freezePlayer() { - ns.WideScreen(true) - ns.Frozen(ns.GetHost(), true) - ns.FrameTimer(15, captainTalks) -} -func captainTalks() { - ns.StartDialog(obj19, ns.GetHost()) -} -func helloCaptain() { - ns.TellStory(ns.ArcherRecognize, "Wiz06a:Captain1") -} -func goodbyeCaptain() { - ns.MoveObject(obj24, 3989, 4542) - ns.MoveObject(obj25, 4014, 4541) - ns.MoveObject(obj26, 3954, 4542) - ns.SetDialog(obj19, ns.NORMAL, helloCaptain2, goodbyeCaptain2) - ns.StartDialog(obj19, ns.GetHost()) -} -func helloCaptain2() { - ns.TellStory(ns.ArcherRecognize, "Wiz06a:Captain2") -} -func goodbyeCaptain2() { - ns.CancelDialog(obj19) - ns.WideScreen(false) - ns.Frozen(ns.GetHost(), false) - ns.JournalEntry(ns.GetHost(), "Wiz6SneakIn", 2) - ns.FrameTimer(3, captainVanishes) -} -func captainVanishes() { - if !flag10 { - goto LABEL1 - } - if ns.IsVisibleTo(ns.GetHost(), obj19) { - goto LABEL2 - } - flag10 = false - ns.Delete(obj19) - ns.Delete(obj20) - ns.Delete(obj21) -LABEL2: - ns.FrameTimer(10, captainVanishes) -LABEL1: - return -} -func guard1Listen() { - if !flag8 { - goto LABEL1 - } - flag8 = false - if !flag7 { - goto LABEL2 - } - ivar16 += 1 - flag7 = false - ns.StoryPic(obj22, "Warrior3Pic") - ns.SetDialog(obj22, ns.NORMAL, guard1TalkStart, guard1TalkEnd) - ns.StartDialog(obj22, ns.GetHost()) - goto LABEL3 -LABEL2: - ns.Chat(obj22, "Wiz06a:Guard1Listen") - ivar16 += 1 - if !(ivar16 > 2) { - goto LABEL3 - } - ivar16 = 3 - ns.Walk(obj22, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) -LABEL3: - ns.FrameTimer(180, unpaused1) -LABEL1: - return -} -func guard1Recognize() { - if !flag7 { - goto LABEL1 - } - flag7 = false -LABEL1: - if !flag8 { - goto LABEL2 - } - flag8 = false - if flag7 { - goto LABEL3 - } - ns.Chat(obj22, "Wiz06a:Guard1Recognize") -LABEL3: - ns.FrameTimer(180, unpaused1) -LABEL2: - return -} -func guard1TalkStart() { - ns.Frozen(obj22, true) - ns.Frozen(obj23, true) - ns.Frozen(ns.GetHost(), true) - ns.TellStory(ns.SwordsmanRecognize, "Wiz06a:Guard1Listen") -} -func guard1TalkEnd() { - ns.Frozen(obj22, false) - ns.Frozen(obj23, false) - ns.Frozen(ns.GetHost(), false) - ns.CancelDialog(obj22) -} -func unpaused1() { - flag8 = true -} -func guard2Listen() { - if !flag9 { - goto LABEL1 - } - flag9 = false - ns.Chat(obj23, "Wiz06a:Guard2Listen") - if !(ivar16 > 2) { - goto LABEL2 - } - ivar16 = 3 - ns.Walk(obj23, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) -LABEL2: - ns.FrameTimer(210, unpaused2) -LABEL1: - return -} -func guard2Recognize() { - if !flag7 { - goto LABEL1 - } - flag7 = false -LABEL1: - if !flag9 { - goto LABEL2 - } - flag9 = false - ns.Chat(obj23, "Wiz06a:Guard2Recognize") - ns.FrameTimer(210, unpaused2) -LABEL2: - return -} -func unpaused2() { - flag9 = true -} -func goHome1() { - ns.GoBackHome(obj22) -} -func goHome2() { - ns.GoBackHome(obj23) -} -func ResetSquishTrapSEG1() { - ns.Move(obj29, wp66) - ns.Move(obj30, wp67) - ns.Move(obj31, wp68) - ns.Move(obj32, wp69) - ns.Move(obj33, wp70) - ns.Move(obj34, wp71) - ns.Move(obj35, wp72) - ns.Move(obj36, wp73) - ns.AudioEvent(ns.BoulderMove, wp57) - ns.FrameTimer(20, ResetSquishTrapSEG2) -} -func ResetSquishTrapSEG2() { - ns.ObjectOn(obj27) - ns.ObjectOn(obj28) -} -func InitializeSquishBlocks() { - obj27 = ns.Object("SquishTrigger") - obj28 = ns.Object("BoomTrigger") - obj29 = ns.Object("SquishBlock01") - obj30 = ns.Object("SquishBlock02") - obj31 = ns.Object("SquishBlock03") - obj32 = ns.Object("SquishBlock04") - obj33 = ns.Object("SquishBlock05") - obj34 = ns.Object("SquishBlock06") - obj35 = ns.Object("SquishBlock07") - obj36 = ns.Object("SquishBlock08") - wp57 = ns.Waypoint("SquishAudioOrigin") - wp58 = ns.Waypoint("SquishWP01") - wp59 = ns.Waypoint("SquishWP02") - wp60 = ns.Waypoint("SquishWP03") - wp61 = ns.Waypoint("SquishWP04") - wp62 = ns.Waypoint("SquishWP05") - wp63 = ns.Waypoint("SquishWP06") - wp64 = ns.Waypoint("SquishWP07") - wp65 = ns.Waypoint("SquishWP08") - wp66 = ns.Waypoint("SquishWPHome01") - wp67 = ns.Waypoint("SquishWPHome02") - wp68 = ns.Waypoint("SquishWPHome03") - wp69 = ns.Waypoint("SquishWPHome04") - wp70 = ns.Waypoint("SquishWPHome05") - wp71 = ns.Waypoint("SquishWPHome06") - wp72 = ns.Waypoint("SquishWPHome07") - wp73 = ns.Waypoint("SquishWPHome08") -} -func MapInitialize() { - ns.StartupScreen(6) - obj19 = ns.Object("Captain") - obj20 = ns.Object("Basket") - obj21 = ns.Object("BasketShadow") - obj22 = ns.Object("Guard1") - obj23 = ns.Object("Guard2") - obj24 = ns.Object("Invisibility") - obj25 = ns.Object("Lock") - obj26 = ns.Object("Trap") - obj37 = ns.Object("Delwin") - obj38 = ns.Object("SweeperMover1") - obj39 = ns.Object("SweeperMover2") - obj40 = ns.Object("SweeperMover3") - obj41 = ns.Object("SweeperMover4") - obj42 = ns.Object("SweeperMover5") - obj43 = ns.Object("SweeperMover6") - obj44 = ns.Object("SweeperMover7") - obj45 = ns.Object("SweeperMover8") - obj46 = ns.Object("SweeperMover9") - obj47 = ns.Object("SweeperMover10") - obj48 = ns.Object("SweeperMover11") - obj49 = ns.Object("SweeperMover12") - obj50 = ns.Object("SweeperMover13") - obj51 = ns.Object("SweeperMover14") - obj52 = ns.Object("SewerElevator") - gvar55 = ns.ObjectGroup("SewerMonsters") - gvar56 = ns.WallGroup("SewerMonsterWalls") - gvar53 = ns.ObjectGroup("EveryMonsterOnMap") - wp74 = ns.Waypoint("PlayerSounds") - wp75 = ns.Waypoint("PotionWay") - ns.StoryPic(obj37, "Townsman1Pic") - ns.ObjectOn(obj38) - ns.ObjectOn(obj39) - ns.ObjectOn(obj40) - ns.ObjectOn(obj41) - ns.ObjectOn(obj42) - ns.ObjectOn(obj43) - ns.ObjectOn(obj44) - ns.ObjectOn(obj45) - ns.ObjectOn(obj46) - ns.StoryPic(obj19, "AirshipCaptainPic") - ns.SetDialog(obj19, ns.NEXT, helloCaptain, goodbyeCaptain) - obj76 = ns.Object("TrapSpellBook") - gvar54 = ns.ObjectGroup("RoamingGuards") - gvar77 = ns.ObjectGroup("DelwinTriggers") - wp78 = ns.Waypoint("DelwinGreetWP") - wp81 = ns.Waypoint("DelwinGuardWP") - wp79 = ns.Waypoint("DelwinLookWP") - wp80 = ns.Waypoint("TrapSpellWP") - ns.FrameTimer(3, InitializeSquishBlocks) - ns.FrameTimer(5, freezePlayer) - ns.GroupWander(gvar54) - ns.SetOwner(ns.GetHost(), obj19) - ns.Music(18, 100) -} -func PlayerDeath() { - ns.DeathScreen(6) -} -func Squish() { - ns.ObjectOff(obj27) - ns.Move(obj29, wp58) - ns.Move(obj30, wp59) - ns.Move(obj31, wp60) - ns.Move(obj32, wp61) - ns.Move(obj33, wp62) - ns.Move(obj34, wp63) - ns.Move(obj35, wp64) - ns.Move(obj36, wp65) - ns.AudioEvent(ns.BoulderMove, wp57) - ns.FrameTimer(ivar18, ResetSquishTrapSEG1) -} -func SquishBoom() { - if ns.IsCaller(obj31) { - goto LABEL1 - } - return -LABEL1: - ns.ObjectOff(obj28) - ns.AudioEvent(ns.HammerMissing, wp57) - ns.Effect(ns.JIGGLE, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 10, 0) -} -func OpenBlockSecretExit() { - ns.WallOpen(ns.Wall(178, 46)) -} -func SewerSecretFound() { - ns.MoveWaypoint(wp74, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretFound, wp74) - ns.ObjectGroupOff(ns.ObjectGroup("SewerSecretTriggers")) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 100) -} -func Secret01Found() { - ns.MoveWaypoint(wp74, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretFound, wp74) - ns.ObjectOff(ns.GetTrigger()) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 100) -} -func ActivateSewerElevator() { - ns.ObjectOff(ns.GetTrigger()) - ns.ObjectOn(obj52) - ns.ObjectGroupOn(gvar55) - ns.WallGroupOpen(gvar56) -} -func OnEvent(typ string) { - switch typ { - case "MapInitialize": - MapInitialize() - case "PlayerDeath": - PlayerDeath() - } -} diff --git a/examples/wiz06b/dummy_test.go b/examples/wiz06b/dummy_test.go deleted file mode 100644 index 7d1f9af..0000000 --- a/examples/wiz06b/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package wiz06b - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/wiz06b/wiz06b.go b/examples/wiz06b/wiz06b.go deleted file mode 100644 index e94d65c..0000000 --- a/examples/wiz06b/wiz06b.go +++ /dev/null @@ -1,144 +0,0 @@ -package wiz06b - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 ns.ObjectID - obj5 ns.ObjectID - obj6 ns.ObjectID - wp7 ns.WaypointID - wp8 ns.WaypointID - gvar9 ns.ObjectGroupID - gvar10 ns.ObjectGroupID - ivar11 int - ivar12 int - ivar13 int -) - -func init() { - ivar11 = 60 - ivar12 = 0 - ivar13 = 90 -} -func DisableElevators() { - ns.ObjectOff(obj6) -} -func MapInitialize() { - obj4 = ns.Object("GauntletDoorR") - obj5 = ns.Object("GauntletDoorL") - obj6 = ns.Object("HideoutElevator") - wp7 = ns.Waypoint("PlayerSounds") - wp8 = ns.Waypoint("WellWP") - gvar9 = ns.ObjectGroup("RoamingWarriors") - gvar10 = ns.ObjectGroup("LightGears") - ns.LockDoor(obj4) - ns.LockDoor(obj5) - ns.GroupWander(gvar9) - ns.FrameTimer(45, DisableElevators) -} -func NoEnemys() { - r1 := ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) - if !r1 { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func PlayerDeath() { - ns.DeathScreen(6) -} -func ToggleHideoutElevator() { - ns.ObjectToggle(obj6) - ns.ObjectGroupToggle(gvar10) -} -func Secret01Found() { - ns.MoveWaypoint(wp7, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretFound, wp7) - ns.ObjectOff(ns.GetTrigger()) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 100) -} -func Secret02Found() { - ns.MoveWaypoint(wp7, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretFound, wp7) - ns.ObjectOff(ns.GetTrigger()) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 100) -} -func SayCountdown() { - ivar12 -= 1 - if !(ivar12 <= 0) { - goto LABEL1 - } - ivar12 = 0 - goto LABEL2 -LABEL1: - ns.FrameTimer(30, SayCountdown) -LABEL2: - return -} -func WarriorRecognize() { - var v0 int - if !(ns.IsCaller(ns.GetHost()) && ivar12 == 0) { - goto LABEL1 - } - v0 = ns.Random(0, 3) - ivar12 = ivar11 - SayCountdown() - if v0 != 0 { - goto LABEL2 - } - ns.ChatTimer(ns.GetTrigger(), "War01A.scr:SetpieceGuard1Talk01", ivar13) - goto LABEL1 -LABEL2: - ns.ChatTimer(ns.GetTrigger(), "Wiz06a:Guard1Recognize", ivar13) -LABEL1: - return -} -func WarriorEngage() { - var v0 int - if !(ns.IsCaller(ns.GetHost()) && ivar12 == 0) { - goto LABEL1 - } - v0 = ns.Random(0, 3) - ivar12 = ivar11 - SayCountdown() - if v0 != 0 { - goto LABEL2 - } - ns.ChatTimer(ns.GetTrigger(), "War01A.scr:SetpieceGuard1Talk01", ivar13) - goto LABEL1 -LABEL2: - ns.ChatTimer(ns.GetTrigger(), "Wiz06a:Guard1Recognize", ivar13) -LABEL1: - return -} -func WarriorListen() { - if !(ns.IsCaller(ns.GetHost()) && ivar12 == 0) { - goto LABEL1 - } - if ns.IsVisibleTo(ns.GetTrigger(), ns.GetHost()) { - goto LABEL1 - } - ivar12 = ivar11 - SayCountdown() - ns.ChatTimer(ns.GetTrigger(), "Wiz06a:Guard2Listen", ivar13) -LABEL1: - return -} -func MakeAWish() { - var v0 int - v0 = ns.MaxHealth(ns.GetCaller()) - ns.RestoreHealth(ns.GetCaller(), v0-ns.CurrentHealth(ns.GetCaller())) - ns.PrintToAll("GeneralPrint:WellSignRefresh") - ns.AudioEvent(ns.RestoreHealthName, wp8) -} -func OnEvent(typ string) { - switch typ { - case "MapInitialize": - MapInitialize() - case "PlayerDeath": - PlayerDeath() - } -} diff --git a/examples/wiz06c/dummy_test.go b/examples/wiz06c/dummy_test.go deleted file mode 100644 index b05a2f5..0000000 --- a/examples/wiz06c/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package wiz06c - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/wiz06c/wiz06c.go b/examples/wiz06c/wiz06c.go deleted file mode 100644 index ee9df5d..0000000 --- a/examples/wiz06c/wiz06c.go +++ /dev/null @@ -1,462 +0,0 @@ -package wiz06c - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 ns.ObjectID - obj5 ns.ObjectID - obj6 ns.ObjectID - obj7 ns.ObjectID - obj8 ns.ObjectID - obj9 ns.ObjectID - obj10 ns.ObjectID - gvar11 ns.ObjectGroupID - ivar12 int - ivar13 int - ivar14 int - wp15 ns.WaypointID - flag16 bool - flag17 bool - flag18 bool - flag19 bool - flag20 bool - gvar21 int - obj22 ns.ObjectID - obj23 ns.ObjectID - obj24 ns.ObjectID - obj25 ns.ObjectID - obj26 ns.ObjectID - obj27 ns.ObjectID - obj28 ns.ObjectID - obj29 ns.ObjectID - obj30 ns.ObjectID - obj31 ns.ObjectID - obj32 ns.ObjectID - obj33 ns.ObjectID - obj34 ns.ObjectID - obj35 ns.ObjectID - obj36 ns.ObjectID - obj37 ns.ObjectID - obj38 ns.ObjectID - obj39 ns.ObjectID - obj40 ns.ObjectID - obj41 ns.ObjectID - obj42 ns.ObjectID - obj43 ns.ObjectID - obj44 ns.ObjectID - obj45 ns.ObjectID - obj46 ns.ObjectID - obj47 ns.ObjectID - obj48 ns.ObjectID - gvar49 ns.ObjectGroupID - gvar50 ns.ObjectGroupID - gvar51 ns.ObjectGroupID - gvar52 ns.WallGroupID - gvar53 ns.WallGroupID - gvar54 ns.WallGroupID - wp55 ns.WaypointID - wp56 ns.WaypointID - wp57 ns.WaypointID - wp58 ns.WaypointID - wp59 ns.WaypointID - wp60 ns.WaypointID - wp61 ns.WaypointID - wp62 ns.WaypointID - wp63 ns.WaypointID - wp64 ns.WaypointID - wp65 ns.WaypointID - wp66 ns.WaypointID - wp67 ns.WaypointID - wp68 ns.WaypointID -) - -func init() { - ivar12 = 60 - ivar13 = 0 - ivar14 = 90 - flag16 = true - flag17 = true - flag18 = true - flag19 = true - flag20 = true - gvar21 = 0 -} -func ReleaseMonsters() { - ns.ObjectOff(ns.GetTrigger()) - ns.UnlockDoor(obj4) - ns.UnlockDoor(obj5) - ns.UnlockDoor(obj6) - ns.UnlockDoor(obj7) - ns.UnlockDoor(obj8) - ns.UnlockDoor(obj9) - ns.UnlockDoor(obj10) - ns.SetOwner(ns.Object("OgreOwner"), ns.Object("Ogre01")) - ns.SetOwner(ns.Object("OgreOwner"), ns.Object("Ogre02")) - ns.SetOwner(ns.Object("OgreOwner"), ns.Object("Ogre03")) - ns.SetOwner(ns.Object("TrollOwner"), ns.Object("Troll01")) - ns.SetOwner(ns.Object("TrollOwner"), ns.Object("Troll02")) - ns.GroupMove(gvar11, ns.Waypoint("CagedMonsterWP")) -} -func SayCountdown() { - ivar13 -= 1 - if !(ivar13 <= 0) { - goto LABEL1 - } - ivar13 = 0 - goto LABEL2 -LABEL1: - ns.FrameTimer(30, SayCountdown) -LABEL2: - return -} -func WarriorRecognize() { - var v0 int - if !(ns.IsCaller(ns.GetHost()) && ivar13 == 0) { - goto LABEL1 - } - v0 = ns.Random(0, 3) - ivar13 = ivar12 - SayCountdown() - if v0 != 0 { - goto LABEL2 - } - ns.Chat(ns.GetTrigger(), "War01A.scr:SetpieceGuard1Talk01") - goto LABEL1 -LABEL2: - ns.Chat(ns.GetTrigger(), "Wiz06a:Guard1Recognize") -LABEL1: - return -} -func WarriorEngage() { - var v0 int - if !(ns.IsCaller(ns.GetHost()) && ivar13 == 0) { - goto LABEL1 - } - v0 = ns.Random(0, 3) - ivar13 = ivar12 - SayCountdown() - if v0 != 0 { - goto LABEL2 - } - ns.Chat(ns.GetTrigger(), "War01A.scr:SetpieceGuard1Talk01") - goto LABEL1 -LABEL2: - ns.Chat(ns.GetTrigger(), "Wiz06a:Guard1Recognize") -LABEL1: - return -} -func WarriorListen() { - if !(ns.IsCaller(ns.GetHost()) && ivar13 == 0) { - goto LABEL1 - } - if ns.IsVisibleTo(ns.GetTrigger(), ns.GetHost()) { - goto LABEL1 - } - ivar13 = ivar12 - SayCountdown() - ns.ChatTimer(ns.GetTrigger(), "Wiz06a:Guard2Listen", ivar14) -LABEL1: - return -} -func MakeAWish() { - var v0 int - v0 = ns.MaxHealth(ns.GetCaller()) - ns.RestoreHealth(ns.GetCaller(), v0-ns.CurrentHealth(ns.GetCaller())) - ns.PrintToAll("GeneralPrint:WellSignRefresh") - ns.AudioEvent(ns.RestoreHealthName, wp15) -} -func heardYou() { - if !flag19 { - goto LABEL1 - } - flag19 = false - ns.HitLocation(ns.GetTrigger(), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.Chat(ns.GetTrigger(), "Wiz06b:Guard1") - ns.FrameTimer(90, hearingRestored) -LABEL1: - return -} -func hearingRestored() { - flag19 = true -} -func sightRestored() { - flag18 = true -} -func flamesOn() { - ns.ObjectGroupOn(gvar49) -} -func flamesOff() { - ns.ObjectGroupOff(gvar49) - ns.ObjectOn(obj27) - ns.ObjectOn(obj28) - ns.BecomePet(obj27) - ns.BecomePet(obj28) - ns.WallGroupOpen(gvar54) -} -func horrendousHurt() { - if !flag17 { - goto LABEL1 - } - if !(ns.CurrentHealth(obj22) < 50) { - goto LABEL1 - } - ns.SetDialog(obj22, ns.NORMAL, horrendousTalk2Start, horrendousTalk2End) - ns.StartDialog(obj22, ns.GetHost()) -LABEL1: - return -} -func horrendousDie() { - ns.SetDialog(obj22, ns.NORMAL, horrendousTalk3Start, horrendousTalk3End) - ns.StartDialog(obj22, ns.GetHost()) -} -func horrendousEngage() { - if !flag16 { - goto LABEL1 - } - lockDoors() - ns.Music(28, 100) - ns.WideScreen(true) - ns.SetDialog(obj22, ns.NORMAL, horrendousTalk1Start, horrendousTalk1End) - ns.StartDialog(obj22, ns.GetHost()) -LABEL1: - return -} -func horrendousTalk1Start() { - flag16 = false - ns.CreatureIdle(obj22) - ns.ObjectGroupOff(gvar51) - ns.ObjectOff(obj27) - ns.ObjectOff(obj28) - ns.Frozen(ns.GetHost(), true) - ns.TellStory(ns.DemonRecognize, "Wiz06c:Horrendous2") -} -func horrendousTalk1End() { - ns.ObjectGroupOn(gvar51) - ns.ObjectOn(obj27) - ns.ObjectOn(obj28) - ns.WideScreen(false) - ns.Frozen(ns.GetHost(), false) - ns.CancelDialog(obj22) -} -func horrendousTalk2Start() { - flag17 = false - ns.ObjectGroupOff(gvar51) - ns.ObjectOff(obj27) - ns.ObjectOff(obj28) - ns.Damage(ns.GetHost(), 0, 1, 0) - ns.WideScreen(true) - ns.Frozen(ns.GetHost(), true) - ns.TellStory(ns.DemonRecognize, "Wiz06c:Horrendous3") -} -func horrendousTalk2End() { - ns.ObjectGroupOn(gvar51) - ns.ObjectOn(obj27) - ns.ObjectOn(obj28) - ns.WideScreen(false) - ns.Frozen(ns.GetHost(), false) -} -func horrendousTalk3Start() { - ns.ObjectGroupOff(gvar51) - ns.ObjectOff(obj27) - ns.ObjectOff(obj28) - ns.WideScreen(true) - ns.Frozen(ns.GetHost(), true) - ns.TellStory(ns.DemonRecognize, "Wiz06c:Horrendous5") -} -func horrendousTalk3End() { - ns.ObjectGroupOn(gvar51) - ns.ObjectOn(obj27) - ns.ObjectOn(obj28) - ns.WideScreen(false) - ns.Frozen(ns.GetHost(), false) - ns.FrameTimer(60, getHalberd) -} -func getHalberd() { - ns.Pickup(ns.GetHost(), obj23) - ns.AudioEvent(ns.StaffOblivionAchieve1, wp60) - ns.ObjectOn(obj48) - ns.UnlockDoor(obj33) - ns.UnlockDoor(obj34) -} -func lockDoors() { - if !flag20 { - goto LABEL1 - } - flag20 = false - ns.ObjectOff(obj41) - ns.ObjectOn(obj40) - ns.LockDoor(obj33) - ns.LockDoor(obj34) - ns.LockDoor(obj35) - ns.LockDoor(obj36) - ns.LockDoor(obj37) - ns.LockDoor(obj38) - ns.LockDoor(obj39) -LABEL1: - return -} -func unlockCells() { - ns.UnlockDoor(obj4) - ns.UnlockDoor(obj5) - ns.UnlockDoor(obj6) - ns.UnlockDoor(obj7) - ns.UnlockDoor(obj8) - ns.UnlockDoor(obj9) - ns.UnlockDoor(obj10) -} -func lockCells() { - ns.LockDoor(obj4) - ns.LockDoor(obj5) - ns.LockDoor(obj6) - ns.LockDoor(obj7) - ns.LockDoor(obj8) - ns.LockDoor(obj9) - ns.LockDoor(obj10) -} -func openMainGates() { - ns.Move(obj44, wp65) - ns.Move(obj45, wp66) - ns.Move(obj46, wp67) - ns.Move(obj47, wp68) -} -func closeMainGates() { - ns.Move(obj44, wp61) - ns.Move(obj45, wp62) - ns.Move(obj46, wp63) - ns.Move(obj47, wp64) -} -func toggleMainGates() { - if gvar21 != 0 { - goto LABEL1 - } - gvar21 = 1 - openMainGates() - goto LABEL2 -LABEL1: - gvar21 = 0 - closeMainGates() -LABEL2: - ns.AudioEvent(ns.BoulderMove, wp64) - ns.AudioEvent(ns.SecretWallStoneClose, wp64) -} -func endLevel() { - ns.Blind() - ns.DestroyEveryChat() - ns.ObjectGroupOff(gvar51) - ns.Frozen(ns.GetHost(), true) - ns.FrameTimer(60, exitLevel) -} -func exitLevel() { - ns.DestroyEveryChat() - ns.Frozen(ns.GetHost(), false) - ns.UnBlind() - ns.MoveObject(ns.GetHost(), 655, 2726) -} -func MapInitialize() { - obj22 = ns.Object("Horrendous") - obj23 = ns.Object("OblivionHalberd") - obj24 = ns.Object("ManaDrainFocus") - obj25 = ns.Object("EliteGuard1") - obj26 = ns.Object("EliteGuard2") - obj27 = ns.Object("Wizard1") - obj28 = ns.Object("Wizard2") - obj29 = ns.Object("Ogre1") - obj30 = ns.Object("Ogre2") - obj31 = ns.Object("Ogre3") - obj32 = ns.Object("Ogre4") - obj33 = ns.Object("ArenaDoor1") - obj34 = ns.Object("ArenaDoor2") - obj35 = ns.Object("ArenaDoor3") - obj36 = ns.Object("ArenaDoor4") - obj37 = ns.Object("ArenaDoor5") - obj38 = ns.Object("ArenaDoor6") - obj39 = ns.Object("ArenaDoor7") - obj40 = ns.Object("OpenArenaTrigger") - obj41 = ns.Object("CloseArenaTrigger") - ns.ObjectOff(obj40) - ns.ObjectOff(obj41) - obj42 = ns.Object("RSideLocked") - obj43 = ns.Object("LSideLocked") - obj4 = ns.Object("CellDoor1") - obj5 = ns.Object("CellDoor2") - obj6 = ns.Object("CellDoor3") - obj7 = ns.Object("CellDoor4") - obj8 = ns.Object("CellDoor5") - obj9 = ns.Object("CellDoor6") - obj10 = ns.Object("CellDoor7") - obj48 = ns.Object("ExitTrigger1") - ns.ObjectOff(obj48) - obj44 = ns.Object("FG1Mover") - obj45 = ns.Object("FG2Mover") - obj46 = ns.Object("FG3Mover") - obj47 = ns.Object("FG4Mover") - gvar49 = ns.ObjectGroup("BlueFlames") - ns.ObjectGroupOn(gvar49) - gvar11 = ns.ObjectGroup("CagedMonsters") - gvar50 = ns.ObjectGroup("RoamingWarriors") - gvar51 = ns.ObjectGroup("EveryMonsterOnMap") - gvar52 = ns.WallGroup("OgreCages") - gvar53 = ns.WallGroup("UndeadBreakIn") - gvar54 = ns.WallGroup("WizardCages") - wp55 = ns.Waypoint("PlayerSounds") - wp15 = ns.Waypoint("WellWP") - wp56 = ns.Waypoint("PlayerNorth") - wp57 = ns.Waypoint("PlayerSouth") - wp58 = ns.Waypoint("PlayerEast") - wp59 = ns.Waypoint("PlayerWest") - wp60 = ns.Waypoint("HorrendousNorth") - wp61 = ns.Waypoint("FG1Closed") - wp62 = ns.Waypoint("FG2Closed") - wp63 = ns.Waypoint("FG3Closed") - wp64 = ns.Waypoint("FG4Closed") - wp65 = ns.Waypoint("FG1Open") - wp66 = ns.Waypoint("FG2Open") - wp67 = ns.Waypoint("FG3Open") - wp68 = ns.Waypoint("FG4Open") - ns.LockDoor(obj42) - ns.LockDoor(obj43) - ns.LockDoor(obj4) - ns.LockDoor(obj5) - ns.LockDoor(obj6) - ns.LockDoor(obj7) - ns.LockDoor(obj8) - ns.LockDoor(obj9) - ns.LockDoor(obj10) - ns.ObjectOff(obj27) - ns.ObjectOff(obj28) - ns.StoryPic(obj22, "HorrendousPic") - ns.StoryPic(obj27, "WizardGuard1Pic") - ns.StoryPic(obj28, "WizardGuard2Pic") - ns.GroupWander(gvar50) - ns.Music(16, 100) -} -func PlayerDeath() { - ns.DeathScreen(6) -} -func unlockDoors() { - if flag20 { - goto LABEL1 - } - flag20 = true - ns.ObjectOff(obj40) - ns.ObjectOn(obj41) - ns.UnlockDoor(obj33) - ns.UnlockDoor(obj34) -LABEL1: - return -} -func Secret01Found() { - ns.MoveWaypoint(wp55, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretFound, wp55) - ns.ObjectOff(ns.GetTrigger()) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 100) -} -func OnEvent(typ string) { - switch typ { - case "MapInitialize": - MapInitialize() - case "PlayerDeath": - PlayerDeath() - } -} diff --git a/examples/wiz07a/dummy_test.go b/examples/wiz07a/dummy_test.go deleted file mode 100644 index c4ef83c..0000000 --- a/examples/wiz07a/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package wiz07a - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/wiz07a/wiz07a.go b/examples/wiz07a/wiz07a.go deleted file mode 100644 index f7a7e04..0000000 --- a/examples/wiz07a/wiz07a.go +++ /dev/null @@ -1,55 +0,0 @@ -package wiz07a - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 ns.ObjectID - obj5 ns.ObjectID - obj6 ns.ObjectID -) - -func CreatureSetup() { - ns.SetOwner(ns.GetHost(), obj4) - ns.SetOwner(ns.GetHost(), obj5) - ns.LockDoor(obj6) - ns.SetDialog(obj4, ns.NORMAL, JandorStart, JandorEnd) - ns.SetDialog(obj5, ns.NORMAL, LanceDialogStart, LanceDialogEnd) - ns.PrintToAll("Con01a:NewJournalEntry") - ns.JournalEntry(ns.GetHost(), "GetHON", 2) - ns.FrameTimer(1, StartJandorTalk) -} -func StartJandorTalk() { - ns.StartDialog(obj4, ns.GetHost()) -} -func JandorStart() { - ns.Music(21, 100) - ns.TellStory(ns.HumanMaleEatFood, "Wiz07.scr:JandorTalk01") -} -func JandorEnd() { - ns.CancelDialog(obj4) -} -func LanceDialogStart() { - ns.TellStory(ns.SwordsmanHurt, "War01A.scr:Guard1Talk01") -} -func LanceDialogEnd() { -} -func MapInitialize() { - obj4 = ns.Object("Jandor") - obj5 = ns.Object("Lance") - obj6 = ns.Object("FacadeGate") - ns.StoryPic(obj4, "AirshipCaptainPic") - ns.StoryPic(obj5, "WizardGuard2Pic") - ns.StartupScreen(7) - ns.FrameTimer(1, CreatureSetup) -} -func PlayerDeath() { - ns.DeathScreen(10) -} -func OnEvent(typ string) { - switch typ { - case "MapInitialize": - MapInitialize() - case "PlayerDeath": - PlayerDeath() - } -} diff --git a/examples/wiz07b/dummy_test.go b/examples/wiz07b/dummy_test.go deleted file mode 100644 index 50a9e67..0000000 --- a/examples/wiz07b/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package wiz07b - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/wiz07b/wiz07b.go b/examples/wiz07b/wiz07b.go deleted file mode 100644 index 3345838..0000000 --- a/examples/wiz07b/wiz07b.go +++ /dev/null @@ -1,275 +0,0 @@ -package wiz07b - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 ns.ObjectID - obj5 ns.ObjectID - obj6 ns.ObjectID - wp7 ns.WaypointID - wp8 ns.WaypointID - wp9 ns.WaypointID - wp10 ns.WaypointID - wp11 ns.WaypointID - gvar12 ns.WallGroupID - gvar13 ns.ObjectGroupID - gvar14 ns.ObjectGroupID - gvar15 ns.ObjectGroupID - gvar16 ns.ObjectGroupID - wp17 ns.WaypointID - wp18 ns.WaypointID - wp19 ns.WaypointID - wp20 ns.WaypointID - wp21 ns.WaypointID - wp22 ns.WaypointID - wp23 [21]ns.WaypointID - wp24 [21]ns.WaypointID - wp25 [21]ns.WaypointID - gvar26 ns.WallGroupID - gvar27 ns.ObjectGroupID - fvar28 float32 - fvar29 float32 - fvar30 float32 - gvar31 int - ivar32 int - flag33 bool -) - -func init() { - fvar28 = 8 - fvar29 = 20 - gvar31 = 5 - ivar32 = 600 - flag33 = true -} -func BustEm2() { - ns.WallGroupBreak(gvar12) -} -func RegenA() { - if ns.Object("RegenD1") != 0 { - goto LABEL1 - } - obj4 = ns.CreateObject("EmberDemon", wp7) - ns.CreatureHunt(obj4) -LABEL1: - if ns.Object("RegenD2") != 0 { - goto LABEL2 - } - obj5 = ns.CreateObject("EmberDemon", wp8) - ns.CreatureHunt(obj5) -LABEL2: - return -} -func RegenB() { - if ns.Object("RegenD3") != 0 { - goto LABEL1 - } - obj6 = ns.CreateObject("EmberDemon", wp9) - ns.CreatureHunt(obj6) -LABEL1: - return -} -func AutoSave1() { - ns.AutoSave() -} -func BustEm() { - ns.AudioEvent(ns.MagicMissileDetonate, wp11) - ns.AudioEvent(ns.WallDestroyed, wp10) - ns.Effect(ns.JIGGLE, 835, 2650, 13, 0) - ns.ObjectGroupOff(gvar13) - ns.FrameTimer(7, BustEm2) -} -func Init2() { - ns.Frozen(ns.GetHost(), false) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp22), ns.GetWaypointY(wp22), 0, 0) - ns.AudioEvent(ns.TeleportIn, wp22) - if !ns.HasEnchant(ns.GetHost(), ns.ENCHANT_INVISIBLE) { - goto LABEL1 - } - ns.EnchantOff(ns.GetHost(), ns.ENCHANT_INVISIBLE) -LABEL1: - ns.PrintToAll("Con03C.scr:NewTask") - ns.JournalEntry(ns.GetHost(), "Wiz07EscapeUnderworld", 2) -} -func Quake() { - var ( - v0 float32 - v1 float32 - v6 int - ) - if flag33 { - goto LABEL1 - } - return -LABEL1: - v0 = ns.GetObjectX(ns.GetHost()) - v1 = ns.GetObjectY(ns.GetHost()) - fvar30 = ns.RandomFloat(fvar28, fvar29) - ns.MoveWaypoint(wp11, v0, v1) - ns.AudioEvent(ns.BoulderMove, wp11) - ns.AudioEvent(ns.EarthRumbleMinor, wp11) - ns.Effect(ns.JIGGLE, v0, v1, fvar30, 0) - v6 = ns.Random(5, ivar32) - ns.FrameTimer(v6, Quake) -} -func PlaySubMusic() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Music(18, 100) -LABEL1: - return -} -func MapInitialize() { - gvar16 = ns.ObjectGroup("MDGroup1") - gvar14 = ns.ObjectGroup("BatGroup1") - gvar15 = ns.ObjectGroup("ImpGroup1") - wp17 = ns.Waypoint("Secret01WP") - wp18 = ns.Waypoint("Secret02WP") - wp19 = ns.Waypoint("Secret03WP") - wp20 = ns.Waypoint("Secret04WP") - wp11 = ns.Waypoint("QuakeAudioOrigin") - wp21 = ns.Waypoint("CreationWP") - wp22 = ns.Waypoint("StartOrigin") - gvar26 = ns.WallGroup("Walls1") - gvar12 = ns.WallGroup("BustEmWalls") - obj4 = ns.Object("RegenD1") - obj5 = ns.Object("RegenD2") - obj6 = ns.Object("RegenD3") - wp10 = ns.Waypoint("BustAudioOrigin") - wp7 = ns.Waypoint("RegenLoc1") - wp8 = ns.Waypoint("RegenLoc2") - wp9 = ns.Waypoint("RegenLoc3") - wp23[0] = ns.Waypoint("Flamer1") - wp23[1] = ns.Waypoint("Flamer2") - wp23[2] = ns.Waypoint("Flamer3") - wp23[3] = ns.Waypoint("Flamer4") - wp23[4] = ns.Waypoint("Flamer5") - wp23[5] = ns.Waypoint("Flamer6") - wp23[6] = ns.Waypoint("Flamer7") - wp23[7] = ns.Waypoint("Flamer8") - wp23[8] = ns.Waypoint("Flamer9") - wp23[9] = ns.Waypoint("Flamer10") - wp23[10] = ns.Waypoint("Flamer11") - wp23[11] = ns.Waypoint("Flamer12") - wp23[12] = ns.Waypoint("Flamer13") - wp23[13] = ns.Waypoint("Flamer14") - wp23[14] = ns.Waypoint("Flamer15") - wp23[15] = ns.Waypoint("Flamer16") - wp23[16] = ns.Waypoint("Flamer17") - wp23[17] = ns.Waypoint("Flamer18") - wp23[18] = ns.Waypoint("Flamer19") - wp23[19] = ns.Waypoint("Flamer20") - wp23[20] = ns.Waypoint("Flamer21") - wp24[0] = ns.Waypoint("FlamerB1") - wp24[1] = ns.Waypoint("FlamerB2") - wp24[2] = ns.Waypoint("FlamerB3") - wp24[3] = ns.Waypoint("FlamerB4") - wp24[4] = ns.Waypoint("FlamerB5") - wp24[5] = ns.Waypoint("FlamerB6") - wp24[6] = ns.Waypoint("FlamerB7") - wp24[7] = ns.Waypoint("FlamerB8") - wp24[8] = ns.Waypoint("FlamerB9") - wp24[9] = ns.Waypoint("FlamerB10") - wp24[10] = ns.Waypoint("FlamerB11") - wp24[11] = ns.Waypoint("FlamerB12") - wp24[12] = ns.Waypoint("FlamerB13") - wp24[13] = ns.Waypoint("FlamerB14") - wp24[14] = ns.Waypoint("FlamerB15") - wp24[15] = ns.Waypoint("FlamerB16") - wp24[16] = ns.Waypoint("FlamerB17") - wp24[17] = ns.Waypoint("FlamerB18") - wp24[18] = ns.Waypoint("FlamerB19") - wp24[19] = ns.Waypoint("FlamerB20") - wp24[20] = ns.Waypoint("FlamerB21") - wp25[0] = ns.Waypoint("FlamerC1") - wp25[1] = ns.Waypoint("FlamerC2") - wp25[2] = ns.Waypoint("FlamerC3") - wp25[3] = ns.Waypoint("FlamerC4") - wp25[4] = ns.Waypoint("FlamerC5") - wp25[5] = ns.Waypoint("FlamerC6") - wp25[6] = ns.Waypoint("FlamerC7") - wp25[7] = ns.Waypoint("FlamerC8") - wp25[8] = ns.Waypoint("FlamerC9") - wp25[9] = ns.Waypoint("FlamerC10") - wp25[10] = ns.Waypoint("FlamerC11") - wp25[11] = ns.Waypoint("FlamerC12") - wp25[12] = ns.Waypoint("FlamerC13") - wp25[13] = ns.Waypoint("FlamerC14") - wp25[14] = ns.Waypoint("FlamerC15") - wp25[15] = ns.Waypoint("FlamerC16") - wp25[16] = ns.Waypoint("FlamerC17") - wp25[17] = ns.Waypoint("FlamerC18") - wp25[18] = ns.Waypoint("FlamerC19") - wp25[19] = ns.Waypoint("FlamerC20") - wp25[20] = ns.Waypoint("FlamerC21") - gvar27 = ns.ObjectGroup("SecretT1") - gvar13 = ns.ObjectGroup("BustEmT") - ns.UnBlind() - Quake() - ns.Frozen(ns.GetHost(), true) - ns.FrameTimer(30, Init2) -} -func Bats1Hostilize() { - ns.GroupAggressionLevel(gvar14, 0.83) -} -func Imps1Hostilize() { - ns.GroupAggressionLevel(gvar15, 0.83) -} -func MD1Hostilize() { - ns.GroupAggressionLevel(gvar16, 0.83) -} -func HostilizeMe() { - ns.AggressionLevel(ns.GetTrigger(), 0.83) -} -func PlayerDeath() { - ns.DeathScreen(7) -} -func MapEntry() { - PlaySubMusic() -} -func PlayWanderMusic() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Music(17, 100) -LABEL1: - return -} -func PlayTownMusic() { - ns.Music(15, 100) -} -func WallOpen1() { - ns.WallGroupOpen(gvar26) -} -func Secret01() { - ns.AudioEvent(ns.SecretFound, wp17) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 100) -} -func Secret02() { - ns.ObjectGroupOff(gvar27) - ns.AudioEvent(ns.SecretFound, wp18) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 100) -} -func Secret03() { - ns.AudioEvent(ns.SecretFound, wp19) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 50) -} -func Secret04() { - ns.AudioEvent(ns.SecretFound, wp20) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 100) -} -func OnEvent(typ string) { - switch typ { - case "MapInitialize": - MapInitialize() - case "PlayerDeath": - PlayerDeath() - case "MapEntry": - MapEntry() - } -} diff --git a/examples/wiz07c/dummy_test.go b/examples/wiz07c/dummy_test.go deleted file mode 100644 index 620c6fa..0000000 --- a/examples/wiz07c/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package wiz07c - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/wiz07c/wiz07c.go b/examples/wiz07c/wiz07c.go deleted file mode 100644 index 090ceb6..0000000 --- a/examples/wiz07c/wiz07c.go +++ /dev/null @@ -1,819 +0,0 @@ -package wiz07c - -import ( - "strconv" - - "github.com/noxworld-dev/noxscript/ns/v3" -) - -var ( - flag4 bool - gvar5 int - gvar6 int - gvar7 int - gvar8 int - gvar9 int - gvar10 int - gvar11 int - gvar12 int - ivar13 int - ivar14 int - ivar15 int - obj16 [20]ns.ObjectID - wp17 [20]ns.WaypointID - wp18 ns.WaypointID - obj19 ns.ObjectID - obj20 ns.ObjectID - obj21 ns.ObjectID - obj22 ns.ObjectID - gvar23 ns.WallGroupID - obj24 ns.ObjectID - obj25 ns.ObjectID - obj26 ns.ObjectID - obj27 ns.ObjectID - obj28 ns.ObjectID - obj29 ns.ObjectID - wp30 ns.WaypointID - wp31 ns.WaypointID - wp32 ns.WaypointID - obj33 ns.ObjectID - wp34 ns.WaypointID - wp35 ns.WaypointID - wp36 ns.WaypointID - wp37 ns.WaypointID - wp38 ns.WaypointID - wp39 ns.WaypointID - wp40 ns.WaypointID - obj41 ns.ObjectID - obj42 ns.ObjectID - obj43 ns.ObjectID - obj44 ns.ObjectID - gvar45 ns.ObjectGroupID - gvar46 ns.ObjectGroupID - wp47 ns.WaypointID - wp48 ns.WaypointID - wp49 ns.WaypointID - wp50 ns.WaypointID - ivar51 int - obj52 [4]ns.ObjectID - ivar53 [4]int - obj54 [4]ns.ObjectID - ivar55 [4]int - gvar56 int - flag57 bool - gvar58 ns.ObjectGroupID - wp59 ns.WaypointID - obj60 ns.ObjectID - wp61 ns.WaypointID - wp62 ns.WaypointID - gvar63 ns.ObjectGroupID - obj64 ns.ObjectID - wp65 ns.WaypointID - wp66 ns.WaypointID - wp67 [9]ns.WaypointID - wp68 [9]ns.WaypointID - wp69 [9]ns.WaypointID - obj70 ns.ObjectID - obj71 ns.ObjectID - obj72 ns.ObjectID - obj73 ns.ObjectID - fvar74 float32 - fvar75 float32 - fvar76 float32 - gvar77 int - ivar78 int -) - -func init() { - gvar5 = 0 - gvar6 = 1 - gvar7 = 2 - gvar8 = 3 - gvar9 = 4 - gvar10 = 5 - gvar11 = gvar5 - gvar12 = 0 - ivar13 = 0 - gvar56 = 1 - flag57 = true - flag4 = true - fvar74 = 4 - fvar75 = 12 - gvar77 = 5 - ivar78 = 1000 -} -func MasterDialogStart() { - if gvar12 != 3 { - goto LABEL1 - } - ns.TellStory(ns.DemonRecognize, "Wiz07C.scr:DemonTalk01") -LABEL1: - if gvar12 != 4 { - goto LABEL2 - } - ns.TellStory(ns.DemonRecognize, "Wiz07C.scr:DemonTalk04") -LABEL2: - return -} -func MasterDialogEnd() { - if gvar12 != 3 { - goto LABEL1 - } - ns.CancelDialog(obj19) - ns.FrameTimer(100, StartDemonTalk) - MoveLine() -LABEL1: - if gvar12 != 4 { - goto LABEL2 - } - ns.CancelDialog(obj19) - ns.FrameTimer(10, StartDemonTalk) -LABEL2: - return -} -func MoveLineState(a1 ns.ObjectID, a2 int) { - var v0 int - v0 = a2 - if v0 == 1 { - goto LABEL1 - } - if v0 == 3 { - goto LABEL2 - } - if v0 == 5 { - goto LABEL3 - } - if v0 == 7 { - goto LABEL4 - } - if v0 == 2 { - goto LABEL5 - } - if v0 == 4 { - goto LABEL6 - } - if v0 == 6 { - goto LABEL7 - } - if v0 == 8 { - goto LABEL8 - } - goto LABEL9 -LABEL1: - ns.Move(a1, wp34) - goto LABEL10 -LABEL2: - ns.Move(a1, wp36) - goto LABEL10 -LABEL3: - ns.Move(a1, wp38) - goto LABEL10 -LABEL4: - ns.Move(a1, wp40) - goto LABEL10 -LABEL5: - ns.Move(a1, wp34) - goto LABEL10 -LABEL6: - ns.Move(a1, wp35) - goto LABEL10 -LABEL7: - ns.Move(a1, wp37) - goto LABEL10 -LABEL8: - ns.Move(a1, wp39) - goto LABEL10 -LABEL9: - goto LABEL10 -LABEL10: - return -} -func CreateFireWall() { - var v0 int - v0 = gvar11 - if v0 == gvar5 { - goto LABEL1 - } - if v0 == gvar6 { - goto LABEL2 - } - if v0 == gvar7 { - goto LABEL3 - } - if v0 == gvar8 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - ivar51 = 0 - for { - if !(ivar51 < 20) { - goto LABEL6 - } - ns.Delete(obj16[ivar51]) - obj16[ivar51] = ns.CreateObject("SmallFlame", wp17[ivar51]) - ivar51 += 1 - } -LABEL6: - gvar11 = gvar6 - ivar14 = 2 - goto LABEL5 -LABEL2: - ivar51 = 0 - for { - if !(ivar51 < 18) { - goto LABEL8 - } - ns.Delete(obj16[ivar51]) - obj16[ivar51] = ns.CreateObject("MediumFlame", wp17[ivar51]) - ivar51 += 1 - } -LABEL8: - gvar11 = gvar7 - ivar14 = 2 - goto LABEL5 -LABEL3: - ivar51 = 0 - for { - if !(ivar51 < 13) { - goto LABEL10 - } - ns.Delete(obj16[ivar51]) - obj16[ivar51] = ns.CreateObject("Flame", wp17[ivar51]) - ivar51 += 1 - } -LABEL10: - gvar11 = gvar8 - ivar14 = 3 - goto LABEL5 -LABEL4: - ivar51 = 0 - for { - if !(ivar51 < 10) { - goto LABEL12 - } - ns.Delete(obj16[ivar51]) - obj16[ivar51] = ns.CreateObject("LargeFlame", wp17[ivar51]) - ivar51 += 1 - } -LABEL12: - gvar11 = gvar9 - goto LABEL5 -LABEL5: - if gvar11 == gvar9 { - goto LABEL14 - } - ns.FrameTimer(ivar14, CreateFireWall) -LABEL14: - return -} -func ChapterEndB() { - ns.Frozen(ns.GetHost(), false) - ns.MoveObject(ns.GetHost(), ns.GetWaypointX(wp59), ns.GetWaypointY(wp59)) -} -func DestroyFireWall() { - var v0 int - v0 = gvar11 - if v0 == gvar5 { - goto LABEL1 - } - if v0 == gvar6 { - goto LABEL2 - } - if v0 == gvar7 { - goto LABEL3 - } - if v0 == gvar9 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - ivar51 = 0 - for { - if !(ivar51 < 20) { - goto LABEL6 - } - if !(ivar51 != 2 && ivar51 != 7 && ivar51 != 17) { - goto LABEL7 - } - ns.Delete(obj16[ivar51]) - LABEL7: - ivar51 += 1 - } -LABEL6: - gvar11 = gvar10 - goto LABEL5 -LABEL2: - ivar51 = 0 - for { - if !(ivar51 < 18) { - goto LABEL9 - } - ns.Delete(obj16[ivar51]) - obj16[ivar51] = ns.CreateObject("SmallFlame", wp17[ivar51]) - ivar51 += 1 - } -LABEL9: - ns.MoveObject(obj24, 1265, 2229) - ns.MoveObject(obj25, 1204, 2245) - ns.MoveObject(obj26, 1248, 2290) - gvar11 = gvar5 - ivar14 = 300 - goto LABEL5 -LABEL3: - if !(ns.CurrentHealth(obj52[2]) > 0) { - goto LABEL11 - } - ns.Damage(obj52[2], 0, 1000, 0) -LABEL11: - if !(ns.CurrentHealth(obj52[3]) > 0) { - goto LABEL12 - } - ns.Damage(obj52[3], 0, 1000, 0) -LABEL12: - if !(ns.CurrentHealth(obj54[2]) > 0) { - goto LABEL13 - } - ns.Damage(obj54[2], 0, 1000, 0) -LABEL13: - if !(ns.CurrentHealth(obj54[3]) > 0) { - goto LABEL14 - } - ns.Damage(obj54[3], 0, 1000, 0) -LABEL14: - ns.WallGroupOpen(gvar23) - ns.ObjectOn(obj33) - ivar51 = 0 - for { - if !(ivar51 < 13) { - goto LABEL15 - } - ns.Delete(obj16[ivar51]) - obj16[ivar51] = ns.CreateObject("MediumFlame", wp17[ivar51]) - ivar51 += 1 - } -LABEL15: - gvar11 = gvar6 - ivar14 = 30 - goto LABEL5 -LABEL4: - ivar51 = 0 - for { - if !(ivar51 < 10) { - goto LABEL17 - } - ns.Delete(obj16[ivar51]) - obj16[ivar51] = ns.CreateObject("Flame", wp17[ivar51]) - ivar51 += 1 - } -LABEL17: - gvar11 = gvar7 - ivar14 = 10 - goto LABEL5 -LABEL5: - if gvar11 == gvar10 { - goto LABEL19 - } - ns.FrameTimer(ivar14, DestroyFireWall) -LABEL19: - return -} -func PlaySubMusic() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Music(18, 100) -LABEL1: - return -} -func PlayActionMusic() { - ns.Music(27, 100) -} -func FollowPath() { - ns.Wander(ns.GetTrigger()) -} -func UnlockDoor1() { - ns.UnlockDoor(obj22) - ns.AutoSave() -} -func MoveLine() { - var v0 int - if !flag57 { - goto LABEL1 - } - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL2 - } - if gvar56 == 0 { - goto LABEL3 - } - MoveLineState(obj52[v0], ivar53[v0]) - ivar53[v0] -= 2 - goto LABEL4 - LABEL3: - MoveLineState(obj54[v0], ivar55[v0]) - ivar55[v0] -= 2 - LABEL4: - v0 += 1 - } -LABEL2: - gvar56 = 1 - gvar56 - ivar13 += 1 - if !(ivar13 == 1 || ivar13 == 3) { - goto LABEL1 - } - ns.FrameTimer(82, MoveLine) -LABEL1: - return -} -func EnableLineD() { - ns.Wander(ns.GetCaller()) -} -func StartDemonTalk() { - var v0 int - v0 = gvar12 - if v0 == 0 { - goto LABEL1 - } - if v0 == 1 { - goto LABEL2 - } - if v0 == 2 { - goto LABEL3 - } - if v0 == 3 { - goto LABEL4 - } - if v0 == 4 { - goto LABEL5 - } - if v0 == 5 { - goto LABEL6 - } - if v0 == 6 { - goto LABEL7 - } - if v0 == 7 { - goto LABEL8 - } - goto LABEL9 -LABEL1: - flag4 = false - ns.WideScreen(true) - MoveLine() - ivar15 = 3 - gvar12 = 1 - ns.FrameTimer(ivar15, StartDemonTalk) - goto LABEL9 -LABEL2: - ns.LookAtObject(ns.GetHost(), obj19) - ns.Frozen(ns.GetHost(), true) - gvar12 = 2 - ivar15 = 100 - ns.FrameTimer(ivar15, StartDemonTalk) - goto LABEL9 -LABEL3: - gvar12 = 3 - ns.StoryPic(obj19, "DemonPic") - ns.SetDialog(obj19, ns.NEXT, MasterDialogStart, MasterDialogEnd) - ns.StartDialog(obj19, ns.GetHost()) - goto LABEL9 -LABEL4: - gvar12 = 4 - if !ns.HasEnchant(ns.GetHost(), ns.ENCHANT_INVISIBLE) { - goto LABEL10 - } - ns.EnchantOff(ns.GetHost(), ns.ENCHANT_INVISIBLE) -LABEL10: - flag57 = false - ns.SetDialog(obj19, ns.NORMAL, MasterDialogStart, MasterDialogEnd) - ns.StartDialog(obj19, ns.GetHost()) - ivar51 = 0 - for { - if !(ivar51 < 4) { - goto LABEL11 - } - ns.LookAtObject(obj52[ivar51], ns.GetHost()) - ivar51 += 1 - } -LABEL11: - ivar51 = 0 - for { - if !(ivar51 < 4) { - goto LABEL13 - } - ns.LookAtObject(obj54[ivar51], ns.GetHost()) - ivar51 += 1 - } -LABEL13: - ns.LookAtObject(obj19, ns.GetHost()) - goto LABEL9 -LABEL5: - ns.WideScreen(false) - gvar12 = 5 - ns.WallGroupClose(gvar23) - ivar15 = 30 - ns.FrameTimer(ivar15, StartDemonTalk) - goto LABEL9 -LABEL6: - ns.Frozen(ns.GetHost(), false) - ivar15 = 1 - ns.AudioEvent("FireBallCast", wp18) - ns.AudioEvent(ns.FireGrate, wp18) - CreateFireWall() - gvar12 = 6 - ns.FrameTimer(ivar15, StartDemonTalk) - goto LABEL9 -LABEL7: - ns.ClearOwner(obj19) - ivar51 = 0 - for { - if !(ivar51 < 4) { - goto LABEL15 - } - ns.ClearOwner(obj52[ivar51]) - ivar51 += 1 - } -LABEL15: - ivar51 = 0 - for { - if !(ivar51 < 4) { - goto LABEL17 - } - ns.ClearOwner(obj54[ivar51]) - ivar51 += 1 - } -LABEL17: - gvar12 = 7 - ivar15 = 1 - ns.FrameTimer(ivar15, StartDemonTalk) - goto LABEL9 -LABEL8: - PlayActionMusic() - ns.ObjectOff(obj33) - gvar12 = 8 - ns.AggressionLevel(obj19, 0.83) - ns.Move(obj41, wp47) - ns.Move(obj42, wp48) - ns.Move(obj43, wp49) - ns.Move(obj44, wp50) - ns.AggressionLevel(obj41, 0.83) - ns.AggressionLevel(obj42, 0.83) - ns.AggressionLevel(obj43, 0.83) - ns.AggressionLevel(obj44, 0.83) - goto LABEL9 -LABEL9: - return -} -func DemonDeath() { - ns.AudioEvent(ns.FlagDrop, wp18) - PlaySubMusic() - DestroyFireWall() -} -func ChapterEnd() { - ns.JournalEdit(ns.GetHost(), "Wiz07EscapeUnderworld", 4) - ns.Blind() - ns.Frozen(ns.GetHost(), true) - ns.FrameTimer(60, ChapterEndB) - ns.ObjectOff(obj60) -} -func RegenA() { - if ns.Object("RegenD1") != 0 { - goto LABEL1 - } - obj27 = ns.CreateObject("EmberDemon", wp30) - ns.CreatureHunt(obj27) -LABEL1: - if ns.Object("RegenD2") != 0 { - goto LABEL2 - } - obj28 = ns.CreateObject("EmberDemon", wp31) - ns.CreatureHunt(obj28) -LABEL2: - if ns.Object("RegenD3") != 0 { - goto LABEL3 - } - obj29 = ns.CreateObject("EmberDemon", wp32) - ns.CreatureHunt(obj29) -LABEL3: - return -} -func Quake() { - var ( - v0 float32 - v1 float32 - v6 int - ) - if flag4 { - goto LABEL1 - } - return -LABEL1: - v0 = ns.GetObjectX(ns.GetHost()) - v1 = ns.GetObjectY(ns.GetHost()) - fvar76 = ns.RandomFloat(fvar74, fvar75) - ns.MoveWaypoint(wp65, v0, v1) - ns.AudioEvent(ns.BoulderMove, wp65) - ns.AudioEvent(ns.EarthRumbleMinor, wp65) - ns.Effect(ns.JIGGLE, v0, v1, fvar76, 0) - v6 = ns.Random(200, ivar78) - ns.FrameTimer(v6, Quake) -} -func LockDoors() { - ns.LockDoor(obj70) - ns.LockDoor(obj22) - ns.LockDoor(obj71) - ns.LockDoor(obj72) -} -func MapInitialize() { - var v0 int - wp61 = ns.Waypoint("Secret01WP") - wp62 = ns.Waypoint("Secret02WP") - gvar63 = ns.ObjectGroup("ImpGroup") - obj60 = ns.Object("ChapterEndTrig") - obj64 = ns.Object("SpikeDoor1") - ns.LockDoor(obj64) - gvar45 = ns.ObjectGroup("DemonGroup1") - gvar46 = ns.ObjectGroup("DemonGroup2") - obj41 = ns.Object("LineDR1") - obj42 = ns.Object("LineDL2") - obj43 = ns.Object("LineDR3") - obj44 = ns.Object("LineDL4") - wp18 = ns.Waypoint("FireSoundWP") - wp47 = ns.Waypoint("Demon1WP") - wp48 = ns.Waypoint("Demon2WP") - wp49 = ns.Waypoint("Demon3WP") - wp50 = ns.Waypoint("Demon4WP") - wp59 = ns.Waypoint("ExitWP") - wp65 = ns.Waypoint("QuakeAudioOrigin") - wp66 = ns.Waypoint("CreationWP") - obj24 = ns.Object("Light1") - obj25 = ns.Object("Light2") - obj26 = ns.Object("Light3") - obj27 = ns.Object("RegenD1") - obj28 = ns.Object("RegenD2") - obj29 = ns.Object("RegenD3") - wp30 = ns.Waypoint("RegenLoc1") - wp31 = ns.Waypoint("RegenLoc2") - wp32 = ns.Waypoint("RegenLoc3") - obj20 = ns.Object("NastyPit1") - obj21 = ns.Object("NastyPit2") - obj33 = ns.Object("EndTeleport1") - wp17[0] = ns.Waypoint("FireWall1") - wp17[1] = ns.Waypoint("FireWall2") - wp17[2] = ns.Waypoint("FireWall3") - wp17[3] = ns.Waypoint("FireWall4") - wp17[4] = ns.Waypoint("FireWall5") - wp17[5] = ns.Waypoint("FireWall6") - wp17[6] = ns.Waypoint("FireWall7") - wp17[7] = ns.Waypoint("FireWall8") - wp17[8] = ns.Waypoint("FireWall9") - wp17[9] = ns.Waypoint("FireWall10") - wp17[10] = ns.Waypoint("FireWall11") - wp17[11] = ns.Waypoint("FireWall12") - wp17[12] = ns.Waypoint("FireWall13") - wp17[13] = ns.Waypoint("FireWall14") - wp17[14] = ns.Waypoint("FireWall15") - wp17[15] = ns.Waypoint("FireWall16") - wp17[16] = ns.Waypoint("FireWall17") - wp17[17] = ns.Waypoint("FireWall18") - wp17[18] = ns.Waypoint("FireWall19") - wp17[19] = ns.Waypoint("FireWall20") - gvar23 = ns.WallGroup("Walls20") - obj70 = ns.Object("BarredDoor1") - obj22 = ns.Object("BarredDoor2") - obj71 = ns.Object("BarredDoor3") - obj72 = ns.Object("BarredDoor4") - obj73 = ns.Object("UnlockDoor1") - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL1 - } - obj52[v0] = ns.Object("LineDR" + strconv.Itoa(2*v0+1)) - v0 += 1 - } -LABEL1: - ivar53[0] = 1 - ivar53[1] = 3 - ivar53[2] = 5 - ivar53[3] = 7 - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL3 - } - obj54[v0] = ns.Object("LineDL" + strconv.Itoa(2*(v0+1))) - v0 += 1 - } -LABEL3: - ivar55[0] = 2 - ivar55[1] = 4 - ivar55[2] = 6 - ivar55[3] = 8 - obj19 = ns.Object("C6Necromancer") - wp34 = ns.Waypoint("A") - wp35 = ns.Waypoint("BL") - wp36 = ns.Waypoint("BR") - wp37 = ns.Waypoint("CL") - wp38 = ns.Waypoint("CR") - wp39 = ns.Waypoint("DL") - wp40 = ns.Waypoint("DR") - wp67[0] = ns.Waypoint("Flamer1") - wp67[1] = ns.Waypoint("Flamer2") - wp67[2] = ns.Waypoint("Flamer3") - wp67[3] = ns.Waypoint("Flamer4") - wp67[4] = ns.Waypoint("Flamer5") - wp67[5] = ns.Waypoint("Flamer6") - wp67[6] = ns.Waypoint("Flamer7") - wp67[7] = ns.Waypoint("Flamer8") - wp67[8] = ns.Waypoint("Flamer9") - wp68[0] = ns.Waypoint("FlamerB1") - wp68[1] = ns.Waypoint("FlamerB2") - wp68[2] = ns.Waypoint("FlamerB3") - wp68[3] = ns.Waypoint("FlamerB4") - wp68[4] = ns.Waypoint("FlamerB5") - wp68[5] = ns.Waypoint("FlamerB6") - wp68[6] = ns.Waypoint("FlamerB7") - wp68[7] = ns.Waypoint("FlamerB8") - wp68[8] = ns.Waypoint("FlamerB9") - wp69[0] = ns.Waypoint("FlamerC1") - wp69[1] = ns.Waypoint("FlamerC2") - wp69[2] = ns.Waypoint("FlamerC3") - wp69[3] = ns.Waypoint("FlamerC4") - wp69[4] = ns.Waypoint("FlamerC5") - wp69[5] = ns.Waypoint("FlamerC6") - wp69[6] = ns.Waypoint("FlamerC7") - wp69[7] = ns.Waypoint("FlamerC8") - wp69[8] = ns.Waypoint("FlamerC9") - gvar58 = ns.ObjectGroup("SecretT1") - Quake() - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL5 - } - ns.SetOwner(ns.GetHost(), obj52[v0]) - v0 += 1 - } -LABEL5: - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL7 - } - ns.SetOwner(ns.GetHost(), obj54[v0]) - v0 += 1 - } -LABEL7: - ns.SetOwner(ns.GetHost(), obj19) - ns.FrameTimer(2, LockDoors) -} -func PlayerDeath() { - ns.DeathScreen(7) -} -func MapEntry() { - ns.ObjectOn(obj60) - PlaySubMusic() -} -func ImpGroupHostilize() { - ns.GroupAggressionLevel(gvar63, 0.83) -} -func MonsterGoHome() { - if !ns.HasClass(ns.GetCaller(), "ENEMY") { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func PlayWanderMusic() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Music(17, 100) -LABEL1: - return -} -func Secret01() { - ns.AudioEvent(ns.SecretFound, wp61) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 200) -} -func Secret02() { - ns.AudioEvent(ns.SecretFound, wp62) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 200) -} -func OnEvent(typ string) { - switch typ { - case "MapInitialize": - MapInitialize() - case "PlayerDeath": - PlayerDeath() - case "MapEntry": - MapEntry() - } -} diff --git a/examples/wiz07d/dummy_test.go b/examples/wiz07d/dummy_test.go deleted file mode 100644 index 991be26..0000000 --- a/examples/wiz07d/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package wiz07d - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/wiz07d/wiz07d.go b/examples/wiz07d/wiz07d.go deleted file mode 100644 index e55c3fa..0000000 --- a/examples/wiz07d/wiz07d.go +++ /dev/null @@ -1,119 +0,0 @@ -package wiz07d - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 ns.ObjectID - obj5 ns.ObjectID - obj6 ns.ObjectID - obj7 ns.ObjectID - obj8 ns.ObjectID - obj9 ns.ObjectID - obj10 ns.ObjectID - obj11 ns.ObjectID - obj12 ns.ObjectID - obj13 ns.ObjectID - obj14 ns.ObjectID - obj15 ns.ObjectID - gvar16 int - gvar17 int - gvar18 int -) - -func init() { - gvar16 = 0 - gvar17 = 1 -} -func CreatureSetup() { - ns.SetOwner(ns.GetHost(), obj14) - ns.SetOwner(ns.GetHost(), obj15) - ns.SetOwner(ns.GetHost(), obj11) - ns.SetOwner(ns.GetHost(), obj12) - ns.Wander(obj15) - ns.Music(15, 100) -} -func ReceptionTalkStart() { - var ( - v0 int - v1 int - v2 int - ) - v2 = gvar18 - if v2 == gvar16 { - goto LABEL1 - } - if v2 == gvar17 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.TellStory(ns.HumanMaleEatFood, "Wiz07:Reception01") - gvar18 = gvar17 - goto LABEL3 -LABEL2: - v0 = ns.Random(1, 2) - v1 = v0 - if v1 == 1 { - goto LABEL4 - } - if v1 == 2 { - goto LABEL5 - } - goto LABEL3 -LABEL4: - ns.TellStory(ns.HumanMaleEatFood, "Wiz07:Reception02") - goto LABEL3 -LABEL5: - ns.TellStory(ns.HumanMaleEatFood, "Wiz07:Reception03") - goto LABEL3 -LABEL3: - return -} -func ReceptionTalkEnd() { - ns.SetDialog(obj14, ns.NORMAL, ReceptionTalkStart, ReceptionTalkEnd) -} -func GanemStart() { - ns.LookAtObject(obj11, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "Wiz07:Ganem01") -} -func GanemEnd() { -} -func MapInitialize() { - obj14 = ns.Object("Main_Receptionist") - obj15 = ns.Object("Lewis") - obj11 = ns.Object("Ganem") - obj12 = ns.Object("Mystic") - obj4 = ns.Object("NorthDoor1") - obj5 = ns.Object("NorthDoor2") - obj6 = ns.Object("SouthDoorUp1") - obj7 = ns.Object("SouthDoorUp2") - obj8 = ns.Object("ClassDoor") - obj9 = ns.Object("ArchiveGate1") - obj10 = ns.Object("ArchiveGate2") - obj13 = ns.Object("LabEntrance") - ns.LockDoor(obj4) - ns.LockDoor(obj5) - ns.LockDoor(obj6) - ns.LockDoor(obj7) - ns.LockDoor(obj8) - ns.LockDoor(obj9) - ns.LockDoor(obj10) - ns.LockDoor(obj13) - gvar18 = gvar16 - ns.SetDialog(obj14, ns.NORMAL, ReceptionTalkStart, ReceptionTalkEnd) - ns.StoryPic(obj14, "WizardGuard2Pic") - ns.StoryPic(obj11, "WizardGuard1Pic") - ns.SetDialog(obj11, ns.NORMAL, GanemStart, GanemEnd) - ns.FrameTimer(1, CreatureSetup) -} -func PlayerDeath() { - ns.DeathScreen(10) -} -func OnEvent(typ string) { - switch typ { - case "MapInitialize": - MapInitialize() - case "PlayerDeath": - PlayerDeath() - } -} diff --git a/examples/wiz07e/dummy_test.go b/examples/wiz07e/dummy_test.go deleted file mode 100644 index 9862dc4..0000000 --- a/examples/wiz07e/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package wiz07e - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/wiz07e/wiz07e.go b/examples/wiz07e/wiz07e.go deleted file mode 100644 index 07d6916..0000000 --- a/examples/wiz07e/wiz07e.go +++ /dev/null @@ -1,390 +0,0 @@ -package wiz07e - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 ns.ObjectID - obj5 ns.ObjectID - obj6 ns.ObjectID - obj7 ns.ObjectID - obj8 ns.ObjectID - obj9 ns.ObjectID - obj10 ns.ObjectID - obj11 ns.ObjectID - obj12 ns.ObjectID - obj13 ns.ObjectID - obj14 ns.ObjectID - obj15 ns.ObjectID - obj16 ns.ObjectID - obj17 ns.ObjectID - obj18 ns.ObjectID - obj19 ns.ObjectID - obj20 ns.ObjectID - obj21 ns.ObjectID - fvar22 float32 - fvar23 float32 - fvar24 float32 - fvar25 float32 - fvar26 float32 - fvar27 float32 - fvar28 float32 - fvar29 float32 - fvar30 float32 - fvar31 float32 - fvar32 float32 - fvar33 float32 - fvar34 float32 - fvar35 float32 - fvar36 float32 - fvar37 float32 - fvar38 float32 - fvar39 float32 - obj40 ns.ObjectID - obj41 ns.ObjectID - obj42 ns.ObjectID - obj43 ns.ObjectID - obj44 ns.ObjectID - obj45 ns.ObjectID - obj46 ns.ObjectID - flag47 bool - gvar48 ns.WallGroupID - wp49 ns.WaypointID - wp50 ns.WaypointID - wp51 ns.WaypointID - wp52 ns.WaypointID - wp53 ns.WaypointID - gvar54 int - gvar55 int - gvar56 int - gvar57 int - gvar58 int - gvar59 int - gvar60 int - gvar61 int - gvar62 int - gvar63 int - gvar64 int -) - -func init() { - flag47 = false - gvar54 = 0 - gvar55 = 1 - gvar56 = 2 - gvar57 = 3 - gvar58 = 0 - gvar59 = 1 - gvar60 = 2 - gvar61 = 3 - gvar62 = 4 -} -func NoxHeartInit() { - obj4 = ns.Object("HeartLight1") - obj5 = ns.Object("HeartLight2") - obj6 = ns.Object("HeartLight3") - obj7 = ns.Object("HeartLight4") - obj8 = ns.Object("HeartLight5") - obj9 = ns.Object("HeartLight6") - obj10 = ns.Object("HeartLight7") - obj11 = ns.Object("HeartLight8") - obj12 = ns.Object("HeartLight9") - obj13 = ns.Object("NewLight1") - obj14 = ns.Object("NewLight2") - obj15 = ns.Object("NewLight3") - obj16 = ns.Object("NewLight4") - obj17 = ns.Object("NewLight5") - obj18 = ns.Object("NewLight6") - obj19 = ns.Object("NewLight7") - obj20 = ns.Object("NewLight8") - obj21 = ns.Object("NewLight9") - fvar22 = ns.GetObjectX(obj4) - fvar23 = ns.GetObjectX(obj5) - fvar24 = ns.GetObjectX(obj6) - fvar25 = ns.GetObjectX(obj7) - fvar26 = ns.GetObjectX(obj8) - fvar27 = ns.GetObjectX(obj9) - fvar28 = ns.GetObjectX(obj10) - fvar29 = ns.GetObjectX(obj11) - fvar30 = ns.GetObjectX(obj12) - fvar31 = ns.GetObjectY(obj4) - fvar32 = ns.GetObjectY(obj5) - fvar33 = ns.GetObjectY(obj6) - fvar34 = ns.GetObjectY(obj7) - fvar35 = ns.GetObjectY(obj8) - fvar36 = ns.GetObjectY(obj9) - fvar37 = ns.GetObjectY(obj10) - fvar38 = ns.GetObjectY(obj11) - fvar39 = ns.GetObjectY(obj12) -} -func Sparklies() { - ns.Frozen(ns.GetHost(), true) - ns.CreatureIdle(ns.GetHost()) - ns.ObjectOff(obj4) - ns.ObjectOff(obj5) - ns.ObjectOff(obj6) - ns.ObjectOff(obj7) - ns.ObjectOff(obj8) - ns.ObjectOff(obj9) - ns.ObjectOff(obj10) - ns.ObjectOff(obj11) - ns.ObjectOff(obj12) - ns.MoveObject(obj13, fvar22, fvar31) - ns.MoveObject(obj14, fvar23, fvar32) - ns.MoveObject(obj15, fvar24, fvar33) - ns.MoveObject(obj16, fvar25, fvar34) - ns.MoveObject(obj17, fvar26, fvar35) - ns.MoveObject(obj18, fvar27, fvar36) - ns.MoveObject(obj19, fvar28, fvar37) - ns.MoveObject(obj20, fvar29, fvar38) - ns.MoveObject(obj21, fvar30, fvar39) -} -func CreatureSetup() { - ns.Music(1, 100) - ns.SetOwner(ns.GetHost(), obj42) - ns.LookAtObject(obj42, ns.GetHost()) - ns.FrameTimer(1, NoxHeartInit) - ns.StartDialog(obj42, ns.GetHost()) -} -func HONTrigger() { - ns.ObjectOff(obj44) - ns.ObjectOff(obj45) - Sparklies() - ns.SetHalberd(1) - ns.MoveWaypoint(wp53, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.StaffOblivionAchieve2, wp53) - ns.JournalEdit(ns.GetHost(), "GetHON", 4) - ns.PrintToAll("Con07H.scr:HONTada") - ns.WallGroupOpen(gvar48) - ns.FrameTimer(1, EndSparklies) -} -func HorvathStart() { - var v0 int - v0 = gvar63 - if v0 == gvar54 { - goto LABEL1 - } - if v0 == gvar55 { - goto LABEL2 - } - if v0 == gvar56 { - goto LABEL3 - } - if v0 == gvar59 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - ns.TellStory(ns.HumanMaleEatFood, "Wiz07.scr:HorvathTalk01") - goto LABEL5 -LABEL2: - ns.TellStory(ns.HumanMaleEatFood, "Wiz07.scr:HorvathTalk02") - goto LABEL5 -LABEL3: - ns.TellStory(ns.HumanMaleEatFood, "Wiz07.scr:HorvathTalk03") - goto LABEL5 -LABEL4: - ns.TellStory(ns.HumanMaleEatFood, "Wiz07.scr:HorvathTalk04") - goto LABEL5 -LABEL5: - return -} -func HorvathEnd() { - var v0 int - v0 = gvar63 - if v0 == gvar54 { - goto LABEL1 - } - if v0 == gvar55 { - goto LABEL2 - } - if v0 == gvar56 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - ns.CreatureFollow(obj42, ns.GetHost()) - ns.CancelDialog(obj42) - gvar63 = gvar55 - goto LABEL4 -LABEL2: - ns.Move(obj42, wp49) - ns.CancelDialog(obj42) - gvar63 = gvar56 - goto LABEL4 -LABEL3: - ns.SetDialog(obj42, ns.NORMAL, HorvathStart, HorvathEnd) - goto LABEL4 -LABEL4: - return -} -func Horvath2Start() { - ns.TellStory(ns.HumanMaleEatFood, "Wiz07.scr:HorvathTalk04") -} -func Horvath2End() { - ns.SetDialog(obj43, ns.NEXT, Hecubah2Start, Hecubah2End) - ns.StartDialog(obj43, ns.GetHost()) -} -func HorvathTrigger() { - if !ns.IsCaller(obj42) { - goto LABEL1 - } - flag47 = true - ns.CreatureGuard(obj42, ns.GetWaypointX(wp49), ns.GetWaypointY(wp49), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - ns.SetDialog(obj42, ns.NORMAL, HorvathStart, HorvathEnd) -LABEL1: - return -} -func StartSetPiece() { - if !flag47 { - goto LABEL1 - } - ns.Music(7, 100) - ns.ObjectOff(obj46) - ns.WideScreen(true) - ns.Frozen(ns.GetHost(), true) - ns.Enchant(ns.GetHost(), ns.ENCHANT_INVISIBLE, 0) - ns.LookAtObject(ns.GetHost(), obj42) - ns.Effect(ns.LESSER_EXPLOSION, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0, 0) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp50), ns.GetWaypointY(wp50), 0, 0) - ns.Effect(ns.LESSER_EXPLOSION, ns.GetWaypointX(wp50), ns.GetWaypointY(wp50), 0, 0) - ns.AudioEvent(ns.TeleportIn, wp50) - ns.MoveObject(obj43, ns.GetWaypointX(wp50), ns.GetWaypointY(wp50)) - ns.CreatureGuard(obj43, ns.GetObjectX(obj43), ns.GetObjectY(obj43), ns.GetObjectX(obj42), ns.GetObjectY(obj42), 0) - ns.CreatureGuard(obj42, ns.GetObjectX(obj42), ns.GetObjectY(obj42), ns.GetObjectX(obj43), ns.GetObjectY(obj43), 0) - ns.StartDialog(obj43, ns.GetHost()) - goto LABEL2 -LABEL1: - ns.FrameTimer(2, StartSetPiece) -LABEL2: - return -} -func TeleportEffect() { -} -func Hecubah1Start() { - ns.TellStory(ns.HumanMaleEatFood, "Wiz07.scr:HecubahTalk01") -} -func Hecubah1End() { - ns.SetDialog(obj42, ns.NEXT, Horvath2Start, Horvath2End) - ns.StartDialog(obj42, ns.GetHost()) -} -func Hecubah2Start() { - ns.TellStory(ns.HumanMaleEatFood, "Wiz07.scr:HecubahTalk02") -} -func Hecubah2End() { - ns.CancelDialog(obj43) - ns.CancelDialog(obj42) - ns.CastSpellLocationLocation(ns.SPELL_DEATH_RAY, ns.GetObjectX(obj43), ns.GetObjectY(obj43), ns.GetObjectX(obj42), ns.GetObjectY(obj42)) - ns.AggressionLevel(obj42, 0.83) - ns.SecondTimer(2, SecondAttack) -} -func Hecubah3Start() { - ns.TellStory(ns.HumanMaleEatFood, "Wiz07.scr:HecubahTalk03") -} -func Hecubah3End() { - ns.Frozen(obj43, false) - ns.CreatureGuard(obj43, ns.GetObjectX(obj43), ns.GetObjectY(obj43), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - ns.CancelDialog(obj43) - ns.Blind() - ns.FrameTimer(60, SetPlayerPosition) -} -func HorvathDeath() { - ns.Chat(obj42, "Wiz07.scr:HorvathTalk05") - ns.CastSpellLocationLocation(ns.SPELL_TURN_UNDEAD, ns.GetObjectX(obj42), ns.GetObjectY(obj42), ns.GetObjectX(obj42), ns.GetObjectY(obj42)) - ns.AggressionLevel(obj43, 0.16) - ns.Move(obj43, wp51) - ns.SecondTimer(2, EraseHorvath) -} -func HecubahGloat() { - if !ns.IsCaller(obj43) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.Frozen(obj43, true) - ns.CreatureIdle(obj43) - ns.LookAtObject(obj43, ns.GetHost()) - ns.SetDialog(obj43, ns.NORMAL, Hecubah3Start, Hecubah3End) - ns.StartDialog(obj43, ns.GetHost()) -LABEL1: - return -} -func SetPlayerPosition() { - ns.SetQuestStatus(1, "HorvathDied") - ns.Music(0, 100) - ns.WideScreen(false) - ns.Frozen(ns.GetHost(), false) - ns.MoveObject(ns.GetHost(), 3160, 4613) -} -func EndSparklies() { - ns.Frozen(ns.GetHost(), false) - ns.SetDialog(obj42, ns.NORMAL, HorvathStart, HorvathEnd) - ns.StartDialog(obj42, ns.GetHost()) -} -func SecondAttack() { - ns.CastSpellLocationLocation(ns.SPELL_DEATH_RAY, ns.GetObjectX(obj43), ns.GetObjectY(obj43), ns.GetObjectX(obj42), ns.GetObjectY(obj42)) - if !(ns.CurrentHealth(obj42) > 0) { - goto LABEL1 - } - ns.SecondTimer(1, SecondAttack) -LABEL1: - return -} -func SaveGameFix() { - ns.Music(0, 100) - ns.WideScreen(false) - ns.Frozen(ns.GetHost(), false) - ns.MoveObject(ns.GetHost(), 3160, 4613) -} -func SaveGameFade() { - ns.Blind() - ns.FrameTimer(60, SaveGameFix) -} -func EraseHorvath() { - ns.Delete(obj42) -} -func MapInitialize() { - wp52 = ns.Waypoint("HONWP") - obj40 = ns.Object("HONDoor1") - obj41 = ns.Object("HONDoor2") - obj42 = ns.Object("Horvath") - obj43 = ns.Object("Hecubah") - obj44 = ns.Object("HON") - obj45 = ns.Object("HONBase") - obj46 = ns.Object("SetPieceTrigger") - gvar48 = ns.WallGroup("HONWalls") - wp49 = ns.Waypoint("HorvathWP") - wp50 = ns.Waypoint("HecubahWP") - wp51 = ns.Waypoint("HecubahGloatWP") - wp53 = ns.Waypoint("PlayerSounds") - gvar63 = gvar54 - gvar64 = gvar58 - ns.LockDoor(obj40) - ns.LockDoor(obj41) - ns.SetDialog(obj42, ns.NORMAL, HorvathStart, HorvathEnd) - ns.SetDialog(obj43, ns.NEXT, Hecubah1Start, Hecubah1End) - ns.StoryPic(obj42, "HorvathPic") - ns.StoryPic(obj43, "HecubahPic") - ns.FrameTimer(10, CreatureSetup) -} -func MapEntry() { - if ns.GetQuestStatus("HorvathDied") != 1 { - goto LABEL1 - } - ns.Frozen(ns.GetHost(), true) - ns.CancelDialog(obj43) - ns.FrameTimer(30, SaveGameFade) -LABEL1: - return -} -func PlayerDeath() { - ns.DeathScreen(7) -} -func OnEvent(typ string) { - switch typ { - case "MapInitialize": - MapInitialize() - case "MapEntry": - MapEntry() - case "PlayerDeath": - PlayerDeath() - } -} diff --git a/examples/wiz07f/dummy_test.go b/examples/wiz07f/dummy_test.go deleted file mode 100644 index fd7ad92..0000000 --- a/examples/wiz07f/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package wiz07f - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/wiz07f/wiz07f.go b/examples/wiz07f/wiz07f.go deleted file mode 100644 index 266515c..0000000 --- a/examples/wiz07f/wiz07f.go +++ /dev/null @@ -1,474 +0,0 @@ -package wiz07f - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 ns.ObjectID - obj5 ns.ObjectID - obj6 ns.ObjectID - obj7 ns.ObjectID - obj8 ns.ObjectID - obj9 ns.ObjectID - obj10 ns.ObjectID - obj11 ns.ObjectID - obj12 ns.ObjectID - obj13 ns.ObjectID - obj14 ns.ObjectID - obj15 ns.ObjectID - obj16 ns.ObjectID - obj17 ns.ObjectID - obj18 ns.ObjectID - obj19 ns.ObjectID - obj20 ns.ObjectID - obj21 ns.ObjectID - obj22 ns.ObjectID - obj23 ns.ObjectID - obj24 ns.ObjectID - obj25 ns.ObjectID - obj26 ns.ObjectID - obj27 ns.ObjectID - obj28 ns.ObjectID - obj29 ns.ObjectID - obj30 ns.ObjectID - obj31 ns.ObjectID - obj32 ns.ObjectID - obj33 ns.ObjectID - obj34 ns.ObjectID - obj35 ns.ObjectID - obj36 ns.ObjectID - obj37 ns.ObjectID - gvar38 ns.WallGroupID - gvar39 ns.WallGroupID - gvar40 ns.ObjectGroupID - gvar41 ns.ObjectGroupID - wp42 ns.WaypointID - gvar43 int - gvar44 int - gvar45 int - gvar46 int - gvar47 int - gvar48 int - gvar49 int - gvar50 int - flag51 bool -) - -func init() { - gvar43 = 100 - gvar44 = 0 - gvar45 = 1 - gvar46 = 2 - gvar47 = 3 - gvar48 = 4 - gvar49 = 5 - gvar50 = gvar44 - flag51 = false -} -func CreatureSetup() { - ns.SetOwner(ns.GetHost(), obj18) - ns.SetOwner(ns.GetHost(), obj16) - ns.SetOwner(ns.GetHost(), obj17) - ns.SetOwner(ns.GetHost(), obj19) - ns.SetOwner(ns.GetHost(), obj20) - ns.SetOwner(ns.GetHost(), obj21) - ns.SetOwner(ns.GetHost(), obj15) - ns.SetOwner(ns.GetHost(), obj15) - ns.SetOwner(ns.GetHost(), obj11) - ns.SetOwner(ns.GetHost(), obj7) - ns.SetOwner(ns.GetHost(), obj14) - ns.SetOwner(ns.GetHost(), obj13) - ns.SetOwner(ns.GetHost(), obj12) - ns.SetOwner(ns.GetHost(), obj23) - ns.SetOwner(ns.GetHost(), obj24) - ns.SetOwner(ns.GetHost(), obj25) - ns.SetOwner(ns.GetHost(), obj26) - ns.SetOwner(ns.GetHost(), obj27) - if ns.GetQuestStatus("OwnMax") != 1 { - goto LABEL1 - } - ns.UnlockDoor(obj28) - ns.UnlockDoor(obj29) -LABEL1: - return -} -func PriestStart() { - ns.Frozen(ns.GetHost(), true) - ns.CreatureIdle(ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj11) - ns.TellStory(ns.HumanMaleEatFood, "Wiz02A.scr:PriestTalk01") -} -func PriestEnd() { - ns.Frozen(ns.GetHost(), false) - ns.SetDialog(obj11, ns.NORMAL, PriestStart, PriestEnd) -} -func GrillfStart() { - ns.TellStory(ns.HumanMaleEatFood, "Wiz02A.scr:GrillfTalk01") -} -func GrillfEnd() { - ns.SetDialog(obj13, ns.NORMAL, GrillfStart, GrillfEnd) -} -func UndertakerStart() { - ns.Frozen(ns.GetHost(), true) - ns.CreatureIdle(ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj11) - ns.TellStory(ns.HumanMaleEatFood, "Wiz02A.scr:UndertakerTalk01") -} -func UndertakerEnd() { - ns.Frozen(ns.GetHost(), false) - ns.SetDialog(obj12, ns.NORMAL, UndertakerStart, UndertakerEnd) -} -func MaxDialogStart() { - var v0 int - v0 = gvar50 - if v0 == gvar44 { - goto LABEL1 - } - if v0 == gvar45 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.TellStory(ns.HumanMaleEatFood, "War07a.scr:MaxOffer01") - goto LABEL3 -LABEL2: - ns.TellStory(ns.HumanMaleEatFood, "War07A.scr:MaxWaiting") - goto LABEL3 -LABEL3: - return -} -func MaxDialogEnd() { - var ( - v0 int - v1 int - v2 int - v3 int - v4 int - v5 int - ) - v0 = 0 - v1 = 0 - v2 = 1 - v3 = 2 - v4 = 0 - v0 = ns.GetAnswer(obj7) - v5 = v0 - if v5 == v4 { - goto LABEL1 - } - if v5 == v3 { - goto LABEL2 - } - if v5 == v2 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - gvar50 = gvar45 - ResetMaxDialog() - goto LABEL4 -LABEL2: - ns.SetDialog(obj7, ns.NORMAL, NullFunction, ResetMaxDialog) - ns.TellStory(ns.HumanMaleEatFood, "War07A.scr:TurnMaxDown") - gvar50 = gvar45 - goto LABEL4 -LABEL3: - v1 = ns.GetGold(ns.GetHost()) - if !(v1 >= 50000) { - goto LABEL5 - } - ns.ObjectGroupOff(gvar40) - ns.SetDialog(obj7, ns.NORMAL, NullFunction, ResetMaxDialog) - ns.TellStory(ns.HumanMaleEatFood, "War07A.scr:HaveGoldForMax") - ns.ChangeGold(ns.GetHost(), -50000) - gvar50 = gvar49 - ns.UnlockDoor(obj28) - ns.UnlockDoor(obj29) - ns.SetQuestStatus(1, "OwnMax") - goto LABEL4 - goto LABEL4 -LABEL5: - ns.SetDialog(obj7, ns.NORMAL, NullFunction, ResetMaxDialog) - ns.TellStory(ns.HumanMaleEatFood, "War07A.scr:NoGoldForMax") - gvar50 = gvar45 - goto LABEL4 -LABEL4: - return -} -func AlbiStart() { - ns.Frozen(ns.GetHost(), true) - ns.Frozen(obj18, true) - ns.CreatureIdle(ns.GetHost()) - ns.CreatureIdle(obj18) - ns.LookAtObject(obj18, ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj18) - ns.TellStory(ns.HumanMaleEatFood, "Con07:HecRaisesDead") -} -func AlbiEnd() { - ns.Frozen(ns.GetHost(), false) - ns.Frozen(obj18, false) - ns.Wander(obj18) -} -func DorianStart() { - ns.Frozen(ns.GetHost(), true) - ns.Frozen(obj19, true) - ns.CreatureIdle(ns.GetHost()) - ns.CreatureIdle(obj19) - ns.LookAtObject(obj19, ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj19) - ns.TellStory(ns.HumanMaleEatFood, "Con07:LeavingGalava2") -} -func DorianEnd() { - ns.Frozen(ns.GetHost(), false) - ns.Frozen(obj19, false) - ns.Wander(obj19) -} -func GrunbarStart() { - ns.Frozen(ns.GetHost(), true) - ns.Frozen(obj17, true) - ns.CreatureIdle(ns.GetHost()) - ns.CreatureIdle(obj17) - ns.LookAtObject(obj17, ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj17) - ns.TellStory(ns.HumanMaleEatFood, "Con07:LeavingGalava1") -} -func GrunbarEnd() { - ns.Frozen(ns.GetHost(), false) - ns.Frozen(obj17, false) - ns.Wander(obj17) -} -func EowynnStart() { - ns.Frozen(ns.GetHost(), true) - ns.Frozen(obj25, true) - ns.CreatureIdle(ns.GetHost()) - ns.CreatureIdle(obj25) - ns.LookAtObject(obj25, ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj17) - ns.TellStory(ns.HumanMaleEatFood, "Con07B.scr:MaidenTalk03") -} -func EowynnEnd() { - ns.Frozen(obj25, false) - ns.Frozen(ns.GetHost(), false) - ns.Wander(obj25) -} -func ExitTrigger() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.UnlockDoor(obj28) - ns.UnlockDoor(obj29) -LABEL1: - return -} -func BoothStart() { - ns.Frozen(obj26, true) - ns.Frozen(ns.GetHost(), true) - ns.LookAtObject(ns.GetHost(), obj26) - ns.LookAtObject(obj26, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "War03b:T4Post") -} -func BoothEnd() { - ns.Frozen(obj26, false) - ns.Frozen(ns.GetHost(), false) -} -func Jump() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - if !ns.HasItem(ns.GetHost(), obj36) { - goto LABEL1 - } - if !ns.HasItem(ns.GetHost(), obj37) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.NoWallSound(true) - ns.WallGroupOpen(gvar38) - ns.Chat(obj34, "Con02a:BarMaiden2") - ns.SecondTimer(3, Upset) -LABEL1: - return -} -func Upset() { - ns.DestroyEveryChat() - ns.Chat(obj33, "Wiz02B.scr:LewisTalk06") - ns.SecondTimer(3, StartJump) -} -func StartJump() { - ns.WallGroupOpen(gvar39) - ns.Wander(obj33) -} -func MoveJumper() { - if !ns.IsCaller(obj33) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.CreatureIdle(obj33) - ns.ObjectOn(obj35) - ns.Chat(obj33, "Wiz02B.scr:LewisTalk03") -LABEL1: - return -} -func KillJumper() { - if !ns.IsCaller(obj33) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.DestroyEveryChat() - ns.Damage(obj33, 0, 500, 0) - ns.WallGroupClose(gvar39) - ns.WallGroupClose(gvar38) - ns.NoWallSound(false) -LABEL1: - return -} -func NewMaxStart() { - ns.Frozen(obj7, true) - ns.Frozen(ns.GetHost(), true) - ns.LookAtObject(ns.GetHost(), obj7) - ns.LookAtObject(obj7, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "War07A.scr:MaxOffer01") -} -func NewMaxEnd() { - ns.Frozen(ns.GetHost(), false) - ns.Frozen(obj7, false) -} -func DemonAway() { - r1 := ns.IsAttackedBy(ns.GetHost(), ns.GetCaller()) - if !r1 { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func MapInitialize() { - obj33 = ns.Object("TowerNPC") - obj34 = ns.Object("TowerMaiden") - obj35 = ns.Object("NPCMover") - obj36 = ns.Object("SecretShirt") - obj37 = ns.Object("SecretApple") - gvar38 = ns.WallGroup("JumpWalls") - gvar39 = ns.WallGroup("FallWalls") - obj4 = ns.Object("BrightBlades") - obj5 = ns.Object("Loreman") - obj6 = ns.Object("MageVendor") - obj7 = ns.Object("Max") - obj8 = ns.Object("MiscGuy") - obj9 = ns.Object("BookVendor") - obj10 = ns.Object("AppleMan") - obj11 = ns.Object("Priest") - obj12 = ns.Object("Undertaker") - obj13 = ns.Object("Grillf") - obj14 = ns.Object("Mlurgh") - obj15 = ns.Object("Warden") - obj16 = ns.Object("Jorgan") - obj17 = ns.Object("Grunbar") - obj18 = ns.Object("Albi") - obj19 = ns.Object("Dorian") - obj20 = ns.Object("Civvy3") - obj21 = ns.Object("Civvy4") - obj22 = ns.Object("Morgan") - obj25 = ns.Object("Eowynn") - obj24 = ns.Object("Shari") - obj23 = ns.Object("Kayla") - obj26 = ns.Object("F6Elite4") - obj27 = ns.Object("Maiden3") - obj28 = ns.Object("MaxHomeDoor1") - obj29 = ns.Object("MaxHomeDoor2") - obj30 = ns.Object("MorganCellDoor") - obj31 = ns.Object("GuardDoor1") - obj32 = ns.Object("GearRoomDoor") - gvar40 = ns.ObjectGroup("MaxWelcomeTriggers") - gvar41 = ns.ObjectGroup("ResetMaxTriggers") - wp42 = ns.Waypoint("PlayerSounds") - ns.LockDoor(obj28) - ns.LockDoor(obj29) - ns.LockDoor(obj30) - ns.LockDoor(obj31) - ns.LockDoor(obj32) - ns.Wander(obj19) - ns.Wander(obj18) - ns.Wander(obj17) - ns.Wander(obj16) - ns.Wander(obj20) - ns.Wander(obj21) - ns.SetDialog(obj11, ns.NORMAL, PriestStart, PriestEnd) - ns.SetDialog(obj12, ns.NORMAL, UndertakerStart, UndertakerEnd) - ns.SetDialog(obj7, ns.NORMAL, NewMaxStart, NewMaxEnd) - ns.SetDialog(obj18, ns.NORMAL, AlbiStart, AlbiEnd) - ns.SetDialog(obj19, ns.NORMAL, DorianStart, DorianEnd) - ns.SetDialog(obj17, ns.NORMAL, GrunbarStart, GrunbarEnd) - ns.SetDialog(obj25, ns.NORMAL, EowynnStart, EowynnEnd) - ns.SetDialog(obj26, ns.NORMAL, BoothStart, BoothEnd) - ns.StoryPic(obj26, "MalePic4") - ns.StoryPic(obj15, "WardenPic") - ns.StoryPic(obj7, "MaxPic") - ns.StoryPic(obj14, "IxGuard2Pic") - ns.StoryPic(obj12, "UndertakerPic") - ns.StoryPic(obj19, "Townsman2Pic") - ns.StoryPic(obj17, "MalePic7") - ns.StoryPic(obj18, "MalePic1") - ns.StoryPic(obj16, "Townsman3Pic") - ns.StoryPic(obj11, "GalavaPriestPic") - ns.StoryPic(obj25, "MaidenPic") -} -func MapEntry() { - ns.FrameTimer(1, CreatureSetup) - ns.Music(17, 100) -} -func PlayerDeath() { - ns.DeathScreen(7) -} -func ResetMaxDialog() { - if gvar50 != gvar49 { - goto LABEL1 - } - ns.CancelDialog(obj7) - goto LABEL2 -LABEL1: - ns.SetDialog(obj7, ns.YESNO, MaxDialogStart, MaxDialogEnd) -LABEL2: - return -} -func NullFunction() { -} -func SetMaxWelcome() { - flag51 = false -} -func MaxSayWelcome() { - if flag51 { - goto LABEL1 - } - ns.Chat(obj7, "Wiz02A.scr:MaxTalk01") - flag51 = true - if ns.GetQuestStatus("OwnMax") != 1 { - goto LABEL1 - } - ns.ObjectGroupOff(gvar41) - ns.MoveObject(obj7, 1514, 4800) - ns.FrameTimer(1, DisableMax) -LABEL1: - return -} -func DisableMax() { - ns.ObjectOff(obj7) -} -func MakeAWish() { - var v0 int - ns.MoveWaypoint(wp42, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - v0 = ns.MaxHealth(ns.GetCaller()) - ns.RestoreHealth(ns.GetCaller(), v0-ns.CurrentHealth(ns.GetCaller())) - ns.PrintToAll("GeneralPrint:WellSignRefresh") - ns.AudioEvent(ns.RestoreHealthName, wp42) -} -func OnEvent(typ string) { - switch typ { - case "MapInitialize": - MapInitialize() - case "MapEntry": - MapEntry() - case "PlayerDeath": - PlayerDeath() - } -} diff --git a/examples/wiz08a/dummy_test.go b/examples/wiz08a/dummy_test.go deleted file mode 100644 index 099cfb9..0000000 --- a/examples/wiz08a/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package wiz08a - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/wiz08a/wiz08a.go b/examples/wiz08a/wiz08a.go deleted file mode 100644 index 3b84884..0000000 --- a/examples/wiz08a/wiz08a.go +++ /dev/null @@ -1,1524 +0,0 @@ -package wiz08a - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - gvar4 int - gvar5 int - gvar6 int - gvar7 int - gvar8 int - gvar9 int - gvar10 int - gvar11 int - gvar12 int - gvar13 int - gvar14 int - gvar15 int - gvar16 int - gvar17 int - gvar18 int - gvar19 int - gvar20 int - gvar21 int - gvar22 int - gvar23 int - gvar24 int - gvar25 int - gvar26 int - gvar27 int - gvar28 int - gvar29 int - gvar30 int - gvar31 int - gvar32 int - gvar33 int - gvar34 int - gvar35 int - gvar36 int - gvar37 int - gvar38 int - gvar39 int - gvar40 int - ivar41 int - gvar42 int - ivar43 int - ivar44 int - obj45 ns.ObjectID - obj46 ns.ObjectID - obj47 ns.ObjectID - obj48 ns.ObjectID - obj49 ns.ObjectID - obj50 ns.ObjectID - obj51 ns.ObjectID - obj52 ns.ObjectID - obj53 ns.ObjectID - obj54 ns.ObjectID - obj55 ns.ObjectID - obj56 ns.ObjectID - obj57 ns.ObjectID - obj58 ns.ObjectID - obj59 ns.ObjectID - obj60 ns.ObjectID - obj61 ns.ObjectID - obj62 ns.ObjectID - obj63 ns.ObjectID - obj64 ns.ObjectID - obj65 ns.ObjectID - obj66 ns.ObjectID - obj67 ns.ObjectID - obj68 ns.ObjectID - obj69 ns.ObjectID - obj70 ns.ObjectID - obj71 ns.ObjectID - obj72 ns.ObjectID - obj73 ns.ObjectID - obj74 ns.ObjectID - obj75 ns.ObjectID - wp76 ns.WaypointID - wp77 ns.WaypointID - wp78 ns.WaypointID - wp79 ns.WaypointID - obj80 ns.ObjectID - obj81 ns.ObjectID - obj82 ns.ObjectID - obj83 ns.ObjectID - obj84 ns.ObjectID - obj85 ns.ObjectID - wp86 ns.WaypointID - wp87 ns.WaypointID - gvar88 int - gvar89 int - gvar90 int - gvar91 int - gvar92 int - gvar93 int - gvar94 int - gvar95 int - ivar96 int - flag97 bool - flag98 bool - flag99 bool - flag100 bool - flag101 bool - flag102 bool - flag103 bool - flag104 bool - flag105 bool - obj106 ns.ObjectID - gvar107 int - obj108 ns.ObjectID - obj109 ns.ObjectID - obj110 ns.ObjectID - obj111 ns.ObjectID - obj112 ns.ObjectID - obj113 ns.ObjectID - obj114 ns.ObjectID - obj115 ns.ObjectID - obj116 ns.ObjectID - obj117 ns.ObjectID - obj118 [4]ns.ObjectID - gvar119 int - wp120 ns.WaypointID - wp121 ns.WaypointID - wp122 ns.WaypointID - wp123 ns.WaypointID - gvar124 ns.ObjectGroupID - gvar125 ns.ObjectGroupID - gvar126 ns.WallGroupID - flag127 bool - ivar128 int - flag129 bool -) - -func init() { - gvar4 = 0 - gvar5 = 1 - gvar6 = 2 - gvar7 = 3 - gvar8 = 4 - gvar9 = 5 - gvar10 = 6 - gvar11 = 7 - gvar12 = 8 - gvar13 = 9 - gvar14 = 10 - gvar15 = 11 - gvar16 = 12 - gvar17 = 13 - gvar18 = 14 - gvar19 = 15 - gvar20 = 16 - gvar21 = 17 - gvar22 = 18 - gvar23 = 19 - gvar24 = 20 - gvar25 = 21 - gvar26 = 22 - gvar27 = 23 - gvar28 = 24 - gvar29 = 25 - gvar30 = gvar13 - gvar31 = gvar10 - gvar32 = gvar7 - gvar33 = gvar14 - gvar34 = gvar18 - gvar35 = gvar22 - gvar36 = gvar23 - gvar37 = gvar24 - gvar38 = gvar25 - gvar39 = gvar26 - gvar40 = gvar4 - ivar41 = 200 - gvar42 = 2 - ivar43 = 0 - ivar44 = 0 - gvar88 = 0 - gvar89 = 1 - gvar90 = 2 - gvar91 = 3 - gvar92 = 4 - gvar93 = 5 - gvar94 = 6 - gvar95 = gvar88 - ivar96 = 0 - flag97 = false - flag98 = false - flag99 = false - flag100 = false - flag101 = false - flag102 = false - flag103 = true - flag104 = false - flag105 = false - flag127 = false - ivar128 = 60 - flag129 = true -} -func JandorStart() { - var v0 int - v0 = gvar40 - if v0 == gvar4 { - goto LABEL1 - } - if v0 == gvar5 { - goto LABEL2 - } - if v0 == gvar6 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - ns.TellStory(ns.HumanMaleEatFood, "Wiz08a:CaptainGreet") - goto LABEL4 -LABEL2: - ns.TellStory(ns.SwordsmanHurt, "Con03A.scr:JandorB") - goto LABEL4 -LABEL3: - ns.Frozen(ns.GetHost(), true) - ns.Blind() - ns.FrameTimer(45, ExitToSwamp) - goto LABEL4 -LABEL4: - return -} -func JandorEnd() { - var v0 int - v0 = gvar40 - if v0 == gvar4 { - goto LABEL1 - } - if v0 == gvar5 { - goto LABEL2 - } - if v0 == gvar6 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - goto LABEL4 -LABEL2: - gvar40 = gvar6 - goto LABEL4 -LABEL3: - ns.Frozen(ns.GetHost(), true) - ns.Blind() - ns.FrameTimer(45, ExitToSwamp) - goto LABEL4 -LABEL4: - return -} -func JacobDialogStart() { - var ( - v0 int - v1 int - v2 int - ) - v2 = gvar39 - if v2 == gvar26 { - goto LABEL1 - } - if v2 == gvar27 { - goto LABEL2 - } - if v2 == gvar28 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - v0 = ns.Random(1, 3) - v1 = v0 - if v1 == 1 { - goto LABEL5 - } - if v1 == 2 { - goto LABEL6 - } - if v1 == 3 { - goto LABEL7 - } - goto LABEL8 -LABEL5: - ns.TellStory(ns.HumanMaleEatFood, "Con02A:JailerTalk01") - goto LABEL8 -LABEL6: - ns.TellStory(ns.HumanMaleEatFood, "Con02A:JailerTalk02") - goto LABEL8 -LABEL7: - ns.TellStory(ns.HumanMaleEatFood, "Con02A:JailerTalk03") - goto LABEL8 -LABEL8: - goto LABEL4 -LABEL2: - ns.TellStory(ns.HumanMaleEatFood, "Con02A:JailerTalk04") - goto LABEL4 -LABEL3: - ns.TellStory(ns.HumanMaleEatFood, "Con02A:JailerTalk05") - goto LABEL4 -LABEL4: - return -} -func JacobDialogEnd() { - var v0 int - v0 = gvar39 - if v0 == gvar27 { - goto LABEL1 - } - if v0 == gvar28 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.Frozen(ns.GetHost(), false) - goto LABEL3 -LABEL2: - ns.Frozen(ns.GetHost(), false) - goto LABEL3 -LABEL3: - return -} -func ResetJacobDialog() { - if !ns.IsCaller(obj73) { - goto LABEL1 - } - if gvar39 != gvar29 { - goto LABEL1 - } - gvar39 = gvar26 - ns.SetDialog(obj73, ns.NORMAL, JacobDialogStart, JacobDialogEnd) - ivar44 = 0 - ns.ObjectOff(obj75) -LABEL1: - return -} -func MorganInjured() { - var v0 int - ivar44 += 1 - v0 = ivar44 - if v0 == 1 { - goto LABEL1 - } - if v0 == 2 { - goto LABEL2 - } - if v0 == 3 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - gvar39 = gvar27 - ns.Frozen(ns.GetHost(), true) - ns.CreatureIdle(ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj73) - ns.LookAtObject(obj73, ns.GetHost()) - if !(ns.CurrentHealth(obj73) > 0) { - goto LABEL5 - } - ns.StartDialog(obj73, ns.GetHost()) -LABEL5: - goto LABEL4 -LABEL2: - gvar39 = gvar28 - ns.Frozen(ns.GetHost(), true) - ns.CreatureIdle(ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj73) - ns.LookAtObject(obj73, ns.GetHost()) - if !(ns.CurrentHealth(obj73) > 0) { - goto LABEL6 - } - ns.StartDialog(obj73, ns.GetHost()) -LABEL6: - goto LABEL4 -LABEL3: - gvar39 = gvar29 - ns.CancelDialog(obj73) - ns.ClearOwner(obj73) - ns.AggressionLevel(obj73, 0.83) - if !(ns.CurrentHealth(obj73) > 0) { - goto LABEL7 - } - ns.Attack(obj73, ns.GetHost()) -LABEL7: - goto LABEL4 -LABEL4: - return -} -func PlayerFlee() { - if gvar39 != gvar29 { - goto LABEL1 - } - ns.ObjectOn(obj75) - ns.SetOwner(ns.GetHost(), obj73) - ns.AggressionLevel(obj73, 0) - ns.CreatureGuard(obj73, ns.GetWaypointX(wp77), ns.GetWaypointY(wp77), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) -LABEL1: - return -} -func HenrickDialogStart() { - var v0 int - v0 = gvar31 - if v0 == gvar10 { - goto LABEL1 - } - if v0 == gvar11 { - goto LABEL2 - } - if v0 == gvar12 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - ns.LookAtObject(obj46, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War08b:HenrickSalesPitchA") - goto LABEL4 -LABEL2: - ns.LookAtObject(obj46, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War08b:HenrickSalesPitchB") - goto LABEL4 -LABEL3: - ns.LookAtObject(obj46, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War08b:HenrickNoMoreWolves") - goto LABEL4 -LABEL4: - return -} -func HenrickDialogEnd() { - var ( - v0 int - v1 int - v2 int - v3 int - v4 int - v5 int - v6 int - v7 int - ) - v0 = 0 - v1 = 0 - v2 = 1 - v3 = 2 - v4 = 0 - v7 = gvar31 - if v7 == gvar10 { - goto LABEL1 - } - if v7 == gvar11 { - goto LABEL2 - } - if v7 == gvar12 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - v1 = ns.GetAnswer(obj46) - v5 = v1 - if v5 == v2 { - goto LABEL5 - } - if v5 == v3 { - goto LABEL6 - } - if v5 == v4 { - goto LABEL7 - } - goto LABEL8 -LABEL5: - v0 = ns.GetGold(ns.GetHost()) - if !(v0 < ivar41) { - goto LABEL9 - } - ns.SetDialog(obj46, ns.NORMAL, NullDialogStart, ResetHenrickDialogChoice) - ns.TellStory(ns.SwordsmanHurt, "War08b:HenrickNotEnoughGold") - goto LABEL10 -LABEL9: - ns.ChangeGold(ns.GetHost(), -ivar41) - gvar31 = gvar11 - ReleaseCharmedWolf(ivar43) - ivar43 += 1 - ns.SetDialog(obj46, ns.NORMAL, NullDialogStart, ResetHenrickDialogChoice) - ns.TellStory(ns.SwordsmanHurt, "War08b:HenrickSaleSuccessful") -LABEL10: - goto LABEL8 -LABEL6: - goto LABEL8 -LABEL7: - goto LABEL8 -LABEL8: - goto LABEL4 -LABEL2: - v1 = ns.GetAnswer(obj46) - v6 = v1 - if v6 == v2 { - goto LABEL11 - } - if v6 == v3 { - goto LABEL12 - } - if v6 == v4 { - goto LABEL13 - } - goto LABEL14 -LABEL11: - v0 = ns.GetGold(ns.GetHost()) - if !(v0 < ivar41) { - goto LABEL15 - } - ns.SetDialog(obj46, ns.NORMAL, NullDialogStart, ResetHenrickDialogChoice) - ns.TellStory(ns.SwordsmanHurt, "War08b:HenrickNotEnoughGold") - goto LABEL16 -LABEL15: - ns.ChangeGold(ns.GetHost(), -ivar41) - ReleaseCharmedWolf(ivar43) - ivar43 += 1 - ns.SetDialog(obj46, ns.NORMAL, NullDialogStart, ResetHenrickDialogChoice) - ns.TellStory(ns.SwordsmanHurt, "War08b:HenrickSaleSuccessful") - if !(ivar43 >= 2) { - goto LABEL16 - } - gvar31 = gvar12 - ns.SetDialog(obj46, ns.NORMAL, HenrickDialogStart, HenrickDialogEnd) -LABEL16: - goto LABEL14 -LABEL12: - goto LABEL14 -LABEL13: - goto LABEL14 -LABEL14: - goto LABEL4 -LABEL3: - goto LABEL4 -LABEL4: - return -} -func ResetHenrickDialogChoice() { - ns.SetDialog(obj46, ns.YESNO, HenrickDialogStart, HenrickDialogEnd) -} -func DrunkDialogStart() { - ns.LookAtObject(obj47, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War05A.scr:DrunkGreeting") -} -func DrunkDialogEnd() { -} -func GatekeeperDialogStart() { - var v0 int - ns.LookAtObject(obj50, ns.GetHost()) - v0 = gvar35 - if v0 == gvar22 { - goto LABEL1 - } - goto LABEL2 -LABEL1: - ns.TellStory(ns.SwordsmanHurt, "Con02a:GatekeeperWaiting") - goto LABEL2 -LABEL2: - return -} -func GatekeeperDialogEnd() { -} -func Gatekeeper2DialogStart() { - var v0 int - ns.LookAtObject(obj61, ns.GetHost()) - v0 = gvar36 - if v0 == gvar23 { - goto LABEL1 - } - goto LABEL2 -LABEL1: - ns.TellStory(ns.SwordsmanHurt, "Wiz08a:Guard01Greet") - goto LABEL2 -LABEL2: - return -} -func Gatekeeper2DialogEnd() { -} -func Gatekeeper3DialogStart() { - var v0 int - ns.LookAtObject(obj62, ns.GetHost()) - v0 = gvar37 - if v0 == gvar24 { - goto LABEL1 - } - goto LABEL2 -LABEL1: - ns.TellStory(ns.SwordsmanHurt, "War08a:Guard02Greet") - goto LABEL2 -LABEL2: - return -} -func Gatekeeper3DialogEnd() { -} -func MayorDialogStart() { - var ( - v0 int - v1 int - ) - ns.Frozen(ns.GetHost(), true) - ns.CreatureIdle(ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj53) - v0 = ns.Random(1, 2) - v1 = v0 - if v1 == 1 { - goto LABEL1 - } - if v1 == 2 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.TellStory(ns.SwordsmanHurt, "War03b:MayorPre") - goto LABEL3 -LABEL2: - ns.TellStory(ns.SwordsmanHurt, "War03b:MayorBye") - goto LABEL3 -LABEL3: - return -} -func MayorDialogEnd() { - ns.Frozen(ns.GetHost(), false) -} -func MayorsGuardDialogStart() { - var v0 int - v0 = gvar30 - if v0 == gvar13 { - goto LABEL1 - } - goto LABEL2 -LABEL1: - ns.LookAtObject(obj51, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War03b:MayorsGuardIntro") - goto LABEL2 -LABEL2: - return -} -func MayorsGuardDialogEnd() { -} -func AldwinDialogStart() { - var v0 int - v0 = gvar32 - if v0 == gvar7 { - goto LABEL1 - } - if v0 == gvar8 { - goto LABEL2 - } - if v0 == gvar9 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - ns.LookAtObject(obj52, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "Wiz08a:AldwynGreet") - goto LABEL4 -LABEL2: - ns.LookAtObject(obj52, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War08a:AldwynProd") - goto LABEL4 -LABEL3: - ns.LookAtObject(obj52, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "Con08:AldwynProd") - goto LABEL4 -LABEL4: - return -} -func AldwinDialogEnd() { - var v0 int - v0 = gvar32 - if v0 == gvar7 { - goto LABEL1 - } - if v0 == gvar8 { - goto LABEL2 - } - if v0 == gvar9 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - ns.Pickup(ns.GetHost(), obj48) - ns.PrintToAll("GeneralPrint:GainedKey") - gvar32 = gvar8 - ns.JournalEdit(ns.GetHost(), "Chapter8LocateAldwyn", 4) - ns.PrintToAll("Con02a:ObjectiveComplete") - ns.JournalEntry(ns.GetHost(), "Chapter8IxPriest", 2) - ns.PrintToAll("Con01a:NewJournalEntry") - goto LABEL4 -LABEL2: - gvar32 = gvar9 - goto LABEL4 -LABEL3: - goto LABEL4 -LABEL4: - return -} -func BridgeGuardDialogStart() { - var v0 int - v0 = gvar38 - if v0 == gvar25 { - goto LABEL1 - } - goto LABEL2 -LABEL1: - ns.LookAtObject(obj63, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "Con02a:RandomSay") - goto LABEL2 -LABEL2: - return -} -func BridgeGuardDialogEnd() { - var v0 int - v0 = gvar38 - if v0 == gvar25 { - goto LABEL1 - } - goto LABEL2 -LABEL1: - goto LABEL2 -LABEL2: - return -} -func Maiden1DialogStart() { - ns.LookAtObject(obj65, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "Con02a:BarMaiden") -} -func Maiden1DialogEnd() { -} -func Maiden2DialogStart() { - ns.Frozen(ns.GetHost(), true) - ns.Frozen(obj66, true) - ns.CreatureIdle(ns.GetHost()) - ns.CreatureIdle(obj66) - ns.LookAtObject(ns.GetHost(), obj66) - ns.LookAtObject(obj66, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "War06A:WomenSpeak2") -} -func Maiden2DialogEnd() { - ns.Frozen(ns.GetHost(), false) - ns.Frozen(obj66, false) - ns.Wander(obj66) -} -func Maiden3DialogStart() { - ns.Frozen(ns.GetHost(), true) - ns.Frozen(obj67, true) - ns.CreatureIdle(ns.GetHost()) - ns.CreatureIdle(obj67) - ns.LookAtObject(ns.GetHost(), obj67) - ns.LookAtObject(obj67, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "Wiz02A.scr:MaidenTalk05") -} -func Maiden3DialogEnd() { - ns.Frozen(ns.GetHost(), false) - ns.Frozen(obj67, false) - ns.Wander(obj67) -} -func Maiden4DialogStart() { - var ( - v0 int - v1 int - ) - ns.Frozen(ns.GetHost(), true) - ns.Frozen(obj68, true) - ns.CreatureIdle(ns.GetHost()) - ns.CreatureIdle(obj68) - ns.LookAtObject(ns.GetHost(), obj68) - ns.LookAtObject(obj68, ns.GetHost()) - v0 = ns.Random(1, 2) - v1 = v0 - if v1 == 1 { - goto LABEL1 - } - if v1 == 2 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.TellStory(ns.HumanMaleEatFood, "War02a:NewTownswoman1") - goto LABEL3 -LABEL2: - ns.TellStory(ns.HumanMaleEatFood, "War02a:NewTownswoman3") - goto LABEL3 -LABEL3: - return -} -func Maiden4DialogEnd() { - ns.Frozen(ns.GetHost(), false) - ns.Frozen(obj68, false) - ns.Wander(obj68) -} -func Townsman1DialogStart() { - ns.Frozen(ns.GetHost(), true) - ns.Frozen(obj70, true) - ns.CreatureIdle(ns.GetHost()) - ns.CreatureIdle(obj70) - ns.LookAtObject(ns.GetHost(), obj70) - ns.LookAtObject(obj70, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "War02a:NewTownsman3") -} -func Townsman1DialogEnd() { - ns.Frozen(ns.GetHost(), false) - ns.Frozen(obj70, false) - ns.Wander(obj70) -} -func Townsman2DialogStart() { - ns.Frozen(ns.GetHost(), true) - ns.Frozen(obj71, true) - ns.CreatureIdle(ns.GetHost()) - ns.CreatureIdle(obj71) - ns.LookAtObject(ns.GetHost(), obj71) - ns.LookAtObject(obj71, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "Wiz02A.scr:AlbiTalk01") -} -func Townsman2DialogEnd() { - ns.Frozen(ns.GetHost(), false) - ns.Frozen(obj71, false) - ns.Wander(obj71) -} -func Townsman3DialogStart() { - ns.Frozen(ns.GetHost(), true) - ns.Frozen(obj72, true) - ns.CreatureIdle(ns.GetHost()) - ns.CreatureIdle(obj72) - ns.LookAtObject(ns.GetHost(), obj72) - ns.LookAtObject(obj72, ns.GetHost()) - ns.TellStory(ns.HumanMaleEatFood, "Wiz02A.scr:MaxRumor03") -} -func Townsman3DialogEnd() { - ns.Frozen(ns.GetHost(), false) - ns.Frozen(obj72, false) - ns.Wander(obj72) -} -func ReleaseCharmedWolf(a1 int) { - var v0 int - v0 = a1 - if v0 == 0 { - goto LABEL1 - } - if v0 == 1 { - goto LABEL2 - } - if v0 == 2 { - goto LABEL3 - } - if v0 == 3 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - ns.WallOpen(ns.Wall(128, 106)) - ns.EnchantOff(obj118[a1], ns.ENCHANT_INVULNERABLE) - ns.CreatureFollow(obj118[a1], ns.GetHost()) - ns.PauseObject(obj118[a1], 30) - ns.AggressionLevel(obj118[a1], 0.83) - ns.MakeFriendly(obj118[a1]) - ns.BecomePet(obj118[a1]) - goto LABEL5 -LABEL2: - ns.WallOpen(ns.Wall(130, 104)) - ns.EnchantOff(obj118[a1], ns.ENCHANT_INVULNERABLE) - ns.CreatureFollow(obj118[a1], ns.GetHost()) - ns.PauseObject(obj118[a1], 30) - ns.AggressionLevel(obj118[a1], 0.83) - ns.MakeFriendly(obj118[a1]) - ns.BecomePet(obj118[a1]) - goto LABEL5 -LABEL3: - ns.WallOpen(ns.Wall(132, 102)) - ns.EnchantOff(obj118[a1], ns.ENCHANT_INVULNERABLE) - ns.CreatureFollow(obj118[a1], ns.GetHost()) - ns.PauseObject(obj118[a1], 30) - ns.AggressionLevel(obj118[a1], 0.83) - ns.MakeFriendly(obj118[a1]) - ns.BecomePet(obj118[a1]) - goto LABEL5 -LABEL4: - ns.WallOpen(ns.Wall(134, 100)) - ns.EnchantOff(obj118[a1], ns.ENCHANT_INVULNERABLE) - ns.CreatureFollow(obj118[a1], ns.GetHost()) - ns.PauseObject(obj118[a1], 30) - ns.AggressionLevel(obj118[a1], 0.83) - ns.MakeFriendly(obj118[a1]) - ns.BecomePet(obj118[a1]) - goto LABEL5 -LABEL5: - ns.PauseObject(obj118[a1], 30) -} -func InitializeDialogs() { - ns.StoryPic(obj46, "HenrickPic") - ns.StoryPic(obj47, "DrunkPic") - ns.StoryPic(obj49, "Townsman1Pic") - ns.StoryPic(obj50, "IxGuard2Pic") - ns.StoryPic(obj51, "Warrior3Pic") - ns.StoryPic(obj53, "TheogrinPic") - ns.StoryPic(obj52, "AldwynPic") - ns.StoryPic(obj61, "IxGuard2Pic") - ns.StoryPic(obj62, "IxGuard1Pic") - ns.StoryPic(obj63, "Townsman3Pic") - ns.StoryPic(obj65, "MaidenPic") - ns.StoryPic(obj66, "MaidenPic2") - ns.StoryPic(obj67, "MaidenPic3") - ns.StoryPic(obj68, "MaidenPic4") - ns.StoryPic(obj70, "MalePic4") - ns.StoryPic(obj71, "MalePic11") - ns.StoryPic(obj72, "MalePic12") - ns.StoryPic(obj45, "AirshipCaptainPic") - ns.StoryPic(obj73, "WardenPic") - ns.SetDialog(obj73, ns.NORMAL, JacobDialogStart, JacobDialogEnd) - ns.SetDialog(obj46, ns.YESNO, HenrickDialogStart, HenrickDialogEnd) - ns.SetDialog(obj45, ns.NORMAL, JandorStart, JandorEnd) - ns.SetDialog(obj47, ns.NORMAL, DrunkDialogStart, DrunkDialogEnd) - ns.SetDialog(obj61, ns.NORMAL, Gatekeeper2DialogStart, Gatekeeper2DialogEnd) - ns.SetDialog(obj62, ns.NORMAL, Gatekeeper3DialogStart, Gatekeeper3DialogEnd) - ns.SetDialog(obj51, ns.NORMAL, MayorsGuardDialogStart, MayorsGuardDialogEnd) - ns.SetDialog(obj52, ns.NORMAL, AldwinDialogStart, AldwinDialogEnd) - ns.SetDialog(obj63, ns.NORMAL, BridgeGuardDialogStart, BridgeGuardDialogEnd) - ns.SetDialog(obj65, ns.NORMAL, Maiden1DialogStart, Maiden1DialogEnd) - ns.SetDialog(obj66, ns.NORMAL, Maiden2DialogStart, Maiden2DialogEnd) - ns.SetDialog(obj67, ns.NORMAL, Maiden3DialogStart, Maiden3DialogEnd) - ns.SetDialog(obj68, ns.NORMAL, Maiden4DialogStart, Maiden4DialogEnd) - ns.SetDialog(obj70, ns.NORMAL, Townsman1DialogStart, Townsman1DialogEnd) - ns.SetDialog(obj71, ns.NORMAL, Townsman2DialogStart, Townsman2DialogEnd) - ns.SetDialog(obj72, ns.NORMAL, Townsman3DialogStart, Townsman3DialogEnd) -} -func InitializeSecondaryDialogs() { - gvar40 = gvar5 -} -func NullDialogStart() { -} -func ExitToSwamp() { - ns.Frozen(ns.GetHost(), false) - ns.MoveObject(ns.GetHost(), ns.GetWaypointX(ns.Waypoint("SwampExitWP")), ns.GetWaypointY(ns.Waypoint("SwampExitWP"))) -} -func PlayerDeath() { - ns.DeathScreen(8) -} -func GoToMineSEG2() { - ns.MoveObject(ns.GetHost(), ns.GetWaypointX(wp78), ns.GetWaypointY(wp78)) -} -func GoToMine() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Blind() - ns.FrameTimer(60, GoToMineSEG2) -LABEL1: - return -} -func GoToCaveSEG2() { - ns.MoveObject(ns.GetHost(), ns.GetWaypointX(wp79), ns.GetWaypointY(wp79)) -} -func GoToCave() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Blind() - ns.FrameTimer(60, GoToCaveSEG2) -LABEL1: - return -} -func InversionInit() { - obj80 = ns.Object("Teacher") - obj81 = ns.Object("Apprentice") - obj82 = ns.Object("InvertSpell") - obj83 = ns.Object("LessonGate1") - obj84 = ns.Object("LessonGate2") - obj85 = ns.Object("ApprenticeTrigger") - wp86 = ns.Waypoint("PlayerSounds") - wp87 = ns.Waypoint("ApprenticeWP") - ns.StoryPic(obj80, "WizardGuard1Pic") - ns.SetDialog(obj80, ns.YESNO, TeacherStart, TeacherEnd) - ns.LockDoor(obj83) - ns.LockDoor(obj84) - ns.ObjectOff(obj85) - ns.FrameTimer(1, InversionOwnObject) -} -func InversionOwnObject() { - ns.SetOwner(ns.GetHost(), obj80) - ns.Enchant(obj80, ns.ENCHANT_ANCHORED, 0) - ns.Enchant(obj81, ns.ENCHANT_ANCHORED, 0) -} -func TeacherStart() { - var v0 int - v0 = gvar95 - if v0 == gvar88 { - goto LABEL1 - } - if v0 == gvar89 { - goto LABEL2 - } - if v0 == gvar90 { - goto LABEL3 - } - if v0 == gvar91 { - goto LABEL4 - } - if v0 == gvar92 { - goto LABEL5 - } - if v0 == gvar93 { - goto LABEL6 - } - if v0 == gvar94 { - goto LABEL7 - } - goto LABEL8 -LABEL1: - ns.Frozen(ns.GetHost(), true) - ns.CreatureIdle(ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj80) - ns.TellStory(ns.HumanMaleEatFood, "Wiz02B.scr:InversionBoyTalk01") - goto LABEL8 -LABEL2: - ns.TellStory(ns.HumanMaleEatFood, "Wiz02B.scr:InversionBoyTalk04") - goto LABEL8 -LABEL3: - ns.TellStory(ns.HumanMaleEatFood, "Wiz02B.scr:InversionBoyTalk02") - goto LABEL8 -LABEL4: - ns.TellStory(ns.HumanMaleEatFood, "Wiz02B.scr:InversionBoyTalk03") - goto LABEL8 -LABEL5: - ns.TellStory(ns.HumanMaleEatFood, "Wiz02B.scr:InversionBoyTalk05") - goto LABEL8 -LABEL6: - ns.TellStory(ns.HumanMaleEatFood, "Wiz02B.scr:InversionBoyTalk04a") - goto LABEL8 -LABEL7: - ns.TellStory(ns.HumanMaleEatFood, "Wiz02B.scr:InversionBoyTalk06") - goto LABEL8 -LABEL8: - return -} -func TeacherEnd() { - var ( - v0 int - v1 int - v2 int - v3 int - v4 int - v5 int - v6 int - ) - v0 = 0 - v1 = 0 - v2 = 1 - v3 = 2 - v4 = 0 - v6 = gvar95 - if v6 == gvar88 { - goto LABEL1 - } - if v6 == gvar89 { - goto LABEL2 - } - if v6 == gvar90 { - goto LABEL3 - } - if v6 == gvar91 { - goto LABEL4 - } - if v6 == gvar92 { - goto LABEL5 - } - if v6 == gvar93 { - goto LABEL6 - } - if v6 == gvar94 { - goto LABEL7 - } - goto LABEL8 -LABEL1: - v1 = ns.GetAnswer(obj80) - v5 = v1 - if v5 == v2 { - goto LABEL9 - } - if v5 == v3 { - goto LABEL10 - } - if v5 == v4 { - goto LABEL11 - } - goto LABEL12 -LABEL9: - v0 = ns.GetGold(ns.GetHost()) - if !(v0 < 100) { - goto LABEL13 - } - ns.SetDialog(obj80, ns.NORMAL, TeacherStart, TeacherEnd) - gvar95 = gvar89 - ns.StartDialog(obj80, ns.GetHost()) - goto LABEL12 - goto LABEL10 -LABEL13: - ns.ChangeGold(ns.GetHost(), -100) - ns.UnlockDoor(obj83) - ns.UnlockDoor(obj84) - ns.SetDialog(obj80, ns.NORMAL, TeacherStart, TeacherEnd) - gvar95 = gvar90 - ns.StartDialog(obj80, ns.GetHost()) - goto LABEL12 -LABEL10: - ns.Frozen(ns.GetHost(), false) - gvar95 = gvar88 - ns.SetDialog(obj80, ns.YESNO, TeacherStart, TeacherEnd) - goto LABEL12 -LABEL11: - ns.Frozen(ns.GetHost(), false) - gvar95 = gvar88 - ns.SetDialog(obj80, ns.YESNO, TeacherStart, TeacherEnd) - goto LABEL12 -LABEL12: - goto LABEL8 -LABEL2: - ns.Frozen(ns.GetHost(), false) - gvar95 = gvar88 - ns.SetDialog(obj80, ns.YESNO, TeacherStart, TeacherEnd) - goto LABEL8 -LABEL3: - ns.CancelDialog(obj80) - ns.Frozen(ns.GetHost(), false) - ns.Pickup(ns.GetHost(), obj82) - goto LABEL8 -LABEL4: - ns.CancelDialog(obj80) - ns.SecondTimer(1, Phoneme4) - goto LABEL8 -LABEL5: - ns.UnlockDoor(obj56) - ns.UnlockDoor(obj57) - ns.UnlockDoor(obj83) - ns.UnlockDoor(obj84) - gvar95 = gvar94 - ns.SetDialog(obj80, ns.NORMAL, TeacherStart, TeacherEnd) - goto LABEL8 -LABEL6: - ns.UnlockDoor(obj56) - ns.UnlockDoor(obj57) - ns.UnlockDoor(obj83) - ns.UnlockDoor(obj84) - gvar95 = gvar94 - ns.SetDialog(obj80, ns.NORMAL, TeacherStart, TeacherEnd) - goto LABEL8 -LABEL7: - gvar95 = gvar94 - ns.SetDialog(obj80, ns.NORMAL, TeacherStart, TeacherEnd) - goto LABEL8 -LABEL8: - return -} -func Phoneme1() { - if flag101 { - goto LABEL1 - } - ns.MoveWaypoint(wp86, 1326, 2493) - ns.AudioEvent(ns.SpellPhonemeDown, wp86) - ns.FrameTimer(10, Phoneme2) -LABEL1: - return -} -func Phoneme2() { - if flag101 { - goto LABEL1 - } - ns.AudioEvent(ns.SpellPhonemeDown, wp86) - ns.FrameTimer(10, Phoneme3) -LABEL1: - return -} -func Phoneme3() { - if flag101 { - goto LABEL1 - } - ns.AudioEvent(ns.SpellPhonemeDown, wp86) - ns.FrameTimer(10, CastSpells) -LABEL1: - return -} -func Phoneme4() { - if !flag101 { - goto LABEL1 - } - ns.MoveWaypoint(wp86, 1326, 2493) - ns.AudioEvent(ns.SpellPhonemeDown, wp86) - ns.FrameTimer(10, Phoneme5) -LABEL1: - return -} -func Phoneme5() { - if !flag101 { - goto LABEL1 - } - ns.AudioEvent(ns.SpellPhonemeDown, wp86) - ns.FrameTimer(10, Phoneme6) -LABEL1: - return -} -func Phoneme6() { - if !flag101 { - goto LABEL1 - } - ns.AudioEvent(ns.SpellPhonemeDown, wp86) - ns.FrameTimer(10, CastSpells2) -LABEL1: - return -} -func LessonBegin() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - if gvar95 != gvar90 { - goto LABEL1 - } - if !flag103 { - goto LABEL2 - } - ns.LockDoor(obj83) - ns.LockDoor(obj84) - ns.Move(obj81, wp87) - flag103 = false -LABEL2: - if !(flag97 == false && flag102 == true) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.LookAtObject(obj81, ns.GetHost()) - flag97 = true - ns.LockDoor(obj56) - ns.LockDoor(obj57) - ns.SecondTimer(1, Phoneme1) -LABEL1: - return -} -func CastSpells() { - if flag101 { - goto LABEL1 - } - if !(ivar96 < 4) { - goto LABEL2 - } - ns.CastSpellObjectLocation(ns.SPELL_SLOW, obj81, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) -LABEL2: - if ivar96 != 4 { - goto LABEL3 - } - ns.CastSpellObjectLocation(ns.SPELL_SLOW, obj81, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) -LABEL3: - ivar96 += 1 - if !(ivar96 < 5) { - goto LABEL4 - } - ns.SecondTimer(3, Phoneme1) - goto LABEL1 -LABEL4: - flag98 = true - if !flag100 { - goto LABEL5 - } - gvar95 = gvar92 - ns.SetDialog(obj80, ns.NORMAL, TeacherStart, TeacherEnd) - ns.StartDialog(obj80, ns.GetHost()) - goto LABEL1 -LABEL5: - gvar95 = gvar93 - ns.SetDialog(obj80, ns.NORMAL, TeacherStart, TeacherEnd) - ns.StartDialog(obj80, ns.GetHost()) -LABEL1: - return -} -func CastSpells2() { - if !flag101 { - goto LABEL1 - } - if !(ivar96 < 4) { - goto LABEL2 - } - ns.CastSpellObjectLocation(ns.SPELL_SLOW, obj81, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) -LABEL2: - if ivar96 != 4 { - goto LABEL3 - } - ns.CastSpellObjectLocation(ns.SPELL_SLOW, obj81, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) -LABEL3: - ivar96 += 1 - if !(ivar96 < 5) { - goto LABEL4 - } - ns.SecondTimer(3, Phoneme4) - goto LABEL1 -LABEL4: - flag98 = true - if !flag100 { - goto LABEL5 - } - gvar95 = gvar92 - ns.SetDialog(obj80, ns.NORMAL, TeacherStart, TeacherEnd) - ns.StartDialog(obj80, ns.GetHost()) - goto LABEL1 -LABEL5: - gvar95 = gvar93 - ns.SetDialog(obj80, ns.NORMAL, TeacherStart, TeacherEnd) - ns.StartDialog(obj80, ns.GetHost()) -LABEL1: - return -} -func CheckApprentice() { - if !ns.HasEnchant(obj81, ns.ENCHANT_SLOWED) { - goto LABEL1 - } - ns.ObjectOff(obj85) - flag101 = true - gvar95 = gvar91 - flag100 = true - if !(ivar96 > 2) { - goto LABEL2 - } - ivar96 = 2 -LABEL2: - ns.SetDialog(obj80, ns.NORMAL, TeacherStart, TeacherEnd) - ns.StartDialog(obj80, ns.GetHost()) -LABEL1: - if !(ns.CurrentHealth(obj81) <= 0) { - goto LABEL3 - } - ns.ObjectOff(ns.GetTrigger()) - flag100 = true -LABEL3: - return -} -func ApprenticeDie() { - ns.AudioEvent(ns.HumanMaleHurtHeavy, wp86) -} -func ApprenticeReport() { - ns.CreatureGuard(obj81, ns.GetWaypointX(wp87), ns.GetWaypointY(wp87), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - ns.ObjectOn(obj85) - flag102 = true -} -func OwnObjects() { - ns.GroupSetOwner(ns.GetHost(), gvar124) - ns.SetOwner(ns.GetHost(), obj46) - ns.SetOwner(ns.GetHost(), obj106) - ns.GroupSetOwner(ns.GetHost(), gvar125) - ns.SetOwner(ns.GetHost(), obj47) - ns.SetOwner(ns.GetHost(), obj65) - ns.SetOwner(ns.GetHost(), obj66) - ns.SetOwner(ns.GetHost(), obj67) - ns.SetOwner(ns.GetHost(), obj68) - ns.SetOwner(ns.GetHost(), obj45) - ns.SetOwner(ns.GetHost(), obj73) - ns.StoryPic(obj49, "ShopKeeperBrownPic") -} -func FirstJournalEntry() { - if flag127 { - goto LABEL1 - } - flag127 = true - ns.JournalEntry(ns.GetHost(), "Chapter8LocateAldwyn", 2) - ns.PrintToAll("Con01a:NewJournalEntry") -LABEL1: - return -} -func DisableElevators() { - ns.ObjectOff(obj58) - ns.ObjectOff(obj64) -} -func MapInitialize() { - var v0 int - obj46 = ns.Object("Henrick") - obj106 = ns.Object("HenricksWolf") - obj118[0] = ns.Object("CharmedWolf01") - obj118[1] = ns.Object("CharmedWolf02") - obj118[2] = ns.Object("CharmedWolf03") - obj118[3] = ns.Object("CharmedWolf04") - v0 = 0 - for { - if !(v0 < 4) { - goto LABEL1 - } - ns.Enchant(obj118[v0], ns.ENCHANT_INVULNERABLE, 0) - v0 += 1 - } -LABEL1: - obj47 = ns.Object("Drunk") - obj52 = ns.Object("Aldwyn") - obj50 = ns.Object("Geoff") - obj61 = ns.Object("Ryan") - obj62 = ns.Object("Ed") - obj53 = ns.Object("Mayor_Theogrin") - obj51 = ns.Object("Mayor's_Guard") - obj49 = ns.Object("Barkeeper") - obj63 = ns.Object("Bridge_Guard") - obj45 = ns.Object("Jandor") - obj73 = ns.Object("Jacob") - obj74 = ns.Object("Morgan") - obj117 = ns.Object("CaveDoor") - obj114 = ns.Object("MorganDoor") - obj54 = ns.Object("MayorGate1") - obj55 = ns.Object("MayorGate2") - obj56 = ns.Object("ContestGate1") - obj57 = ns.Object("ContestGate2") - obj110 = ns.Object("CemeteryGate01") - obj111 = ns.Object("CemeteryGate02") - obj108 = ns.Object("BasementDoor") - obj58 = ns.Object("AldwinElevator") - obj59 = ns.Object("RightTownGate") - obj60 = ns.Object("LeftTownGate") - obj70 = ns.Object("Bryan") - obj71 = ns.Object("Clyde") - obj72 = ns.Object("Tommy") - obj64 = ns.Object("MagicShopElevator") - obj65 = ns.Object("Joyce") - obj66 = ns.Object("Julie") - obj67 = ns.Object("Tanya") - obj68 = ns.Object("Gretchen") - obj48 = ns.Object("BlueKey") - obj69 = ns.Object("AldwynFireplace") - obj75 = ns.Object("JacobTrigger") - obj109 = ns.Object("AldwynsDoor") - obj112 = ns.Object("TempDoorR") - obj113 = ns.Object("TempDoorL") - obj115 = ns.Object("Mystic") - obj116 = ns.Object("Mystic2") - wp76 = ns.Waypoint("AldwynHome") - wp120 = ns.Waypoint("AldwynStorage") - wp77 = ns.Waypoint("JacobWP") - wp121 = ns.Waypoint("MysticWP") - wp122 = ns.Waypoint("MysticStorage") - wp123 = ns.Waypoint("FaceWP") - gvar124 = ns.ObjectGroup("NPC's") - gvar125 = ns.ObjectGroup("CharmedWolves") - gvar126 = ns.WallGroup("MagicShopElevatorWalls") - wp78 = ns.Waypoint("MineExitWP") - wp79 = ns.Waypoint("CaveExitWP") - ns.Wander(obj70) - ns.Wander(obj71) - ns.Wander(obj72) - ns.Wander(obj66) - ns.Wander(obj67) - ns.LockDoor(obj54) - ns.LockDoor(obj55) - ns.LockDoor(obj110) - ns.LockDoor(obj111) - ns.LockDoor(obj59) - ns.LockDoor(obj60) - ns.LockDoor(obj114) - ns.LockDoor(obj117) - InversionInit() - InitializeDialogs() - ns.StartupScreen(8) - ns.FrameTimer(1, OwnObjects) - ns.FrameTimer(1, FirstJournalEntry) - ns.FrameTimer(35, DisableElevators) -} -func MapEntry() { - var v0 int - v0 = ns.GetQuestStatus("Chapter8:HasWeirdling") - ns.Music(15, 100) - if v0 != 1 { - goto LABEL1 - } - flag105 = true - ns.MoveObject(obj52, ns.GetWaypointX(wp120), ns.GetWaypointY(wp120)) - ns.LockDoor(obj109) - ns.LockDoor(obj112) - ns.LockDoor(obj113) - InitializeSecondaryDialogs() - ns.SetShopkeeperText(obj115, "Con08a:Mystic2") - ns.CancelDialog(obj61) - ns.CancelDialog(obj62) -LABEL1: - ns.UnBlind() -} -func DebugOn() { - flag104 = true - ns.PrintToAll("Debug mode is enabled.") -} -func DebugOff() { - flag104 = false - ns.PrintToAll("Debug mode has been disabled.") -} -func OpenCaveDoor() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.UnlockDoor(obj117) - ns.ObjectOff(ns.GetTrigger()) -LABEL1: - return -} -func EnableRandomBump() { - flag129 = true -} -func RandomBump() { - if !(ns.IsCaller(ns.GetHost()) && flag129) { - goto LABEL1 - } - ns.Chat(ns.GetTrigger(), "Con02a:RandomBump") - flag129 = false - ns.FrameTimer(ivar128, EnableRandomBump) -LABEL1: - return -} -func RestAwhile() { - var v0 int - v0 = ns.Random(60, 120) - ns.PauseObject(ns.GetCaller(), v0) -} -func OpenMagicShopElevatorWalls() { - ns.WallGroupOpen(gvar126) -} -func MakeAWish() { - var v0 int - v0 = ns.MaxHealth(ns.GetCaller()) - ns.RestoreHealth(ns.GetCaller(), v0-ns.CurrentHealth(ns.GetCaller())) - ns.PrintToAll("GeneralPrint:WellSignRefresh") - ns.AudioEvent(ns.RestoreHealthName, ns.Waypoint("WellWP")) -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapInitialize": - MapInitialize() - case "MapEntry": - MapEntry() - } -} diff --git a/examples/wiz08b/dummy_test.go b/examples/wiz08b/dummy_test.go deleted file mode 100644 index 6c9058b..0000000 --- a/examples/wiz08b/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package wiz08b - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/wiz08b/wiz08b.go b/examples/wiz08b/wiz08b.go deleted file mode 100644 index 73cfac7..0000000 --- a/examples/wiz08b/wiz08b.go +++ /dev/null @@ -1,263 +0,0 @@ -package wiz08b - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 ns.ObjectID - obj5 ns.ObjectID - obj6 ns.ObjectID - obj7 ns.ObjectID - wp8 ns.WaypointID - wp9 ns.WaypointID - gvar10 ns.ObjectGroupID - wp11 ns.WaypointID - wp12 ns.WaypointID - wp13 ns.WaypointID - wp14 ns.WaypointID - gvar15 int - gvar16 int - gvar17 int - gvar18 int - gvar19 int - flag20 bool - flag21 bool -) - -func init() { - gvar15 = 0 - gvar16 = 1 - gvar17 = 2 - gvar18 = 3 - gvar19 = gvar15 - flag20 = false - flag21 = false -} -func PlayerDeath() { - ns.DeathScreen(8) -} -func GoToIxSEG2() { - ns.Frozen(ns.GetHost(), false) - ns.Frozen(obj4, false) - ns.Frozen(obj5, false) - ns.Frozen(obj6, false) - ns.MoveObject(ns.GetHost(), ns.GetWaypointX(wp8), ns.GetWaypointY(wp8)) -} -func GoToIx() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Frozen(ns.GetHost(), true) - ns.Frozen(obj4, true) - ns.Frozen(obj5, true) - ns.Frozen(obj6, true) - ns.Blind() - ns.FrameTimer(60, GoToIxSEG2) -LABEL1: - return -} -func GoToTempleSEG2() { - ns.Frozen(ns.GetHost(), false) - ns.MoveObject(ns.GetHost(), ns.GetWaypointX(wp9), ns.GetWaypointY(wp9)) -} -func GoToTemple() { - ns.Frozen(ns.GetHost(), true) - ns.CancelDialog(obj7) - ns.Blind() - ns.FrameTimer(60, GoToTempleSEG2) -} -func OwnObjects() { - ns.SetOwner(ns.GetHost(), obj7) -} -func MapInitialize() { - obj4 = ns.Object("Bear01") - obj5 = ns.Object("Bear02") - obj6 = ns.Object("Bear03") - obj7 = ns.Object("IxPriest") - gvar10 = ns.ObjectGroup("Fish") - wp8 = ns.Waypoint("IxExitWP") - wp11 = ns.Waypoint("TempleExtWP") - wp12 = ns.Waypoint("TempleIntWP") - wp9 = ns.Waypoint("TempleExitWP") - wp13 = ns.Waypoint("PriestWP") - wp14 = ns.Waypoint("PriestLookWP") - ns.GroupWander(gvar10) - ns.FrameTimer(1, OwnObjects) -} -func MapEntry() { - ns.Music(22, 100) - ns.UnBlind() -} -func EnterTempleSEG2() { - ns.Frozen(ns.GetHost(), false) - ns.Frozen(obj4, false) - ns.Frozen(obj5, false) - ns.Frozen(obj6, false) - ns.MoveObject(ns.GetHost(), ns.GetWaypointX(wp12), ns.GetWaypointY(wp12)) - ns.UnBlind() -} -func EnterTemple() { - ns.Frozen(ns.GetHost(), true) - ns.Frozen(obj4, true) - ns.Frozen(obj5, true) - ns.Frozen(obj6, true) - ns.Blind() - ns.FrameTimer(60, EnterTempleSEG2) -} -func LeaveTempleSEG2() { - ns.Frozen(ns.GetHost(), false) - ns.MoveObject(ns.GetHost(), ns.GetWaypointX(wp11), ns.GetWaypointY(wp11)) - ns.UnBlind() -} -func LeaveTemple() { - ns.Frozen(ns.GetHost(), true) - ns.Blind() - ns.FrameTimer(60, LeaveTempleSEG2) -} -func StayAway() { - r1 := ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) - if !r1 { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func NoMonsters() { - r1 := ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) - if !r1 { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func BearAttack() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.CreatureFollow(obj5, obj4) - ns.CreatureFollow(obj6, obj4) -LABEL1: - return -} -func BearIdle() { - ns.GoBackHome(ns.GetTrigger()) -} -func PriestSetPieceSEG2() { - ns.CreatureFollow(obj7, ns.GetHost()) - ns.FrameTimer(75, PriestSetPieceSEG3) -} -func PriestSetPieceSEG3() { - ns.StoryPic(obj7, "IxPriestPic") - ns.SetDialog(obj7, ns.NEXT, PriestDialogStart, PriestDialogEnd) - ns.StartDialog(obj7, ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj7) -} -func PriestDialogStart() { - var v0 int - v0 = gvar19 - if v0 == gvar15 { - goto LABEL1 - } - if v0 == gvar16 { - goto LABEL2 - } - if v0 == gvar17 { - goto LABEL3 - } - if v0 == gvar18 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - ns.TellStory(ns.SwordsmanHurt, "Con08a:PriestGreet") - goto LABEL5 -LABEL2: - ns.TellStory(ns.SwordsmanHurt, "Con08a:PriestProd") - goto LABEL5 -LABEL3: - ns.TellStory(ns.SwordsmanHurt, "Con08a:PriestProd2") - goto LABEL5 -LABEL4: - ns.TellStory(ns.SwordsmanHurt, "Con08a:PriestProd3") - goto LABEL5 -LABEL5: - return -} -func PriestDialogEnd() { - var v0 int - v0 = gvar19 - if v0 == gvar15 { - goto LABEL1 - } - if v0 == gvar16 { - goto LABEL2 - } - if v0 == gvar17 { - goto LABEL3 - } - if v0 == gvar18 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - gvar19 = gvar16 - PriestDialogStart() - goto LABEL5 -LABEL2: - gvar19 = gvar17 - PriestDialogStart() - goto LABEL5 -LABEL3: - gvar19 = gvar18 - ns.SetDialog(obj7, ns.NORMAL, PriestDialogStart, PriestDialogEnd) - PriestDialogStart() - goto LABEL5 -LABEL4: - if flag21 { - goto LABEL6 - } - flag21 = true - ns.JournalEdit(ns.GetHost(), "Chapter8IxPriest", 4) - ns.PrintToAll("Con02a:ObjectiveComplete") - ns.JournalEntry(ns.GetHost(), "Chapter8Wierdling", 2) - ns.PrintToAll("Con01a:NewJournalEntry") - ns.WideScreen(false) - ns.CreatureGuard(obj7, ns.GetWaypointX(wp13), ns.GetWaypointY(wp13), ns.GetWaypointX(wp14), ns.GetWaypointY(wp14), 0) - ReleasePlayer() -LABEL6: - goto LABEL5 -LABEL5: - return -} -func ReleasePlayer() { - ns.MusicPopEvent() - ns.Frozen(ns.GetHost(), false) -} -func StartPriestSetPiece() { - if flag20 { - goto LABEL1 - } - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.MusicPushEvent() - ns.Music(10, 100) - flag20 = true - ns.AudioEvent(ns.BigGong, wp12) - ns.Frozen(ns.GetHost(), true) - ns.WideScreen(true) - ns.FrameTimer(60, PriestSetPieceSEG2) -LABEL1: - return -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapInitialize": - MapInitialize() - case "MapEntry": - MapEntry() - } -} diff --git a/examples/wiz08c/dummy_test.go b/examples/wiz08c/dummy_test.go deleted file mode 100644 index 1578c9b..0000000 --- a/examples/wiz08c/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package wiz08c - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/wiz08c/wiz08c.go b/examples/wiz08c/wiz08c.go deleted file mode 100644 index 0804483..0000000 --- a/examples/wiz08c/wiz08c.go +++ /dev/null @@ -1,842 +0,0 @@ -package wiz08c - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - gvar4 ns.ObjectGroupID - gvar5 ns.ObjectGroupID - gvar6 ns.ObjectGroupID - wp7 ns.WaypointID - obj8 ns.ObjectID - obj9 ns.ObjectID - wp10 ns.WaypointID - wp11 ns.WaypointID - gvar12 ns.WallGroupID - gvar13 ns.WallGroupID - wp14 ns.WaypointID - obj15 ns.ObjectID - obj16 ns.ObjectID - obj17 ns.ObjectID - obj18 ns.ObjectID - obj19 ns.ObjectID - obj20 ns.ObjectID - obj21 ns.ObjectID - obj22 ns.ObjectID - wp23 ns.WaypointID - wp24 ns.WaypointID - wp25 ns.WaypointID - wp26 ns.WaypointID - wp27 ns.WaypointID - wp28 ns.WaypointID - wp29 ns.WaypointID - wp30 ns.WaypointID - wp31 ns.WaypointID - gvar32 int - gvar33 [10]ns.ObjectGroupID - gvar34 int - obj35 ns.ObjectID - obj36 [9]ns.ObjectID - gvar37 int - ivar38 int - ivar39 int - ivar40 int - ivar41 int - ivar42 int - ivar43 [10]int - flag44 [10]bool - wp45 [10]ns.WaypointID - str46 [6]string -) - -func init() { - gvar37 = 0 - ivar38 = 1 - ivar39 = 0 - ivar40 = 180 - ivar41 = 0 - ivar42 = 10 -} -func ArrowTrapAudio() { - ns.MoveWaypoint(wp7, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.BowShoot, wp7) - ns.AudioEvent(ns.CrossBowShoot, wp7) -} -func DisableArrowTrapGroup01() { - ns.ObjectGroupOff(gvar4) -} -func EnableArrowTrapGroup01() { - ns.ObjectGroupOn(gvar4) - ns.FrameTimer(1, DisableArrowTrapGroup01) -} -func DisableArrowTrapGroup02() { - ns.ObjectGroupOff(gvar5) -} -func ActivateArrowTrap02() { - ns.ObjectGroupOn(gvar5) - ns.FrameTimer(1, DisableArrowTrapGroup02) -} -func DisableArrowTrapGroup03() { - ns.ObjectGroupOff(gvar6) -} -func ActivateArrowTrap03() { - ns.ObjectGroupOn(gvar6) - ns.FrameTimer(1, DisableArrowTrapGroup03) -} -func BeholderAttackExit() { - if !(ns.CurrentHealth(obj8) > 0) { - goto LABEL1 - } - if ns.IsVisibleTo(obj8, ns.GetHost()) { - goto LABEL1 - } - ns.Move(obj8, wp11) -LABEL1: - return -} -func BeholderStay() { - if !ns.IsCaller(obj8) { - goto LABEL1 - } - ns.Wander(obj8) -LABEL1: - if !ns.IsCaller(obj9) { - goto LABEL2 - } - ns.Wander(obj9) -LABEL2: - return -} -func OpenBoulderHallWall01() { - ns.ObjectOff(ns.GetTrigger()) - ns.WallOpen(ns.Wall(104, 162)) -} -func OpenBoulderHallWall02() { - ns.ObjectOff(ns.GetTrigger()) - ns.WallOpen(ns.Wall(213, 107)) -} -func GoldKeyRemoved() { - ns.WallGroupOpen(gvar12) - ns.WallGroupOpen(gvar13) -} -func ReleaseGoldKeyBombers() { - ns.WallGroupOpen(gvar13) -} -func PlayerDeath() { - ns.DeathScreen(8) -} -func InitializeSummoningCircles() { - var v0 int - v0 = 0 - for { - if !(v0 < 10) { - goto LABEL1 - } - flag44[v0] = true - ivar43[v0] = 0 - v0 += 1 - } -LABEL1: - str46[0] = "UrchinShaman" - str46[1] = "Mimic" - str46[2] = "Bear" - str46[3] = "Urchin" - str46[4] = "Imp" - str46[5] = "WhiteWolf" - obj35 = ns.Object("SummoningCircleTreasureLight") - obj36[0] = ns.Object("SummoningCircleTreasure01") - obj36[1] = ns.Object("SummoningCircleTreasure02") - obj36[2] = ns.Object("SummoningCircleTreasure03") - obj36[3] = ns.Object("SummoningCircleTreasure04") - obj36[4] = ns.Object("SummoningCircleTreasure05") - obj36[5] = ns.Object("SummoningCircleTreasure06") - obj36[6] = ns.Object("SummoningCircleTreasure07") - obj36[7] = ns.Object("SummoningCircleTreasure08") - obj36[8] = ns.Object("SummoningCircleTreasure09") - wp45[0] = ns.Waypoint("SummoningCircle01WP") - wp45[1] = ns.Waypoint("SummoningCircle02WP") - wp45[2] = ns.Waypoint("SummoningCircle03WP") - wp45[3] = ns.Waypoint("SummoningCircle04WP") - wp45[4] = ns.Waypoint("SummoningCircle05WP") - wp45[5] = ns.Waypoint("SummoningCircle06WP") - wp45[6] = ns.Waypoint("SummoningCircle07WP") - wp45[7] = ns.Waypoint("SummoningCircle08WP") - wp45[8] = ns.Waypoint("SummoningCircle09WP") - wp45[9] = ns.Waypoint("SummoningCircle10WP") - gvar33[0] = ns.ObjectGroup("SummonCircle01Lights") - gvar33[1] = ns.ObjectGroup("SummonCircle02Lights") - gvar33[2] = ns.ObjectGroup("SummonCircle03Lights") - gvar33[3] = ns.ObjectGroup("SummonCircle04Lights") - gvar33[4] = ns.ObjectGroup("SummonCircle05Lights") - gvar33[5] = ns.ObjectGroup("SummonCircle06Lights") - gvar33[6] = ns.ObjectGroup("SummonCircle07Lights") - gvar33[7] = ns.ObjectGroup("SummonCircle08Lights") - gvar33[8] = ns.ObjectGroup("SummonCircle09Lights") - gvar33[9] = ns.ObjectGroup("SummonCircle10Lights") -} -func MapInitialize() { - obj8 = ns.Object("Beholder01") - obj9 = ns.Object("Beholder02") - obj15 = ns.Object("Beholder03") - obj16 = ns.Object("Bat01") - obj17 = ns.Object("StoneBlock01") - obj18 = ns.Object("StoneBlock02") - obj19 = ns.Object("StoneBlock03") - obj20 = ns.Object("StoneBlock04") - obj21 = ns.Object("BomberPitElevator") - obj22 = ns.Object("SpiderPitElevator") - wp23 = ns.Waypoint("StoneBlock01WP") - wp26 = ns.Waypoint("StoneBlock02Home") - wp28 = ns.Waypoint("StoneBlock03Home") - wp25 = ns.Waypoint("StoneBlock02Dest") - wp27 = ns.Waypoint("StoneBlock03Dest") - wp24 = ns.Waypoint("StoneBlock04WP") - wp14 = ns.Waypoint("GoldKeyWP") - wp30 = ns.Waypoint("BomberCreationWP") - wp10 = ns.Waypoint("BomberAudioOrigin") - wp29 = ns.Waypoint("Beholder01SetPieceWP") - wp11 = ns.Waypoint("BeholderRoomExitWP") - wp7 = ns.Waypoint("ArrowTrapAudioOrigin") - wp31 = ns.Waypoint("SecretAudioOrigin") - gvar4 = ns.ObjectGroup("ArrowTrapGroup01") - gvar5 = ns.ObjectGroup("ArrowTrapGroup02") - gvar6 = ns.ObjectGroup("ArrowTrapGroup03") - gvar12 = ns.WallGroup("GoldKeyWalls") - gvar13 = ns.WallGroup("BomberCageWalls") - InitializeSummoningCircles() -} -func MapEntry() { - ns.Music(18, 100) - ns.UnBlind() -} -func EnableSpiderPitElevator() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.ObjectOn(obj22) -LABEL1: - return -} -func SecretSFX() { - ns.MoveWaypoint(wp31, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretFound, wp31) -} -func Secret01Found() { - ns.ObjectOff(ns.GetTrigger()) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 100) - SecretSFX() -} -func SealTheTempleFX() { - var ( - v0 float32 - v1 float32 - ) - v0 = ns.GetObjectX(ns.GetHost()) - v1 = ns.GetObjectY(ns.GetHost()) - ns.AudioEvent(ns.HugeFoot, wp23) - ns.Effect(ns.JIGGLE, v0, v1, 10, 0) -} -func SealTheTemple() { - ns.ObjectOff(ns.GetTrigger()) - ns.Move(obj17, wp23) - ns.Move(obj20, wp24) - ns.AudioEvent(ns.BigGong, wp23) - ns.AudioEvent(ns.SecretWallClose, wp23) - ns.FrameTimer(10, SealTheTempleFX) -} -func EnableElevator() { - ns.ObjectOn(obj21) -} -func ReleasePlayer() { - ns.WideScreen(false) - ns.ClearOwner(obj8) - ns.Frozen(ns.GetHost(), false) - if !(ns.CurrentHealth(obj16) > 0) { - goto LABEL1 - } - ns.ObjectOn(obj16) -LABEL1: - ns.Delete(ns.Object("Wiz08a:CharmedWolf01")) - ns.Delete(ns.Object("Wiz08a:CharmedWolf02")) - ns.Delete(ns.Object("Wiz08a:CharmedWolf03")) - ns.Delete(ns.Object("Wiz08a:CharmedWolf04")) - ns.NoWallSound(true) - ns.WallClose(ns.Wall(169, 87)) - ns.NoWallSound(false) - ns.FrameTimer(60, EnableElevator) -} -func BeholderSetpieceSEG3() { - ns.FrameTimer(60, ReleasePlayer) -} -func BeholderSetpieceSEG2() { - ns.Move(obj8, wp29) - ns.FrameTimer(180, ReleasePlayer) -} -func BeholderSetpiece() { - ns.SetOwner(ns.GetHost(), obj8) - ns.ObjectOff(ns.GetTrigger()) - ns.Frozen(ns.GetHost(), true) - ns.CreatureIdle(ns.GetHost()) - ns.WideScreen(true) - if !(ns.CurrentHealth(obj16) > 0) { - goto LABEL1 - } - ns.ObjectOff(obj16) -LABEL1: - ns.FrameTimer(60, BeholderSetpieceSEG2) -} -func DisableBomberPitElevator() { - ns.ObjectOff(obj21) -} -func BlockGatesFX() { - var ( - v0 float32 - v1 float32 - ) - v0 = ns.GetObjectX(ns.GetHost()) - v1 = ns.GetObjectY(ns.GetHost()) - ns.AudioEvent(ns.HugeFoot, wp25) - ns.Effect(ns.JIGGLE, v0, v1, 10, 0) -} -func CloseBlockGates() { - ns.Move(obj18, wp25) - ns.Move(obj19, wp27) - ns.AudioEvent(ns.SecretWallClose, wp25) - ns.AudioEvent(ns.SecretWallClose, wp27) - ns.FrameTimer(10, BlockGatesFX) -} -func SealBeholderRoom() { - ns.ObjectOff(ns.GetTrigger()) - ns.WallClose(ns.Wall(209, 109)) - ns.MoveObject(obj8, ns.GetWaypointX(wp11), ns.GetWaypointY(wp11)) - ns.AggressionLevel(obj8, 0.83) - ns.AggressionLevel(obj9, 0.83) - ns.Wander(obj8) - ns.Wander(obj9) -} -func ResetSummonCircle(a1 int) { - flag44[a1] = true - ns.ObjectGroupOn(gvar33[a1]) -} -func SummoningCircleCleared(a1 int) { - ivar39 += 1 - if ivar39 != 9 { - goto LABEL1 - } - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 500) - ns.Effect(ns.BLUE_SPARKS, ns.GetWaypointX(wp45[a1]), ns.GetWaypointY(wp45[a1]), 0, 0) - ns.MoveObject(obj35, ns.GetWaypointX(wp45[a1]), ns.GetWaypointY(wp45[a1])) - ns.MoveObject(obj36[ivar39-1], ns.GetWaypointX(wp45[a1]), ns.GetWaypointY(wp45[a1])) - ns.AudioEvent(ns.SmallGong, wp45[a1]) - goto LABEL2 -LABEL1: - ns.Effect(ns.BLUE_SPARKS, ns.GetWaypointX(wp45[a1]), ns.GetWaypointY(wp45[a1]), 0, 0) - ns.MoveObject(obj35, ns.GetWaypointX(wp45[a1]), ns.GetWaypointY(wp45[a1])) - ns.MoveObject(obj36[ivar39-1], ns.GetWaypointX(wp45[a1]), ns.GetWaypointY(wp45[a1])) - ns.AudioEvent(ns.BigGong, wp45[a1]) -LABEL2: - return -} -func SummonCircle01Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar37 = 0 - if !(ns.IsCaller(ns.GetHost()) && flag44[gvar37] == true) { - goto LABEL1 - } - flag44[gvar37] = false - ns.ObjectGroupOff(gvar33[gvar37]) - ns.AudioEvent(ns.SummonCast, wp45[gvar37]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp45[gvar37]), ns.GetWaypointY(wp45[gvar37]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar42) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp45[gvar37]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp45[gvar37]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar41 = ns.Random(0, 5) - ns.CreateObject(str46[ivar41], wp45[gvar37]) -LABEL6: - ivar43[gvar37] += 1 - if !(ivar43[gvar37] > ivar38) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar37, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar40, gvar37, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle02Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar37 = 1 - if !(ns.IsCaller(ns.GetHost()) && flag44[gvar37] == true) { - goto LABEL1 - } - flag44[gvar37] = false - ns.ObjectGroupOff(gvar33[gvar37]) - ns.AudioEvent(ns.SummonCast, wp45[gvar37]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp45[gvar37]), ns.GetWaypointY(wp45[gvar37]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar42) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp45[gvar37]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp45[gvar37]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar41 = ns.Random(0, 5) - ns.CreateObject(str46[ivar41], wp45[gvar37]) -LABEL6: - ivar43[gvar37] += 1 - if !(ivar43[gvar37] > ivar38) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar37, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar40, gvar37, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle03Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar37 = 2 - if !(ns.IsCaller(ns.GetHost()) && flag44[gvar37] == true) { - goto LABEL1 - } - flag44[gvar37] = false - ns.ObjectGroupOff(gvar33[gvar37]) - ns.AudioEvent(ns.SummonCast, wp45[gvar37]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp45[gvar37]), ns.GetWaypointY(wp45[gvar37]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar42) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp45[gvar37]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp45[gvar37]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar41 = ns.Random(0, 5) - ns.CreateObject(str46[ivar41], wp45[gvar37]) -LABEL6: - ivar43[gvar37] += 1 - if !(ivar43[gvar37] > ivar38) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar37, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar40, gvar37, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle04Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar37 = 3 - if !(ns.IsCaller(ns.GetHost()) && flag44[gvar37] == true) { - goto LABEL1 - } - flag44[gvar37] = false - ns.ObjectGroupOff(gvar33[gvar37]) - ns.AudioEvent(ns.SummonCast, wp45[gvar37]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp45[gvar37]), ns.GetWaypointY(wp45[gvar37]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar42) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp45[gvar37]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp45[gvar37]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar41 = ns.Random(0, 5) - ns.CreateObject(str46[ivar41], wp45[gvar37]) -LABEL6: - ivar43[gvar37] += 1 - if !(ivar43[gvar37] > ivar38) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar37, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar40, gvar37, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle05Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar37 = 4 - if !(ns.IsCaller(ns.GetHost()) && flag44[gvar37] == true) { - goto LABEL1 - } - flag44[gvar37] = false - ns.ObjectGroupOff(gvar33[gvar37]) - ns.AudioEvent(ns.SummonCast, wp45[gvar37]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp45[gvar37]), ns.GetWaypointY(wp45[gvar37]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar42) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp45[gvar37]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp45[gvar37]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar41 = ns.Random(0, 5) - ns.CreateObject(str46[ivar41], wp45[gvar37]) -LABEL6: - ivar43[gvar37] += 1 - if !(ivar43[gvar37] > ivar38) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar37, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar40, gvar37, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle06Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar37 = 5 - if !(ns.IsCaller(ns.GetHost()) && flag44[gvar37] == true) { - goto LABEL1 - } - flag44[gvar37] = false - ns.ObjectGroupOff(gvar33[gvar37]) - ns.AudioEvent(ns.SummonCast, wp45[gvar37]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp45[gvar37]), ns.GetWaypointY(wp45[gvar37]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar42) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp45[gvar37]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp45[gvar37]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar41 = ns.Random(0, 5) - ns.CreateObject(str46[ivar41], wp45[gvar37]) -LABEL6: - ivar43[gvar37] += 1 - if !(ivar43[gvar37] > ivar38) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar37, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar40, gvar37, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle07Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar37 = 6 - if !(ns.IsCaller(ns.GetHost()) && flag44[gvar37] == true) { - goto LABEL1 - } - flag44[gvar37] = false - ns.ObjectGroupOff(gvar33[gvar37]) - ns.AudioEvent(ns.SummonCast, wp45[gvar37]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp45[gvar37]), ns.GetWaypointY(wp45[gvar37]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar42) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp45[gvar37]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp45[gvar37]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar41 = ns.Random(0, 5) - ns.CreateObject(str46[ivar41], wp45[gvar37]) -LABEL6: - ivar43[gvar37] += 1 - if !(ivar43[gvar37] > ivar38) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar37, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar40, gvar37, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle08Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar37 = 7 - if !(ns.IsCaller(ns.GetHost()) && flag44[gvar37] == true) { - goto LABEL1 - } - flag44[gvar37] = false - ns.ObjectGroupOff(gvar33[gvar37]) - ns.AudioEvent(ns.SummonCast, wp45[gvar37]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp45[gvar37]), ns.GetWaypointY(wp45[gvar37]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar42) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp45[gvar37]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp45[gvar37]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar41 = ns.Random(0, 5) - ns.CreateObject(str46[ivar41], wp45[gvar37]) -LABEL6: - ivar43[gvar37] += 1 - if !(ivar43[gvar37] > ivar38) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar37, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar40, gvar37, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle09Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar37 = 8 - if !(ns.IsCaller(ns.GetHost()) && flag44[gvar37] == true) { - goto LABEL1 - } - flag44[gvar37] = false - ns.ObjectGroupOff(gvar33[gvar37]) - ns.AudioEvent(ns.SummonCast, wp45[gvar37]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp45[gvar37]), ns.GetWaypointY(wp45[gvar37]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar42) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp45[gvar37]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp45[gvar37]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar41 = ns.Random(0, 5) - ns.CreateObject(str46[ivar41], wp45[gvar37]) -LABEL6: - ivar43[gvar37] += 1 - if !(ivar43[gvar37] > ivar38) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar37, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar40, gvar37, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle10Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar37 = 9 - if !(ns.IsCaller(ns.GetHost()) && flag44[gvar37] == true) { - goto LABEL1 - } - flag44[gvar37] = false - ns.ObjectGroupOff(gvar33[gvar37]) - ns.AudioEvent(ns.SummonCast, wp45[gvar37]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp45[gvar37]), ns.GetWaypointY(wp45[gvar37]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar42) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp45[gvar37]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp45[gvar37]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar41 = ns.Random(0, 5) - ns.CreateObject(str46[ivar41], wp45[gvar37]) -LABEL6: - ivar43[gvar37] += 1 - if !(ivar43[gvar37] > ivar38) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar37, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar40, gvar37, ResetSummonCircle) -LABEL1: - return -} -func EnableBomberPitElevator() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.ObjectOn(obj21) -LABEL1: - return -} -func OpenBomberPitExit() { - ns.ObjectOff(ns.GetTrigger()) - ns.WallOpen(ns.Wall(159, 109)) -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapInitialize": - MapInitialize() - case "MapEntry": - MapEntry() - } -} diff --git a/examples/wiz08d/dummy_test.go b/examples/wiz08d/dummy_test.go deleted file mode 100644 index 67f935d..0000000 --- a/examples/wiz08d/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package wiz08d - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/wiz08d/wiz08d.go b/examples/wiz08d/wiz08d.go deleted file mode 100644 index ac95105..0000000 --- a/examples/wiz08d/wiz08d.go +++ /dev/null @@ -1,2353 +0,0 @@ -package wiz08d - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 ns.ObjectID - gvar5 ns.ObjectGroupID - gvar6 ns.ObjectGroupID - gvar7 ns.ObjectGroupID - gvar8 ns.ObjectGroupID - wp9 ns.WaypointID - ivar10 int - obj11 ns.ObjectID - obj12 ns.ObjectID - obj13 ns.ObjectID - obj14 ns.ObjectID - obj15 ns.ObjectID - obj16 ns.ObjectID - obj17 ns.ObjectID - obj18 ns.ObjectID - obj19 ns.ObjectID - obj20 ns.ObjectID - obj21 ns.ObjectID - obj22 ns.ObjectID - obj23 ns.ObjectID - obj24 ns.ObjectID - wp25 ns.WaypointID - wp26 ns.WaypointID - obj27 ns.ObjectID - obj28 ns.ObjectID - obj29 ns.ObjectID - obj30 ns.ObjectID - obj31 ns.ObjectID - obj32 ns.ObjectID - obj33 ns.ObjectID - obj34 ns.ObjectID - obj35 ns.ObjectID - obj36 ns.ObjectID - obj37 ns.ObjectID - obj38 ns.ObjectID - obj39 ns.ObjectID - obj40 ns.ObjectID - fvar41 float32 - fvar42 float32 - ivar43 int - str44 [3]string - obj45 ns.ObjectID - obj46 ns.ObjectID - obj47 ns.ObjectID - wp48 ns.WaypointID - wp49 ns.WaypointID - wp50 ns.WaypointID - wp51 ns.WaypointID - wp52 ns.WaypointID - flag53 bool - obj54 ns.ObjectID - obj55 ns.ObjectID - gvar56 ns.WallGroupID - obj57 ns.ObjectID - obj58 ns.ObjectID - obj59 ns.ObjectID - obj60 ns.ObjectID - obj61 ns.ObjectID - obj62 ns.ObjectID - obj63 ns.ObjectID - obj64 ns.ObjectID - obj65 ns.ObjectID - obj66 ns.ObjectID - obj67 ns.ObjectID - gvar68 ns.ObjectGroupID - wp69 ns.WaypointID - wp70 ns.WaypointID - wp71 ns.WaypointID - wp72 ns.WaypointID - wp73 ns.WaypointID - wp74 ns.WaypointID - wp75 ns.WaypointID - obj76 ns.ObjectID - obj77 [15]ns.ObjectID - gvar78 [21]ns.ObjectGroupID - gvar79 int - ivar80 int - ivar81 int - ivar82 int - ivar83 int - ivar84 int - ivar85 [21]int - flag86 [21]bool - wp87 [21]ns.WaypointID - str88 [6]string -) - -func init() { - ivar10 = 0 - fvar41 = 0 - fvar42 = 0 - ivar43 = 0 - flag53 = false - gvar79 = 0 - ivar80 = 1 - ivar81 = 0 - ivar82 = 10 - ivar83 = 180 - ivar84 = 0 -} -func ArrowTrapAudio() { - ns.MoveWaypoint(wp9, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.BowShoot, wp9) - ns.AudioEvent(ns.CrossBowShoot, wp9) -} -func DisableArrowTrap01() { - ns.ObjectGroupOff(gvar5) -} -func ActivateArrowTrap01() { - ns.ObjectGroupOn(gvar5) - ns.FrameTimer(1, DisableArrowTrap01) -} -func DisableArrowTrap02() { - ns.ObjectGroupOff(gvar6) -} -func ActivateArrowTrap02() { - ns.ObjectGroupOn(gvar6) - ns.FrameTimer(1, DisableArrowTrap02) -} -func DisableArrowTrap03() { - ns.ObjectGroupOff(gvar7) -} -func ActivateArrowTrap03() { - ns.ObjectGroupOn(gvar7) - ns.FrameTimer(1, DisableArrowTrap03) -} -func DisableUltimateArrowTrapGuns() { - ns.ObjectGroupOff(gvar8) -} -func ResetUltimateArrowTrap() { - ns.ObjectOn(obj4) -} -func UltimateArrowTrapLoop() { - if !(ivar10 < 8) { - goto LABEL1 - } - ivar10 += 1 - ns.ObjectGroupOn(gvar8) - ns.FrameTimer(1, DisableUltimateArrowTrapGuns) - ns.FrameTimer(10, UltimateArrowTrapLoop) -LABEL1: - if ivar10 != 8 { - goto LABEL2 - } - ivar10 = 0 - ns.ObjectGroupOn(gvar8) - ns.FrameTimer(1, DisableUltimateArrowTrapGuns) - ns.FrameTimer(10, ResetUltimateArrowTrap) -LABEL2: - return -} -func ActivateUltimateArrowTrap() { - ns.ObjectOff(ns.GetTrigger()) - ns.ObjectGroupOn(gvar8) - ns.FrameTimer(1, DisableUltimateArrowTrapGuns) - ns.FrameTimer(10, UltimateArrowTrapLoop) -} -func InitializeBeholders() { - str44[0] = "SPELL_STUN" - str44[1] = "SPELL_CONFUSE" - str44[2] = "SPELL_FUMBLE" -} -func BeholderIdle() { - ns.Wander(ns.GetTrigger()) -} -func Beholder01Bombers() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 int - ) - _ = v3 - _ = v2 - if !(ns.CurrentHealth(obj11) > 0 && ns.CurrentHealth(obj27) <= 0) { - goto LABEL1 - } - v0 = ns.GetObjectX(obj11) - v1 = ns.GetObjectY(obj11) - ns.MoveWaypoint(wp26, v0, v1) - ns.AudioEvent(ns.SummonCast, wp26) - v2 = ns.RandomFloat(fvar41, fvar42) - v3 = ns.RandomFloat(fvar41, fvar42) - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - ivar43 = ns.Random(0, 2) - v4 = ivar43 - if v4 == 0 { - goto LABEL2 - } - if v4 == 1 { - goto LABEL3 - } - if v4 == 2 { - goto LABEL4 - } - goto LABEL5 -LABEL2: - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj27 = ns.CreateObject("BomberBlue", wp25) - ns.TrapSpells(obj27, str44[ivar43], "", "") - goto LABEL5 -LABEL3: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj27 = ns.CreateObject("BomberGreen", wp25) - ns.TrapSpells(obj27, str44[ivar43], "", "") - goto LABEL5 -LABEL4: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj27 = ns.CreateObject("BomberYellow", wp25) - ns.TrapSpells(obj27, str44[ivar43], "", "") - goto LABEL5 -LABEL5: - ns.SetOwner(obj11, obj27) - ns.CreatureFollow(obj27, obj11) -LABEL1: - return -} -func Beholder01Recognize() { - ns.FrameTimer(90, Beholder01Bombers) -} -func Beholder01Die() { - ns.Damage(obj27, 0, 500, 0) -} -func Beholder02Bombers() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 int - ) - _ = v3 - _ = v2 - if !(ns.CurrentHealth(obj12) > 0 && ns.CurrentHealth(obj28) <= 0) { - goto LABEL1 - } - v0 = ns.GetObjectX(obj12) - v1 = ns.GetObjectY(obj12) - ns.MoveWaypoint(wp26, v0, v1) - ns.AudioEvent(ns.SummonCast, wp26) - v2 = ns.RandomFloat(fvar41, fvar42) - v3 = ns.RandomFloat(fvar41, fvar42) - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - ivar43 = ns.Random(0, 2) - v4 = ivar43 - if v4 == 0 { - goto LABEL2 - } - if v4 == 1 { - goto LABEL3 - } - if v4 == 2 { - goto LABEL4 - } - goto LABEL5 -LABEL2: - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj28 = ns.CreateObject("BomberBlue", wp25) - ns.TrapSpells(obj28, str44[ivar43], "", "") - goto LABEL5 -LABEL3: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj28 = ns.CreateObject("BomberGreen", wp25) - ns.TrapSpells(obj28, str44[ivar43], "", "") - goto LABEL5 -LABEL4: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj28 = ns.CreateObject("BomberYellow", wp25) - ns.TrapSpells(obj28, str44[ivar43], "", "") - goto LABEL5 -LABEL5: - ns.SetOwner(obj12, obj28) - ns.CreatureFollow(obj28, obj12) -LABEL1: - return -} -func Beholder02Recognize() { - ns.FrameTimer(90, Beholder02Bombers) -} -func Beholder02Die() { - ns.Damage(obj28, 0, 500, 0) -} -func Beholder03Bombers() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 int - ) - _ = v3 - _ = v2 - if !(ns.CurrentHealth(obj13) > 0 && ns.CurrentHealth(obj29) <= 0) { - goto LABEL1 - } - v0 = ns.GetObjectX(obj13) - v1 = ns.GetObjectY(obj13) - ns.MoveWaypoint(wp26, v0, v1) - ns.AudioEvent(ns.SummonCast, wp26) - v2 = ns.RandomFloat(fvar41, fvar42) - v3 = ns.RandomFloat(fvar41, fvar42) - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - ivar43 = ns.Random(0, 2) - v4 = ivar43 - if v4 == 0 { - goto LABEL2 - } - if v4 == 1 { - goto LABEL3 - } - if v4 == 2 { - goto LABEL4 - } - goto LABEL5 -LABEL2: - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj29 = ns.CreateObject("BomberBlue", wp25) - ns.TrapSpells(obj29, str44[ivar43], "", "") - goto LABEL5 -LABEL3: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj29 = ns.CreateObject("BomberGreen", wp25) - ns.TrapSpells(obj29, str44[ivar43], "", "") - goto LABEL5 -LABEL4: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj29 = ns.CreateObject("BomberYellow", wp25) - ns.TrapSpells(obj29, str44[ivar43], "", "") - goto LABEL5 -LABEL5: - ns.SetOwner(obj13, obj29) - ns.CreatureFollow(obj29, obj13) -LABEL1: - return -} -func Beholder03Recognize() { - ns.FrameTimer(90, Beholder03Bombers) -} -func Beholder03Die() { - ns.Damage(obj29, 0, 500, 0) -} -func Beholder04Bombers() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 int - ) - _ = v3 - _ = v2 - if !(ns.CurrentHealth(obj14) > 0 && ns.CurrentHealth(obj30) <= 0) { - goto LABEL1 - } - v0 = ns.GetObjectX(obj14) - v1 = ns.GetObjectY(obj14) - ns.MoveWaypoint(wp26, v0, v1) - ns.AudioEvent(ns.SummonCast, wp26) - v2 = ns.RandomFloat(fvar41, fvar42) - v3 = ns.RandomFloat(fvar41, fvar42) - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - ivar43 = ns.Random(0, 2) - v4 = ivar43 - if v4 == 0 { - goto LABEL2 - } - if v4 == 1 { - goto LABEL3 - } - if v4 == 2 { - goto LABEL4 - } - goto LABEL5 -LABEL2: - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj30 = ns.CreateObject("BomberBlue", wp25) - ns.TrapSpells(obj30, str44[ivar43], "", "") - goto LABEL5 -LABEL3: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj30 = ns.CreateObject("BomberGreen", wp25) - ns.TrapSpells(obj30, str44[ivar43], "", "") - goto LABEL5 -LABEL4: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj30 = ns.CreateObject("BomberYellow", wp25) - ns.TrapSpells(obj30, str44[ivar43], "", "") - goto LABEL5 -LABEL5: - ns.SetOwner(obj14, obj30) - ns.CreatureFollow(obj30, obj14) -LABEL1: - return -} -func Beholder04Recognize() { - ns.FrameTimer(90, Beholder04Bombers) -} -func Beholder04Die() { - ns.Damage(obj30, 0, 500, 0) -} -func Beholder05Bombers() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 int - ) - _ = v3 - _ = v2 - if !(ns.CurrentHealth(obj15) > 0 && ns.CurrentHealth(obj31) <= 0) { - goto LABEL1 - } - v0 = ns.GetObjectX(obj15) - v1 = ns.GetObjectY(obj15) - ns.MoveWaypoint(wp26, v0, v1) - ns.AudioEvent(ns.SummonCast, wp26) - v2 = ns.RandomFloat(fvar41, fvar42) - v3 = ns.RandomFloat(fvar41, fvar42) - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - ivar43 = ns.Random(0, 2) - v4 = ivar43 - if v4 == 0 { - goto LABEL2 - } - if v4 == 1 { - goto LABEL3 - } - if v4 == 2 { - goto LABEL4 - } - goto LABEL5 -LABEL2: - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj31 = ns.CreateObject("BomberBlue", wp25) - ns.TrapSpells(obj31, str44[ivar43], "", "") - goto LABEL5 -LABEL3: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj31 = ns.CreateObject("BomberGreen", wp25) - ns.TrapSpells(obj31, str44[ivar43], "", "") - goto LABEL5 -LABEL4: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj31 = ns.CreateObject("BomberYellow", wp25) - ns.TrapSpells(obj31, str44[ivar43], "", "") - goto LABEL5 -LABEL5: - ns.SetOwner(obj15, obj31) - ns.CreatureFollow(obj31, obj15) -LABEL1: - return -} -func Beholder05Recognize() { - ns.FrameTimer(90, Beholder05Bombers) -} -func Beholder05Die() { - ns.Damage(obj31, 0, 500, 0) -} -func Beholder06Bombers() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 int - ) - _ = v3 - _ = v2 - if !(ns.CurrentHealth(obj16) > 0 && ns.CurrentHealth(obj32) <= 0) { - goto LABEL1 - } - v0 = ns.GetObjectX(obj16) - v1 = ns.GetObjectY(obj16) - ns.MoveWaypoint(wp26, v0, v1) - ns.AudioEvent(ns.SummonCast, wp26) - v2 = ns.RandomFloat(fvar41, fvar42) - v3 = ns.RandomFloat(fvar41, fvar42) - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - ivar43 = ns.Random(0, 2) - v4 = ivar43 - if v4 == 0 { - goto LABEL2 - } - if v4 == 1 { - goto LABEL3 - } - if v4 == 2 { - goto LABEL4 - } - goto LABEL5 -LABEL2: - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj32 = ns.CreateObject("BomberBlue", wp25) - ns.TrapSpells(obj32, str44[ivar43], "", "") - goto LABEL5 -LABEL3: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj32 = ns.CreateObject("BomberGreen", wp25) - ns.TrapSpells(obj32, str44[ivar43], "", "") - goto LABEL5 -LABEL4: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj32 = ns.CreateObject("BomberYellow", wp25) - ns.TrapSpells(obj32, str44[ivar43], "", "") - goto LABEL5 -LABEL5: - ns.SetOwner(obj16, obj32) - ns.CreatureFollow(obj32, obj16) -LABEL1: - return -} -func Beholder06Recognize() { - ns.FrameTimer(90, Beholder06Bombers) -} -func Beholder06Die() { - ns.Damage(obj32, 0, 500, 0) -} -func Beholder07Bombers() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 int - ) - _ = v3 - _ = v2 - if !(ns.CurrentHealth(obj17) > 0 && ns.CurrentHealth(obj33) <= 0) { - goto LABEL1 - } - v0 = ns.GetObjectX(obj17) - v1 = ns.GetObjectY(obj17) - ns.MoveWaypoint(wp26, v0, v1) - ns.AudioEvent(ns.SummonCast, wp26) - v2 = ns.RandomFloat(fvar41, fvar42) - v3 = ns.RandomFloat(fvar41, fvar42) - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - ivar43 = ns.Random(0, 2) - v4 = ivar43 - if v4 == 0 { - goto LABEL2 - } - if v4 == 1 { - goto LABEL3 - } - if v4 == 2 { - goto LABEL4 - } - goto LABEL5 -LABEL2: - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj33 = ns.CreateObject("BomberBlue", wp25) - ns.TrapSpells(obj33, str44[ivar43], "", "") - goto LABEL5 -LABEL3: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj33 = ns.CreateObject("BomberGreen", wp25) - ns.TrapSpells(obj33, str44[ivar43], "", "") - goto LABEL5 -LABEL4: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj33 = ns.CreateObject("BomberYellow", wp25) - ns.TrapSpells(obj33, str44[ivar43], "", "") - goto LABEL5 -LABEL5: - ns.SetOwner(obj17, obj33) - ns.CreatureFollow(obj33, obj17) -LABEL1: - return -} -func Beholder07Recognize() { - ns.FrameTimer(90, Beholder07Bombers) -} -func Beholder07Die() { - ns.Damage(obj33, 0, 500, 0) -} -func Beholder08Bombers() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 int - ) - _ = v3 - _ = v2 - if !(ns.CurrentHealth(obj18) > 0 && ns.CurrentHealth(obj34) <= 0) { - goto LABEL1 - } - v0 = ns.GetObjectX(obj18) - v1 = ns.GetObjectY(obj18) - ns.MoveWaypoint(wp26, v0, v1) - ns.AudioEvent(ns.SummonCast, wp26) - v2 = ns.RandomFloat(fvar41, fvar42) - v3 = ns.RandomFloat(fvar41, fvar42) - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - ivar43 = ns.Random(0, 2) - v4 = ivar43 - if v4 == 0 { - goto LABEL2 - } - if v4 == 1 { - goto LABEL3 - } - if v4 == 2 { - goto LABEL4 - } - goto LABEL5 -LABEL2: - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj34 = ns.CreateObject("BomberBlue", wp25) - ns.TrapSpells(obj34, str44[ivar43], "", "") - goto LABEL5 -LABEL3: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj34 = ns.CreateObject("BomberGreen", wp25) - ns.TrapSpells(obj34, str44[ivar43], "", "") - goto LABEL5 -LABEL4: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj34 = ns.CreateObject("BomberYellow", wp25) - ns.TrapSpells(obj34, str44[ivar43], "", "") - goto LABEL5 -LABEL5: - ns.SetOwner(obj18, obj34) - ns.CreatureFollow(obj34, obj18) -LABEL1: - return -} -func Beholder08Recognize() { - ns.FrameTimer(90, Beholder08Bombers) -} -func Beholder08Die() { - ns.Damage(obj34, 0, 500, 0) -} -func Beholder09Bombers() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 int - ) - _ = v3 - _ = v2 - if !(ns.CurrentHealth(obj19) > 0 && ns.CurrentHealth(obj35) <= 0) { - goto LABEL1 - } - v0 = ns.GetObjectX(obj19) - v1 = ns.GetObjectY(obj19) - ns.MoveWaypoint(wp26, v0, v1) - ns.AudioEvent(ns.SummonCast, wp26) - v2 = ns.RandomFloat(fvar41, fvar42) - v3 = ns.RandomFloat(fvar41, fvar42) - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - ivar43 = ns.Random(0, 2) - v4 = ivar43 - if v4 == 0 { - goto LABEL2 - } - if v4 == 1 { - goto LABEL3 - } - if v4 == 2 { - goto LABEL4 - } - goto LABEL5 -LABEL2: - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj35 = ns.CreateObject("BomberBlue", wp25) - ns.TrapSpells(obj35, str44[ivar43], "", "") - goto LABEL5 -LABEL3: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj35 = ns.CreateObject("BomberGreen", wp25) - ns.TrapSpells(obj35, str44[ivar43], "", "") - goto LABEL5 -LABEL4: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj35 = ns.CreateObject("BomberYellow", wp25) - ns.TrapSpells(obj35, str44[ivar43], "", "") - goto LABEL5 -LABEL5: - ns.SetOwner(obj19, obj35) - ns.CreatureFollow(obj35, obj19) -LABEL1: - return -} -func Beholder09Recognize() { - ns.FrameTimer(90, Beholder09Bombers) -} -func Beholder09Die() { - ns.Damage(obj35, 0, 500, 0) -} -func Beholder10Bombers() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 int - ) - _ = v3 - _ = v2 - if !(ns.CurrentHealth(obj20) > 0 && ns.CurrentHealth(obj36) <= 0) { - goto LABEL1 - } - v0 = ns.GetObjectX(obj20) - v1 = ns.GetObjectY(obj20) - ns.MoveWaypoint(wp26, v0, v1) - ns.AudioEvent(ns.SummonCast, wp26) - v2 = ns.RandomFloat(fvar41, fvar42) - v3 = ns.RandomFloat(fvar41, fvar42) - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - ivar43 = ns.Random(0, 2) - v4 = ivar43 - if v4 == 0 { - goto LABEL2 - } - if v4 == 1 { - goto LABEL3 - } - if v4 == 2 { - goto LABEL4 - } - goto LABEL5 -LABEL2: - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj36 = ns.CreateObject("BomberBlue", wp25) - ns.TrapSpells(obj36, str44[ivar43], "", "") - goto LABEL5 -LABEL3: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj36 = ns.CreateObject("BomberGreen", wp25) - ns.TrapSpells(obj36, str44[ivar43], "", "") - goto LABEL5 -LABEL4: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj36 = ns.CreateObject("BomberYellow", wp25) - ns.TrapSpells(obj36, str44[ivar43], "", "") - goto LABEL5 -LABEL5: - ns.SetOwner(obj20, obj36) - ns.CreatureFollow(obj36, obj20) -LABEL1: - return -} -func Beholder10Recognize() { - ns.FrameTimer(90, Beholder10Bombers) -} -func Beholder10Die() { - ns.Damage(obj36, 0, 500, 0) -} -func Beholder11Bombers() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 int - ) - _ = v3 - _ = v2 - if !(ns.CurrentHealth(obj21) > 0 && ns.CurrentHealth(obj37) <= 0) { - goto LABEL1 - } - v0 = ns.GetObjectX(obj21) - v1 = ns.GetObjectY(obj21) - ns.MoveWaypoint(wp26, v0, v1) - ns.AudioEvent(ns.SummonCast, wp26) - v2 = ns.RandomFloat(fvar41, fvar42) - v3 = ns.RandomFloat(fvar41, fvar42) - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - ivar43 = ns.Random(0, 2) - v4 = ivar43 - if v4 == 0 { - goto LABEL2 - } - if v4 == 1 { - goto LABEL3 - } - if v4 == 2 { - goto LABEL4 - } - goto LABEL5 -LABEL2: - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj37 = ns.CreateObject("BomberBlue", wp25) - ns.TrapSpells(obj37, str44[ivar43], "", "") - goto LABEL5 -LABEL3: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj37 = ns.CreateObject("BomberGreen", wp25) - ns.TrapSpells(obj37, str44[ivar43], "", "") - goto LABEL5 -LABEL4: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj37 = ns.CreateObject("BomberYellow", wp25) - ns.TrapSpells(obj37, str44[ivar43], "", "") - goto LABEL5 -LABEL5: - ns.SetOwner(obj21, obj37) - ns.CreatureFollow(obj37, obj21) -LABEL1: - return -} -func Beholder11Recognize() { - ns.FrameTimer(90, Beholder11Bombers) -} -func Beholder11Die() { - ns.Damage(obj37, 0, 500, 0) -} -func Beholder12Bombers() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 int - ) - _ = v3 - _ = v2 - if !(ns.CurrentHealth(obj22) > 0 && ns.CurrentHealth(obj38) <= 0) { - goto LABEL1 - } - v0 = ns.GetObjectX(obj22) - v1 = ns.GetObjectY(obj22) - ns.MoveWaypoint(wp26, v0, v1) - ns.AudioEvent(ns.SummonCast, wp26) - v2 = ns.RandomFloat(fvar41, fvar42) - v3 = ns.RandomFloat(fvar41, fvar42) - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - ivar43 = ns.Random(0, 2) - v4 = ivar43 - if v4 == 0 { - goto LABEL2 - } - if v4 == 1 { - goto LABEL3 - } - if v4 == 2 { - goto LABEL4 - } - goto LABEL5 -LABEL2: - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj38 = ns.CreateObject("BomberBlue", wp25) - ns.TrapSpells(obj38, str44[ivar43], "", "") - goto LABEL5 -LABEL3: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj38 = ns.CreateObject("BomberGreen", wp25) - ns.TrapSpells(obj38, str44[ivar43], "", "") - goto LABEL5 -LABEL4: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj38 = ns.CreateObject("BomberYellow", wp25) - ns.TrapSpells(obj38, str44[ivar43], "", "") - goto LABEL5 -LABEL5: - ns.SetOwner(obj22, obj38) - ns.CreatureFollow(obj38, obj22) -LABEL1: - return -} -func Beholder12Recognize() { - ns.FrameTimer(90, Beholder12Bombers) -} -func Beholder12Die() { - ns.Damage(obj38, 0, 500, 0) -} -func Beholder13Bombers() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 int - ) - _ = v3 - _ = v2 - if !(ns.CurrentHealth(obj23) > 0 && ns.CurrentHealth(obj39) <= 0) { - goto LABEL1 - } - v0 = ns.GetObjectX(obj23) - v1 = ns.GetObjectY(obj23) - ns.MoveWaypoint(wp26, v0, v1) - ns.AudioEvent(ns.SummonCast, wp26) - v2 = ns.RandomFloat(fvar41, fvar42) - v3 = ns.RandomFloat(fvar41, fvar42) - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - ivar43 = ns.Random(0, 2) - v4 = ivar43 - if v4 == 0 { - goto LABEL2 - } - if v4 == 1 { - goto LABEL3 - } - if v4 == 2 { - goto LABEL4 - } - goto LABEL5 -LABEL2: - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj39 = ns.CreateObject("BomberBlue", wp25) - ns.TrapSpells(obj39, str44[ivar43], "", "") - goto LABEL5 -LABEL3: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj39 = ns.CreateObject("BomberGreen", wp25) - ns.TrapSpells(obj39, str44[ivar43], "", "") - goto LABEL5 -LABEL4: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj39 = ns.CreateObject("BomberYellow", wp25) - ns.TrapSpells(obj39, str44[ivar43], "", "") - goto LABEL5 -LABEL5: - ns.SetOwner(obj23, obj39) - ns.CreatureFollow(obj39, obj23) -LABEL1: - return -} -func Beholder13Recognize() { - ns.FrameTimer(90, Beholder13Bombers) -} -func Beholder13Die() { - ns.Damage(obj39, 0, 500, 0) -} -func Beholder14Bombers() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 int - ) - _ = v3 - _ = v2 - if !(ns.CurrentHealth(obj24) > 0 && ns.CurrentHealth(obj40) <= 0) { - goto LABEL1 - } - v0 = ns.GetObjectX(obj24) - v1 = ns.GetObjectY(obj24) - ns.MoveWaypoint(wp26, v0, v1) - ns.AudioEvent(ns.SummonCast, wp26) - v2 = ns.RandomFloat(fvar41, fvar42) - v3 = ns.RandomFloat(fvar41, fvar42) - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - ivar43 = ns.Random(0, 2) - v4 = ivar43 - if v4 == 0 { - goto LABEL2 - } - if v4 == 1 { - goto LABEL3 - } - if v4 == 2 { - goto LABEL4 - } - goto LABEL5 -LABEL2: - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj40 = ns.CreateObject("BomberBlue", wp25) - ns.TrapSpells(obj40, str44[ivar43], "", "") - goto LABEL5 -LABEL3: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj40 = ns.CreateObject("BomberGreen", wp25) - ns.TrapSpells(obj40, str44[ivar43], "", "") - goto LABEL5 -LABEL4: - ns.MoveWaypoint(wp25, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) - obj40 = ns.CreateObject("BomberYellow", wp25) - ns.TrapSpells(obj40, str44[ivar43], "", "") - goto LABEL5 -LABEL5: - ns.SetOwner(obj24, obj40) - ns.CreatureFollow(obj40, obj24) -LABEL1: - return -} -func Beholder14Recognize() { - ns.FrameTimer(90, Beholder14Bombers) -} -func Beholder14Die() { - ns.Damage(obj40, 0, 500, 0) -} -func OpenBlockPassage() { - ns.ObjectOff(ns.GetTrigger()) - ns.AudioEvent(ns.SpikeBlockMove, wp52) - ns.Move(obj45, wp48) - ns.Move(obj46, wp49) - ns.Move(obj47, wp51) -} -func SealBlockRoom() { - ns.ObjectOff(ns.GetTrigger()) - ns.AudioEvent(ns.SpikeBlockMove, wp50) - ns.Move(obj46, wp50) -} -func CagedAnimalDie() { - if flag53 { - goto LABEL1 - } - flag53 = true - ns.WallGroupBreak(gvar56) -LABEL1: - return -} -func UnlockBearCage() { - ns.ObjectOff(ns.GetTrigger()) - ns.UnlockDoor(obj54) - ns.UnlockDoor(obj55) -} -func PlayerDeath() { - ns.DeathScreen(8) -} -func FireFONTrap01() { - ns.CastSpellObjectLocation(ns.SPELL_FORCE_OF_NATURE, obj57, ns.GetWaypointX(wp69), ns.GetWaypointY(wp69)) - ns.CastSpellObjectLocation(ns.SPELL_FORCE_OF_NATURE, obj58, ns.GetWaypointX(wp70), ns.GetWaypointY(wp70)) - ns.SecondTimer(5, FireFONTrap01) -} -func EndFONSetpiece() { - ns.Frozen(ns.GetHost(), false) - ns.WideScreen(false) -} -func BearAttack() { - ns.EnchantOff(obj62, ns.ENCHANT_INVULNERABLE) - ns.AggressionLevel(obj62, 0.83) - ns.Attack(obj62, ns.GetHost()) - ns.FrameTimer(45, FireFONTrap01) -} -func InitializeFONtraps() { - obj57 = ns.Object("FON_Origin01") - obj58 = ns.Object("FON_Origin02") - obj59 = ns.Object("FON_Origin03") - obj60 = ns.Object("FON_Origin04") - obj61 = ns.Object("FON_Origin05") - obj62 = ns.Object("Bear01") - obj63 = ns.Object("SpikeTrapDoor01") - obj64 = ns.Object("SpikeTrapDoor02") - obj65 = ns.Object("SpikeTrapDoor03") - obj66 = ns.Object("SpikeTrapDoor04") - gvar68 = ns.ObjectGroup("SpikeGroup01") - wp69 = ns.Waypoint("FON_Target01") - wp70 = ns.Waypoint("FON_Target02") - wp71 = ns.Waypoint("FON_Target03") - wp72 = ns.Waypoint("FON_Target04") - wp73 = ns.Waypoint("FON_Target05") - wp74 = ns.Waypoint("SpikeTrapAudioOrigin") - ns.Enchant(obj62, ns.ENCHANT_INVULNERABLE, 0) -} -func StartFONSetpiece() { - ns.ObjectOff(ns.GetTrigger()) - ns.Frozen(ns.GetHost(), true) - ns.WideScreen(true) - ns.CreatureIdle(ns.GetHost()) - BearAttack() -} -func BearInjured() { - ns.Damage(ns.GetTrigger(), 0, 300, 0) -} -func BearDie() { - ns.FrameTimer(60, EndFONSetpiece) -} -func FireFONTrap02() { - ns.CastSpellObjectLocation(ns.SPELL_FORCE_OF_NATURE, obj59, ns.GetWaypointX(wp71), ns.GetWaypointY(wp71)) - ns.CastSpellObjectLocation(ns.SPELL_FORCE_OF_NATURE, obj60, ns.GetWaypointX(wp72), ns.GetWaypointY(wp72)) -} -func EnableSpikeTrap() { - ns.ObjectGroupOn(gvar68) - ns.ObjectOn(obj67) - ns.AudioEvent(ns.FloorSpikesUp, wp74) - ns.LockDoor(obj63) - ns.LockDoor(obj64) - ns.LockDoor(obj65) - ns.LockDoor(obj66) -} -func DisableSpikeTrap() { - ns.ObjectGroupOff(gvar68) - ns.ObjectOff(obj67) - ns.AudioEvent(ns.FloorSpikesDown, wp74) - ns.UnlockDoor(obj63) - ns.UnlockDoor(obj64) - ns.UnlockDoor(obj65) - ns.UnlockDoor(obj66) -} -func InitializeSummoningCircles() { - var v0 int - v0 = 0 - for { - if !(v0 < 21) { - goto LABEL1 - } - flag86[v0] = true - ivar85[v0] = 0 - v0 += 1 - } -LABEL1: - str88[0] = "UrchinShaman" - str88[1] = "Mimic" - str88[2] = "Bear" - str88[3] = "Urchin" - str88[4] = "Imp" - str88[5] = "WhiteWolf" - obj76 = ns.Object("SummoningCircleTreasureLight") - obj77[0] = ns.Object("SummoningCircleTreasure01") - obj77[1] = ns.Object("SummoningCircleTreasure02") - obj77[2] = ns.Object("SummoningCircleTreasure03") - obj77[3] = ns.Object("SummoningCircleTreasure04") - obj77[4] = ns.Object("SummoningCircleTreasure05") - obj77[5] = ns.Object("SummoningCircleTreasure06") - obj77[6] = ns.Object("SummoningCircleTreasure07") - obj77[7] = ns.Object("SummoningCircleTreasure08") - obj77[8] = ns.Object("SummoningCircleTreasure09") - obj77[9] = ns.Object("SummoningCircleTreasure10") - obj77[10] = ns.Object("SummoningCircleTreasure11") - obj77[11] = ns.Object("SummoningCircleTreasure12") - obj77[12] = ns.Object("SummoningCircleTreasure13") - obj77[13] = ns.Object("SummoningCircleTreasure14") - obj77[14] = ns.Object("SummoningCircleTreasure15") - wp87[0] = ns.Waypoint("SummoningCircle01WP") - wp87[1] = ns.Waypoint("SummoningCircle02WP") - wp87[2] = ns.Waypoint("SummoningCircle03WP") - wp87[3] = ns.Waypoint("SummoningCircle04WP") - wp87[4] = ns.Waypoint("SummoningCircle05WP") - wp87[5] = ns.Waypoint("SummoningCircle06WP") - wp87[6] = ns.Waypoint("SummoningCircle07WP") - wp87[7] = ns.Waypoint("SummoningCircle08WP") - wp87[8] = ns.Waypoint("SummoningCircle09WP") - wp87[9] = ns.Waypoint("SummoningCircle10WP") - wp87[10] = ns.Waypoint("SummoningCircle11WP") - wp87[11] = ns.Waypoint("SummoningCircle12WP") - wp87[12] = ns.Waypoint("SummoningCircle13WP") - wp87[13] = ns.Waypoint("SummoningCircle14WP") - wp87[14] = ns.Waypoint("SummoningCircle15WP") - wp87[15] = ns.Waypoint("SummoningCircle16WP") - wp87[16] = ns.Waypoint("SummoningCircle17WP") - wp87[17] = ns.Waypoint("SummoningCircle18WP") - wp87[18] = ns.Waypoint("SummoningCircle19WP") - wp87[19] = ns.Waypoint("SummoningCircle20WP") - wp87[20] = ns.Waypoint("SummoningCircle21WP") - gvar78[0] = ns.ObjectGroup("SummonCircle01Lights") - gvar78[1] = ns.ObjectGroup("SummonCircle02Lights") - gvar78[2] = ns.ObjectGroup("SummonCircle03Lights") - gvar78[3] = ns.ObjectGroup("SummonCircle04Lights") - gvar78[4] = ns.ObjectGroup("SummonCircle05Lights") - gvar78[5] = ns.ObjectGroup("SummonCircle06Lights") - gvar78[6] = ns.ObjectGroup("SummonCircle07Lights") - gvar78[7] = ns.ObjectGroup("SummonCircle08Lights") - gvar78[8] = ns.ObjectGroup("SummonCircle09Lights") - gvar78[9] = ns.ObjectGroup("SummonCircle10Lights") - gvar78[10] = ns.ObjectGroup("SummonCircle11Lights") - gvar78[11] = ns.ObjectGroup("SummonCircle12Lights") - gvar78[12] = ns.ObjectGroup("SummonCircle13Lights") - gvar78[13] = ns.ObjectGroup("SummonCircle14Lights") - gvar78[14] = ns.ObjectGroup("SummonCircle15Lights") - gvar78[15] = ns.ObjectGroup("SummonCircle16Lights") - gvar78[16] = ns.ObjectGroup("SummonCircle17Lights") - gvar78[17] = ns.ObjectGroup("SummonCircle18Lights") - gvar78[18] = ns.ObjectGroup("SummonCircle19Lights") - gvar78[19] = ns.ObjectGroup("SummonCircle20Lights") - gvar78[20] = ns.ObjectGroup("SummonCircle21Lights") -} -func MapInitialize() { - obj45 = ns.Object("StoneBlock01") - obj46 = ns.Object("StoneBlock02") - obj47 = ns.Object("StoneBlock03") - obj11 = ns.Object("Beholder01") - obj12 = ns.Object("Beholder02") - obj13 = ns.Object("Beholder03") - obj14 = ns.Object("Beholder04") - obj15 = ns.Object("Beholder05") - obj16 = ns.Object("Beholder06") - obj17 = ns.Object("Beholder07") - obj18 = ns.Object("Beholder08") - obj19 = ns.Object("Beholder09") - obj20 = ns.Object("Beholder10") - obj21 = ns.Object("Beholder11") - obj22 = ns.Object("Beholder12") - obj23 = ns.Object("Beholder13") - obj24 = ns.Object("Beholder14") - obj54 = ns.Object("CageGateL") - obj55 = ns.Object("CageGateR") - obj4 = ns.Object("UltimateArrowTrapSwitch") - obj67 = ns.Object("SpikeSFX") - wp9 = ns.Waypoint("ArrowTrapAudioOrigin") - wp48 = ns.Waypoint("StoneBlock01WP") - wp49 = ns.Waypoint("StoneBlock02WP") - wp50 = ns.Waypoint("StoneBlock02WP2") - wp51 = ns.Waypoint("StoneBlock03WP") - wp52 = ns.Waypoint("StoneBlockAudioOrigin") - wp25 = ns.Waypoint("BomberCreationWP") - wp26 = ns.Waypoint("BomberAudioOrigin") - wp75 = ns.Waypoint("SecretAudioOrigin") - gvar5 = ns.ObjectGroup("ArrowTrapGroup01") - gvar6 = ns.ObjectGroup("ArrowTrapGroup02") - gvar7 = ns.ObjectGroup("ArrowTrapGroup03") - gvar8 = ns.ObjectGroup("ArrowTrapGroup04") - gvar56 = ns.WallGroup("CageWalls") - ns.Wander(obj11) - ns.Wander(obj12) - ns.Wander(obj13) - ns.AggressionLevel(obj13, 0.83) - ns.Wander(obj14) - ns.AggressionLevel(obj14, 0.83) - ns.Wander(obj15) - ns.AggressionLevel(obj15, 0.83) - ns.Wander(obj16) - ns.AggressionLevel(obj16, 0.83) - ns.Wander(obj17) - ns.AggressionLevel(obj17, 0.83) - ns.Wander(obj18) - ns.AggressionLevel(obj18, 0.83) - ns.Wander(obj19) - ns.AggressionLevel(obj19, 0.83) - ns.Wander(obj20) - ns.AggressionLevel(obj20, 0.83) - ns.Wander(obj21) - ns.AggressionLevel(obj21, 0.83) - ns.Wander(obj22) - ns.AggressionLevel(obj22, 0.83) - ns.LockDoor(obj54) - ns.LockDoor(obj55) - InitializeBeholders() - InitializeSummoningCircles() - InitializeFONtraps() -} -func OpenPitElevatorWall() { - ns.ObjectOff(ns.GetTrigger()) - ns.WallOpen(ns.Wall(56, 134)) -} -func MonstersGoHome() { - r1 := ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) - if !r1 { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func SecretSFX() { - ns.MoveWaypoint(wp75, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretFound, wp75) -} -func BoulderSecretFound() { - ns.ObjectOff(ns.GetTrigger()) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 200) - SecretSFX() -} -func OpenBoulderSecret() { - ns.ObjectOff(ns.GetTrigger()) - ns.WallOpen(ns.Wall(104, 40)) - ns.AudioEvent(ns.SecretWallOpen, ns.Waypoint("BoulderSecretAudioOrigin")) - SecretSFX() -} -func SecretFound() { - ns.ObjectOff(ns.GetTrigger()) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 100) - SecretSFX() -} -func ResetSummonCircle(a1 int) { - flag86[a1] = true - ns.ObjectGroupOn(gvar78[a1]) -} -func SummoningCircleCleared(a1 int) { - ivar84 += 1 - if ivar84 != 15 { - goto LABEL1 - } - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 500) - ns.Effect(ns.BLUE_SPARKS, ns.GetWaypointX(wp87[a1]), ns.GetWaypointY(wp87[a1]), 0, 0) - ns.MoveObject(obj76, ns.GetWaypointX(wp87[a1]), ns.GetWaypointY(wp87[a1])) - ns.MoveObject(obj77[ivar84-1], ns.GetWaypointX(wp87[a1]), ns.GetWaypointY(wp87[a1])) - ns.AudioEvent(ns.SmallGong, wp87[a1]) - goto LABEL2 -LABEL1: - ns.Effect(ns.BLUE_SPARKS, ns.GetWaypointX(wp87[a1]), ns.GetWaypointY(wp87[a1]), 0, 0) - ns.MoveObject(obj76, ns.GetWaypointX(wp87[a1]), ns.GetWaypointY(wp87[a1])) - ns.MoveObject(obj77[ivar84-1], ns.GetWaypointX(wp87[a1]), ns.GetWaypointY(wp87[a1])) - ns.AudioEvent(ns.BigGong, wp87[a1]) -LABEL2: - return -} -func SummonCircle01Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 0 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle02Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 1 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle03Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 2 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle04Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 3 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle05Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 4 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle06Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 5 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle07Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 6 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle08Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 7 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle09Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 8 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle10Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 9 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle11Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 10 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle12Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 11 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle13Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 12 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle14Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 13 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle15Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 14 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle16Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 15 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle17Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 16 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle18Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 17 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle19Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 18 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle20Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 19 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func SummonCircle21Activate() { - var ( - v0 ns.ObjectID - v1 int - ) - gvar79 = 20 - if !(ns.IsCaller(ns.GetHost()) && flag86[gvar79] == true) { - goto LABEL1 - } - flag86[gvar79] = false - ns.ObjectGroupOff(gvar78[gvar79]) - ns.AudioEvent(ns.SummonCast, wp87[gvar79]) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp87[gvar79]), ns.GetWaypointY(wp87[gvar79]), 0, 0) - if r4 := ns.Random(0, 100); !(r4 <= ivar82) { - goto LABEL2 - } - v1 = ns.Random(0, 1) - if v1 == 0 { - goto LABEL3 - } - if v1 == 1 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - v0 = ns.CreateObject("BomberYellow", wp87[gvar79]) - ns.TrapSpells(v0, ns.SPELL_METEOR, "", "") - goto LABEL5 -LABEL4: - v0 = ns.CreateObject("Bomber", wp87[gvar79]) - goto LABEL5 -LABEL5: - goto LABEL6 -LABEL2: - ivar81 = ns.Random(0, 5) - ns.CreateObject(str88[ivar81], wp87[gvar79]) -LABEL6: - ivar85[gvar79] += 1 - if !(ivar85[gvar79] > ivar80) { - goto LABEL7 - } - ns.FrameTimerWithArg(30, gvar79, SummoningCircleCleared) - goto LABEL1 -LABEL7: - ns.FrameTimerWithArg(ivar83, gvar79, ResetSummonCircle) -LABEL1: - return -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapInitialize": - MapInitialize() - } -} diff --git a/examples/wiz08e/dummy_test.go b/examples/wiz08e/dummy_test.go deleted file mode 100644 index e5471d2..0000000 --- a/examples/wiz08e/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package wiz08e - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/wiz08e/wiz08e.go b/examples/wiz08e/wiz08e.go deleted file mode 100644 index 7fd637c..0000000 --- a/examples/wiz08e/wiz08e.go +++ /dev/null @@ -1,388 +0,0 @@ -package wiz08e - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 ns.ObjectID - obj5 ns.ObjectID - obj6 ns.ObjectID - obj7 ns.ObjectID - obj8 ns.ObjectID - wp9 ns.WaypointID - wp10 ns.WaypointID - wp11 ns.WaypointID - wp12 ns.WaypointID - wp13 ns.WaypointID - obj14 ns.ObjectID - obj15 ns.ObjectID - obj16 ns.ObjectID - obj17 ns.ObjectID - obj18 ns.ObjectID - obj19 ns.ObjectID - obj20 ns.ObjectID - obj21 ns.ObjectID - obj22 ns.ObjectID - obj23 ns.ObjectID - obj24 ns.ObjectID - gvar25 ns.ObjectGroupID - gvar26 ns.ObjectGroupID - gvar27 ns.WallGroupID - gvar28 ns.WallGroupID - gvar29 ns.WallGroupID - gvar30 ns.WallGroupID - wp31 ns.WaypointID - wp32 ns.WaypointID - wp33 ns.WaypointID - wp34 ns.WaypointID - wp35 ns.WaypointID - wp36 ns.WaypointID - wp37 ns.WaypointID - wp38 ns.WaypointID - wp39 ns.WaypointID - wp40 ns.WaypointID - gvar41 int - gvar42 int - gvar43 int - gvar44 int - gvar45 int - gvar46 int - gvar47 int - gvar48 int - gvar49 int - obj50 ns.ObjectID - obj51 ns.ObjectID - flag52 bool - flag53 bool - flag54 bool - flag55 bool - flag56 bool - wp57 ns.WaypointID - flag58 bool -) - -func init() { - gvar41 = 0 - gvar42 = 1 - gvar43 = 2 - gvar44 = 3 - gvar45 = 4 - gvar46 = 5 - gvar47 = 6 - gvar48 = gvar41 - gvar49 = gvar46 - flag52 = false - flag53 = false - flag54 = false - flag55 = false - flag56 = false - flag58 = false -} -func PlayerDeath() { - ns.DeathScreen(8) -} -func FireFONTrap01() { - ns.CastSpellObjectLocation(ns.SPELL_FORCE_OF_NATURE, obj4, ns.GetWaypointX(wp9), ns.GetWaypointY(wp9)) - ns.CastSpellObjectLocation(ns.SPELL_FORCE_OF_NATURE, obj5, ns.GetWaypointX(wp10), ns.GetWaypointY(wp10)) - ns.CastSpellObjectLocation(ns.SPELL_FORCE_OF_NATURE, obj6, ns.GetWaypointX(wp11), ns.GetWaypointY(wp11)) - ns.CastSpellObjectLocation(ns.SPELL_FORCE_OF_NATURE, obj7, ns.GetWaypointX(wp12), ns.GetWaypointY(wp12)) - ns.SecondTimer(5, FireFONTrap01) -} -func InitializeFONtraps() { - obj4 = ns.Object("FON_Origin01") - obj5 = ns.Object("FON_Origin02") - obj6 = ns.Object("FON_Origin03") - obj7 = ns.Object("FON_Origin04") - obj8 = ns.Object("FON_Origin05") - wp9 = ns.Waypoint("FON_Target01") - wp10 = ns.Waypoint("FON_Target02") - wp11 = ns.Waypoint("FON_Target03") - wp12 = ns.Waypoint("FON_Target04") - wp13 = ns.Waypoint("FON_Target05") - FireFONTrap01() -} -func OpenFONSecret() { - ns.ObjectOff(ns.GetTrigger()) - ns.AudioEvent(ns.SecretWallOpen, ns.Waypoint("FonSecretWP")) - ns.WallOpen(ns.Wall(44, 122)) -} -func MapInitialize() { - obj14 = ns.Object("MoverA1") - obj15 = ns.Object("MoverA2") - obj16 = ns.Object("MoverA3") - obj17 = ns.Object("MoverB1") - obj18 = ns.Object("MoverB2") - obj19 = ns.Object("MoverB3") - obj20 = ns.Object("Priest01") - obj21 = ns.Object("Priest02") - obj22 = ns.Object("Imp01") - obj23 = ns.Object("Imp02") - obj24 = ns.Object("WierdlingPool") - wp31 = ns.Waypoint("GolemWP_A") - wp32 = ns.Waypoint("GolemWP_B") - wp33 = ns.Waypoint("Priest01WP") - wp34 = ns.Waypoint("Priest02WP") - wp35 = ns.Waypoint("Priest1Home") - wp36 = ns.Waypoint("Priest2Home") - wp37 = ns.Waypoint("Priest1ExitWP") - wp38 = ns.Waypoint("Priest2ExitWP") - wp39 = ns.Waypoint("ImpCreationWP") - wp40 = ns.Waypoint("WierdlingPoolWP") - gvar25 = ns.ObjectGroup("GolemLights") - gvar26 = ns.ObjectGroup("GolemHandleTriggers") - gvar27 = ns.WallGroup("GolemArenaEntranceWalls") - gvar28 = ns.WallGroup("GolemArenaExitWalls") - gvar29 = ns.WallGroup("WierdlingExitWalls") - gvar30 = ns.WallGroup("AldwynElevatorWalls") - ns.SetOwner(ns.GetHost(), obj20) - ns.SetOwner(ns.GetHost(), obj21) - InitializeFONtraps() -} -func OpenElevatorWalls() { - ns.ObjectOff(ns.GetTrigger()) - ns.WallGroupOpen(gvar30) -} -func NoMonsters() { - r1 := ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) - if !r1 { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func PlaySub1Music() { - ns.Music(18, 100) -} -func PlaySub2Music() { - ns.Music(19, 100) -} -func SecretFound() { - ns.ObjectOff(ns.GetTrigger()) - ns.MoveWaypoint(ns.Waypoint("FonSecretWP"), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.SecretFound, ns.Waypoint("FonSecretWP")) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 200) -} -func PriestReport() { - var v0 int - v0 = gvar48 - if v0 == gvar42 { - goto LABEL1 - } - if v0 == gvar43 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - if !ns.IsTrigger(obj22) { - goto LABEL4 - } - flag53 = true - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(obj22), ns.GetObjectY(obj22), 0, 0) - ns.AudioEvent(ns.ImpRecognize, wp57) - ns.MoveObject(obj20, ns.GetObjectX(obj22), ns.GetObjectY(obj22)) - ns.Delete(obj22) -LABEL4: - if !ns.IsTrigger(obj23) { - goto LABEL5 - } - flag54 = true - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(obj23), ns.GetObjectY(obj23), 0, 0) - ns.AudioEvent(ns.ImpRecognize, wp57) - ns.MoveObject(obj21, ns.GetObjectX(obj23), ns.GetObjectY(obj23)) - ns.Delete(obj23) -LABEL5: - if !flag53 { - goto LABEL6 - } - if !flag54 { - goto LABEL6 - } - gvar48 = gvar44 - ns.FrameTimer(30, SummonGolems) -LABEL6: - goto LABEL3 -LABEL2: - if !ns.IsTrigger(obj22) { - goto LABEL7 - } - flag55 = true -LABEL7: - if !ns.IsTrigger(obj23) { - goto LABEL8 - } - flag56 = true -LABEL8: - if !(flag55 && flag56) { - goto LABEL9 - } - ns.WallGroupClose(gvar28) - gvar48 = gvar45 - ns.Delete(obj22) - ns.Delete(obj23) -LABEL9: - goto LABEL3 -LABEL3: - return -} -func GolemDie() { - if !(ns.CurrentHealth(obj50) <= 0 && ns.CurrentHealth(obj51) <= 0) { - goto LABEL1 - } - ns.GiveXp(ns.GetHost(), 1000) - ns.WallGroupOpen(gvar28) - ns.AudioEvent(ns.BigGong, wp33) - ns.AudioEvent(ns.BigGong, wp34) -LABEL1: - return -} -func GolemsAttack() { - ns.Attack(obj50, ns.GetHost()) - ns.Attack(obj51, ns.GetHost()) -} -func RemoveLetterbox() { - ns.WideScreen(false) - ns.Delete(obj22) - ns.Delete(obj23) - ns.Frozen(ns.GetHost(), false) - ns.Music(27, 100) - ns.FrameTimer(45, GolemsAttack) -} -func ImpsExit() { - ns.Move(obj22, wp37) - ns.Move(obj23, wp38) -} -func PriestsExit() { - gvar48 = gvar43 - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(obj20), ns.GetObjectY(obj20), 0, 0) - ns.MoveWaypoint(wp39, ns.GetObjectX(obj20), ns.GetObjectY(obj20)) - obj22 = ns.CreateObject("Imp", wp39) - ns.MoveObject(obj20, ns.GetWaypointX(wp35), ns.GetWaypointY(wp35)) - ns.AudioEvent(ns.ImpRecognize, wp39) - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(obj21), ns.GetObjectY(obj21), 0, 0) - ns.MoveWaypoint(wp39, ns.GetObjectX(obj21), ns.GetObjectY(obj21)) - obj23 = ns.CreateObject("Imp", wp39) - ns.MoveObject(obj21, ns.GetWaypointX(wp36), ns.GetWaypointY(wp36)) - ns.SetOwner(ns.GetHost(), obj22) - ns.SetOwner(ns.GetHost(), obj23) - ns.AggressionLevel(obj22, 0) - ns.AggressionLevel(obj23, 0) - ns.SetCallback(obj22, 11, PriestReport) - ns.SetCallback(obj23, 11, PriestReport) - ns.FrameTimer(1, ImpsExit) -} -func GetGolemHandles() { - var v0 int - if !(flag52 || ns.IsCaller(obj22) || ns.IsCaller(obj23)) { - goto LABEL1 - } - return -LABEL1: - v0 = gvar49 - if v0 == gvar46 { - goto LABEL2 - } - if v0 == gvar47 { - goto LABEL3 - } - goto LABEL4 -LABEL2: - ns.ObjectOff(ns.GetTrigger()) - ns.DestroyEveryChat() - obj50 = ns.GetCaller() - ns.SetCallback(obj50, 5, GolemDie) - ns.ClearOwner(obj20) - ns.CreatureIdle(obj50) - ns.ClearOwner(obj50) - ns.AggressionLevel(obj50, 0) - gvar49 = gvar47 - goto LABEL5 -LABEL3: - ns.ObjectOff(ns.GetTrigger()) - ns.DestroyEveryChat() - obj51 = ns.GetCaller() - ns.SetCallback(obj51, 5, GolemDie) - ns.ClearOwner(obj21) - ns.ClearOwner(obj51) - ns.CreatureIdle(obj51) - ns.AggressionLevel(obj51, 0) - ns.LookAtObject(obj50, ns.GetHost()) - ns.LookAtObject(obj51, ns.GetHost()) - flag52 = true - ns.AggressionLevel(obj50, 0.83) - ns.AggressionLevel(obj51, 0.83) - RemoveLetterbox() - goto LABEL5 -LABEL4: - goto LABEL5 -LABEL5: - return -} -func SummonGolems() { - ns.CastSpellObjectLocation(ns.SPELL_SUMMON_STONE_GOLEM, obj20, ns.GetWaypointX(wp31), ns.GetWaypointY(wp31)) - ns.CastSpellObjectLocation(ns.SPELL_SUMMON_STONE_GOLEM, obj21, ns.GetWaypointX(wp32), ns.GetWaypointY(wp32)) - ns.AudioEvent(ns.SummonCast, wp33) - ns.AudioEvent(ns.SummonCast, wp34) - ns.ObjectGroupOn(gvar26) - ns.ObjectGroupOff(gvar25) - ns.FrameTimer(60, PriestsExit) -} -func ImpsEnter() { - ns.WallGroupOpen(gvar28) - ns.Move(obj22, wp33) - ns.Move(obj23, wp34) -} -func GolemSetPiece() { - if gvar48 == gvar41 { - goto LABEL1 - } - return -LABEL1: - if !ns.IsCaller(ns.GetHost()) { - goto LABEL2 - } - ns.MusicPushEvent() - ns.Music(10, 100) - wp57 = ns.Waypoint("GolemSP_AudioOrigin") - ns.MoveWaypoint(wp57, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - gvar48 = gvar42 - ns.WallGroupClose(gvar27) - ns.Frozen(ns.GetHost(), true) - ns.CreatureIdle(ns.GetHost()) - ns.WideScreen(true) - ns.SetOwner(ns.GetHost(), obj22) - ns.SetOwner(ns.GetHost(), obj23) - ns.FrameTimer(15, ImpsEnter) -LABEL2: - return -} -func RetrieveWierdling() { - if !flag58 { - goto LABEL1 - } - return -LABEL1: - if !ns.IsCaller(ns.GetHost()) { - goto LABEL2 - } - ns.MusicPopEvent() - ns.SetQuestStatus(1, "Chapter8:HasWeirdling") - flag58 = true - ns.SetHalberd(2) - ns.ObjectOff(obj24) - ns.WallGroupOpen(gvar29) - ns.JournalEdit(ns.GetHost(), "Chapter8Wierdling", 4) - ns.PrintToAll("Con02a:ObjectiveComplete") - ns.JournalEntry(ns.GetHost(), "Chapter8MeetCaptain", 2) - ns.PrintToAll("Con01a:NewJournalEntry") -LABEL2: - return -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapInitialize": - MapInitialize() - } -} diff --git a/examples/wiz09a/dummy_test.go b/examples/wiz09a/dummy_test.go deleted file mode 100644 index e93a599..0000000 --- a/examples/wiz09a/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package wiz09a - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/wiz09a/wiz09a.go b/examples/wiz09a/wiz09a.go deleted file mode 100644 index 7d6fbd7..0000000 --- a/examples/wiz09a/wiz09a.go +++ /dev/null @@ -1,745 +0,0 @@ -package wiz09a - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 [2]ns.ObjectID - wp5 [2]ns.WaypointID - gvar6 ns.WallGroupID - wp7 [5]ns.WaypointID - wp8 [6]ns.WaypointID - obj9 [6]ns.ObjectID - gvar10 int - ivar11 int - ivar12 int - gvar13 int - flag14 bool - flag15 bool - flag16 bool - fvar17 float32 - fvar18 float32 - obj19 ns.ObjectID - obj20 ns.ObjectID - obj21 ns.ObjectID - obj22 ns.ObjectID - obj23 ns.ObjectID - obj24 ns.ObjectID - obj25 ns.ObjectID - obj26 ns.ObjectID - obj27 ns.ObjectID - obj28 ns.ObjectID - obj29 ns.ObjectID - obj30 ns.ObjectID - gvar31 ns.ObjectGroupID - gvar32 ns.ObjectGroupID - gvar33 ns.ObjectGroupID - gvar34 ns.ObjectGroupID - gvar35 ns.ObjectGroupID - gvar36 ns.ObjectGroupID - gvar37 ns.ObjectGroupID - gvar38 ns.WallGroupID - gvar39 ns.WallGroupID - gvar40 ns.WallGroupID - gvar41 ns.WallGroupID - gvar42 ns.WallGroupID - gvar43 ns.WallGroupID - gvar44 ns.WallGroupID - wp45 ns.WaypointID - wp46 ns.WaypointID - wp47 ns.WaypointID - gvar48 [9]int - wp49 ns.WaypointID - wp50 ns.WaypointID - flag51 bool - flag52 bool - gvar53 int - gvar54 int - gvar55 int - gvar56 int - gvar57 int - gvar58 int - gvar59 int - gvar60 int - gvar61 int - gvar62 int - gvar63 int - flag64 bool - gvar65 int - gvar66 int - gvar67 int - gvar68 int - gvar69 int - gvar70 int - ivar71 int - ivar72 int - obj73 [8]ns.ObjectID - wp74 [8]ns.WaypointID - gvar75 [8]int - ivar76 [8]int - gvar77 [8]ns.TimerID -) - -func init() { - gvar10 = 0 - gvar13 = 0 - flag14 = false - flag15 = false - flag16 = false - flag51 = false - flag52 = false - gvar53 = 0 - gvar54 = 1 - gvar55 = 2 - gvar56 = 3 - gvar57 = 4 - gvar58 = 5 - gvar59 = 6 - gvar62 = gvar53 - gvar63 = gvar56 - flag64 = false - gvar65 = 0 - gvar66 = 1 - gvar67 = 2 - gvar68 = 3 - gvar69 = 4 - gvar70 = 5 - ivar71 = 15 - ivar72 = 2 -} -func PlantBarrier() { - ivar11 = 0 - for { - if !(ivar11 < 6) { - goto LABEL1 - } - CreatePlant(ivar11) - ivar11 += 1 - } -LABEL1: - return -} -func CreatePlant(a1 int) { - obj9[a1] = ns.CreateObject("CarnivorousPlant", wp8[a1]) - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(obj9[a1]), ns.GetObjectY(obj9[a1]), 0, 0) - ns.LookAtObject(obj9[a1], ns.GetHost()) - ns.SetOwner(obj4[0], obj9[a1]) - ns.SetCallback(obj9[a1], 7, AttackBack) -} -func CheckPlants() { - if !(flag15 == false || flag16 == false) { - goto LABEL1 - } - ivar11 = 0 - for { - if !(ivar11 < 6) { - goto LABEL2 - } - if !(ns.CurrentHealth(obj9[ivar11]) <= 0) { - goto LABEL3 - } - ns.FrameTimerWithArg(14, ivar11, PlantDie) - LABEL3: - ivar11 += 1 - } -LABEL2: - ns.FrameTimer(15, CheckPlants) -LABEL1: - return -} -func PlantDie(a1 int) { - if !(flag15 == false || flag16 == false) { - goto LABEL1 - } - ns.Delete(obj9[a1]) - CreatePlant(a1) -LABEL1: - return -} -func AttackBack() { - if ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Attack(ns.GetTrigger(), ns.GetCaller()) -LABEL1: - return -} -func PlayAction() { - ns.Music(26, 100) -} -func PlaySwamp() { - ns.Music(29, 100) -} -func DryadHuntPlayer() { - ns.CreatureHunt(ns.GetTrigger()) -} -func StartDryadSequence() { - var v0 int - if !(ns.IsCaller(ns.GetHost()) && flag14 == false) { - goto LABEL1 - } - flag14 = true - ns.SetOwner(obj4[0], obj4[1]) - ns.MusicPushEvent() - PlayAction() - ns.NoWallSound(true) - ns.WallGroupClose(gvar6) - ns.NoWallSound(false) - v0 = 0 - for { - if !(v0 < 2) { - goto LABEL2 - } - ns.ObjectOn(obj4[v0]) - ns.Enchant(obj4[v0], ns.ENCHANT_INVISIBLE, 1) - ns.MoveObject(obj4[v0], ns.GetWaypointX(wp5[v0]), ns.GetWaypointY(wp5[v0])) - ns.Effect(ns.BLUE_SPARKS, ns.GetWaypointX(wp5[v0]), ns.GetWaypointY(wp5[v0]), 0, 0) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp5[v0]), ns.GetWaypointY(wp5[v0]), 0, 0) - v0 += 1 - } -LABEL2: - PlantBarrier() - ns.FrameTimer(1, CheckPlants) -LABEL1: - return -} -func DryadDie() { - if !ns.IsTrigger(obj4[0]) { - goto LABEL1 - } - flag15 = true -LABEL1: - if !ns.IsTrigger(obj4[1]) { - goto LABEL2 - } - flag16 = true -LABEL2: - if !(flag15 == true && flag16 == true) { - goto LABEL3 - } - ns.NoWallSound(true) - ns.WallGroupOpen(gvar6) - ns.NoWallSound(false) - ns.MusicPopEvent() -LABEL3: - return -} -func DryadStay() { - if !(ns.IsCaller(obj4[0]) || ns.IsCaller(obj4[1])) { - goto LABEL1 - } - ivar12 = ns.Random(0, 4) - fvar17 = ns.GetWaypointX(wp7[ivar12]) - fvar18 = ns.GetWaypointY(wp7[ivar12]) - ns.Enchant(ns.GetCaller(), ns.ENCHANT_INVISIBLE, 1.5) - ns.Effect(ns.BLUE_SPARKS, ns.GetObjectX(ns.GetCaller()), ns.GetObjectY(ns.GetCaller()), 0, 0) - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(ns.GetCaller()), ns.GetObjectY(ns.GetCaller()), 0, 0) - ns.MoveObject(ns.GetCaller(), fvar17, fvar18) - ns.Effect(ns.BLUE_SPARKS, fvar17, fvar18, 0, 0) - ns.Effect(ns.SMOKE_BLAST, fvar17, fvar18, 0, 0) -LABEL1: - return -} -func PlayerDeath() { - ns.DeathScreen(9) -} -func CaptainDialogStart() { - var v0 int - v0 = gvar62 - if v0 == gvar53 { - goto LABEL1 - } - if v0 == gvar54 { - goto LABEL2 - } - if v0 == gvar55 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - ns.TellStory(ns.SwordsmanHurt, "War09a:CaptainGreet") - goto LABEL4 -LABEL2: - ns.TellStory(ns.SwordsmanHurt, "War09a:CaptainLeave") - goto LABEL4 -LABEL3: - ns.TellStory(ns.SwordsmanHurt, "War09a:CaptainImpatient") - goto LABEL4 -LABEL4: - return -} -func CaptainDialogEnd() { - var v0 int - v0 = gvar62 - if v0 == gvar53 { - goto LABEL1 - } - if v0 == gvar54 { - goto LABEL2 - } - if v0 == gvar55 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - ns.JournalEntry(ns.GetHost(), "FindMordwyn", 2) - ns.JournalEntry(ns.GetHost(), "FindOutpost", 2) - ns.PrintToAll("Con01a:NewJournalEntry") - PlaySwamp() - gvar62 = gvar54 - goto LABEL4 -LABEL2: - gvar62 = gvar55 - goto LABEL4 -LABEL3: - goto LABEL4 -LABEL4: - return -} -func MordwynDialogStart() { - var v0 int - v0 = gvar63 - if v0 == gvar56 { - goto LABEL1 - } - if v0 == gvar57 { - goto LABEL2 - } - if v0 == gvar58 { - goto LABEL3 - } - if v0 == gvar59 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - ns.LookAtObject(obj19, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War09a:MordwynGreet") - goto LABEL5 -LABEL2: - ns.LookAtObject(obj19, ns.GetHost()) - ns.WideScreen(true) - ns.Frozen(ns.GetHost(), true) - ns.TellStory(ns.SwordsmanHurt, "Con09a:MordwynHome") - goto LABEL5 -LABEL3: - ns.LookAtObject(obj19, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "Con09a:MordwynHome2") - goto LABEL5 -LABEL4: - ns.LookAtObject(obj19, ns.GetHost()) - ns.TellStory(ns.SwordsmanHurt, "War09a:MordwynDone") - goto LABEL5 -LABEL5: - return -} -func MordwynDialogEnd() { - var v0 int - v0 = gvar63 - if v0 == gvar56 { - goto LABEL1 - } - if v0 == gvar57 { - goto LABEL2 - } - if v0 == gvar58 { - goto LABEL3 - } - if v0 == gvar59 { - goto LABEL4 - } - goto LABEL5 -LABEL1: - gvar63 = gvar57 - ns.WideScreen(false) - ns.Frozen(ns.GetHost(), false) - ns.JournalEdit(ns.GetHost(), "FindMordwyn", 4) - ns.CancelDialog(obj19) - ns.SetCallback(obj19, 11, AllowDialog) - ns.Move(obj19, wp46) - goto LABEL5 -LABEL2: - gvar63 = gvar58 - ns.SetCallback(obj19, 11, GetArmorOfJandor) - ns.Move(obj19, wp47) - goto LABEL5 -LABEL3: - gvar63 = gvar59 - ns.WideScreen(false) - ns.Frozen(ns.GetHost(), false) - ns.CreatureGuard(obj19, ns.GetWaypointX(wp46), ns.GetWaypointY(wp46), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - ns.SetCallback(obj19, 11, NullFunction) - ns.Pickup(ns.GetHost(), obj23) - ns.Pickup(ns.GetHost(), obj24) - ns.PrintToAll("Wiz09a:GainedCloak") - goto LABEL5 -LABEL4: - goto LABEL5 -LABEL5: - return -} -func StartCaptainConversation() { - ns.SetDialog(obj20, ns.NORMAL, CaptainDialogStart, CaptainDialogEnd) - ns.StartDialog(obj20, ns.GetHost()) -} -func WispInitialize() { - obj73[0] = ns.Object("Wisp0") - gvar75[0] = gvar65 - wp74[0] = ns.Waypoint("Wisp0Dest") - obj73[1] = ns.Object("Wisp1") - gvar75[1] = gvar65 - wp74[1] = ns.Waypoint("Wisp1Dest") -} -func MapInitialize() { - obj20 = ns.Object("Jandor") - obj21 = ns.Object("Basket") - obj22 = ns.Object("BasketShadow") - obj19 = ns.Object("Mordwyn") - obj23 = ns.Object("JCloak") - obj24 = ns.Object("JBoots") - obj25 = ns.Object("PitElev01") - obj26 = ns.Object("PitElev02") - obj27 = ns.Object("PitElev03") - obj28 = ns.Object("TreasureTrap01") - obj29 = ns.Object("TreasureTrap01Light") - obj30 = ns.Object("Secret02Trigger") - obj4[0] = ns.Object("Dryad0") - obj4[1] = ns.Object("Dryad1") - gvar38 = ns.WallGroup("Surprise00Walls") - gvar39 = ns.WallGroup("Surprise00DestWalls") - gvar40 = ns.WallGroup("Surprise01Walls") - gvar41 = ns.WallGroup("Surprise01DWalls") - gvar42 = ns.WallGroup("Surprise02Walls") - gvar43 = ns.WallGroup("Surprise02DestWalls") - gvar44 = ns.WallGroup("TreasureTrap01Walls") - gvar6 = ns.WallGroup("DryadWalls") - gvar33 = ns.ObjectGroup("Surprise00Triggers") - gvar32 = ns.ObjectGroup("Surprise00Creatures") - gvar34 = ns.ObjectGroup("Surprise01Creatures") - gvar35 = ns.ObjectGroup("Surprise01Triggers") - gvar31 = ns.ObjectGroup("MordwynTriggers") - gvar36 = ns.ObjectGroup("TreasureTrap01Zombies") - gvar37 = ns.ObjectGroup("Secret01Triggers") - wp45 = ns.Waypoint("TalkToPlayer") - wp46 = ns.Waypoint("MordwynHome") - wp47 = ns.Waypoint("MordwynBedroom") - wp5[0] = ns.Waypoint("DryadHome0") - wp5[1] = ns.Waypoint("DryadHome1") - wp7[0] = ns.Waypoint("DryadWarp0") - wp7[1] = ns.Waypoint("DryadWarp1") - wp7[2] = ns.Waypoint("DryadWarp2") - wp7[3] = ns.Waypoint("DryadWarp3") - wp7[4] = ns.Waypoint("DryadWarp4") - wp8[0] = ns.Waypoint("PlantLoc0") - wp8[1] = ns.Waypoint("PlantLoc1") - wp8[2] = ns.Waypoint("PlantLoc2") - wp8[3] = ns.Waypoint("PlantLoc3") - wp8[4] = ns.Waypoint("PlantLoc4") - wp8[5] = ns.Waypoint("PlantLoc5") - wp49 = ns.Waypoint("WellWP") - wp50 = ns.Waypoint("PlayerSounds") - ns.SetOwner(ns.GetHost(), obj20) - ns.UnBlind() - WispInitialize() - ns.StoryPic(obj20, "AirshipCaptainPic") - ns.StoryPic(obj19, "MordwynPic") - ns.SetDialog(obj19, ns.NORMAL, MordwynDialogStart, MordwynDialogEnd) - ns.StartupScreen(9) - ns.Music(0, 100) - ns.FrameTimer(5, StartCaptainConversation) - ns.ObjectOn(ns.Object("StayHere1")) - ns.Move(ns.Object("StayHere1"), ns.Waypoint("Here1")) - ns.ObjectOn(ns.Object("StayHere2")) - ns.Move(ns.Object("StayHere2"), ns.Waypoint("Here2")) - ns.ObjectOn(ns.Object("StayHere3")) - ns.Move(ns.Object("StayHere3"), ns.Waypoint("Here3")) - ns.ObjectOn(ns.Object("StayHere4")) - ns.Move(ns.Object("StayHere4"), ns.Waypoint("Here4")) - ns.ObjectOn(ns.Object("StayHere5")) - ns.Move(ns.Object("StayHere5"), ns.Waypoint("Here5")) -} -func MordwynGreet() { - ns.LookAtObject(obj19, ns.GetHost()) - ns.StartDialog(obj19, ns.GetHost()) - ns.SetCallback(obj19, 11, NullFunction) -} -func GetArmorOfJandor() { - ns.PauseObject(obj19, 75) - ns.SetCallback(obj19, 11, GiveArmorToPlayer) - ns.Move(obj19, wp46) -} -func GiveArmorToPlayer() { - ns.LookAtObject(obj19, ns.GetHost()) - ns.StartDialog(obj19, ns.GetHost()) -} -func KeepOut() { - r1 := ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) - if !r1 { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func CapTakeoff() { - if !(ns.IsCaller(ns.GetHost()) && flag52 == false) { - goto LABEL1 - } - flag52 = true - ns.Delete(obj21) - ns.Delete(obj22) - ns.Delete(obj20) -LABEL1: - return -} -func NullFunction() { -} -func MordwynMove() { - ns.ObjectGroupOff(gvar31) - ns.ObjectOn(obj19) - ns.SetOwner(ns.GetHost(), obj19) - ns.WideScreen(true) - ns.Frozen(ns.GetHost(), true) - ns.Move(obj19, wp45) -} -func AllowDialog() { - ns.CreatureGuard(obj19, ns.GetWaypointX(wp46), ns.GetWaypointY(wp46), ns.GetWaypointX(wp45), ns.GetWaypointY(wp45), 0) - ns.SetDialog(obj19, ns.NORMAL, MordwynDialogStart, MordwynDialogEnd) -} -func Surprise00() { - ns.ObjectGroupOff(gvar33) - ns.NoWallSound(true) - ns.WallGroupOpen(gvar38) - ns.NoWallSound(false) - ns.WallGroupBreak(gvar39) - ns.ObjectGroupOn(gvar32) - ns.GroupWander(gvar32) -} -func Surprise01() { - ns.ObjectGroupOff(gvar35) - ns.NoWallSound(true) - ns.WallGroupOpen(gvar40) - ns.NoWallSound(false) - ns.WallGroupBreak(gvar41) - ns.ObjectGroupOn(gvar34) -} -func Secret01Declare() { - ns.ObjectGroupOff(gvar37) - ns.MoveWaypoint(wp50, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.AudioEvent(ns.SecretFound, wp50) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 100) -} -func Secret02Declare() { - ns.PrintToAll("GeneralPrint:SecretFound") - ns.MoveWaypoint(wp50, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.AudioEvent(ns.SecretFound, wp50) - ns.GiveXp(ns.GetHost(), 100) -} -func EnablePitElev01() { - ns.ObjectOn(obj25) -} -func EnablePitElev02() { - ns.ObjectOn(obj26) -} -func EnablePitElev03() { - ns.ObjectOn(obj27) -} -func TriggerTreasureTrap() { - ns.WallGroupBreak(gvar44) - ns.ObjectOff(obj29) - ns.GroupAggressionLevel(gvar36, 0.83) - ns.GroupWander(gvar36) -} -func MapEntry() { - ns.NoWallSound(false) -} -func whichWisp(a1 ns.ObjectID) int { - var v0 int - v0 = 0 - for { - if !(v0 < ivar72) { - goto LABEL1 - } - if obj73[v0] != a1 { - goto LABEL2 - } - return v0 - LABEL2: - v0 += 1 - } -LABEL1: - return -1 - return 1 -} -func WispAction(a1 int) { - var ( - v0 float32 - v1 int - ) - v1 = gvar75[a1] - if v1 == gvar66 { - goto LABEL1 - } - if v1 == gvar68 { - goto LABEL2 - } - if v1 == gvar67 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - v0 = ns.Distance(ns.GetObjectX(obj73[a1]), ns.GetObjectY(obj73[a1]), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - if !(v0 < 70) { - goto LABEL5 - } - gvar75[a1] = gvar67 - ns.Move(obj73[a1], wp74[a1]) -LABEL5: - goto LABEL4 -LABEL2: - ns.LookAtObject(obj73[a1], ns.GetHost()) - ivar76[a1] += 1 - if !(ivar76[a1] > 4) { - goto LABEL6 - } - gvar75[a1] = gvar66 - ns.CreatureFollow(obj73[a1], ns.GetHost()) -LABEL6: - goto LABEL4 -LABEL3: - v0 = ns.Distance(ns.GetObjectX(obj73[a1]), ns.GetObjectY(obj73[a1]), ns.GetWaypointX(wp74[a1]), ns.GetWaypointY(wp74[a1])) - if !(v0 < 30) { - goto LABEL7 - } - gvar75[a1] = gvar69 - ns.CreatureIdle(obj73[a1]) - return -LABEL7: - goto LABEL4 -LABEL4: - ns.FrameTimerWithArg(ivar71, a1, WispAction) -} -func WispRecognize() { - var ( - v0 int - v1 int - ) - if ns.HasClass(ns.GetCaller(), ns.PLAYER) { - goto LABEL1 - } - return -LABEL1: - v0 = whichWisp(ns.GetTrigger()) - if !(v0 < 0) { - goto LABEL2 - } - return -LABEL2: - v1 = gvar75[v0] - if v1 == gvar65 { - goto LABEL3 - } - if v1 == gvar68 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - gvar75[v0] = gvar66 - ns.CreatureFollow(ns.GetTrigger(), ns.GetCaller()) - gvar77[v0] = ns.FrameTimerWithArg(ivar71, v0, WispAction) - goto LABEL5 -LABEL4: - gvar75[v0] = gvar67 - ns.Move(ns.GetTrigger(), wp74[v0]) - goto LABEL5 -LABEL5: - return -} -func WispLoseSight() { - var ( - v0 int - v1 int - ) - if ns.HasClass(ns.GetCaller(), ns.PLAYER) { - goto LABEL1 - } - return -LABEL1: - v0 = whichWisp(ns.GetTrigger()) - if !(v0 < 0) { - goto LABEL2 - } - return -LABEL2: - v1 = gvar75[v0] - if v1 == gvar67 { - goto LABEL3 - } - goto LABEL4 -LABEL3: - gvar75[v0] = gvar68 - ivar76[v0] = 0 - ns.CreatureIdle(ns.GetTrigger()) - goto LABEL4 -LABEL4: - return -} -func WispGetMad() { - var v0 int - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.AggressionLevel(ns.GetTrigger(), 0.83) - ns.CreatureIdle(ns.GetTrigger()) - v0 = whichWisp(ns.GetTrigger()) - if !(v0 >= 0) { - goto LABEL1 - } - gvar75[v0] = gvar70 - ns.CancelTimer(gvar77[v0]) -LABEL1: - return -} -func WispMedieval() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.AggressionLevel(ns.GetTrigger(), 0.83) - ns.CreatureIdle(ns.GetTrigger()) -LABEL1: - return -} -func MakeAWish() { - var v0 int - v0 = ns.MaxHealth(ns.GetCaller()) - ns.RestoreHealth(ns.GetCaller(), v0-ns.CurrentHealth(ns.GetCaller())) - ns.PrintToAll("GeneralPrint:WellSignRefresh") - ns.AudioEvent(ns.RestoreHealthName, wp49) -} -func PlayMordwyn() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Music(21, 100) -LABEL1: - return -} -func PlayOgre() { - ns.Music(7, 100) -} -func PlayCaves() { - ns.Music(18, 100) -} -func PlayWasteland() { - ns.Music(19, 100) -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapInitialize": - MapInitialize() - case "MapEntry": - MapEntry() - } -} diff --git a/examples/wiz09b/dummy_test.go b/examples/wiz09b/dummy_test.go deleted file mode 100644 index dbe102a..0000000 --- a/examples/wiz09b/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package wiz09b - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/wiz09b/wiz09b.go b/examples/wiz09b/wiz09b.go deleted file mode 100644 index 2639955..0000000 --- a/examples/wiz09b/wiz09b.go +++ /dev/null @@ -1,803 +0,0 @@ -package wiz09b - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 ns.ObjectID - obj5 ns.ObjectID - obj6 ns.ObjectID - obj7 ns.ObjectID - obj8 ns.ObjectID - obj9 ns.ObjectID - obj10 ns.ObjectID - obj11 ns.ObjectID - obj12 ns.ObjectID - obj13 ns.ObjectID - obj14 ns.ObjectID - obj15 ns.ObjectID - obj16 ns.ObjectID - obj17 ns.ObjectID - obj18 ns.ObjectID - obj19 ns.ObjectID - obj20 ns.ObjectID - obj21 ns.ObjectID - obj22 ns.ObjectID - obj23 ns.ObjectID - obj24 ns.ObjectID - gvar25 ns.ObjectGroupID - gvar26 ns.ObjectGroupID - gvar27 ns.ObjectGroupID - gvar28 ns.ObjectGroupID - gvar29 ns.ObjectGroupID - gvar30 ns.ObjectGroupID - gvar31 ns.ObjectGroupID - gvar32 ns.ObjectGroupID - gvar33 ns.ObjectGroupID - gvar34 ns.ObjectGroupID - gvar35 ns.ObjectGroupID - gvar36 ns.ObjectGroupID - gvar37 ns.WallGroupID - gvar38 ns.WallGroupID - gvar39 ns.WallGroupID - gvar40 ns.WallGroupID - gvar41 ns.WallGroupID - gvar42 ns.WallGroupID - wp43 ns.WaypointID - wp44 ns.WaypointID - wp45 [9]ns.WaypointID - wp46 [3]ns.WaypointID - wp47 ns.WaypointID - wp48 ns.WaypointID - wp49 ns.WaypointID - wp50 ns.WaypointID - wp51 ns.WaypointID - wp52 ns.WaypointID - flag53 bool - gvar54 int - gvar55 int - gvar56 int - gvar57 int - gvar58 int - obj59 [9]ns.ObjectID - obj60 ns.ObjectID - obj61 ns.ObjectID - gvar62 int - flag63 bool - flag64 bool - flag65 bool - flag66 bool - flag67 bool - gvar68 int - gvar69 int - gvar70 int - gvar71 int - gvar72 int - gvar73 int - ivar74 int - ivar75 int - obj76 [8]ns.ObjectID - wp77 [8]ns.WaypointID - gvar78 [8]int - ivar79 [8]int - gvar80 [8]ns.TimerID -) - -func init() { - flag53 = false - gvar54 = 0 - gvar55 = 1 - gvar56 = 2 - gvar57 = 3 - gvar58 = 4 - gvar62 = gvar54 - flag63 = false - flag64 = false - flag65 = false - flag66 = false - flag67 = false - gvar68 = 0 - gvar69 = 1 - gvar70 = 2 - gvar71 = 3 - gvar72 = 4 - gvar73 = 5 - ivar74 = 15 - ivar75 = 2 -} -func PlayerDeath() { - ns.DeathScreen(9) -} -func AidanDialogStart() { - var v0 int - v0 = gvar62 - if v0 == gvar54 { - goto LABEL1 - } - if v0 == gvar55 { - goto LABEL2 - } - if v0 == gvar56 { - goto LABEL3 - } - if v0 == gvar57 { - goto LABEL4 - } - if v0 == gvar58 { - goto LABEL5 - } - goto LABEL6 -LABEL1: - ns.DestroyChat(obj4) - ns.TellStory(ns.SwordsmanHurt, "War09a:AidanGreet1") - flag53 = true - goto LABEL6 -LABEL2: - ns.TellStory(ns.SwordsmanHurt, "War09a:AidanGreet2") - goto LABEL6 -LABEL3: - ns.TellStory(ns.SwordsmanHurt, "War09a:AidanWaiting") - goto LABEL6 -LABEL4: - ns.DestroyChat(obj4) - ns.TellStory(ns.SwordsmanHurt, "War09a:AidanThankful") - goto LABEL6 -LABEL5: - ns.DestroyChat(obj4) - ns.TellStory(ns.SwordsmanHurt, "War09a:AidanLeaving") - goto LABEL6 -LABEL6: - return -} -func AidanDialogEnd() { - var v0 int - v0 = gvar62 - if v0 == gvar54 { - goto LABEL1 - } - if v0 == gvar55 { - goto LABEL2 - } - if v0 == gvar56 { - goto LABEL3 - } - if v0 == gvar57 { - goto LABEL4 - } - if v0 == gvar58 { - goto LABEL5 - } - goto LABEL6 -LABEL1: - gvar62 = gvar55 - goto LABEL6 -LABEL2: - gvar62 = gvar56 - goto LABEL6 -LABEL3: - goto LABEL6 -LABEL4: - flag53 = true - flag66 = true - ns.WideScreen(false) - ns.Frozen(ns.GetHost(), false) - ns.CancelDialog(obj4) - ns.GiveXp(ns.GetHost(), 1000) - ns.Pickup(ns.GetHost(), obj5) - ns.PrintToAll("GeneralPrint:FindSpell") - ns.CreatureFollow(obj4, ns.GetHost()) - ns.AggressionLevel(obj4, 0.5) - ns.SetOwner(ns.GetHost(), obj4) - ns.BecomePet(obj4) - goto LABEL6 -LABEL5: - goto LABEL6 -LABEL6: - return -} -func WispInitialize() { - obj76[0] = ns.Object("Wisp2") - gvar78[0] = gvar68 - wp77[0] = ns.Waypoint("Wisp2Dest") - obj76[1] = ns.Object("Wisp3") - gvar78[1] = gvar68 - wp77[1] = ns.Waypoint("Wisp3Dest") -} -func MapInitialize() { - obj4 = ns.Object("Aidan") - obj5 = ns.Object("ConfuseBook") - obj6 = ns.Object("DeadPrisoner") - obj7 = ns.Object("Mystic_Brotherhood") - obj8 = ns.Object("OgreCageDoor01") - obj9 = ns.Object("CheckRescueTrigger") - obj10 = ns.Object("PitElev02") - obj11 = ns.Object("PitElev03") - obj12 = ns.Object("CryptTrigger01") - obj13 = ns.Object("CryptEnd1") - obj14 = ns.Object("CryptDoor3") - obj15 = ns.Object("CryptDoor4") - obj16 = ns.Object("CryptGuardian") - obj17 = ns.Object("UrchinCageDoor") - obj18 = ns.Object("UrchinShaman") - obj19 = ns.Object("Urchin1") - obj20 = ns.Object("Urchin2") - obj21 = ns.Object("Urchin3") - obj22 = ns.Object("Urchin4") - obj23 = ns.Object("Necromancer") - obj24 = ns.Object("OgreDude") - gvar37 = ns.WallGroup("Surprise02Walls") - gvar38 = ns.WallGroup("Surprise02DestWalls") - gvar39 = ns.WallGroup("GraveyardTrapWalls") - gvar40 = ns.WallGroup("GraveyardTrapWalls2") - gvar41 = ns.WallGroup("CryptWall01") - gvar42 = ns.WallGroup("SubGraveyardWalls") - gvar25 = ns.ObjectGroup("GraveyardTrapEnemies") - gvar26 = ns.ObjectGroup("TriggerGroup01") - gvar27 = ns.ObjectGroup("TriggerGroup02") - gvar28 = ns.ObjectGroup("SubGraveyardTriggers") - gvar29 = ns.ObjectGroup("SubGraveyardCreatures") - gvar30 = ns.ObjectGroup("CryptGuardianTriggers") - gvar31 = ns.ObjectGroup("CryptWarriorTriggers") - gvar32 = ns.ObjectGroup("UrchinPrisoners") - gvar33 = ns.ObjectGroup("Secret03Enemies") - gvar34 = ns.ObjectGroup("Secret03Triggers") - gvar35 = ns.ObjectGroup("Secret04Triggers") - gvar36 = ns.ObjectGroup("Secret06Triggers") - wp45[0] = ns.Waypoint("CreateWP1") - wp45[1] = ns.Waypoint("CreateWP2") - wp45[2] = ns.Waypoint("CreateWP3") - wp45[3] = ns.Waypoint("CreateWP4") - wp45[4] = ns.Waypoint("CreateWP5") - wp45[5] = ns.Waypoint("CreateWP6") - wp45[6] = ns.Waypoint("CreateWP7") - wp45[7] = ns.Waypoint("CreateWP8") - wp45[8] = ns.Waypoint("CreateWP9") - wp43 = ns.Waypoint("VileZombieCreateWP01") - wp44 = ns.Waypoint("GhostCreateWP01") - wp49 = ns.Waypoint("FaceHereWP") - wp46[0] = ns.Waypoint("TeleWP1") - wp46[1] = ns.Waypoint("TeleWP2") - wp46[2] = ns.Waypoint("TeleWP3") - wp47 = ns.Waypoint("CryptGuardianEntrance") - wp48 = ns.Waypoint("CryptWarriorEntrance") - wp50 = ns.Waypoint("AidanWait") - wp51 = ns.Waypoint("AidanLook") - wp52 = ns.Waypoint("PlayerSounds") - ns.LockDoor(obj17) - ns.UnBlind() - WispInitialize() - ns.StoryPic(obj4, "AidanPic") - ns.SetDialog(obj4, ns.NORMAL, AidanDialogStart, AidanDialogEnd) - ns.SetOwner(obj24, obj4) - ns.Damage(obj6, 0, 50, 8) -} -func AidanRescued() { - ns.ObjectOff(obj9) - ns.WideScreen(true) - ns.Frozen(ns.GetHost(), true) - gvar62 = gvar57 - ns.StartDialog(obj4, ns.GetHost()) -} -func PlayOgre() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Music(7, 100) -LABEL1: - return -} -func KeepOut() { - r1 := ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) - if !r1 { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func AidanNearPlayer() { - if !(flag53 == false && ns.IsCaller(ns.GetHost())) { - goto LABEL1 - } - ns.Chat(obj4, "War09a:AidanPlea") - if flag65 { - goto LABEL1 - } - ns.ClearOwner(obj4) - ns.SetOwner(ns.GetHost(), obj4) - flag65 = true -LABEL1: - return -} -func CheckRescue() { - if ns.IsLocked(obj8) { - goto LABEL1 - } - if !(ns.CurrentHealth(obj4) > 0) { - goto LABEL1 - } - AidanRescued() -LABEL1: - return -} -func AidanMustGo() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - PlayOgre() -LABEL1: - if !(ns.IsCaller(ns.GetHost()) && flag64 == false) { - goto LABEL2 - } - flag64 = true - ns.GiveXp(ns.GetHost(), 500) - ns.JournalEdit(ns.GetHost(), "FindOutpost", 4) - ns.JournalEntry(ns.GetHost(), "FindLOTD", 2) - ns.PrintToAll("Con01a:NewJournalEntry") -LABEL2: - if !(ns.IsCaller(ns.GetHost()) && flag66 == true && ns.CurrentHealth(obj4) > 0 && flag67 == false) { - goto LABEL3 - } - flag67 = true - ns.RestoreHealth(obj4, 120) - ns.SetDialog(obj4, ns.NORMAL, AidanDialogStart, AidanDialogEnd) - gvar62 = gvar58 - ns.CreatureGuard(obj4, ns.GetWaypointX(wp50), ns.GetWaypointY(wp50), ns.GetWaypointX(wp51), ns.GetWaypointY(wp51), 0) - ns.BecomeEnemy(obj4) - ns.SetOwner(ns.GetHost(), obj4) -LABEL3: - return -} -func DestroyAidan() { - if !flag67 { - goto LABEL1 - } - ns.Delete(obj4) -LABEL1: - return -} -func Secret03Declare() { - ns.ObjectGroupOff(gvar34) - ns.MoveWaypoint(wp52, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.AudioEvent(ns.SecretFound, wp52) - ns.ObjectGroupOn(gvar33) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 5) -} -func Secret04Declare() { - ns.ObjectGroupOff(gvar35) - ns.MoveWaypoint(wp52, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.AudioEvent(ns.SecretFound, wp52) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 150) -} -func Secret05Declare() { - ns.PrintToAll("GeneralPrint:SecretFound") - ns.MoveWaypoint(wp52, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.AudioEvent(ns.SecretFound, wp52) - ns.GiveXp(ns.GetHost(), 100) -} -func Secret06Declare() { - ns.ObjectGroupOff(gvar36) - ns.MoveWaypoint(wp52, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.AudioEvent(ns.SecretFound, wp52) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 50) -} -func Patrol() { - ns.Wander(ns.GetTrigger()) -} -func GoMedieval() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.AggressionLevel(ns.GetTrigger(), 0.83) -LABEL1: - return -} -func GoNormal() { - ns.AggressionLevel(ns.GetTrigger(), 0.5) -} -func StopAndListen() { - var v0 int - v0 = ns.Random(1, 3) - if !(ns.IsCaller(ns.GetHost()) && v0 == 1) { - goto LABEL1 - } - ns.PauseObject(ns.GetTrigger(), 45) - ns.LookAtObject(ns.GetTrigger(), ns.GetCaller()) - if !ns.IsVisibleTo(ns.GetTrigger(), ns.GetCaller()) { - goto LABEL2 - } - ns.AggressionLevel(ns.GetTrigger(), 0.5) - goto LABEL1 -LABEL2: - ns.CreatureIdle(ns.GetTrigger()) -LABEL1: - return -} -func ReturnHome() { - ns.AggressionLevel(ns.GetTrigger(), 0.5) - ns.GoBackHome(ns.GetTrigger()) -} -func EnablePitElev02() { - ns.ObjectOn(obj10) -} -func EnablePitElev03() { - ns.ObjectOn(obj11) -} -func GraveyardCreateOrders() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 float32 - v5 float32 - ) - v0 = ns.GetWaypointX(wp43) - v1 = ns.GetWaypointY(wp43) - v2 = ns.GetWaypointX(wp44) - v3 = ns.GetWaypointY(wp44) - v4 = ns.GetWaypointX(wp49) - v5 = ns.GetWaypointY(wp49) - ns.LookWithAngle(obj60, 224) - ns.LookWithAngle(obj61, 192) - ns.CreatureGuard(obj60, v0, v1, v4, v5, 500) - ns.CreatureGuard(obj61, v2, v3, v4, v5, 500) -} -func GraveyardTrapTrigger() { - ns.ObjectGroupOff(gvar26) - ns.NoWallSound(true) - ns.WallGroupOpen(gvar39) - ns.NoWallSound(false) - ns.WallGroupBreak(gvar40) - ns.ObjectGroupOn(gvar25) - obj60 = ns.CreateObject("VileZombie", wp43) - obj61 = ns.CreateObject("Ghost", wp44) - ns.FrameTimer(1, GraveyardCreateOrders) -} -func SubGraveSurprise() { - ns.ObjectGroupOff(gvar28) - ns.ObjectGroupOn(gvar29) - ns.WallGroupBreak(gvar42) -} -func CryptGuardian() { - var ( - v0 float32 - v1 float32 - ) - v0 = ns.GetWaypointX(wp47) - v1 = ns.GetWaypointY(wp47) - ns.ObjectGroupOff(gvar30) - ns.LockDoor(obj14) - ns.LockDoor(obj15) - ns.ObjectOn(obj16) - ns.Enchant(obj16, ns.ENCHANT_INVISIBLE, 2) - ns.MoveObject(obj16, v0, v1) - ns.Effect(ns.BLUE_SPARKS, v0, v1, 0, 0) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) -} -func TurnInvisible() { - ns.Enchant(obj16, ns.ENCHANT_INVISIBLE, 1.5) -} -func UnlockCryptDoors2() { - ns.UnlockDoor(obj14) - ns.UnlockDoor(obj15) -} -func CreatureOrders() { - var v0 int - v0 = 0 - for { - if !(v0 < 9) { - goto LABEL1 - } - ns.SetRoamFlag(obj59[v0], 1) - ns.Wander(obj59[v0]) - ns.AggressionLevel(obj59[v0], 0.83) - v0 += 1 - } -LABEL1: - return -} -func CreateZombies01() { - var v0 int - ns.ObjectGroupOff(gvar27) - ns.ObjectOn(obj23) - ns.NoWallSound(true) - ns.WallGroupOpen(gvar37) - ns.NoWallSound(false) - ns.WallGroupBreak(gvar38) - v0 = 0 - for { - if !(v0 < 5) { - goto LABEL1 - } - obj59[v0] = ns.CreateObject("Zombie", wp45[v0]) - v0 += 1 - } -LABEL1: - v0 = 5 - for { - if !(v0 < 7) { - goto LABEL3 - } - obj59[v0] = ns.CreateObject("Ghost", wp45[v0]) - v0 += 1 - } -LABEL3: - v0 = 7 - for { - if !(v0 < 9) { - goto LABEL5 - } - obj59[v0] = ns.CreateObject("VileZombie", wp45[v0]) - v0 += 1 - } -LABEL5: - ns.FrameTimer(1, CreatureOrders) -} -func NecroTeleport() { - var ( - v0 float32 - v1 float32 - v2 int - ) - v2 = ns.Random(0, 2) - v0 = ns.GetWaypointX(wp46[v2]) - v1 = ns.GetWaypointY(wp46[v2]) - if !ns.IsCaller(obj23) { - goto LABEL1 - } - ns.Enchant(ns.GetCaller(), ns.ENCHANT_INVISIBLE, 2) - ns.Effect(ns.BLUE_SPARKS, ns.GetObjectX(ns.GetCaller()), ns.GetObjectY(ns.GetCaller()), 0, 0) - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(ns.GetCaller()), ns.GetObjectY(ns.GetCaller()), 0, 0) - ns.MoveObject(obj23, v0, v1) - ns.Effect(ns.BLUE_SPARKS, v0, v1, 0, 0) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) -LABEL1: - return -} -func NecroTeleportInjured() { - var ( - v0 float32 - v1 float32 - v2 int - ) - v2 = ns.Random(0, 2) - v0 = ns.GetWaypointX(wp46[v2]) - v1 = ns.GetWaypointY(wp46[v2]) - ns.PauseObject(ns.GetTrigger(), 15) - ns.Enchant(ns.GetTrigger(), ns.ENCHANT_INVISIBLE, 2) - ns.Effect(ns.BLUE_SPARKS, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger()), 0, 0) - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger()), 0, 0) - ns.MoveObject(ns.GetTrigger(), v0, v1) - ns.Effect(ns.BLUE_SPARKS, v0, v1, 0, 0) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) -} -func HuntPlayer() { - ns.CreatureHunt(ns.GetTrigger()) -} -func FreeUrchins01() { - ns.UnlockDoor(obj17) - if flag63 { - goto LABEL1 - } - flag63 = true - ns.SetOwner(ns.GetHost(), obj19) - ns.SetOwner(ns.GetHost(), obj20) - ns.SetOwner(ns.GetHost(), obj21) - ns.SetOwner(ns.GetHost(), obj22) - ns.SetOwner(ns.GetHost(), obj18) - ns.SetRoamFlag(obj18, 1) - ns.SetRoamFlag(obj19, 1) - ns.SetRoamFlag(obj20, 1) - ns.SetRoamFlag(obj21, 1) - ns.SetRoamFlag(obj22, 1) - ns.AggressionLevel(obj18, 0.83) - ns.AggressionLevel(obj19, 0.83) - ns.AggressionLevel(obj20, 0.83) - ns.AggressionLevel(obj21, 0.83) - ns.AggressionLevel(obj22, 0.83) -LABEL1: - return -} -func LockUrchinCage() { - ns.LockDoor(obj17) -} -func HurtUrchins01() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.AggressionLevel(ns.GetTrigger(), 0.5) - ns.RunAway(ns.GetTrigger(), ns.GetCaller(), 120) -LABEL1: - return -} -func MapEntry() { - ns.NoWallSound(false) -} -func whichWisp(a1 ns.ObjectID) int { - var v0 int - v0 = 0 - for { - if !(v0 < ivar75) { - goto LABEL1 - } - if obj76[v0] != a1 { - goto LABEL2 - } - return v0 - LABEL2: - v0 += 1 - } -LABEL1: - return -1 - return 1 -} -func WispAction(a1 int) { - var ( - v0 float32 - v1 int - ) - v1 = gvar78[a1] - if v1 == gvar69 { - goto LABEL1 - } - if v1 == gvar71 { - goto LABEL2 - } - if v1 == gvar70 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - v0 = ns.Distance(ns.GetObjectX(obj76[a1]), ns.GetObjectY(obj76[a1]), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - if !(v0 < 70) { - goto LABEL5 - } - gvar78[a1] = gvar70 - ns.Move(obj76[a1], wp77[a1]) -LABEL5: - goto LABEL4 -LABEL2: - ns.LookAtObject(obj76[a1], ns.GetHost()) - ivar79[a1] += 1 - if !(ivar79[a1] > 4) { - goto LABEL6 - } - gvar78[a1] = gvar69 - ns.CreatureFollow(obj76[a1], ns.GetHost()) -LABEL6: - goto LABEL4 -LABEL3: - v0 = ns.Distance(ns.GetObjectX(obj76[a1]), ns.GetObjectY(obj76[a1]), ns.GetWaypointX(wp77[a1]), ns.GetWaypointY(wp77[a1])) - if !(v0 < 30) { - goto LABEL7 - } - gvar78[a1] = gvar72 - ns.CreatureIdle(obj76[a1]) - return -LABEL7: - goto LABEL4 -LABEL4: - ns.FrameTimerWithArg(ivar74, a1, WispAction) -} -func WispRecognize() { - var ( - v0 int - v1 int - ) - if ns.HasClass(ns.GetCaller(), ns.PLAYER) { - goto LABEL1 - } - return -LABEL1: - v0 = whichWisp(ns.GetTrigger()) - if !(v0 < 0) { - goto LABEL2 - } - return -LABEL2: - v1 = gvar78[v0] - if v1 == gvar68 { - goto LABEL3 - } - if v1 == gvar71 { - goto LABEL4 - } - goto LABEL5 -LABEL3: - gvar78[v0] = gvar69 - ns.CreatureFollow(ns.GetTrigger(), ns.GetCaller()) - gvar80[v0] = ns.FrameTimerWithArg(ivar74, v0, WispAction) - goto LABEL5 -LABEL4: - gvar78[v0] = gvar70 - ns.Move(ns.GetTrigger(), wp77[v0]) - goto LABEL5 -LABEL5: - return -} -func WispLoseSight() { - var ( - v0 int - v1 int - ) - if ns.HasClass(ns.GetCaller(), ns.PLAYER) { - goto LABEL1 - } - return -LABEL1: - v0 = whichWisp(ns.GetTrigger()) - if !(v0 < 0) { - goto LABEL2 - } - return -LABEL2: - v1 = gvar78[v0] - if v1 == gvar70 { - goto LABEL3 - } - goto LABEL4 -LABEL3: - gvar78[v0] = gvar71 - ivar79[v0] = 0 - ns.CreatureIdle(ns.GetTrigger()) - goto LABEL4 -LABEL4: - return -} -func WispGetMad() { - var v0 int - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.AggressionLevel(ns.GetTrigger(), 0.83) - ns.CreatureIdle(ns.GetTrigger()) - v0 = whichWisp(ns.GetTrigger()) - if !(v0 >= 0) { - goto LABEL1 - } - gvar78[v0] = gvar73 - ns.CancelTimer(gvar80[v0]) -LABEL1: - return -} -func WispMedieval() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.AggressionLevel(ns.GetTrigger(), 0.83) - ns.CreatureIdle(ns.GetTrigger()) -LABEL1: - return -} -func PlaySwamp() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Music(29, 100) -LABEL1: - return -} -func PlaySwamp2() { - ns.Music(29, 100) -} -func PlayAction() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Music(26, 100) -LABEL1: - return -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapInitialize": - MapInitialize() - case "MapEntry": - MapEntry() - } -} diff --git a/examples/wiz09c/dummy_test.go b/examples/wiz09c/dummy_test.go deleted file mode 100644 index adb22f5..0000000 --- a/examples/wiz09c/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package wiz09c - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/wiz09c/wiz09c.go b/examples/wiz09c/wiz09c.go deleted file mode 100644 index 58b51b1..0000000 --- a/examples/wiz09c/wiz09c.go +++ /dev/null @@ -1,567 +0,0 @@ -package wiz09c - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 ns.ObjectID - obj5 ns.ObjectID - obj6 ns.ObjectID - obj7 ns.ObjectID - obj8 ns.ObjectID - obj9 ns.ObjectID - obj10 ns.ObjectID - obj11 ns.ObjectID - obj12 ns.ObjectID - obj13 ns.ObjectID - obj14 ns.ObjectID - obj15 ns.ObjectID - obj16 ns.ObjectID - obj17 ns.ObjectID - obj18 ns.ObjectID - obj19 ns.ObjectID - obj20 ns.ObjectID - obj21 ns.ObjectID - obj22 ns.ObjectID - obj23 ns.ObjectID - obj24 ns.ObjectID - obj25 ns.ObjectID - obj26 ns.ObjectID - obj27 ns.ObjectID - obj28 ns.ObjectID - obj29 ns.ObjectID - obj30 ns.ObjectID - obj31 ns.ObjectID - obj32 ns.ObjectID - obj33 ns.ObjectID - obj34 ns.ObjectID - obj35 ns.ObjectID - obj36 ns.ObjectID - obj37 ns.ObjectID - obj38 ns.ObjectID - obj39 ns.ObjectID - obj40 ns.ObjectID - obj41 ns.ObjectID - obj42 ns.ObjectID - obj43 ns.ObjectID - obj44 ns.ObjectID - obj45 ns.ObjectID - obj46 ns.ObjectID - obj47 ns.ObjectID - obj48 ns.ObjectID - obj49 ns.ObjectID - obj50 ns.ObjectID - obj51 ns.ObjectID - obj52 ns.ObjectID - obj53 ns.ObjectID - obj54 ns.ObjectID - gvar55 ns.ObjectGroupID - gvar56 ns.ObjectGroupID - gvar57 ns.ObjectGroupID - gvar58 ns.ObjectGroupID - gvar59 ns.ObjectGroupID - gvar60 ns.ObjectGroupID - gvar61 ns.ObjectGroupID - gvar62 ns.ObjectGroupID - gvar63 ns.ObjectGroupID - gvar64 ns.ObjectGroupID - gvar65 ns.ObjectGroupID - gvar66 [6]ns.ObjectGroupID - gvar67 ns.ObjectGroupID - gvar68 ns.ObjectGroupID - gvar69 ns.WallGroupID - gvar70 ns.WallGroupID - gvar71 ns.WallGroupID - gvar72 ns.WallGroupID - gvar73 ns.WallGroupID - gvar74 ns.WallGroupID - wp75 ns.WaypointID - wp76 ns.WaypointID - wp77 ns.WaypointID - wp78 ns.WaypointID - wp79 ns.WaypointID - wp80 ns.WaypointID - wp81 ns.WaypointID - wp82 ns.WaypointID - wp83 ns.WaypointID - wp84 ns.WaypointID - wp85 ns.WaypointID - wp86 ns.WaypointID - wp87 ns.WaypointID - wp88 ns.WaypointID - wp89 ns.WaypointID - wp90 ns.WaypointID - wp91 ns.WaypointID - wp92 ns.WaypointID - wp93 ns.WaypointID - wp94 ns.WaypointID - wp95 ns.WaypointID - wp96 ns.WaypointID - wp97 ns.WaypointID - flag98 bool - flag99 bool - ivar100 int - ivar101 int - gvar102 int - gvar103 int - ivar104 int - gvar105 int - obj106 ns.ObjectID -) - -func init() { - flag99 = true - ivar100 = 22 - ivar101 = ivar100 - ivar104 = 0 - gvar105 = 0 - flag98 = true -} -func ToggleSpikes1() { - ns.ObjectGroupToggle(gvar61) - ns.AudioEvent(ns.FloorSpikesUp, ns.Waypoint("SpikeWP01")) - ns.AudioEvent(ns.FloorSpikesDown, ns.Waypoint("SpikeWP06")) - ns.AudioEvent(ns.FloorSpikesUp, ns.Waypoint("SpikeWP09")) - ns.FrameTimer(60, ToggleSpikes2) -} -func ToggleSpikes2() { - ns.ObjectGroupToggle(gvar62) - ns.AudioEvent(ns.FloorSpikesDown, ns.Waypoint("SpikeWP04")) - ns.AudioEvent(ns.FloorSpikesUp, ns.Waypoint("SpikeWP07")) - ns.AudioEvent(ns.FloorSpikesDown, ns.Waypoint("SpikeWP12")) - ns.FrameTimer(60, ToggleSpikes1) -} -func GoToPost() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - ) - v0 = ns.GetWaypointX(wp94) - v1 = ns.GetWaypointY(wp94) - v2 = ns.GetWaypointX(wp95) - v3 = ns.GetWaypointY(wp95) - ns.CreatureGuard(obj28, v0, v1, v2, v3, 100) -} -func SwitchSpikeState() { - ns.ObjectGroupOff(gvar66[ivar104]) - if !flag99 { - goto LABEL1 - } - ivar104 += 1 - if !(ivar104 > 5) { - goto LABEL2 - } - ivar104 = 0 -LABEL2: - ns.ObjectGroupOn(gvar66[ivar104]) - ns.AudioEvent(ns.FloorSpikesUp, wp97) - ns.FrameTimer(30, SwitchSpikeState) - goto LABEL3 -LABEL1: - return -LABEL3: - return -} -func CloseWalls() { - ns.MusicPopEvent() - ns.WallGroupClose(gvar69) - ns.WallGroupClose(gvar70) -} -func PlayAction() { - ns.MusicPushEvent() - ns.Music(26, 100) -} -func PlayCaves() { - ns.Music(18, 100) -} -func MapEntry() { - PlayCaves() - ns.NoWallSound(false) -} -func Secret01Declare() { - ns.PrintToAll("GeneralPrint:SecretFound") - ns.MoveWaypoint(wp96, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.AudioEvent(ns.SecretFound, wp96) - ns.GiveXp(ns.GetHost(), 500) -} -func Secret01Exit() { - ns.WallGroupOpen(gvar71) -} -func Secret02Declare() { - ns.ObjectGroupOff(gvar68) - ns.MoveWaypoint(wp96, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.AudioEvent(ns.SecretFound, wp96) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 250) -} -func Secret03Declare() { - ns.PrintToAll("GeneralPrint:SecretFound") - ns.MoveWaypoint(wp96, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.AudioEvent(ns.SecretFound, wp96) - ns.GiveXp(ns.GetHost(), 50) -} -func Secret04Declare() { - ns.PrintToAll("GeneralPrint:SecretFound") - ns.MoveWaypoint(wp96, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.AudioEvent(ns.SecretFound, wp96) - ns.GiveXp(ns.GetHost(), 100) -} -func SpikeTimerAudioLoop() { - if flag98 { - goto LABEL1 - } - ns.AudioEvent(ns.Gear1, wp75) - ns.FrameTimer(ivar101, SpikeTimerAudioLoop) - ivar101 -= 1 - goto LABEL2 -LABEL1: - ns.AudioEvent(ns.TriggerPressed, wp75) -LABEL2: - return -} -func ResetOgreSpikeDoor01() { - ns.ObjectOn(obj4) - ns.ObjectOn(obj5) - ns.ObjectGroupOn(gvar55) - ns.LockDoor(obj6) - flag98 = true - ivar101 = ivar100 -} -func ToggleOgreTrapSpikes01() { - ns.ObjectOff(obj4) - ns.ObjectOff(obj5) - ns.ObjectGroupOff(gvar55) - if !flag98 { - goto LABEL1 - } - ns.UnlockDoor(obj6) - flag98 = false - SpikeTimerAudioLoop() - ns.FrameTimer(150, ResetOgreSpikeDoor01) - goto LABEL2 -LABEL1: - ns.LockDoor(obj6) - flag98 = true -LABEL2: - return -} -func MoveBlocks01() { - ns.ObjectGroupOff(gvar57) - ns.ObjectGroupOff(gvar58) - PlayAction() - ns.Move(obj7, wp76) - ns.Move(obj8, wp77) - ns.Move(obj9, wp78) - ns.Move(obj10, wp79) - ns.Move(obj11, wp80) - ns.Move(obj12, wp81) - ns.Move(obj13, wp82) - ns.Move(obj14, wp83) - ns.Move(obj15, wp84) - ns.Move(obj16, wp85) - ns.Move(obj17, wp86) - ns.Move(obj18, wp87) - ns.WallGroupOpen(gvar69) - ns.ObjectOn(obj21) - ns.Wander(obj21) -} -func CallNextOgre() { - ns.WallGroupOpen(gvar70) - ns.ObjectOn(obj22) - ns.Wander(obj22) -} -func MoveBlocks02() { - var ( - v0 float32 - v1 float32 - ) - v0 = ns.GetWaypointX(wp90) - v1 = ns.GetWaypointY(wp90) - ns.MoveObject(obj19, v0, v1) - ns.Effect(ns.BLUE_SPARKS, v0, v1, 0, 0) - ns.AudioEvent(ns.KeyDrop, wp90) - ns.ObjectOn(obj20) - ns.Move(obj9, wp88) - ns.Move(obj10, wp89) - ns.Move(obj7, wp78) - ns.Move(obj8, wp79) - ns.FrameTimer(45, CloseWalls) -} -func OpenWayOut() { - ns.WallGroupOpen(gvar74) -} -func GetBuddy() { - ns.RetreatLevel(obj23, 0) - ns.Move(obj23, wp91) -} -func FollowOgrePatrol01() { - if !ns.IsCaller(obj23) { - goto LABEL1 - } - ns.CreatureFollow(ns.GetTrigger(), obj23) - ns.AggressionLevel(obj26, 0.83) - ns.AggressionLevel(obj27, 0.83) - ns.Walk(obj23, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) -LABEL1: - return -} -func WaitASec() { - ns.PauseObject(ns.GetTrigger(), 30) -} -func Patrol() { - ns.Wander(ns.GetTrigger()) -} -func GoMedieval() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.AggressionLevel(ns.GetTrigger(), 0.83) -LABEL1: - return -} -func GoNormal() { - ns.AggressionLevel(ns.GetTrigger(), 0.5) -} -func StopAndListen() { - var v0 int - v0 = ns.Random(1, 3) - if !(ns.IsCaller(ns.GetHost()) && v0 == 1) { - goto LABEL1 - } - ns.PauseObject(ns.GetTrigger(), 45) - ns.LookAtObject(ns.GetTrigger(), ns.GetCaller()) - if !ns.IsVisibleTo(ns.GetTrigger(), ns.GetCaller()) { - goto LABEL2 - } - ns.AggressionLevel(ns.GetTrigger(), 0.5) - goto LABEL1 -LABEL2: - ns.CreatureIdle(ns.GetTrigger()) -LABEL1: - return -} -func ReturnHome() { - ns.AggressionLevel(ns.GetTrigger(), 0.5) - ns.GoBackHome(ns.GetTrigger()) -} -func SpikeHall() { - ns.ObjectGroupOff(gvar59) - ns.ObjectGroupOn(gvar60) - ToggleSpikes1() -} -func PressButton() { - ns.AudioEvent(ns.GruntRecognize, wp93) - ns.Move(obj28, wp92) - ns.AggressionLevel(obj29, 0.83) - ns.AggressionLevel(obj30, 0.83) - ns.AggressionLevel(obj31, 0.83) - ns.FrameTimer(60, GoToPost) -} -func OgrePressButton() { - ns.FrameTimer(10, PressButton) -} -func LockCageDoor() { - if ns.IsLocked(obj32) { - goto LABEL1 - } - ns.LockDoor(obj32) - goto LABEL2 -LABEL1: - ns.UnlockDoor(obj32) -LABEL2: - return -} -func FoundTreasureTrove() { - ns.PrintToAll("War09c:FoundTrove") - ns.GiveXp(ns.GetHost(), 1000) -} -func ToggleElevatorGroup3() { - ns.ObjectGroupToggle(gvar65) -} -func ToggleElevatorGroup1() { - ns.ObjectGroupToggle(gvar63) -} -func StartSpikes() { - ns.ObjectGroupOff(gvar67) - ns.LockDoor(obj33) - ns.FrameTimer(60, SwitchSpikeState) -} -func UnlockSpikeSegRoomDoor() { - ns.UnlockDoor(obj33) - flag99 = false -} -func CallSpitter1() { - ns.Wander(obj35) -} -func SetSpitter1PathColor() { - ns.SetRoamFlag(obj35, 1|128) -} -func LockPitDoor() { - ns.LockDoor(obj34) -} -func UnlockPitDoor() { - ns.UnlockDoor(obj34) -} -func ReleaseA() { - ns.UnlockDoor(obj36) - ns.UnlockDoor(obj37) - ns.CreatureHunt(obj48) -} -func ReleaseB() { - ns.UnlockDoor(obj38) - ns.UnlockDoor(obj39) - ns.CreatureHunt(obj49) -} -func ReleaseC() { - ns.UnlockDoor(obj40) - ns.UnlockDoor(obj41) - ns.CreatureHunt(obj50) -} -func ReleaseD() { - ns.UnlockDoor(obj42) - ns.UnlockDoor(obj43) - ns.CreatureHunt(obj51) -} -func ReleaseE() { - ns.UnlockDoor(obj44) - ns.UnlockDoor(obj45) - ns.CreatureHunt(obj52) -} -func ReleaseF() { - ns.UnlockDoor(obj46) - ns.UnlockDoor(obj47) - ns.CreatureHunt(obj53) -} -func ToggleElevatorGroup2() { - ns.ObjectOff(obj54) - ns.ObjectGroupToggle(gvar64) - ns.GiveXp(ns.GetHost(), 2500) -} -func PlayerDeath() { - ns.DeathScreen(9) -} -func MapInitialize() { - obj6 = ns.Object("OgreSpikeDoor01") - obj4 = ns.Object("OgreTrapSpikePlate01") - obj5 = ns.Object("OgreTrapSpikeSwitch01") - obj7 = ns.Object("Block01") - obj8 = ns.Object("Block02") - obj9 = ns.Object("Block03") - obj10 = ns.Object("Block04") - obj11 = ns.Object("Block05") - obj12 = ns.Object("Block06") - obj13 = ns.Object("Block07") - obj14 = ns.Object("Block08") - obj15 = ns.Object("Block09") - obj16 = ns.Object("Block10") - obj17 = ns.Object("Block11") - obj18 = ns.Object("Block12") - obj19 = ns.Object("SilverKey") - obj20 = ns.Object("SilverKeyLight") - obj21 = ns.Object("OgreFighter01") - obj22 = ns.Object("OgreFighter02") - obj23 = ns.Object("OgrePatrol01") - obj24 = ns.Object("OgrePatrol02") - obj25 = ns.Object("OgrePatrol03") - obj26 = ns.Object("OgrePatrolBuddy01") - obj27 = ns.Object("OgrePatrolBuddy02") - obj28 = ns.Object("ButtonPresser") - obj29 = ns.Object("OgrePsycho01") - obj30 = ns.Object("OgrePsycho02") - obj31 = ns.Object("OgrePsycho03") - obj32 = ns.Object("CageDoor") - obj33 = ns.Object("SpikeSegRoomDoor") - obj34 = ns.Object("CrumblingPitDoor") - obj36 = ns.Object("CreaturePitDoorA1") - obj37 = ns.Object("CreaturePitDoorA2") - obj38 = ns.Object("CreaturePitDoorB1") - obj39 = ns.Object("CreaturePitDoorB2") - obj40 = ns.Object("CreaturePitDoorC1") - obj41 = ns.Object("CreaturePitDoorC2") - obj42 = ns.Object("CreaturePitDoorD1") - obj43 = ns.Object("CreaturePitDoorD2") - obj44 = ns.Object("CreaturePitDoorE1") - obj45 = ns.Object("CreaturePitDoorE2") - obj46 = ns.Object("CreaturePitDoorF1") - obj47 = ns.Object("CreaturePitDoorF2") - obj48 = ns.Object("CreatureA") - obj49 = ns.Object("CreatureB") - obj50 = ns.Object("CreatureC") - obj51 = ns.Object("CreatureD") - obj52 = ns.Object("CreatureE") - obj53 = ns.Object("CreatureF") - obj106 = ns.Object("CreaturePitElev") - obj54 = ns.Object("CreaturePitSwitch") - gvar55 = ns.ObjectGroup("OgreTrapSpikes01") - gvar57 = ns.ObjectGroup("BlockTrigger01") - gvar56 = ns.ObjectGroup("BlockMoverGroup01") - gvar58 = ns.ObjectGroup("SecretLight01") - gvar59 = ns.ObjectGroup("SpikeHallTriggers") - gvar60 = ns.ObjectGroup("SpikeMoverGroup") - gvar61 = ns.ObjectGroup("HallSpikes1") - gvar62 = ns.ObjectGroup("HallSpikes2") - gvar66[0] = ns.ObjectGroup("SpikeSeg01") - gvar66[1] = ns.ObjectGroup("SpikeSeg02") - gvar66[2] = ns.ObjectGroup("SpikeSeg03") - gvar66[3] = ns.ObjectGroup("SpikeSeg04") - gvar66[4] = ns.ObjectGroup("SpikeSeg05") - gvar66[5] = ns.ObjectGroup("SpikeSeg06") - gvar67 = ns.ObjectGroup("SpikeSegTriggers") - gvar68 = ns.ObjectGroup("Secret02Triggers") - gvar63 = ns.ObjectGroup("ElevatorGroup1") - gvar64 = ns.ObjectGroup("ElevatorGroup2") - gvar65 = ns.ObjectGroup("ElevatorGroup3") - gvar69 = ns.WallGroup("SecretWallGroup01") - gvar70 = ns.WallGroup("SecretWallGroup02") - gvar71 = ns.WallGroup("Secret01Wall") - gvar72 = ns.WallGroup("SecretHallWalls01") - gvar73 = ns.WallGroup("CreaturePitWalls") - gvar74 = ns.WallGroup("WayOut") - wp75 = ns.Waypoint("SpikeTimerAudioOrigin") - wp76 = ns.Waypoint("BlockWP01") - wp77 = ns.Waypoint("BlockWP02") - wp78 = ns.Waypoint("BlockWP03") - wp79 = ns.Waypoint("BlockWP04") - wp80 = ns.Waypoint("BlockWP05") - wp81 = ns.Waypoint("BlockWP06") - wp82 = ns.Waypoint("BlockWP07") - wp83 = ns.Waypoint("BlockWP08") - wp84 = ns.Waypoint("BlockWP09") - wp85 = ns.Waypoint("BlockWP10") - wp86 = ns.Waypoint("BlockWP11") - wp87 = ns.Waypoint("BlockWP12") - wp88 = ns.Waypoint("BlockWP13") - wp89 = ns.Waypoint("BlockWP14") - wp90 = ns.Waypoint("SilverKeySpot") - wp91 = ns.Waypoint("BuddyWP") - wp92 = ns.Waypoint("ButtonLocationWP") - wp93 = ns.Waypoint("OgreAudioOrigin") - wp94 = ns.Waypoint("PostWP") - wp95 = ns.Waypoint("FacingWP") - wp96 = ns.Waypoint("PlayerSounds") - wp97 = ns.Waypoint("RoomSounds") - ns.LockDoor(obj36) - ns.LockDoor(obj37) - ns.LockDoor(obj38) - ns.LockDoor(obj39) - ns.LockDoor(obj40) - ns.LockDoor(obj41) - ns.LockDoor(obj42) - ns.LockDoor(obj43) - ns.LockDoor(obj44) - ns.LockDoor(obj45) - ns.LockDoor(obj46) - ns.LockDoor(obj47) - ns.UnBlind() -} -func OnEvent(typ string) { - switch typ { - case "MapEntry": - MapEntry() - case "PlayerDeath": - PlayerDeath() - case "MapInitialize": - MapInitialize() - } -} diff --git a/examples/wiz09d/dummy_test.go b/examples/wiz09d/dummy_test.go deleted file mode 100644 index e5b8eb8..0000000 --- a/examples/wiz09d/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package wiz09d - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/wiz09d/wiz09d.go b/examples/wiz09d/wiz09d.go deleted file mode 100644 index 05b305c..0000000 --- a/examples/wiz09d/wiz09d.go +++ /dev/null @@ -1,854 +0,0 @@ -package wiz09d - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 ns.ObjectID - obj5 ns.ObjectID - obj6 ns.ObjectID - obj7 ns.ObjectID - obj8 ns.ObjectID - obj9 ns.ObjectID - obj10 ns.ObjectID - obj11 ns.ObjectID - obj12 ns.ObjectID - obj13 ns.ObjectID - obj14 ns.ObjectID - obj15 ns.ObjectID - obj16 ns.ObjectID - obj17 ns.ObjectID - obj18 ns.ObjectID - obj19 ns.ObjectID - obj20 ns.ObjectID - gvar21 ns.ObjectGroupID - gvar22 ns.ObjectGroupID - gvar23 ns.ObjectGroupID - gvar24 ns.ObjectGroupID - gvar25 ns.ObjectGroupID - gvar26 ns.ObjectGroupID - gvar27 ns.WallGroupID - gvar28 ns.WallGroupID - gvar29 ns.WallGroupID - wp30 ns.WaypointID - wp31 ns.WaypointID - wp32 ns.WaypointID - wp33 ns.WaypointID - wp34 ns.WaypointID - wp35 ns.WaypointID - wp36 ns.WaypointID - wp37 ns.WaypointID - wp38 ns.WaypointID - wp39 ns.WaypointID - wp40 ns.WaypointID - wp41 [5]ns.WaypointID - wp42 [5]ns.WaypointID - wp43 ns.WaypointID - gvar44 ns.WaypointGroupID - gvar45 int - gvar46 int - gvar47 int - gvar48 int - gvar49 int - obj50 ns.ObjectID - obj51 ns.ObjectID - ivar52 int - gvar53 int - gvar54 int - fvar55 float32 - fvar56 float32 - flag57 bool - flag58 bool - flag59 bool - flag60 bool - flag61 bool - flag62 bool - flag63 bool - flag64 bool - flag65 bool - flag66 bool - flag67 bool - flag68 bool - flag69 bool - flag70 bool - flag71 bool - flag72 bool - flag73 bool -) - -func init() { - gvar45 = 0 - gvar46 = 1 - gvar47 = 2 - gvar48 = 3 - gvar49 = 4 - ivar52 = 1400 - gvar53 = gvar45 - gvar54 = gvar48 - flag57 = false - flag58 = false - flag59 = false - flag60 = false - flag61 = false - flag62 = false - flag63 = false - flag64 = false - flag65 = false - flag66 = false - flag67 = false - flag68 = false - flag69 = false - flag70 = false - flag71 = false - flag72 = false - flag73 = false -} -func PlayerDeath() { - ns.DeathScreen(9) -} -func MapInitialize() { - obj4 = ns.Object("LoneWolf01") - obj5 = ns.Object("Skel01a") - obj6 = ns.Object("Skel02a") - obj7 = ns.Object("Skel03a") - obj8 = ns.Object("SquadLeader") - obj9 = ns.Object("Cain") - obj10 = ns.Object("Cain2") - obj11 = ns.Object("CainWolf01") - obj12 = ns.Object("CainWolf02") - obj13 = ns.Object("CainWolf03") - obj14 = ns.Object("Necromancer1") - obj15 = ns.Object("Necromancer2") - obj16 = ns.Object("Necromancer") - obj17 = ns.Object("NecroStart") - obj18 = ns.Object("Lich") - obj19 = ns.Object("KeepOutTrigger") - obj20 = ns.Object("TreasureLight") - gvar21 = ns.ObjectGroup("GoldTrapSpikes") - gvar22 = ns.ObjectGroup("WolfCaveTriggers") - gvar23 = ns.ObjectGroup("SkeletonSquad") - gvar25 = ns.ObjectGroup("NecroTriggers") - gvar24 = ns.ObjectGroup("ElevatorGroup1") - gvar26 = ns.ObjectGroup("SkeletonMarchTriggers") - gvar27 = ns.WallGroup("SecretHallWalls01") - gvar28 = ns.WallGroup("NecroWalls") - gvar29 = ns.WallGroup("NecroSafetyWalls") - wp30 = ns.Waypoint("NecroWP") - wp31 = ns.Waypoint("GoldTrapWP1") - wp32 = ns.Waypoint("GoldTrapWP2") - wp33 = ns.Waypoint("GoldTrapWP3") - wp34 = ns.Waypoint("GoldTrapWP4") - wp37 = ns.Waypoint("WolfCreateWP01") - wp38 = ns.Waypoint("WolfCreateWP02") - wp39 = ns.Waypoint("LoneWolf01DestWP") - wp40 = ns.Waypoint("Wolf01FacingWP") - wp35 = ns.Waypoint("WolfCreate01Dest") - wp36 = ns.Waypoint("WolfCreate02Dest") - wp41[0] = ns.Waypoint("TeleWP0") - wp41[1] = ns.Waypoint("TeleWP1") - wp41[2] = ns.Waypoint("TeleWP2") - wp41[3] = ns.Waypoint("TeleWP3") - wp41[4] = ns.Waypoint("TeleWP4") - wp42[0] = ns.Waypoint("WallSmokeWP0") - wp42[1] = ns.Waypoint("WallSmokeWP1") - wp42[2] = ns.Waypoint("WallSmokeWP2") - wp42[3] = ns.Waypoint("WallSmokeWP3") - wp42[4] = ns.Waypoint("WallSmokeWP4") - wp43 = ns.Waypoint("PlayerSounds") - gvar44 = ns.WaypointGroup("SearchNetwork1") - ns.StoryPic(obj9, "WoundedConjurerPic") - ns.StoryPic(obj10, "WoundedConjurerPic") - ns.StoryPic(obj16, "NecromancerPic") - ns.UnBlind() -} -func PlaySwamp() { - ns.Music(25, 100) -} -func PlayAction() { - ns.Music(26, 100) -} -func PlayAction2() { - ns.Music(28, 100) -} -func PlayMordwyn() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Music(21, 100) -LABEL1: - return -} -func PlayOgre() { - ns.Music(7, 100) -} -func PlayCaves() { - ns.Music(18, 100) -} -func PlayWasteland() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Music(19, 100) -LABEL1: - return -} -func Patrol() { - ns.Wander(ns.GetTrigger()) -} -func GoMedieval() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.AggressionLevel(ns.GetTrigger(), 0.83) -LABEL1: - return -} -func GoNormal() { - ns.AggressionLevel(ns.GetTrigger(), 0.5) -} -func StopAndListen() { - var v0 int - v0 = ns.Random(1, 3) - if !(ns.IsCaller(ns.GetHost()) && v0 == 1) { - goto LABEL1 - } - ns.PauseObject(ns.GetTrigger(), 45) - ns.LookAtObject(ns.GetTrigger(), ns.GetCaller()) - if !ns.IsVisibleTo(ns.GetTrigger(), ns.GetCaller()) { - goto LABEL2 - } - ns.AggressionLevel(ns.GetTrigger(), 0.5) - goto LABEL1 -LABEL2: - ns.CreatureIdle(ns.GetTrigger()) -LABEL1: - return -} -func ReturnHome() { - ns.AggressionLevel(ns.GetTrigger(), 0.5) - ns.GoBackHome(ns.GetTrigger()) -} -func DisableGoldTrapSpikes() { - ns.ObjectGroupOff(gvar21) -} -func TriggerGoldTrapPoison() { - ns.CastSpellLocationLocation(ns.SPELL_TOXIC_CLOUD, ns.GetWaypointX(wp31), ns.GetWaypointY(wp31), 0, 0) - ns.CastSpellLocationLocation(ns.SPELL_TOXIC_CLOUD, ns.GetWaypointX(wp32), ns.GetWaypointY(wp32), 0, 0) - ns.CastSpellLocationLocation(ns.SPELL_TOXIC_CLOUD, ns.GetWaypointX(wp33), ns.GetWaypointY(wp33), 0, 0) - ns.CastSpellLocationLocation(ns.SPELL_TOXIC_CLOUD, ns.GetWaypointX(wp34), ns.GetWaypointY(wp34), 0, 0) -} -func TriggerGoldTrap() { - ns.ObjectGroupOn(gvar21) - ns.FrameTimer(20, TriggerGoldTrapPoison) -} -func ToggleElevatorGroup1() { - ns.ObjectGroupToggle(gvar24) -} -func DisableTL() { - ns.ObjectOff(obj20) -} -func WolfOrders() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 float32 - v5 float32 - ) - v0 = ns.GetWaypointX(wp35) - v1 = ns.GetWaypointY(wp35) - v2 = ns.GetWaypointX(wp36) - v3 = ns.GetWaypointY(wp36) - v4 = ns.GetWaypointX(wp39) - v5 = ns.GetWaypointY(wp39) - ns.CreatureGuard(obj50, v0, v1, v4, v5, 350) - ns.CreatureGuard(obj51, v2, v3, v4, v5, 350) - ns.AggressionLevel(obj50, 0.83) - ns.AggressionLevel(obj51, 0.83) -} -func CainDialogStart() { - var v0 int - v0 = gvar53 - if v0 == gvar45 { - goto LABEL1 - } - if v0 == gvar46 { - goto LABEL2 - } - if v0 == gvar47 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - ns.TellStory(ns.SwordsmanHurt, "War09c:CainAsk") - flag57 = true - goto LABEL4 -LABEL2: - ns.TellStory(ns.SwordsmanHurt, "War09c:CainHealed") - flag57 = true - goto LABEL4 -LABEL3: - ns.TellStory(ns.SwordsmanHurt, "War09c:CainEscort") - flag57 = true - goto LABEL4 -LABEL4: - return -} -func CainDialogEnd() { - var ( - v0 int - v1 ns.ObjectID - v2 int - ) - v2 = gvar53 - if v2 == gvar45 { - goto LABEL1 - } - if v2 == gvar46 { - goto LABEL2 - } - if v2 == gvar47 { - goto LABEL3 - } - goto LABEL4 -LABEL1: - v0 = ns.GetAnswer(obj9) - if v0 != 1 { - goto LABEL5 - } - v1 = ns.GetLastItem(ns.GetHost()) - for { - if v1 == 0 { - goto LABEL6 - } - if !(ns.HasClass(v1, ns.FOOD) && ns.HasSubclass(v1, ns.HEALTH_POTION)) { - goto LABEL7 - } - ns.Drop(ns.GetHost(), v1) - ns.Delete(v1) - fvar55 = ns.GetObjectX(obj9) - fvar56 = ns.GetObjectY(obj9) - CainRescue() - return - LABEL7: - v1 = ns.GetPreviousItem(v1) - } -LABEL6: - ns.PrintToAll("War09c:CainNoPotion") - goto LABEL9 -LABEL5: - ns.FrameTimer(1, CainPlea2) -LABEL9: - goto LABEL4 -LABEL2: - ns.CreatureFollow(obj10, ns.GetHost()) - ns.BecomePet(obj10) - ns.PrintToAll("War09c:SavedCain") - ns.GiveXp(ns.GetHost(), 2500) - ns.CancelDialog(obj10) - flag61 = true - gvar53 = gvar47 - goto LABEL4 -LABEL3: - goto LABEL4 -LABEL4: - return -} -func LichFight() { - ns.ObjectOn(obj18) - ns.Enchant(obj18, ns.ENCHANT_INVISIBLE, 3) - ns.MoveObject(obj18, ns.GetWaypointX(wp41[3]), ns.GetWaypointY(wp41[3])) - ns.Effect(ns.BLUE_SPARKS, ns.GetWaypointX(wp41[3]), ns.GetWaypointY(wp41[3]), 0, 0) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp41[3]), ns.GetWaypointY(wp41[3]), 0, 0) -} -func NecroTalk() { - if !ns.IsCaller(obj16) { - goto LABEL1 - } - ns.ObjectOff(obj17) - ns.SetDialog(obj16, ns.NORMAL, NecroDialogStart, NecroDialogEnd) - ns.StartDialog(obj16, ns.GetHost()) -LABEL1: - return -} -func MoveBody() { - ns.Delete(obj9) - ns.MoveObject(obj10, fvar55, fvar56) -} -func StartNecroFight2() { - ns.Frozen(ns.GetHost(), true) - ns.WideScreen(true) - ns.Walk(obj16, ns.GetWaypointX(wp30), ns.GetWaypointY(wp30)) -} -func WolfHarass2() { - var ( - v0 int - v1 int - v2 int - ) - v0 = ns.Random(40, 65) - v1 = ns.Random(0, 2) - if ns.IsObjectOn(obj11) { - goto LABEL1 - } - ns.ObjectOn(obj11) - ns.ObjectOn(obj12) - ns.ObjectOn(obj13) -LABEL1: - v2 = v1 - if v2 == 0 { - goto LABEL2 - } - if v2 == 1 { - goto LABEL3 - } - if v2 == 2 { - goto LABEL4 - } - goto LABEL5 -LABEL2: - if !(flag58 == false && flag63 == false) { - goto LABEL6 - } - ns.HitLocation(obj11, ns.GetObjectX(obj9), ns.GetObjectY(obj9)) - goto LABEL7 -LABEL6: - v0 = 2 -LABEL7: - goto LABEL5 -LABEL3: - if !(flag59 == false && flag64 == false) { - goto LABEL8 - } - ns.HitLocation(obj12, ns.GetObjectX(obj9), ns.GetObjectY(obj9)) - goto LABEL9 -LABEL8: - v0 = 2 -LABEL9: - goto LABEL5 -LABEL4: - if !(flag60 == false && flag65 == false) { - goto LABEL10 - } - ns.HitLocation(obj13, ns.GetObjectX(obj9), ns.GetObjectY(obj9)) - goto LABEL11 -LABEL10: - v0 = 2 -LABEL11: - goto LABEL5 -LABEL5: - if !(flag63 == false || flag64 == false || flag65 == false) { - goto LABEL12 - } - ns.FrameTimer(v0, WolfHarass2) - goto LABEL13 -LABEL12: - return -LABEL13: - return -} -func CainPlea2() { - ns.Chat(obj9, "War09c:CainPlea2") -} -func MapEntry() { - ns.NoWallSound(false) -} -func KeepOut() { - r1 := ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) - if !r1 { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func KeepOut2() { - if flag69 { - goto LABEL1 - } - if !ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - return -} -func Secret01Declare() { - ns.ObjectOff(ns.GetTrigger()) - ns.MoveWaypoint(wp43, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.AudioEvent(ns.SecretFound, wp43) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 75) -} -func Secret02Declare() { - ns.ObjectOff(ns.GetTrigger()) - ns.MoveWaypoint(wp43, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.AudioEvent(ns.SecretFound, wp43) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 150) -} -func SkeletonMarch() { - ns.ObjectGroupOff(gvar26) - ns.ObjectGroupOn(gvar23) - ns.Wander(obj5) - ns.Wander(obj6) - ns.Wander(obj7) - ns.Wander(obj8) -} -func LoneWolf01Retreat() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - ) - v0 = ns.GetWaypointX(wp39) - v1 = ns.GetWaypointY(wp39) - v2 = ns.GetWaypointX(wp40) - v3 = ns.GetWaypointY(wp40) - ns.RetreatLevel(obj4, 0) - ns.CreatureGuard(obj4, v0, v1, v2, v3, 150) -} -func WolfAmbush() { - ns.ObjectGroupOff(gvar22) - obj50 = ns.CreateObject("BlackWolf", wp37) - obj51 = ns.CreateObject("BlackWolf", wp38) - ns.FrameTimer(1, WolfOrders) -} -func HomePatrol() { - ns.AggressionLevel(ns.GetTrigger(), 0.83) - ns.GoBackHome(ns.GetTrigger()) - ns.PauseObject(ns.GetTrigger(), 120) - ns.Wander(ns.GetTrigger()) -} -func WolfGone() { - if !ns.IsTrigger(obj11) { - goto LABEL1 - } - flag58 = true - if !(ns.CurrentHealth(obj11) > 0) { - goto LABEL1 - } - ns.AggressionLevel(obj11, 0.5) -LABEL1: - if !ns.IsTrigger(obj12) { - goto LABEL2 - } - flag59 = true - if !(ns.CurrentHealth(obj12) > 0) { - goto LABEL2 - } - ns.AggressionLevel(obj12, 0.5) -LABEL2: - if !ns.IsTrigger(obj13) { - goto LABEL3 - } - flag60 = true - if !(ns.CurrentHealth(obj13) > 0) { - goto LABEL3 - } - ns.AggressionLevel(obj13, 0.5) -LABEL3: - if !(flag58 == true && flag59 == true && flag60 == true) { - goto LABEL4 - } - ns.DestroyChat(obj9) - flag57 = true - gvar54 = gvar49 - ns.SetDialog(obj9, ns.YESNO, CainDialogStart, CainDialogEnd) -LABEL4: - return -} -func CainPlea() { - var v0 int - if !(ns.IsCaller(ns.GetHost()) && ns.CurrentHealth(obj9) > 0) { - goto LABEL1 - } - v0 = gvar54 - if v0 == gvar48 { - goto LABEL2 - } - if v0 == gvar49 { - goto LABEL3 - } - goto LABEL1 -LABEL2: - ns.Chat(obj9, "War09c:CainPlea") - goto LABEL1 -LABEL3: - ns.Chat(obj9, "War09c:CainPlea2") - goto LABEL1 -LABEL1: - return -} -func WolfHarass() { - r1 := ns.IsAttackedBy(ns.GetCaller(), ns.GetHost()) - if !(r1 && flag61 == false) { - goto LABEL1 - } - ns.GoBackHome(ns.GetCaller()) -LABEL1: - if !ns.IsCaller(ns.GetHost()) { - goto LABEL2 - } - if !(flag61 == false && flag62 == false) { - goto LABEL2 - } - WolfHarass2() -LABEL2: - return -} -func WolvesTargetPlayer() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - if flag58 { - goto LABEL2 - } - flag63 = true - ns.AggressionLevel(obj11, 0.5) - ns.Attack(obj11, ns.GetHost()) -LABEL2: - if flag59 { - goto LABEL3 - } - flag64 = true - ns.AggressionLevel(obj12, 0.5) - ns.Attack(obj12, ns.GetHost()) -LABEL3: - if flag60 { - goto LABEL1 - } - flag65 = true - ns.AggressionLevel(obj13, 0.5) - ns.Attack(obj13, ns.GetHost()) -LABEL1: - return -} -func CainDie() { - if !(ns.CurrentHealth(obj11) > 0) { - goto LABEL1 - } - ns.AggressionLevel(obj11, 0.83) -LABEL1: - if !(ns.CurrentHealth(obj12) > 0) { - goto LABEL2 - } - ns.AggressionLevel(obj12, 0.83) -LABEL2: - if !(ns.CurrentHealth(obj13) > 0) { - goto LABEL3 - } - ns.AggressionLevel(obj13, 0.83) -LABEL3: - fvar55 = ns.GetObjectX(obj9) - fvar56 = ns.GetObjectY(obj9) - flag62 = true - ns.ObjectOn(obj10) - ns.Damage(obj10, 0, 200000, 0) - ns.FrameTimer(1, MoveBody) -} -func CainRescue() { - ns.Delete(obj9) - ns.MoveObject(obj10, fvar55, fvar56) - ns.ObjectOn(obj10) - ns.CreatureGuard(obj10, fvar55, fvar56, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) - gvar53 = gvar46 - ns.SetDialog(obj10, ns.NORMAL, CainDialogStart, CainDialogEnd) - ns.LookAtObject(obj10, ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj10) - ns.StartDialog(obj10, ns.GetHost()) -} -func NecroDialogStart() { - var ( - v0 int - v1 int - ) - v0 = ns.Random(1, 2) - v1 = v0 - if v1 == 1 { - goto LABEL1 - } - if v1 == 2 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - ns.LookAtObject(obj16, ns.GetHost()) - ns.LookAtObject(obj15, ns.GetHost()) - ns.LookAtObject(obj14, ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj16) - ns.TellStory(ns.SwordsmanHurt, "Con09a:NecroThreat1") - goto LABEL3 -LABEL2: - ns.LookAtObject(obj16, ns.GetHost()) - ns.LookAtObject(obj15, ns.GetHost()) - ns.LookAtObject(obj14, ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj16) - ns.TellStory(ns.SwordsmanHurt, "Con09a:NecroThreat4") - goto LABEL3 -LABEL3: - return -} -func NecroDialogEnd() { - ns.CancelDialog(obj16) - ns.AggressionLevel(obj14, 0.83) - ns.AggressionLevel(obj15, 0.83) - ns.AggressionLevel(obj16, 0.83) - ns.CreatureIdle(obj14) - ns.CreatureIdle(obj15) - ns.Frozen(ns.GetHost(), false) - ns.WideScreen(false) - ns.FrameTimer(ivar52, LichFight) -} -func StartNecroFight() { - var v0 int - ns.WayPointGroupOff(gvar44) - ns.ObjectOff(obj19) - ns.ObjectGroupOff(gvar25) - ns.ObjectOn(obj17) - ns.ObjectOn(obj14) - ns.ObjectOn(obj15) - ns.ObjectOn(obj16) - ns.NoWallSound(true) - ns.WallGroupOpen(gvar29) - ns.NoWallSound(false) - ns.MusicPushEvent() - PlayAction2() - ns.WallGroupClose(gvar28) - v0 = 0 - for { - if !(v0 < 5) { - goto LABEL1 - } - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp42[v0]), ns.GetWaypointY(wp42[v0]), 0, 0) - v0 += 1 - } -LABEL1: - ns.FrameTimer(1, StartNecroFight2) -} -func NecroTeleport() { - var ( - v0 float32 - v1 float32 - v2 int - ) - v2 = ns.Random(0, 4) - v0 = ns.GetWaypointX(wp41[v2]) - v1 = ns.GetWaypointY(wp41[v2]) - if !(ns.IsCaller(obj14) || ns.IsCaller(obj15) || ns.IsCaller(obj16) || ns.IsCaller(obj18)) { - goto LABEL1 - } - ns.Enchant(ns.GetCaller(), ns.ENCHANT_INVISIBLE, 2) - ns.Effect(ns.BLUE_SPARKS, ns.GetObjectX(ns.GetCaller()), ns.GetObjectY(ns.GetCaller()), 0, 0) - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(ns.GetCaller()), ns.GetObjectY(ns.GetCaller()), 0, 0) - ns.MoveObject(ns.GetCaller(), v0, v1) - ns.Effect(ns.BLUE_SPARKS, v0, v1, 0, 0) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) -LABEL1: - return -} -func NecroTeleportInjured() { - var ( - v0 float32 - v1 float32 - v2 int - ) - v2 = ns.Random(0, 4) - v0 = ns.GetWaypointX(wp41[v2]) - v1 = ns.GetWaypointY(wp41[v2]) - if !(ns.IsTrigger(obj14) || ns.IsTrigger(obj15) || ns.IsTrigger(obj16)) { - goto LABEL1 - } - ns.PauseObject(ns.GetTrigger(), 15) -LABEL1: - ns.Enchant(ns.GetTrigger(), ns.ENCHANT_INVISIBLE, 2) - ns.Effect(ns.BLUE_SPARKS, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger()), 0, 0) - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger()), 0, 0) - ns.MoveObject(ns.GetTrigger(), v0, v1) - ns.Effect(ns.BLUE_SPARKS, v0, v1, 0, 0) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) -} -func HuntPlayer() { - ns.CreatureHunt(ns.GetTrigger()) -} -func OpenMagicWalls() { - var v0 int - if !ns.IsTrigger(obj14) { - goto LABEL1 - } - flag66 = true -LABEL1: - if !ns.IsTrigger(obj15) { - goto LABEL2 - } - flag67 = true -LABEL2: - if !ns.IsTrigger(obj16) { - goto LABEL3 - } - flag68 = true -LABEL3: - if !ns.IsTrigger(obj18) { - goto LABEL4 - } - flag69 = true -LABEL4: - if !(flag66 == true && flag67 == true && flag68 == true && flag69 == true) { - goto LABEL5 - } - ns.WallGroupOpen(gvar28) - v0 = 0 - for { - if !(v0 < 5) { - goto LABEL6 - } - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp42[v0]), ns.GetWaypointY(wp42[v0]), 0, 0) - v0 += 1 - } -LABEL6: - ns.WayPointGroupOn(gvar44) - ns.MusicPopEvent() -LABEL5: - return -} -func TeleportToPlayer() { - var ( - v0 int - v1 float32 - v2 float32 - v3 ns.WaypointID - ) - v2 = 1e+06 - v0 = 0 - for { - if !(v0 < 5) { - goto LABEL1 - } - v1 = ns.Distance(ns.GetWaypointX(wp41[v0]), ns.GetWaypointY(wp41[v0]), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - if !(v1 < v2) { - goto LABEL2 - } - v2 = v1 - v3 = wp41[v0] - LABEL2: - v0 += 1 - } -LABEL1: - ns.Enchant(obj18, ns.ENCHANT_INVISIBLE, 1) - ns.Effect(ns.BLUE_SPARKS, ns.GetObjectX(obj18), ns.GetObjectY(obj18), 0, 0) - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(obj18), ns.GetObjectY(obj18), 0, 0) - ns.MoveObject(obj18, ns.GetWaypointX(v3), ns.GetWaypointY(v3)) - ns.Effect(ns.BLUE_SPARKS, ns.GetWaypointX(v3), ns.GetWaypointY(v3), 0, 0) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(v3), ns.GetWaypointY(v3), 0, 0) -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapInitialize": - MapInitialize() - case "MapEntry": - MapEntry() - } -} diff --git a/examples/wiz10a/dummy_test.go b/examples/wiz10a/dummy_test.go deleted file mode 100644 index fed8186..0000000 --- a/examples/wiz10a/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package wiz10a - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/wiz10a/wiz10a.go b/examples/wiz10a/wiz10a.go deleted file mode 100644 index 35af324..0000000 --- a/examples/wiz10a/wiz10a.go +++ /dev/null @@ -1,824 +0,0 @@ -package wiz10a - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 ns.ObjectID - obj5 ns.ObjectID - obj6 ns.ObjectID - obj7 ns.ObjectID - obj8 ns.ObjectID - obj9 ns.ObjectID - obj10 ns.ObjectID - obj11 ns.ObjectID - obj12 ns.ObjectID - obj13 ns.ObjectID - obj14 ns.ObjectID - obj15 ns.ObjectID - obj16 ns.ObjectID - obj17 ns.ObjectID - obj18 ns.ObjectID - obj19 ns.ObjectID - obj20 ns.ObjectID - obj21 ns.ObjectID - obj22 ns.ObjectID - obj23 ns.ObjectID - obj24 ns.ObjectID - obj25 ns.ObjectID - obj26 ns.ObjectID - obj27 ns.ObjectID - obj28 ns.ObjectID - obj29 ns.ObjectID - obj30 ns.ObjectID - obj31 ns.ObjectID - obj32 ns.ObjectID - obj33 ns.ObjectID - obj34 ns.ObjectID - obj35 ns.ObjectID - obj36 ns.ObjectID - obj37 ns.ObjectID - obj38 ns.ObjectID - obj39 ns.ObjectID - obj40 ns.ObjectID - obj41 ns.ObjectID - obj42 ns.ObjectID - obj43 ns.ObjectID - obj44 ns.ObjectID - obj45 ns.ObjectID - obj46 ns.ObjectID - obj47 ns.ObjectID - gvar48 ns.ObjectGroupID - wp49 ns.WaypointID - wp50 ns.WaypointID - wp51 ns.WaypointID - wp52 ns.WaypointID - wp53 ns.WaypointID - wp54 ns.WaypointID - wp55 ns.WaypointID - wp56 ns.WaypointID - wp57 ns.WaypointID - wp58 ns.WaypointID - wp59 ns.WaypointID - wp60 ns.WaypointID - wp61 ns.WaypointID - gvar62 ns.WallGroupID - gvar63 ns.WallGroupID - gvar64 ns.WallGroupID - gvar65 ns.ObjectGroupID - gvar66 ns.ObjectGroupID - gvar67 ns.ObjectGroupID - gvar68 ns.ObjectGroupID - gvar69 ns.ObjectGroupID - gvar70 ns.ObjectGroupID - flag71 bool - flag72 bool - flag73 bool - flag74 bool - gvar75 ns.WallGroupID - gvar76 ns.WallGroupID - gvar77 ns.WallGroupID - gvar78 ns.ObjectGroupID - obj79 ns.ObjectID - obj80 ns.ObjectID - gvar81 ns.WallGroupID - flag82 bool - flag83 bool - wp84 ns.WaypointID - wp85 ns.WaypointID - obj86 ns.ObjectID - obj87 ns.ObjectID - wp88 ns.WaypointID - wp89 ns.WaypointID - obj90 ns.ObjectID - gvar91 ns.WallGroupID - gvar92 ns.WallGroupID - gvar93 ns.ObjectGroupID - gvar94 ns.ObjectGroupID - gvar95 ns.ObjectGroupID - gvar96 ns.ObjectGroupID - gvar97 ns.ObjectGroupID - gvar98 ns.ObjectGroupID - wp99 ns.WaypointID - wp100 ns.WaypointID - wp101 ns.WaypointID - wp102 ns.WaypointID - wp103 ns.WaypointID - wp104 ns.WaypointID - obj105 ns.ObjectID - obj106 ns.ObjectID - wp107 ns.WaypointID - gvar108 ns.ObjectGroupID - obj109 ns.ObjectID - obj110 ns.ObjectID - gvar111 int - wp112 ns.WaypointID - wp113 ns.WaypointID - gvar114 ns.WallGroupID - gvar115 ns.WallGroupID - gvar116 ns.ObjectGroupID - gvar117 ns.WallGroupID - gvar118 ns.WallGroupID - wp119 ns.WaypointID - obj120 ns.ObjectID - obj121 ns.ObjectID - obj122 ns.ObjectID - wp123 ns.WaypointID - wp124 ns.WaypointID - fvar125 float32 - fvar126 float32 - flag127 bool - flag128 bool -) - -func init() { - flag71 = false - flag72 = false - flag73 = false - flag74 = false - flag83 = false - flag82 = false - flag127 = false - flag128 = false -} -func DisableArrow01() { - ns.ObjectOff(obj4) -} -func EnableArrow01() { - ns.ObjectOn(obj4) - ns.FrameTimer(1, DisableArrow01) -} -func DisableArrow02() { - ns.ObjectOff(obj5) -} -func EnableArrow02() { - ns.ObjectOn(obj5) - ns.FrameTimer(1, DisableArrow02) -} -func DisableArrow03() { - ns.ObjectOff(obj6) -} -func EnableArrow03() { - ns.ObjectOn(obj6) - ns.FrameTimer(1, DisableArrow03) -} -func DisableArrow04() { - ns.ObjectOff(obj7) -} -func EnableArrow04() { - ns.ObjectOn(obj7) - ns.FrameTimer(1, DisableArrow04) -} -func DisableArrow05() { - ns.ObjectOff(obj8) -} -func EnableArrow05() { - ns.ObjectOn(obj8) - ns.FrameTimer(1, DisableArrow05) -} -func DisableArrow06() { - ns.ObjectOff(obj9) -} -func EnableArrow06() { - ns.ObjectOn(obj9) - ns.FrameTimer(1, DisableArrow06) -} -func DisableArrow07() { - ns.ObjectOff(obj10) -} -func EnableArrow07() { - ns.ObjectOn(obj10) - ns.FrameTimer(1, DisableArrow07) -} -func DisableArrow08() { - ns.ObjectOff(obj11) -} -func EnableArrow08() { - ns.ObjectOn(obj11) - ns.FrameTimer(1, DisableArrow08) -} -func DisableArrow09() { - ns.ObjectOff(obj12) -} -func EnableArrow09() { - ns.ObjectOn(obj12) - ns.FrameTimer(1, DisableArrow09) -} -func DisableArrow10() { - ns.ObjectOff(obj13) -} -func EnableArrow10() { - ns.ObjectOn(obj13) - ns.FrameTimer(1, DisableArrow10) -} -func DisableArrow11() { - ns.ObjectOff(obj14) -} -func EnableArrow11() { - ns.ObjectOn(obj14) - ns.FrameTimer(1, DisableArrow11) -} -func DisableArrow12() { - ns.ObjectOff(obj15) -} -func EnableArrow12() { - ns.ObjectOn(obj15) - ns.FrameTimer(1, DisableArrow12) -} -func DisableArrow13() { - ns.ObjectOff(obj16) -} -func EnableArrow13() { - ns.ObjectOn(obj16) - ns.FrameTimer(1, DisableArrow13) -} -func DisableArrow14() { - ns.ObjectOff(obj17) -} -func EnableArrow14() { - ns.ObjectOn(obj17) - ns.FrameTimer(1, DisableArrow14) -} -func DisableArrow15() { - ns.ObjectOff(obj18) -} -func EnableArrow15() { - ns.ObjectOn(obj18) - ns.FrameTimer(1, DisableArrow15) -} -func DisableArrow25() { - ns.ObjectOff(obj28) -} -func EnableArrow25() { - ns.ObjectOn(obj28) - ns.FrameTimer(1, DisableArrow25) -} -func DisableArrow26() { - ns.ObjectOff(obj29) -} -func EnableArrow26() { - ns.ObjectOn(obj29) - ns.FrameTimer(1, DisableArrow26) -} -func DisableArrow27() { - ns.ObjectOff(obj30) -} -func EnableArrow27() { - ns.ObjectOn(obj30) - ns.FrameTimer(1, DisableArrow27) -} -func DisableArrow28() { - ns.ObjectOff(obj31) -} -func EnableArrow28() { - ns.ObjectOn(obj31) - ns.FrameTimer(1, DisableArrow28) -} -func DisableArrow29() { - ns.ObjectOff(obj32) -} -func EnableArrow29() { - ns.ObjectOn(obj32) - ns.FrameTimer(1, DisableArrow29) -} -func DisableArrow30() { - ns.ObjectOff(obj33) -} -func EnableArrow30() { - ns.ObjectOn(obj33) - ns.FrameTimer(1, DisableArrow30) -} -func DisableArrow31() { - ns.ObjectOff(obj34) -} -func EnableArrow31() { - ns.ObjectOn(obj34) - ns.FrameTimer(1, DisableArrow31) -} -func DisableArrow32() { - ns.ObjectOff(obj35) -} -func EnableArrow32() { - ns.ObjectOn(obj35) - ns.FrameTimer(1, DisableArrow32) -} -func DisableArrow33() { - ns.ObjectOff(obj36) -} -func EnableArrow33() { - ns.ObjectOn(obj36) - ns.FrameTimer(1, DisableArrow33) -} -func DisableArrow34() { - ns.ObjectOff(obj37) -} -func EnableArrow34() { - ns.ObjectOn(obj37) - ns.FrameTimer(1, DisableArrow34) -} -func DisableArrow35() { - ns.ObjectOff(obj38) -} -func EnableArrow35() { - ns.ObjectOn(obj38) - ns.FrameTimer(1, DisableArrow35) -} -func DisableArrow36() { - ns.ObjectOff(obj39) -} -func EnableArrow36() { - ns.ObjectOn(obj39) - ns.FrameTimer(1, DisableArrow36) -} -func DisableArrow37() { - ns.ObjectOff(obj40) -} -func EnableArrow37() { - ns.ObjectOn(obj40) - ns.FrameTimer(1, DisableArrow37) -} -func DisableArrow38() { - ns.ObjectOff(obj41) -} -func EnableArrow38() { - ns.ObjectOn(obj41) - ns.FrameTimer(1, DisableArrow38) -} -func DisableArrowGroup1() { - ns.ObjectOff(obj19) - ns.ObjectOff(obj20) - ns.ObjectOff(obj21) - ns.ObjectOff(obj22) -} -func EnableArrowGroup1() { - ns.ObjectOn(obj19) - ns.ObjectOn(obj20) - ns.ObjectOn(obj21) - ns.ObjectOn(obj22) - ns.FrameTimer(2, DisableArrowGroup1) -} -func DisableArrowGroup2() { - ns.ObjectOff(obj24) - ns.ObjectOff(obj25) - ns.ObjectOff(obj26) - ns.ObjectOff(obj27) -} -func EnableArrowGroup2() { - ns.ObjectOn(obj24) - ns.ObjectOn(obj25) - ns.ObjectOn(obj26) - ns.ObjectOn(obj27) - ns.FrameTimer(2, DisableArrowGroup2) -} -func Blocks2MoveBack() { - ns.Move(obj45, wp55) - ns.Move(obj46, wp56) - ns.Move(obj47, wp57) - ns.AudioEvent(ns.SpikeBlockMove, wp52) -} -func Blocks2Move() { - ns.ObjectGroupOff(gvar48) - ns.Move(obj45, wp52) - ns.Move(obj46, wp53) - ns.Move(obj47, wp54) - ns.AudioEvent(ns.SpikeBlockMove, wp55) -} -func OpenBlockWallGroup1() { - ns.WallGroupOpen(gvar62) -} -func OpenBlockWallGroup2() { - ns.WallGroupOpen(gvar63) -} -func OpenBlockWallGroup3() { - ns.WallGroupOpen(gvar64) -} -func FilterBlock5() int { - if !ns.IsCaller(obj46) { - goto LABEL1 - } - return 1 - goto LABEL2 -LABEL1: - return 0 -LABEL2: - return 0 -} -func EnableSpikeGroup1() { - ns.ObjectGroupOn(gvar78) - ns.AudioEvent(ns.FloorSpikesUp, wp53) -} -func UnlockSpikeDoor() { - ns.UnlockDoor(obj79) -} -func LockSpikeDoor() { - ns.LockDoor(obj79) -} -func SkelGroup1Hostilize() { - ns.GroupAggressionLevel(gvar65, 0.83) -} -func SkelGroup2Hostilize() { - ns.GroupAggressionLevel(gvar66, 0.83) -} -func SkelGroup3Hostilize() { - ns.GroupAggressionLevel(gvar67, 0.83) -} -func SkelGroup4Hostilize() { - ns.GroupAggressionLevel(gvar68, 0.83) -} -func SkelGroup5Hostilize() { - ns.GroupAggressionLevel(gvar69, 0.83) -} -func SkelGroup6Hostilize() { - ns.GroupAggressionLevel(gvar70, 0.83) -} -func OpenSecretWallGroup1() { - ns.WallGroupOpen(gvar75) -} -func OpenSecretWallGroup2() { - ns.WallGroupOpen(gvar76) -} -func OpenSecretWallGroup3() { - ns.WallGroupOpen(gvar77) -} -func Blocks1Move() { - ns.Move(obj42, wp49) - ns.Move(obj43, wp50) - ns.Move(obj44, wp51) - ns.AudioEvent(ns.SpikeBlockMove, wp58) - ns.AudioEvent(ns.SpikeBlockMove, wp60) - ns.AudioEvent(ns.SpikeBlockMove, wp61) -} -func Lever1Check() { - ns.WallGroupOpen(gvar63) - if flag71 { - goto LABEL1 - } - flag71 = true - ns.AudioEvent(ns.Gear3, wp61) - ns.ObjectOff(ns.GetTrigger()) -LABEL1: - if !(flag71 == true && flag72 == true) { - goto LABEL2 - } - Blocks1Move() -LABEL2: - return -} -func Lever2Check() { - ns.WallGroupOpen(gvar62) - if flag72 { - goto LABEL1 - } - flag72 = true - ns.AudioEvent(ns.Gear3, wp60) - ns.ObjectOff(ns.GetTrigger()) -LABEL1: - if !(flag71 == true && flag72 == true) { - goto LABEL2 - } - Blocks1Move() -LABEL2: - return -} -func Lever3Check() { - if flag73 { - goto LABEL1 - } - flag73 = true - ns.AudioEvent(ns.Gear3, wp59) - ns.ObjectOff(ns.GetTrigger()) -LABEL1: - if !(flag73 == true && flag74 == true) { - goto LABEL2 - } - OpenSecretWallGroup3() - ns.ObjectOn(obj80) -LABEL2: - return -} -func Lever4Check() { - if flag74 { - goto LABEL1 - } - flag74 = true - ns.AudioEvent(ns.Gear3, wp59) - ns.ObjectOff(ns.GetTrigger()) -LABEL1: - if !(flag73 == true && flag74 == true) { - goto LABEL2 - } - OpenSecretWallGroup3() - ns.ObjectOn(obj80) -LABEL2: - return -} -func PlayerDeath() { - ns.DeathScreen(10) -} -func OpenExitWallGroup() { - ns.WallGroupOpen(gvar81) -} -func PuzzleCheck() { - if !(flag82 && flag83) { - goto LABEL1 - } - OpenExitWallGroup() -LABEL1: - return -} -func LeftPuzzleActivation() { - flag83 = true - PuzzleCheck() -} -func RightPuzzleActivation() { - flag82 = true - ns.AudioEvent(ns.CreatureCageAppears, wp84) - PuzzleCheck() -} -func LeftPuzzleRelease() { - flag83 = false - ns.AudioEvent(ns.CreatureCageAppears, wp85) - PuzzleCheck() -} -func RightPuzzleRelease() { - flag82 = false - PuzzleCheck() -} -func OrbLightOff() { - ns.ObjectOff(obj86) - ns.MoveObject(obj87, ns.GetWaypointX(wp88), ns.GetWaypointY(wp88)) -} -func ForceOrb() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - ) - v0 = ns.RandomFloat(-30, 30) - v1 = ns.RandomFloat(-30, 30) - v2 = ns.GetObjectX(ns.GetTrigger()) + v0 - v3 = ns.GetObjectY(ns.GetTrigger()) + v1 - ns.MoveObject(obj86, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.MoveObject(obj87, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())+6) - ns.MoveWaypoint(wp89, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.ObjectOn(obj86) - ns.AudioEvent(ns.BallBounce, wp89) - ns.PushObject(ns.GetCaller(), 60, v2, v3) - ns.FrameTimer(4, OrbLightOff) -} -func PlaySubMusic() { - ns.Music(18, 100) -} -func MissionStart() { - ns.StartupScreen(10) - ns.JournalEntry(ns.GetHost(), "War10aOrbQuest", 2) - ns.FrameTimer(10, PlaySubMusic) -} -func InitializeVampireKnights() { - obj120 = ns.Object("VampireKnight1") - obj121 = ns.Object("VKBat1") - wp123 = ns.Waypoint("VampireKnight1WP") - wp124 = ns.Waypoint("BatCreate") -} -func MapInitialize() { - obj90 = ns.Object("MissionTrig") - gvar118 = ns.WallGroup("GoldKeyWallGroup") - wp119 = ns.Waypoint("GoldKeyExitWP") - gvar93 = ns.ObjectGroup("PitAmbushGroup") - gvar91 = ns.WallGroup("SkelPitWallGroup") - gvar92 = ns.WallGroup("ElevatorWallGroup") - gvar94 = ns.ObjectGroup("PitSpikesGroup1") - gvar95 = ns.ObjectGroup("PitSpikesGroup2") - gvar96 = ns.ObjectGroup("PitSpikesGroup3") - gvar97 = ns.ObjectGroup("PitSpikesGroup4") - gvar98 = ns.ObjectGroup("PitSpikesGroup5") - wp99 = ns.Waypoint("Spikes1AudioWP") - wp100 = ns.Waypoint("Spikes2AudioWP") - wp101 = ns.Waypoint("Spikes3AudioWP") - wp102 = ns.Waypoint("Spikes4AudioWP") - wp103 = ns.Waypoint("Spikes5AudioWP") - wp104 = ns.Waypoint("Secret1AudioWP") - obj4 = ns.Object("Arrow01") - obj5 = ns.Object("Arrow02") - obj6 = ns.Object("Arrow03") - obj7 = ns.Object("Arrow04") - obj8 = ns.Object("Arrow05") - obj9 = ns.Object("Arrow06") - obj10 = ns.Object("Arrow07") - obj11 = ns.Object("Arrow08") - obj12 = ns.Object("Arrow09") - obj13 = ns.Object("Arrow10") - obj14 = ns.Object("Arrow11") - obj15 = ns.Object("Arrow12") - obj16 = ns.Object("Arrow13") - obj17 = ns.Object("Arrow14") - obj18 = ns.Object("Arrow15") - obj19 = ns.Object("Arrow16") - obj20 = ns.Object("Arrow17") - obj21 = ns.Object("Arrow18") - obj22 = ns.Object("Arrow19") - obj23 = ns.Object("Arrow20") - obj24 = ns.Object("Arrow21") - obj25 = ns.Object("Arrow22") - obj26 = ns.Object("Arrow23") - obj27 = ns.Object("Arrow24") - obj28 = ns.Object("Arrow25") - obj29 = ns.Object("Arrow26") - obj30 = ns.Object("Arrow27") - obj31 = ns.Object("Arrow28") - obj32 = ns.Object("Arrow29") - obj33 = ns.Object("Arrow30") - obj34 = ns.Object("Arrow31") - obj35 = ns.Object("Arrow32") - obj36 = ns.Object("Arrow33") - obj37 = ns.Object("Arrow34") - obj38 = ns.Object("Arrow35") - obj39 = ns.Object("Arrow36") - obj40 = ns.Object("Arrow37") - obj41 = ns.Object("Arrow38") - obj42 = ns.Object("Block1") - obj43 = ns.Object("Block2") - obj44 = ns.Object("Block3") - obj45 = ns.Object("Block4") - obj46 = ns.Object("Block5") - obj47 = ns.Object("Block6") - gvar48 = ns.ObjectGroup("BlockTriggers") - wp49 = ns.Waypoint("Block1WP") - wp50 = ns.Waypoint("Block2WP") - wp51 = ns.Waypoint("Block3WP") - wp52 = ns.Waypoint("Block4WP") - wp53 = ns.Waypoint("Block5WP") - wp54 = ns.Waypoint("Block6WP") - wp55 = ns.Waypoint("Block4WPb") - wp56 = ns.Waypoint("Block5WPb") - wp57 = ns.Waypoint("Block6WPb") - wp58 = ns.Waypoint("BlockAudioWP") - wp59 = ns.Waypoint("BlockAudio2WP") - wp60 = ns.Waypoint("BlockAudio3WP") - wp61 = ns.Waypoint("BlockAudio4WP") - obj105 = ns.Object("Blocks2Trigger") - gvar62 = ns.WallGroup("BlockWallGroup1") - gvar63 = ns.WallGroup("BlockWallGroup2") - gvar64 = ns.WallGroup("BlockWallGroup3") - gvar78 = ns.ObjectGroup("SpikeGroup1") - obj79 = ns.Object("SpikeDoor") - ns.LockDoor(obj79) - obj106 = ns.Object("StoneBlock1") - gvar75 = ns.WallGroup("SecretWallGroup1") - gvar76 = ns.WallGroup("SecretWallGroup2") - gvar77 = ns.WallGroup("SecretWallGroup3") - wp107 = ns.Waypoint("Secret2AudioWP") - gvar108 = ns.ObjectGroup("Secret200Group") - gvar65 = ns.ObjectGroup("SkelGroup1") - gvar66 = ns.ObjectGroup("SkelGroup2") - gvar67 = ns.ObjectGroup("SkelGroup3") - gvar68 = ns.ObjectGroup("SkelGroup4") - gvar69 = ns.ObjectGroup("SkelGroup5") - gvar70 = ns.ObjectGroup("SkelGroup6") - obj109 = ns.Object("VampireKnight1") - obj110 = ns.Object("VKbat1") - wp112 = ns.Waypoint("VampireKnight1WP ") - wp113 = ns.Waypoint("BatCreate") - gvar114 = ns.WallGroup("Vampire1WallGroup") - gvar115 = ns.WallGroup("Vampire1WallGroup2") - gvar116 = ns.ObjectGroup("Vampire1TrigGroup") - gvar117 = ns.WallGroup("CherubWallGroup") - ns.WallGroupOpen(gvar114) - gvar81 = ns.WallGroup("ExitWallGroup") - obj86 = ns.Object("OrbLight") - wp89 = ns.Waypoint("OrbSoundWP") - obj87 = ns.Object("OrbEffect") - wp88 = ns.Waypoint("OrbEffectWP") - wp84 = ns.Waypoint("RightPuzzleWP") - wp85 = ns.Waypoint("LeftPuzzleWP") - obj80 = ns.Object("Necro1") - MissionStart() - InitializeVampireKnights() -} -func OpenGoldKeyWallGroup() { - ns.WallGroupOpen(gvar118) - ns.AudioEvent(ns.FlagDrop, wp119) -} -func OpenCherubWallGroup() { - ns.WallGroupOpen(gvar117) -} -func Secret100XP() { - ns.GiveXp(ns.GetHost(), 100) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.AudioEvent(ns.SecretFound, wp104) -} -func Secret200XP() { - ns.GiveXp(ns.GetHost(), 200) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.AudioEvent(ns.SecretFound, wp107) - ns.ObjectGroupOff(gvar108) -} -func PlayWanderMusic() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Music(17, 100) -LABEL1: - return -} -func PlayAction3Music() { - ns.Music(28, 100) -} -func ToggleSpikes1() { - ns.ObjectGroupToggle(gvar94) - ns.AudioEvent(ns.FloorSpikesDown, wp99) -} -func ToggleSpikes2() { - ns.ObjectGroupToggle(gvar95) - ns.ObjectGroupToggle(gvar96) - ns.AudioEvent(ns.FloorSpikesDown, wp100) - ns.AudioEvent(ns.FloorSpikesDown, wp101) -} -func ToggleSpikes3() { - ns.ObjectGroupToggle(gvar97) - ns.ObjectGroupToggle(gvar98) - ns.AudioEvent(ns.FloorSpikesDown, wp102) - ns.AudioEvent(ns.FloorSpikesDown, wp103) -} -func OpenSkelPitWallGroup() { - ns.WallGroupOpen(gvar91) - ns.GroupAggressionLevel(gvar93, 0.83) -} -func OpenElevatorWallGroup() { - ns.WallGroupOpen(gvar92) -} -func BatToVampireKnight() { - ns.Effect(ns.BLUE_SPARKS, fvar125, fvar126, 0, 0) - ns.Effect(ns.SMOKE_BLAST, fvar125, fvar126, 0, 0) - ns.Enchant(obj120, ns.ENCHANT_INVISIBLE, 0.25) - ns.MoveObject(obj120, fvar125, fvar126) - ns.LookAtObject(obj120, ns.GetHost()) - PlayAction3Music() -} -func SetRetreatBat() { - ns.AggressionLevel(obj122, 0.83) - ns.SetCallback(obj122, 7, BatDie) - ns.SetCallback(obj122, 5, BatDie) -} -func BatDie() { - var ( - v0 ns.ObjectID - v1 ns.ObjectID - v2 ns.ObjectID - ) - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(obj122), ns.GetObjectY(obj122), 0, 0) - ns.MoveWaypoint(wp124, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.Delete(obj122) - ns.AudioEvent(ns.BurnCast, wp124) - v0 = ns.CreateObject("Flame", wp124) - v1 = ns.CreateObject("MediumFlame", wp124) - v2 = ns.CreateObject("SmallFlame", wp124) - ns.DeleteObjectTimer(v0, 80) - ns.DeleteObjectTimer(v1, 83) - ns.DeleteObjectTimer(v2, 85) - ns.WallGroupOpen(gvar114) - ns.WallGroupOpen(gvar115) - PlaySubMusic() - ns.GiveXp(ns.GetHost(), 250) -} -func ChangeOnSight() { - if !flag128 { - goto LABEL1 - } - ns.AggressionLevel(ns.GetTrigger(), 0.83) - ns.SetCallback(ns.GetTrigger(), 6, BatToVampireKnight) -LABEL1: - return -} -func InjureVampireKnight() { - fvar125 = ns.GetObjectX(ns.GetTrigger()) - fvar126 = ns.GetObjectY(ns.GetTrigger()) - ns.ObjectOn(obj120) - ns.Damage(obj120, 0, 50, 0) - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger()), 0, 0) - ns.Delete(ns.GetTrigger()) - ns.FrameTimer(1, BatToVampireKnight) -} -func VKDie() { - fvar125 = ns.GetObjectX(ns.GetTrigger()) - fvar126 = ns.GetObjectY(ns.GetTrigger()) - ns.Delete(ns.GetTrigger()) - ns.MoveWaypoint(wp124, fvar125, fvar126) - obj122 = ns.CreateObject("Bat", wp124) - ns.FrameTimer(1, SetRetreatBat) -} -func OpenVampire1WallGroup() { - ns.WallGroupOpen(gvar114) -} -func CloseVampire1WallGroup() { - ns.WallGroupClose(gvar114) - ns.ObjectGroupOff(gvar116) -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapInitialize": - MapInitialize() - } -} diff --git a/examples/wiz10b/dummy_test.go b/examples/wiz10b/dummy_test.go deleted file mode 100644 index 6f22e55..0000000 --- a/examples/wiz10b/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package wiz10b - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/wiz10b/wiz10b.go b/examples/wiz10b/wiz10b.go deleted file mode 100644 index 036f564..0000000 --- a/examples/wiz10b/wiz10b.go +++ /dev/null @@ -1,630 +0,0 @@ -package wiz10b - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - gvar4 ns.ObjectGroupID - obj5 ns.ObjectID - obj6 ns.ObjectID - obj7 ns.ObjectID - obj8 ns.ObjectID - obj9 ns.ObjectID - obj10 ns.ObjectID - obj11 ns.ObjectID - obj12 ns.ObjectID - obj13 ns.ObjectID - wp14 ns.WaypointID - wp15 ns.WaypointID - wp16 ns.WaypointID - wp17 ns.WaypointID - wp18 ns.WaypointID - wp19 ns.WaypointID - wp20 ns.WaypointID - wp21 ns.WaypointID - wp22 ns.WaypointID - obj23 ns.ObjectID - obj24 ns.ObjectID - obj25 ns.ObjectID - obj26 ns.ObjectID - obj27 ns.ObjectID - obj28 ns.ObjectID - wp29 ns.WaypointID - wp30 ns.WaypointID - wp31 ns.WaypointID - wp32 ns.WaypointID - wp33 ns.WaypointID - wp34 ns.WaypointID - wp35 ns.WaypointID - wp36 ns.WaypointID - wp37 ns.WaypointID - wp38 ns.WaypointID - wp39 ns.WaypointID - wp40 ns.WaypointID - gvar41 int - gvar42 int - gvar43 int - obj44 ns.ObjectID - obj45 ns.ObjectID - obj46 ns.ObjectID - obj47 ns.ObjectID - obj48 ns.ObjectID - wp49 ns.WaypointID - wp50 ns.WaypointID - wp51 ns.WaypointID - wp52 ns.WaypointID - wp53 ns.WaypointID - wp54 ns.WaypointID - wp55 ns.WaypointID - wp56 ns.WaypointID - wp57 ns.WaypointID - wp58 ns.WaypointID - gvar59 int - gvar60 int - gvar61 int - obj62 ns.ObjectID - obj63 ns.ObjectID - obj64 ns.ObjectID - wp65 ns.WaypointID - wp66 ns.WaypointID - wp67 ns.WaypointID - wp68 ns.WaypointID - wp69 ns.WaypointID - wp70 ns.WaypointID - gvar71 int - gvar72 int - gvar73 int - obj74 ns.ObjectID - obj75 ns.ObjectID - wp76 ns.WaypointID - wp77 ns.WaypointID - gvar78 ns.WallGroupID - gvar79 ns.ObjectGroupID - gvar80 ns.WallGroupID - gvar81 ns.WallGroupID - gvar82 ns.WallGroupID - obj83 ns.ObjectID - obj84 ns.ObjectID - gvar85 ns.ObjectGroupID - gvar86 ns.ObjectGroupID - gvar87 ns.WallGroupID - obj88 ns.ObjectID - wp89 ns.WaypointID - gvar90 ns.WallGroupID - obj91 ns.ObjectID - obj92 ns.ObjectID - obj93 ns.ObjectID - wp94 ns.WaypointID - wp95 ns.WaypointID - wp96 ns.WaypointID - obj97 ns.ObjectID - obj98 ns.ObjectID - obj99 ns.ObjectID - wp100 ns.WaypointID - wp101 ns.WaypointID - gvar102 ns.ObjectGroupID - gvar103 ns.WallGroupID - gvar104 ns.WallGroupID - gvar105 ns.WallGroupID - gvar106 ns.WallGroupID - gvar107 ns.WallGroupID - obj108 ns.ObjectID - obj109 ns.ObjectID - gvar110 ns.WallGroupID - obj111 [2]ns.ObjectID - obj112 [2]ns.ObjectID - obj113 ns.ObjectID - wp114 ns.WaypointID - wp115 ns.WaypointID - wp116 ns.WaypointID - fvar117 float32 - fvar118 float32 - flag119 bool - flag120 bool -) - -func init() { - gvar41 = 0 - gvar42 = 1 - gvar43 = gvar41 - gvar59 = 0 - gvar60 = 1 - gvar61 = gvar59 - gvar71 = 0 - gvar72 = 1 - gvar73 = gvar71 - flag119 = false - flag120 = false -} -func DisableArrow1() { - ns.ObjectOff(obj5) -} -func EnableArrow1() { - ns.ObjectOn(obj5) - ns.AudioEvent(ns.BowShoot, wp14) - ns.FrameTimer(1, DisableArrow1) -} -func DisableArrow2() { - ns.ObjectOff(obj6) -} -func EnableArrow2() { - ns.ObjectOn(obj6) - ns.AudioEvent(ns.BowShoot, wp15) - ns.FrameTimer(1, DisableArrow2) -} -func DisableArrow3() { - ns.ObjectOff(obj7) -} -func EnableArrow3() { - ns.ObjectOn(obj7) - ns.AudioEvent(ns.BowShoot, wp16) - ns.FrameTimer(1, DisableArrow3) -} -func DisableArrow4() { - ns.ObjectOff(obj8) -} -func EnableArrow4() { - ns.ObjectOn(obj8) - ns.AudioEvent(ns.BowShoot, wp17) - ns.FrameTimer(1, DisableArrow4) -} -func DisableArrow5() { - ns.ObjectOff(obj9) -} -func EnableArrow5() { - ns.ObjectOn(obj9) - ns.AudioEvent(ns.BowShoot, wp18) - ns.FrameTimer(1, DisableArrow5) -} -func DisableArrow6() { - ns.ObjectOff(obj10) -} -func EnableArrow6() { - ns.ObjectOn(obj10) - ns.AudioEvent(ns.BowShoot, wp19) - ns.FrameTimer(1, DisableArrow6) -} -func DisableArrow7() { - ns.ObjectOff(obj11) -} -func EnableArrow7() { - ns.ObjectOn(obj11) - ns.AudioEvent(ns.BowShoot, wp20) - ns.FrameTimer(1, DisableArrow7) -} -func DisableArrow8() { - ns.ObjectOff(obj12) -} -func EnableArrow8() { - ns.ObjectOn(obj12) - ns.AudioEvent(ns.BowShoot, wp21) - ns.FrameTimer(1, DisableArrow8) -} -func DisableArrow9() { - ns.ObjectOff(obj13) -} -func EnableArrow9() { - ns.ObjectOn(obj13) - ns.AudioEvent(ns.BowShoot, wp22) - ns.FrameTimer(1, DisableArrow9) -} -func DisableArrowTriggers() { - ns.ObjectGroupOff(gvar4) -} -func EnableArrowTriggers() { - ns.ObjectGroupOn(gvar4) -} -func BlockAGotoB() { - ns.Move(obj23, wp29) - ns.Move(obj24, wp30) - ns.Move(obj25, wp31) - ns.Move(obj26, wp32) - ns.Move(obj27, wp33) - ns.Move(obj28, wp34) - gvar43 = gvar42 - ns.AudioEvent(ns.SpikeBlockMove, wp30) - ns.AudioEvent(ns.BoulderMove, wp30) -} -func BlockAGotoC() { - ns.Move(obj23, wp35) - ns.Move(obj24, wp36) - ns.Move(obj25, wp37) - ns.Move(obj26, wp38) - ns.Move(obj27, wp39) - ns.Move(obj28, wp40) - gvar43 = gvar41 - ns.AudioEvent(ns.SpikeBlockMove, wp30) - ns.AudioEvent(ns.BoulderMove, wp30) -} -func BlockAGo() { - var v0 int - v0 = gvar43 - if v0 == gvar41 { - goto LABEL1 - } - if v0 == gvar42 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - BlockAGotoB() - goto LABEL3 -LABEL2: - BlockAGotoC() - goto LABEL3 -LABEL3: - return -} -func BlockBGotoB() { - ns.Move(obj44, wp49) - ns.Move(obj45, wp50) - ns.Move(obj46, wp51) - ns.Move(obj47, wp52) - ns.Move(obj48, wp53) - gvar61 = gvar60 - ns.AudioEvent(ns.SpikeBlockMove, wp50) - ns.AudioEvent(ns.BoulderMove, wp50) -} -func BlockBGotoC() { - ns.Move(obj44, wp54) - ns.Move(obj45, wp55) - ns.Move(obj46, wp56) - ns.Move(obj47, wp57) - ns.Move(obj48, wp58) - gvar61 = gvar59 - ns.AudioEvent(ns.SpikeBlockMove, wp50) - ns.AudioEvent(ns.BoulderMove, wp50) -} -func BlockBGo() { - var v0 int - v0 = gvar61 - if v0 == gvar59 { - goto LABEL1 - } - if v0 == gvar60 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - BlockBGotoB() - goto LABEL3 -LABEL2: - BlockBGotoC() - goto LABEL3 -LABEL3: - return -} -func BlockCGotoB() { - ns.Move(obj62, wp65) - ns.Move(obj63, wp66) - ns.Move(obj64, wp67) - gvar73 = gvar72 - ns.AudioEvent(ns.SpikeBlockMove, wp65) - ns.AudioEvent(ns.BoulderMove, wp65) -} -func BlockCGotoC() { - ns.Move(obj62, wp68) - ns.Move(obj63, wp69) - ns.Move(obj64, wp70) - gvar73 = gvar71 - ns.AudioEvent(ns.SpikeBlockMove, wp68) - ns.AudioEvent(ns.BoulderMove, wp68) -} -func BlockCGo() { - var v0 int - v0 = gvar73 - if v0 == gvar71 { - goto LABEL1 - } - if v0 == gvar72 { - goto LABEL2 - } - goto LABEL3 -LABEL1: - BlockCGotoB() - goto LABEL3 -LABEL2: - BlockCGotoC() - goto LABEL3 -LABEL3: - return -} -func PlayerDeath() { - ns.DeathScreen(10) -} -func OrbLightOff() { - ns.ObjectOff(obj74) - ns.MoveObject(obj75, ns.GetWaypointX(wp76), ns.GetWaypointY(wp76)) -} -func ForceOrb() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - ) - v0 = ns.RandomFloat(-30, 30) - v1 = ns.RandomFloat(-30, 30) - v2 = ns.GetObjectX(ns.GetTrigger()) + v0 - v3 = ns.GetObjectY(ns.GetTrigger()) + v1 - ns.MoveObject(obj74, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.MoveObject(obj75, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())+6) - ns.MoveWaypoint(wp77, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.ObjectOn(obj74) - ns.AudioEvent(ns.BallBounce, wp77) - ns.PushObject(ns.GetCaller(), 60, v2, v3) - ns.FrameTimer(4, OrbLightOff) -} -func OpenBouncySecretWallGroup() { - ns.WallGroupOpen(gvar78) -} -func InitializeVampireKnights() { - obj111[0] = ns.Object("VampireKnight1") - obj112[0] = ns.Object("VKBat1") - wp114 = ns.Waypoint("VKSpot") - wp115 = ns.Waypoint("VampireKnight1WP") - wp116 = ns.Waypoint("BatCreate") -} -func MapInitialize() { - gvar80 = ns.WallGroup("ZombieAmbushWalls") - gvar79 = ns.ObjectGroup("ZombieAmbushGroup") - gvar81 = ns.WallGroup("SkeletonWallGroup") - gvar82 = ns.WallGroup("SkeletonWallGroup2") - obj83 = ns.Object("SkeletonTrigger1") - obj84 = ns.Object("SkeletonElevator") - gvar85 = ns.ObjectGroup("SkelAmbushGroup") - gvar86 = ns.ObjectGroup("SecretMechGroup") - gvar87 = ns.WallGroup("SecretMechWallGroup") - obj88 = ns.Object("SecretMechTrig") - wp89 = ns.Waypoint("Secret1AudioWP") - obj23 = ns.Object("BlockA1") - obj24 = ns.Object("BlockA2") - obj25 = ns.Object("BlockA3") - obj26 = ns.Object("BlockA4") - obj27 = ns.Object("BlockA5") - obj28 = ns.Object("BlockA6") - wp29 = ns.Waypoint("BlockWPA1b") - wp30 = ns.Waypoint("BlockWPA2b") - wp31 = ns.Waypoint("BlockWPA3b") - wp32 = ns.Waypoint("BlockWPA4b") - wp33 = ns.Waypoint("BlockWPA5b") - wp34 = ns.Waypoint("BlockWPA6b") - wp35 = ns.Waypoint("BlockWPA1c") - wp36 = ns.Waypoint("BlockWPA2c") - wp37 = ns.Waypoint("BlockWPA3c") - wp38 = ns.Waypoint("BlockWPA4c") - wp39 = ns.Waypoint("BlockWPA5c") - wp40 = ns.Waypoint("BlockWPA6c") - obj44 = ns.Object("BlockB1") - obj45 = ns.Object("BlockB2") - obj46 = ns.Object("BlockB3") - obj47 = ns.Object("BlockB4") - obj48 = ns.Object("BlockB5") - wp49 = ns.Waypoint("BlockWPB1b") - wp50 = ns.Waypoint("BlockWPB2b") - wp51 = ns.Waypoint("BlockWPB3b") - wp52 = ns.Waypoint("BlockWPB4b") - wp53 = ns.Waypoint("BlockWPB5b") - wp54 = ns.Waypoint("BlockWPB1c") - wp55 = ns.Waypoint("BlockWPB2c") - wp56 = ns.Waypoint("BlockWPB3c") - wp57 = ns.Waypoint("BlockWPB4c") - wp58 = ns.Waypoint("BlockWPB5c") - obj62 = ns.Object("BlockC1") - obj63 = ns.Object("BlockC2") - obj64 = ns.Object("BlockC3") - wp65 = ns.Waypoint("BlockWPC1b") - wp66 = ns.Waypoint("BlockWPC2b") - wp67 = ns.Waypoint("BlockWPC3b") - wp68 = ns.Waypoint("BlockWPC1c") - wp69 = ns.Waypoint("BlockWPC2c") - wp70 = ns.Waypoint("BlockWPC3c") - gvar90 = ns.WallGroup("VampireWallGroup") - obj91 = ns.Object("VampireKnight1") - obj92 = ns.Object("VKBat1") - obj93 = ns.Object("RetreatBat") - wp94 = ns.Waypoint("VampireKnight1WP") - wp95 = ns.Waypoint("BatCreate") - wp96 = ns.Waypoint("VKSpot") - InitializeVampireKnights() - gvar4 = ns.ObjectGroup("ArrowTrigGroup") - obj5 = ns.Object("Arrow1") - obj6 = ns.Object("Arrow2") - obj7 = ns.Object("Arrow3") - obj8 = ns.Object("Arrow4") - obj9 = ns.Object("Arrow5") - obj10 = ns.Object("Arrow6") - obj11 = ns.Object("Arrow7") - obj12 = ns.Object("Arrow8") - obj13 = ns.Object("Arrow9") - wp14 = ns.Waypoint("Arrow1WP") - wp15 = ns.Waypoint("Arrow2WP") - wp16 = ns.Waypoint("Arrow3WP") - wp17 = ns.Waypoint("Arrow4WP") - wp18 = ns.Waypoint("Arrow5WP") - wp19 = ns.Waypoint("Arrow6WP") - wp20 = ns.Waypoint("Arrow7WP") - wp21 = ns.Waypoint("Arrow8WP") - wp22 = ns.Waypoint("Arrow9WP") - obj97 = ns.Object("MechGolem1") - obj98 = ns.Object("MechGolem2") - obj99 = ns.Object("MechGolem3") - wp100 = ns.Waypoint("MechGolem2WP") - wp101 = ns.Waypoint("MechGolemAudioWP") - gvar102 = ns.ObjectGroup("GolemTrigGroup") - obj108 = ns.Object("MazeTrig1") - obj109 = ns.Object("MazeTrig2") - gvar110 = ns.WallGroup("CherubBreakWallGroup") - gvar103 = ns.WallGroup("GolemWallGroup") - gvar104 = ns.WallGroup("GolemWall2Group") - gvar105 = ns.WallGroup("GolemWall3Group") - gvar106 = ns.WallGroup("GolemGate1Group") - gvar107 = ns.WallGroup("GolemGate2Group") - obj74 = ns.Object("OrbLight") - obj75 = ns.Object("OrbEffect") - wp76 = ns.Waypoint("OrbEffectWP") - wp77 = ns.Waypoint("OrbSoundWP") - gvar78 = ns.WallGroup("BouncySecretWallGroup") -} -func Secret300XP() { - ns.GiveXp(ns.GetHost(), 300) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.AudioEvent(ns.SecretFound, wp89) -} -func PlayAction1Music() { - ns.Music(26, 100) -} -func PlaySubMusic() { - ns.Music(18, 100) -} -func BreakCherubWalls() { - ns.WallGroupBreak(gvar110) - PlaySubMusic() -} -func GolemWallDown() { - ns.WallGroupOpen(gvar103) - ns.ObjectOn(obj97) - ns.AudioEvent(ns.MechGolemPowerUp, wp101) - ns.ObjectGroupOff(gvar102) - PlayAction1Music() -} -func GolemWall2Down() { - ns.NoWallSound(true) - ns.WallGroupOpen(gvar104) - ns.NoWallSound(false) - ns.ObjectOn(obj98) - ns.AudioEvent(ns.MechGolemRecognize, wp100) - ns.AudioEvent(ns.MechGolemPowerUp, wp100) -} -func GolemWall3Down() { - ns.WallGroupOpen(gvar105) - ns.ObjectOn(obj99) - ns.ObjectOn(obj88) -} -func OpenGolemGate1() { - ns.WallGroupOpen(gvar106) - ns.ObjectOff(obj108) -} -func OpenGolemGate2() { - ns.WallGroupOpen(gvar107) - ns.ObjectOff(obj109) -} -func HostilizeMe() { - ns.AggressionLevel(ns.GetTrigger(), 0.83) -} -func PlayAction3Music() { - ns.Music(28, 100) -} -func BatToVampireKnight() { - if flag119 { - goto LABEL1 - } - fvar117 = ns.GetObjectX(ns.GetTrigger()) - fvar118 = ns.GetObjectY(ns.GetTrigger()) - ns.Delete(ns.GetTrigger()) - ns.ObjectOn(obj111[0]) -LABEL1: - ns.Effect(ns.BLUE_SPARKS, fvar117, fvar118, 0, 0) - ns.Effect(ns.SMOKE_BLAST, fvar117, fvar118, 0, 0) - ns.Enchant(obj111[0], ns.ENCHANT_INVISIBLE, 0.25) - ns.MoveObject(obj111[0], fvar117, fvar118) - ns.LookAtObject(obj111[0], ns.GetHost()) -} -func SetRetreatBat() { - ns.AggressionLevel(obj113, 0.83) - ns.SetCallback(obj113, 7, BatDie) - ns.SetCallback(obj113, 5, BatDie) -} -func BatDie() { - var ( - v0 ns.ObjectID - v1 ns.ObjectID - v2 ns.ObjectID - ) - if !(ns.CurrentHealth(obj113) <= 0) { - goto LABEL1 - } - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(obj113), ns.GetObjectY(obj113), 0, 0) - ns.MoveWaypoint(wp116, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.Delete(obj113) - ns.AudioEvent(ns.BurnCast, wp116) - v0 = ns.CreateObject("Flame", wp116) - v1 = ns.CreateObject("MediumFlame", wp116) - v2 = ns.CreateObject("SmallFlame", wp116) - ns.DeleteObjectTimer(v0, 80) - ns.DeleteObjectTimer(v1, 85) - ns.DeleteObjectTimer(v2, 90) - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.GiveXp(ns.GetHost(), 250) -LABEL1: - return -} -func ChangeOnSight() { - if !flag120 { - goto LABEL1 - } - ns.AggressionLevel(ns.GetTrigger(), 0.83) - ns.SetCallback(ns.GetTrigger(), 6, BatToVampireKnight) -LABEL1: - return -} -func InjureVampireKnight() { - fvar117 = ns.GetObjectX(ns.GetTrigger()) - fvar118 = ns.GetObjectY(ns.GetTrigger()) - ns.ObjectOn(obj111[0]) - ns.Damage(obj111[0], 0, 50, 0) - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger()), 0, 0) - ns.Delete(ns.GetTrigger()) - flag119 = true - ns.FrameTimer(1, BatToVampireKnight) -} -func BatMove() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.SetCallback(ns.GetTrigger(), 4, ChangeOnSight) - ns.Move(obj112[0], wp114) -LABEL1: - return -} -func VKDie() { - fvar117 = ns.GetObjectX(ns.GetTrigger()) - fvar118 = ns.GetObjectY(ns.GetTrigger()) - ns.Delete(ns.GetTrigger()) - ns.MoveWaypoint(wp116, fvar117, fvar118) - obj113 = ns.CreateObject("Bat", wp116) - ns.FrameTimer(1, SetRetreatBat) -} -func ZombieAmbush() { - ns.WallGroupOpen(gvar80) - ns.ObjectGroupOn(gvar79) -} -func SkeletonAttack() { - ns.WallGroupOpen(gvar81) - ns.WallGroupClose(gvar82) - ns.ObjectOn(obj83) - ns.ObjectGroupOn(gvar85) - PlayAction3Music() -} -func OpenSkeletonWallGroup2() { - ns.WallGroupOpen(gvar82) - ns.ObjectOn(obj84) -} -func Secret300() { - ns.PrintToAll("GeneralPrint:SecretFound") - ns.GiveXp(ns.GetHost(), 300) -} -func OpenSecretMechWallGroup() { - ns.WallGroupOpen(gvar87) - ns.GroupAggressionLevel(gvar86, 0.83) - Secret300() -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapInitialize": - MapInitialize() - } -} diff --git a/examples/wiz10c/dummy_test.go b/examples/wiz10c/dummy_test.go deleted file mode 100644 index c683f3d..0000000 --- a/examples/wiz10c/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package wiz10c - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/wiz10c/wiz10c.go b/examples/wiz10c/wiz10c.go deleted file mode 100644 index 50e8943..0000000 --- a/examples/wiz10c/wiz10c.go +++ /dev/null @@ -1,693 +0,0 @@ -package wiz10c - -import "github.com/noxworld-dev/noxscript/ns/v3" - -var ( - obj4 [21]ns.ObjectID - ivar5 int - obj6 ns.ObjectID - obj7 ns.ObjectID - wp8 ns.WaypointID - wp9 ns.WaypointID - obj10 ns.ObjectID - obj11 ns.ObjectID - obj12 ns.ObjectID - obj13 ns.ObjectID - obj14 ns.ObjectID - obj15 ns.ObjectID - obj16 ns.ObjectID - obj17 ns.ObjectID - obj18 ns.ObjectID - obj19 ns.ObjectID - obj20 ns.ObjectID - obj21 ns.ObjectID - obj22 ns.ObjectID - obj23 ns.ObjectID - obj24 [6]ns.ObjectID - obj25 ns.ObjectID - obj26 ns.ObjectID - obj27 ns.ObjectID - obj28 ns.ObjectID - obj29 ns.ObjectID - obj30 ns.ObjectID - obj31 ns.ObjectID - obj32 ns.ObjectID - obj33 ns.ObjectID - obj34 ns.ObjectID - obj35 ns.ObjectID - obj36 ns.ObjectID - obj37 ns.ObjectID - obj38 ns.ObjectID - obj39 ns.ObjectID - gvar40 ns.ObjectGroupID - gvar41 ns.ObjectGroupID - obj42 ns.ObjectID - wp43 [2]ns.WaypointID - wp44 ns.WaypointID - gvar45 ns.WallGroupID - gvar46 ns.WallGroupID - gvar47 ns.WallGroupID - gvar48 ns.WallGroupID - gvar49 ns.WallGroupID - gvar50 ns.WallGroupID - gvar51 ns.WallGroupID - gvar52 ns.WallGroupID - gvar53 ns.WallGroupID - gvar54 ns.WallGroupID - gvar55 ns.WallGroupID - gvar56 ns.WallGroupID - gvar57 ns.WallGroupID - gvar58 ns.WallGroupID - wp59 ns.WaypointID - gvar60 ns.WallGroupID - flag61 bool - flag62 bool - flag63 bool - flag64 bool - flag65 bool - flag66 bool - flag67 bool - flag68 bool - ivar69 int - wp70 ns.WaypointID - wp71 ns.WaypointID - obj72 ns.ObjectID - gvar73 ns.ObjectGroupID - wp74 [5]ns.WaypointID - wp75 ns.WaypointID - obj76 [2]ns.ObjectID - obj77 [2]ns.ObjectID - obj78 ns.ObjectID - wp79 ns.WaypointID - wp80 ns.WaypointID - wp81 ns.WaypointID - fvar82 float32 - fvar83 float32 - flag84 bool - flag85 bool -) - -func init() { - flag61 = false - flag62 = false - flag63 = false - flag64 = false - flag65 = false - flag66 = false - flag67 = false - flag68 = false - ivar69 = 0 - flag84 = false - flag85 = false -} -func DisableAT(a1 int) { - ns.ObjectOff(obj4[a1]) -} -func FireAT0() { - ns.ObjectOn(obj4[0]) - ns.FrameTimerWithArg(1, nil, DisableAT) -} -func FireAT1() { - ns.ObjectOn(obj4[1]) - ns.FrameTimerWithArg(1, 1, DisableAT) -} -func FireAT2() { - ns.ObjectOn(obj4[2]) - ns.FrameTimerWithArg(1, 2, DisableAT) -} -func FireAT3() { - ns.ObjectOn(obj4[3]) - ns.FrameTimerWithArg(1, 3, DisableAT) -} -func FireAT4() { - ns.ObjectOn(obj4[4]) - ns.FrameTimerWithArg(1, 4, DisableAT) -} -func FireAT5() { - ns.ObjectOn(obj4[5]) - ns.FrameTimerWithArg(1, 5, DisableAT) -} -func FireAT6() { - ns.ObjectOn(obj4[6]) - ns.FrameTimerWithArg(1, 6, DisableAT) -} -func FireAT7() { - ns.ObjectOn(obj4[7]) - ns.FrameTimerWithArg(1, 7, DisableAT) -} -func FireAT8() { - ns.ObjectOn(obj4[8]) - ns.FrameTimerWithArg(1, 8, DisableAT) -} -func FireAT9() { - ns.ObjectOn(obj4[9]) - ns.FrameTimerWithArg(1, 9, DisableAT) -} -func FireAT10() { - ns.ObjectOn(obj4[10]) - ns.FrameTimerWithArg(1, 10, DisableAT) -} -func FireAT11() { - ns.ObjectOn(obj4[11]) - ns.FrameTimerWithArg(1, 11, DisableAT) -} -func FireAT17() { - ns.ObjectOn(obj4[17]) - ns.FrameTimerWithArg(1, 17, DisableAT) -} -func FireAT18() { - ns.ObjectOn(obj4[18]) - ns.FrameTimerWithArg(1, 18, DisableAT) -} -func FireAT19() { - ns.ObjectOn(obj4[19]) - ns.FrameTimerWithArg(1, 19, DisableAT) -} -func FireAT20() { - ns.ObjectOn(obj4[20]) - ns.FrameTimerWithArg(1, 20, DisableAT) -} -func FireATRow() { - ns.ObjectOn(obj4[12]) - ns.ObjectOn(obj4[13]) - ns.ObjectOn(obj4[14]) - ns.ObjectOn(obj4[15]) - ns.ObjectOn(obj4[16]) - ivar5 = 12 - for { - if !(ivar5 < 17) { - goto LABEL1 - } - ns.FrameTimerWithArg(1, ivar5, DisableAT) - ivar5 += 1 - } -LABEL1: - return -} -func PlayerDeath() { - ns.DeathScreen(10) -} -func OrbLightOff() { - ns.ObjectOff(obj6) - ns.MoveObject(obj7, ns.GetWaypointX(wp8), ns.GetWaypointY(wp8)) -} -func ForceOrb() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - ) - v0 = ns.RandomFloat(-30, 30) - v1 = ns.RandomFloat(-30, 30) - v2 = ns.GetObjectX(ns.GetTrigger()) + v0 - v3 = ns.GetObjectY(ns.GetTrigger()) + v1 - ns.MoveObject(obj6, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.MoveObject(obj7, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())+6) - ns.MoveWaypoint(wp9, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.ObjectOn(obj6) - ns.AudioEvent(ns.BallBounce, wp9) - ns.PushObject(ns.GetCaller(), 60, v2, v3) - ns.FrameTimer(4, OrbLightOff) -} -func StairAccess2() { - if !(flag63 == true && flag64 == true) { - goto LABEL1 - } - ns.UnlockDoor(obj12) - ns.UnlockDoor(obj13) -LABEL1: - return -} -func CreateCherub() { - var v0 int - if !(ivar69 < 6) { - goto LABEL1 - } - v0 = ns.Random(0, 1) - obj24[ivar69] = ns.CreateObject("EvilCherub", wp43[v0]) - ns.Effect(ns.BLUE_SPARKS, ns.GetWaypointX(wp43[v0]), ns.GetWaypointY(wp43[v0]), 0, 0) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp43[v0]), ns.GetWaypointY(wp43[v0]), 0, 0) - ns.SetCallback(obj24[ivar69], 5, CreateCherub) - ns.SetRoamFlag(obj24[ivar69], 128) - ns.AggressionLevel(obj24[ivar69], 0.83) - ivar69 += 1 - goto LABEL2 -LABEL1: - return -LABEL2: - return -} -func WakeVKBat2() { - ns.ObjectOn(obj77[1]) -} -func PlayAction2Music() { - ns.Music(27, 100) -} -func CherubHostilize() { - ns.GroupAggressionLevel(gvar41, 0.83) -} -func OpenSecretRoom() { - ns.WallGroupOpen(gvar48) -} -func EnableTreasureLich1() { - ns.ObjectOn(obj14) -} -func AccessTreasureRoom1() { - ns.WallGroupOpen(gvar45) -} -func EnableTreasureLich2() { - ns.ObjectOn(obj15) -} -func AccessTreasureRoom2() { - ns.WallGroupOpen(gvar46) -} -func EnableTreasureMech() { - ns.ObjectOn(obj16) -} -func AccessTreasureRoom3() { - ns.WallGroupOpen(gvar47) -} -func EnableRoom() { - if !(ns.IsCaller(ns.GetHost()) && flag61 == false) { - goto LABEL1 - } - flag61 = true - ns.ObjectOn(obj27) - ns.LockDoor(obj10) - ns.LockDoor(obj11) -LABEL1: - return -} -func StairAccess1() { - ns.WallGroupOpen(gvar49) - ns.UnlockDoor(obj10) - ns.UnlockDoor(obj11) -} -func AllowAccess2() { - ns.PrintToAll("War10c:SentryDisabled") - ns.ObjectOff(obj21) - ns.ObjectOff(obj20) - ns.ObjectOff(obj19) - ns.AudioEvent(ns.Gear2, wp71) -} -func EnableRoom2() { - PlayAction2Music() - if !(ns.IsCaller(ns.GetHost()) && flag62 == false) { - goto LABEL1 - } - flag62 = true - ns.LockDoor(obj12) - ns.LockDoor(obj13) - ns.FrameTimer(800, CreateCherub) -LABEL1: - return -} -func OneDown() { - flag63 = true - ns.FrameTimer(1, StairAccess2) -} -func TwoDown() { - flag64 = true - ns.FrameTimer(1, StairAccess2) -} -func SwitchOffSentries() { - ns.ObjectOff(obj17) - ns.ObjectOff(obj18) - ns.UnlockDoor(obj12) - ns.UnlockDoor(obj13) -} -func SwitchOnSentries() { - ns.ObjectOn(obj17) - ns.ObjectOn(obj18) -} -func UnlockAccessDoors() { - ns.ObjectOff(obj31) - ns.UnlockDoor(obj25) - ns.UnlockDoor(obj26) - ns.WallGroupOpen(gvar60) -} -func OpenWall01() { - ns.WallGroupOpen(gvar55) - ns.AggressionLevel(obj42, 0.83) -} -func Lich1Hostilize() { - ns.AggressionLevel(obj42, 0.83) -} -func OpenWindowWall1() { - ns.WallGroupOpen(gvar56) -} -func CloseWindowWall1() { - ns.WallGroupClose(gvar56) -} -func OpenWindowWall2() { - ns.WallGroupOpen(gvar57) -} -func CloseWindowWall2() { - ns.WallGroupClose(gvar57) -} -func OpenCage1() { - ns.WallGroupOpen(gvar50) - ns.ObjectOn(obj28) -} -func OpenCage2() { - ns.WallGroupOpen(gvar51) - ns.ObjectOn(obj30) -} -func OpenCage3() { - ns.WallGroupOpen(gvar52) - ns.ObjectOn(obj29) -} -func OpenCage4() { - ns.WallGroupOpen(gvar53) - WakeVKBat2() -} -func OpenAccess() { - ns.WallGroupOpen(gvar54) -} -func CheckIdols() { - if !(flag65 == true && flag66 == true) { - goto LABEL1 - } - ns.ObjectGroupOn(gvar40) -LABEL1: - return -} -func BlueIdol() { - if !ns.IsCaller(obj32) { - goto LABEL1 - } - flag65 = true - CheckIdols() - ns.ObjectOff(obj38) - ns.ObjectOn(obj33) - ns.Delete(obj32) - ns.Delete(obj36) - ns.AudioEvent(ns.Gear2, wp70) -LABEL1: - return -} -func RedIdol() { - if !ns.IsCaller(obj34) { - goto LABEL1 - } - flag66 = true - CheckIdols() - ns.ObjectOff(obj39) - ns.ObjectOn(obj35) - ns.Delete(obj34) - ns.Delete(obj37) - ns.AudioEvent(ns.Gear2, wp70) -LABEL1: - return -} -func CheckSwitches() { - if !(flag67 == true && flag68 == true) { - goto LABEL1 - } - ns.WallGroupOpen(gvar58) -LABEL1: - return -} -func ExitWallSwitch1() { - ns.AudioEvent(ns.Gear3, wp59) - flag67 = true - CheckSwitches() -} -func ExitWallSwitch2() { - ns.AudioEvent(ns.Gear3, wp59) - flag68 = true - CheckSwitches() -} -func HostilizeMe() { - ns.AggressionLevel(ns.GetTrigger(), 0.83) -} -func InitializeVampireKnights() { - obj76[0] = ns.Object("VampireKnight1") - obj76[1] = ns.Object("VampireKnight2") - obj77[0] = ns.Object("VKBat1") - obj77[1] = ns.Object("VKBat2") - wp79 = ns.Waypoint("VKSpot") - wp80 = ns.Waypoint("VampireKnight1WP") - wp81 = ns.Waypoint("BatCreate") -} -func PlaySubMusic() { - ns.Music(18, 100) -} -func MapInitialize() { - wp71 = ns.Waypoint("SentryAudioWP") - wp70 = ns.Waypoint("LichKeyAudioWP") - gvar41 = ns.ObjectGroup("CherubPitGroup") - obj6 = ns.Object("OrbLight") - obj7 = ns.Object("OrbEffect") - obj10 = ns.Object("ForceOrbDoorA") - obj11 = ns.Object("ForceOrbDoorB") - obj12 = ns.Object("ForceOrbDoorC") - obj13 = ns.Object("ForceOrbDoorD") - obj4[0] = ns.Object("AT0") - obj4[1] = ns.Object("AT1") - obj4[2] = ns.Object("AT2") - obj4[3] = ns.Object("AT3") - obj4[4] = ns.Object("AT4") - obj4[5] = ns.Object("AT5") - obj4[6] = ns.Object("AT6") - obj4[7] = ns.Object("AT7") - obj4[8] = ns.Object("AT8") - obj4[9] = ns.Object("AT9") - obj4[10] = ns.Object("AT10") - obj4[11] = ns.Object("AT11") - obj4[12] = ns.Object("AT12") - obj4[13] = ns.Object("AT13") - obj4[14] = ns.Object("AT14") - obj4[15] = ns.Object("AT15") - obj4[16] = ns.Object("AT16") - obj4[17] = ns.Object("AT17") - obj4[18] = ns.Object("AT18") - obj4[19] = ns.Object("AT19") - obj4[20] = ns.Object("AT20") - obj14 = ns.Object("TreasureLich1") - obj15 = ns.Object("TreasureLich2") - obj16 = ns.Object("TreasureMech") - obj27 = ns.Object("Necromancer1") - obj28 = ns.Object("Necromancer2") - obj29 = ns.Object("Necromancer3") - obj42 = ns.Object("Lich1") - obj72 = ns.Object("Lich2") - obj30 = ns.Object("Lich3") - obj17 = ns.Object("Sentry1") - obj18 = ns.Object("Sentry2") - obj19 = ns.Object("Sentry3") - obj20 = ns.Object("Sentry4") - obj21 = ns.Object("SentrySwitch") - obj22 = ns.Object("MainSentry1") - obj23 = ns.Object("MainSentry2") - obj25 = ns.Object("AccessDoorA") - obj26 = ns.Object("AccessDoorB") - obj31 = ns.Object("OpenDoors") - obj32 = ns.Object("BlueIdol") - obj34 = ns.Object("RedIdol") - obj33 = ns.Object("BlueIdolBase") - obj35 = ns.Object("RedIdolBase") - obj36 = ns.Object("BlueTrigger") - obj37 = ns.Object("RedTrigger") - obj38 = ns.Object("BlueIdolSentry") - obj39 = ns.Object("RedIdolSentry") - wp74[0] = ns.Waypoint("N1TeleWP0") - wp74[1] = ns.Waypoint("N1TeleWP1") - wp74[2] = ns.Waypoint("N1TeleWP2") - wp74[3] = ns.Waypoint("N1TeleWP3") - wp74[4] = ns.Waypoint("N1TeleWP4") - wp9 = ns.Waypoint("OrbSoundWP") - wp8 = ns.Waypoint("OrbEffectWP") - wp43[0] = ns.Waypoint("CherubCreate1") - wp43[1] = ns.Waypoint("CherubCreate2") - gvar73 = ns.ObjectGroup("VampTriggers") - gvar40 = ns.ObjectGroup("FinalLiches") - gvar45 = ns.WallGroup("TreasureRoom1Walls") - gvar46 = ns.WallGroup("TreasureRoom2Walls") - gvar47 = ns.WallGroup("TreasureRoom3Walls") - wp44 = ns.Waypoint("MechGolemAudioWP") - gvar48 = ns.WallGroup("SecretRoomWall") - gvar49 = ns.WallGroup("ForceOrbRoomWalls1") - gvar50 = ns.WallGroup("Cage1") - gvar51 = ns.WallGroup("Cage2") - gvar52 = ns.WallGroup("Cage3") - gvar53 = ns.WallGroup("Cage4") - gvar54 = ns.WallGroup("AccessTreasureRoom3") - gvar55 = ns.WallGroup("OpeningWall01") - gvar56 = ns.WallGroup("WindowWall1") - gvar57 = ns.WallGroup("WindowWall2") - gvar58 = ns.WallGroup("LichStairAccess") - gvar60 = ns.WallGroup("BlueKeyWallGroup") - wp75 = ns.Waypoint("Secret1AudioWP") - wp59 = ns.Waypoint("ExitAudioWP") - PlaySubMusic() - InitializeVampireKnights() - ns.LockDoor(obj25) - ns.LockDoor(obj26) -} -func Secret100XP() { - ns.GiveXp(ns.GetHost(), 100) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.AudioEvent(ns.SecretFound, wp75) -} -func PlayWanderMusic() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.Music(17, 100) -LABEL1: - return -} -func Necro1TeleportInjured() { - var ( - v0 float32 - v1 float32 - v2 int - ) - v2 = ns.Random(0, 4) - v0 = ns.GetWaypointX(wp74[v2]) - v1 = ns.GetWaypointY(wp74[v2]) - ns.PauseObject(ns.GetTrigger(), 15) - ns.Enchant(ns.GetTrigger(), ns.ENCHANT_INVISIBLE, 2) - ns.Effect(ns.BLUE_SPARKS, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger()), 0, 0) - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger()), 0, 0) - ns.MoveObject(ns.GetTrigger(), v0, v1) - ns.Effect(ns.BLUE_SPARKS, v0, v1, 0, 0) - ns.Effect(ns.SMOKE_BLAST, v0, v1, 0, 0) -} -func SmackPlayer() { - r0 := ns.IsAttackedBy(ns.GetCaller(), ns.GetTrigger()) - if !r0 { - goto LABEL1 - } - ns.LookAtObject(ns.GetTrigger(), ns.GetCaller()) - ns.HitLocation(ns.GetTrigger(), ns.GetObjectX(ns.GetCaller()), ns.GetObjectY(ns.GetCaller())) -LABEL1: - return -} -func HuntPlayer() { - ns.CreatureHunt(ns.GetTrigger()) -} -func BatToVampireKnight() { - if flag84 { - goto LABEL1 - } - fvar82 = ns.GetObjectX(ns.GetTrigger()) - fvar83 = ns.GetObjectY(ns.GetTrigger()) - ns.Delete(ns.GetTrigger()) - ns.ObjectOn(obj76[0]) -LABEL1: - ns.Effect(ns.BLUE_SPARKS, fvar82, fvar83, 0, 0) - ns.Effect(ns.SMOKE_BLAST, fvar82, fvar83, 0, 0) - ns.Enchant(obj76[0], ns.ENCHANT_INVISIBLE, 0.25) - ns.MoveObject(obj76[0], fvar82, fvar83) - ns.LookAtObject(obj76[0], ns.GetHost()) - flag84 = false -} -func BatToVampireKnight2() { - if flag84 { - goto LABEL1 - } - fvar82 = ns.GetObjectX(ns.GetTrigger()) - fvar83 = ns.GetObjectY(ns.GetTrigger()) - ns.Delete(ns.GetTrigger()) - ns.ObjectOn(obj76[1]) -LABEL1: - ns.Effect(ns.BLUE_SPARKS, fvar82, fvar83, 0, 0) - ns.Effect(ns.SMOKE_BLAST, fvar82, fvar83, 0, 0) - ns.Enchant(obj76[1], ns.ENCHANT_INVISIBLE, 0.25) - ns.MoveObject(obj76[1], fvar82, fvar83) - ns.LookAtObject(obj76[1], ns.GetHost()) -} -func SetRetreatBat() { - ns.AggressionLevel(obj78, 0.83) - ns.SetCallback(obj78, 7, BatDie) - ns.SetCallback(obj78, 5, BatDie) -} -func BatDie() { - var ( - v0 ns.ObjectID - v1 ns.ObjectID - v2 ns.ObjectID - ) - if !(ns.CurrentHealth(ns.GetTrigger()) <= 0) { - goto LABEL1 - } - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger()), 0, 0) - ns.MoveWaypoint(wp81, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger())) - ns.MoveObject(ns.GetTrigger(), ns.GetWaypointX(wp80), ns.GetWaypointY(wp80)) - ns.Delete(obj78) - ns.AudioEvent(ns.BurnCast, wp81) - v0 = ns.CreateObject("Flame", wp81) - v1 = ns.CreateObject("MediumFlame", wp81) - v2 = ns.CreateObject("SmallFlame", wp81) - ns.DeleteObjectTimer(v0, 80) - ns.DeleteObjectTimer(v1, 83) - ns.DeleteObjectTimer(v2, 85) - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.GiveXp(ns.GetHost(), 250) -LABEL1: - return -} -func ChangeOnSight() { - if !flag85 { - goto LABEL1 - } - ns.AggressionLevel(ns.GetTrigger(), 0.83) - ns.SetCallback(ns.GetTrigger(), 6, BatToVampireKnight) -LABEL1: - return -} -func InjureVampireKnight() { - if flag84 { - goto LABEL1 - } - fvar82 = ns.GetObjectX(ns.GetTrigger()) - fvar83 = ns.GetObjectY(ns.GetTrigger()) - ns.ObjectOn(obj76[0]) - ns.Damage(obj76[0], 0, 50, 0) - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger()), 0, 0) - ns.Delete(ns.GetTrigger()) - flag84 = true - ns.FrameTimer(1, BatToVampireKnight) -LABEL1: - return -} -func InjureVampireKnight2() { - fvar82 = ns.GetObjectX(ns.GetTrigger()) - fvar83 = ns.GetObjectY(ns.GetTrigger()) - ns.ObjectOn(obj76[1]) - ns.Damage(obj76[1], 0, 50, 0) - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(ns.GetTrigger()), ns.GetObjectY(ns.GetTrigger()), 0, 0) - ns.Delete(ns.GetTrigger()) - flag84 = true - ns.FrameTimer(1, BatToVampireKnight2) -} -func BatMove() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - ns.SetCallback(ns.GetTrigger(), 4, ChangeOnSight) - ns.PauseObject(ns.GetTrigger(), 15) -LABEL1: - return -} -func VKDie() { - fvar82 = ns.GetObjectX(ns.GetTrigger()) - fvar83 = ns.GetObjectY(ns.GetTrigger()) - ns.Delete(ns.GetTrigger()) - ns.MoveWaypoint(wp81, fvar82, fvar83) - obj78 = ns.CreateObject("Bat", wp81) - ns.FrameTimer(1, SetRetreatBat) -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapInitialize": - MapInitialize() - } -} diff --git a/examples/wiz10d/dummy_test.go b/examples/wiz10d/dummy_test.go deleted file mode 100644 index e76e193..0000000 --- a/examples/wiz10d/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package wiz10d - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/wiz10d/wiz10d.go b/examples/wiz10d/wiz10d.go deleted file mode 100644 index 65cee2e..0000000 --- a/examples/wiz10d/wiz10d.go +++ /dev/null @@ -1,747 +0,0 @@ -package wiz10d - -import ( - "github.com/noxworld-dev/noxscript/ns/v3" - "strconv" -) - -var ( - obj4 ns.ObjectID - obj5 ns.ObjectID - gvar6 ns.WallGroupID - gvar7 ns.ObjectGroupID - gvar8 ns.ObjectGroupID - gvar9 ns.ObjectGroupID - gvar10 ns.WallGroupID - wp11 ns.WaypointID - wp12 ns.WaypointID - wp13 ns.WaypointID - wp14 ns.WaypointID - gvar15 ns.WallGroupID - gvar16 ns.ObjectGroupID - gvar17 ns.ObjectGroupID - gvar18 ns.ObjectGroupID - wp19 ns.WaypointID - wp20 ns.WaypointID - wp21 ns.WaypointID - obj22 ns.ObjectID - wp23 [32]ns.WaypointID - obj24 ns.ObjectID - gvar25 ns.WallGroupID - gvar26 ns.ObjectGroupID - gvar27 ns.ObjectGroupID - gvar28 ns.WallGroupID - gvar29 ns.WallGroupID - gvar30 ns.ObjectGroupID - obj31 ns.ObjectID - obj32 ns.ObjectID - flag33 bool - flag34 bool - wp35 ns.WaypointID - wp36 ns.WaypointID - wp37 ns.WaypointID - wp38 ns.WaypointID - wp39 ns.WaypointID - wp40 ns.WaypointID - wp41 ns.WaypointID - wp42 ns.WaypointID - wp43 ns.WaypointID - wp44 ns.WaypointID - wp45 ns.WaypointID - wp46 ns.WaypointID - wp47 ns.WaypointID - wp48 ns.WaypointID - wp49 ns.WaypointID - wp50 ns.WaypointID - wp51 ns.WaypointID - wp52 ns.WaypointID - obj53 ns.ObjectID - obj54 ns.ObjectID - obj55 ns.ObjectID - obj56 ns.ObjectID - obj57 ns.ObjectID - obj58 ns.ObjectID - gvar59 int - gvar60 int - gvar61 int - gvar62 int - gvar63 int - gvar64 int - gvar65 int - obj66 ns.ObjectID - wp67 [6]ns.WaypointID - gvar68 ns.WallGroupID - gvar69 int - gvar70 int - gvar71 int - obj72 ns.ObjectID - obj73 ns.ObjectID - obj74 ns.ObjectID - obj75 ns.ObjectID - wp76 ns.WaypointID - wp77 ns.WaypointID - wp78 ns.WaypointID - wp79 ns.WaypointID - gvar80 ns.WallGroupID - gvar81 ns.ObjectGroupID - gvar82 ns.ObjectGroupID - gvar83 ns.WallGroupID - obj84 ns.ObjectID - obj85 ns.ObjectID - obj86 ns.ObjectID - obj87 ns.ObjectID - obj88 ns.ObjectID - obj89 ns.ObjectID - obj90 ns.ObjectID - obj91 ns.ObjectID - obj92 ns.ObjectID - obj93 ns.ObjectID - obj94 ns.ObjectID - obj95 ns.ObjectID - obj96 ns.ObjectID - obj97 ns.ObjectID - obj98 ns.ObjectID - obj99 ns.ObjectID - obj100 ns.ObjectID - obj101 ns.ObjectID - gvar102 ns.ObjectGroupID - gvar103 ns.ObjectGroupID - gvar104 ns.ObjectGroupID - gvar105 ns.ObjectGroupID - gvar106 ns.ObjectGroupID - gvar107 ns.ObjectGroupID - gvar108 ns.WallGroupID - gvar109 ns.WallGroupID - gvar110 ns.WallGroupID - flag111 bool - flag112 bool - flag113 bool - flag114 bool - wp115 ns.WaypointID - gvar116 ns.ObjectGroupID - wp117 ns.WaypointID - wp118 ns.WaypointID -) - -func init() { - gvar59 = 0 - gvar60 = 1 - gvar61 = 2 - gvar62 = 3 - gvar63 = 4 - gvar64 = 5 - gvar65 = gvar59 - gvar69 = 0 - gvar70 = 1 - gvar71 = gvar69 - flag33 = false - flag34 = false - flag111 = false - flag112 = false - flag113 = false - flag114 = false -} -func PlayerDeath() { - ns.DeathScreen(10) -} -func FilterHecubah() int { - if !ns.IsCaller(obj5) { - goto LABEL1 - } - return 1 - goto LABEL2 -LABEL1: - return 0 -LABEL2: - return 0 -} -func ActivateSmokePuffs() { - var v0 int - v0 = 0 - for { - if !(v0 < 32) { - goto LABEL1 - } - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp23[v0]), ns.GetWaypointY(wp23[v0]), 0, 0) - v0 += 2 - } -LABEL1: - return -} -func HecubahGuard() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - ) - v0 = ns.GetWaypointX(wp13) - v1 = ns.GetWaypointY(wp13) - v2 = ns.GetWaypointX(wp14) - v3 = ns.GetWaypointY(wp14) - ns.CreatureGuard(obj5, v0, v1, v2, v3, 0) - ns.NoWallSound(true) - ns.WallGroupClose(gvar25) - ns.NoWallSound(false) -} -func EnableOrbMonsterGroup() { - ns.ObjectGroupOn(gvar7) - ns.Frozen(ns.GetHost(), false) - ns.WallGroupOpen(gvar6) - ns.FrameTimer(2, ActivateSmokePuffs) - ns.WallGroupClose(gvar10) -} -func HecubahExit() { - ns.Enchant(obj5, ns.ENCHANT_HASTED, 100) - ns.Move(obj5, wp13) - ns.WideScreen(false) - ns.FrameTimer(60, EnableOrbMonsterGroup) -} -func HecubahDialogEnd() { - ns.FrameTimer(30, HecubahExit) - ns.CancelDialog(obj5) -} -func HecubahDialogStart() { - ns.TellStory(ns.DemonRecognize, "Con07H.scr:HecubahTalk02") -} -func HecubahTrigger() { - ns.LookAtObject(obj5, ns.GetHost()) - ns.StoryPic(obj5, "HecubahPic") - ns.SetDialog(obj5, ns.NEXT, HecubahDialogStart, HecubahDialogEnd) - ns.StartDialog(obj5, ns.GetHost()) -} -func HecubahEnter() { - ns.Move(obj5, wp12) -} -func HecubahWallsDown() { - ns.WallGroupOpen(gvar15) - ns.FrameTimer(1, HecubahEnter) -} -func GetOrb() { - ns.ObjectOff(obj4) - ns.ObjectGroupOff(gvar17) - ns.SetHalberd(3) - ns.Frozen(ns.GetHost(), true) - ns.WideScreen(true) - ns.FrameTimer(60, HecubahEnter) - ns.ObjectGroupOff(gvar16) - ns.JournalEntry(ns.GetHost(), "War11Hecubah", 1) - ns.JournalEdit(ns.GetHost(), "War10aOrbQuest", 4) - ns.FrameTimer(60, HecubahWallsDown) -} -func EnableAllMonsters() { - ns.Frozen(ns.GetHost(), false) - ns.ObjectGroupOn(gvar7) - ns.ObjectGroupOn(gvar8) - ns.ObjectGroupOn(gvar9) -} -func HecubahVanish1() { - ns.ObjectOn(obj22) - ns.ObjectGroupOff(gvar18) - ns.Move(obj5, wp19) - ns.AudioEvent(ns.HecubahTaunt, wp13) - ns.WideScreen(false) - ns.FrameTimer(60, EnableAllMonsters) -} -func HecubahTakesOff() { - ns.Frozen(ns.GetHost(), true) - ns.WideScreen(true) - ns.FrameTimer(60, HecubahVanish1) - ns.ObjectGroupOff(gvar7) - ns.ObjectGroupOff(gvar8) - ns.ObjectGroupOff(gvar9) - ns.NoWallSound(true) - ns.WallGroupOpen(gvar25) - ns.NoWallSound(false) -} -func HecubahVanish2() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - ) - v0 = ns.GetWaypointX(wp20) - v1 = ns.GetWaypointY(wp20) - v2 = ns.GetWaypointX(wp19) - v3 = ns.GetWaypointY(wp19) - ns.Effect(ns.SMOKE_BLAST, v2, v3, 0, 0) - ns.AudioEvent(ns.TeleportOut, wp19) - ns.MoveObject(obj5, v0, v1) - ns.ObjectOn(obj24) -} -func MapSwitch() { - var ( - v0 float32 - v1 float32 - ) - v0 = ns.GetWaypointX(wp21) - v1 = ns.GetWaypointY(wp21) - ns.Frozen(ns.GetHost(), false) - ns.MoveObject(ns.GetHost(), v0, v1) -} -func TeleportPlayer() { - ns.Frozen(ns.GetHost(), true) - ns.Blind() - ns.FrameTimer(120, MapSwitch) -} -func EnableMonsterGroup2() { - ns.AggressionLevel(ns.GetTrigger(), 0.83) - ns.ObjectGroupOn(gvar8) -} -func EnableMonsterGroup3() { - ns.AggressionLevel(ns.GetTrigger(), 0.83) - ns.ObjectGroupOn(gvar9) -} -func DestroyMe() { - ns.Delete(ns.GetCaller()) -} -func LichWallsDown2() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 float32 - v5 float32 - v6 float32 - v7 float32 - v8 float32 - v9 float32 - v10 float32 - v11 float32 - v12 float32 - v13 float32 - v14 float32 - v15 float32 - ) - v0 = ns.GetWaypointX(wp43) - v1 = ns.GetWaypointY(wp43) - v2 = ns.GetWaypointX(wp44) - v3 = ns.GetWaypointY(wp44) - v4 = ns.GetWaypointX(wp45) - v5 = ns.GetWaypointY(wp45) - v6 = ns.GetWaypointX(wp46) - v7 = ns.GetWaypointY(wp46) - v8 = ns.GetWaypointX(wp47) - v9 = ns.GetWaypointY(wp47) - v10 = ns.GetWaypointX(wp48) - v11 = ns.GetWaypointY(wp48) - v12 = ns.GetWaypointX(wp49) - v13 = ns.GetWaypointY(wp49) - v14 = ns.GetWaypointX(wp50) - v15 = ns.GetWaypointY(wp50) - ns.WallGroupOpen(gvar29) - ns.ObjectGroupOn(gvar30) - ns.ObjectGroupOn(gvar27) - ns.FrameTimer(1, LichMove) - ns.Effect(ns.SMOKE_BLAST, v0, v1, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v2, v3, v2, v3) - ns.Effect(ns.SMOKE_BLAST, v4, v5, v4, v5) - ns.Effect(ns.SMOKE_BLAST, v6, v7, v6, v7) - ns.Effect(ns.SMOKE_BLAST, v8, v9, v8, v9) - ns.Effect(ns.SMOKE_BLAST, v10, v11, v10, v11) - ns.Effect(ns.SMOKE_BLAST, v12, v13, v12, v13) - ns.Effect(ns.SMOKE_BLAST, v14, v15, v14, v15) -} -func LichDieCheck() { - if !(flag33 && flag34) { - goto LABEL1 - } - LichWallsDown2() -LABEL1: - return -} -func LichDie1() { - flag33 = true - LichDieCheck() -} -func LichDie2() { - flag34 = true - LichDieCheck() -} -func LichMove() { - ns.Move(obj31, wp51) - ns.Move(obj32, wp52) -} -func LichWallsDown() { - var ( - v0 float32 - v1 float32 - v2 float32 - v3 float32 - v4 float32 - v5 float32 - v6 float32 - v7 float32 - v8 float32 - v9 float32 - v10 float32 - v11 float32 - v12 float32 - v13 float32 - v14 float32 - v15 float32 - ) - v0 = ns.GetWaypointX(wp35) - v1 = ns.GetWaypointY(wp35) - v2 = ns.GetWaypointX(wp36) - v3 = ns.GetWaypointY(wp36) - v4 = ns.GetWaypointX(wp37) - v5 = ns.GetWaypointY(wp37) - v6 = ns.GetWaypointX(wp38) - v7 = ns.GetWaypointY(wp38) - v8 = ns.GetWaypointX(wp39) - v9 = ns.GetWaypointY(wp39) - v10 = ns.GetWaypointX(wp40) - v11 = ns.GetWaypointY(wp40) - v12 = ns.GetWaypointX(wp41) - v13 = ns.GetWaypointY(wp41) - v14 = ns.GetWaypointX(wp42) - v15 = ns.GetWaypointY(wp42) - ns.WallGroupOpen(gvar28) - ns.ObjectGroupOn(gvar26) - ns.Effect(ns.SMOKE_BLAST, v0, v1, v0, v1) - ns.Effect(ns.SMOKE_BLAST, v2, v3, v2, v3) - ns.Effect(ns.SMOKE_BLAST, v4, v5, v4, v5) - ns.Effect(ns.SMOKE_BLAST, v6, v7, v6, v7) - ns.Effect(ns.SMOKE_BLAST, v8, v9, v8, v9) - ns.Effect(ns.SMOKE_BLAST, v10, v11, v10, v11) - ns.Effect(ns.SMOKE_BLAST, v12, v13, v12, v13) - ns.Effect(ns.SMOKE_BLAST, v14, v15, v14, v15) -} -func SentryRun() { - var v0 int - v0 = gvar65 - if v0 == gvar59 { - goto LABEL1 - } - if v0 == gvar60 { - goto LABEL2 - } - if v0 == gvar61 { - goto LABEL3 - } - if v0 == gvar62 { - goto LABEL4 - } - if v0 == gvar63 { - goto LABEL5 - } - if v0 == gvar64 { - goto LABEL6 - } - goto LABEL7 -LABEL1: - ns.ObjectOff(obj53) - ns.ObjectOn(obj54) - ns.ObjectOn(obj55) - ns.ObjectOn(obj56) - ns.ObjectOn(obj57) - ns.ObjectOff(obj58) - ns.FrameTimer(25, SentryRun) - gvar65 = gvar60 - goto LABEL7 -LABEL2: - ns.ObjectOn(obj53) - ns.ObjectOn(obj54) - ns.ObjectOn(obj55) - ns.ObjectOn(obj56) - ns.ObjectOff(obj57) - ns.ObjectOn(obj58) - ns.FrameTimer(25, SentryRun) - gvar65 = gvar61 - goto LABEL7 -LABEL3: - ns.ObjectOn(obj53) - ns.ObjectOn(obj54) - ns.ObjectOn(obj55) - ns.ObjectOff(obj56) - ns.ObjectOn(obj57) - ns.ObjectOn(obj58) - ns.FrameTimer(25, SentryRun) - gvar65 = gvar62 - goto LABEL7 -LABEL4: - ns.ObjectOn(obj53) - ns.ObjectOn(obj54) - ns.ObjectOff(obj55) - ns.ObjectOn(obj56) - ns.ObjectOn(obj57) - ns.ObjectOn(obj58) - ns.FrameTimer(25, SentryRun) - gvar65 = gvar63 - goto LABEL7 -LABEL5: - ns.ObjectOn(obj53) - ns.ObjectOff(obj54) - ns.ObjectOn(obj55) - ns.ObjectOn(obj56) - ns.ObjectOn(obj57) - ns.ObjectOn(obj58) - ns.FrameTimer(25, SentryRun) - gvar65 = gvar64 - goto LABEL7 -LABEL6: - ns.ObjectOn(obj53) - ns.ObjectOn(obj54) - ns.ObjectOn(obj55) - ns.ObjectOn(obj56) - ns.ObjectOn(obj57) - ns.ObjectOn(obj58) - ns.FrameTimer(25, SentryRun) - gvar65 = gvar59 - goto LABEL7 -LABEL7: - return -} -func LLDies() { - gvar71 = gvar70 -} -func OpenLLWallGroup() { - ns.WallGroupOpen(gvar68) -} -func Ghost1Face() { - ns.LookAtObject(obj66, ns.GetHost()) -} -func Ghost2Face() { - ns.LookAtObject(obj66, ns.GetHost()) -} -func PlayAction2Music() { - ns.Music(27, 100) -} -func MapInitialize() { - var v0 int - gvar26 = ns.ObjectGroup("LichGroup") - gvar27 = ns.ObjectGroup("LichGroup2") - gvar28 = ns.WallGroup("LichWallGroup") - gvar29 = ns.WallGroup("LichWallGroup2") - gvar30 = ns.ObjectGroup("LichElevatorGroup") - obj31 = ns.Object("Lich1") - obj32 = ns.Object("Lich2") - wp35 = ns.Waypoint("DestroyWP1") - wp36 = ns.Waypoint("DestroyWP2") - wp37 = ns.Waypoint("DestroyWP3") - wp38 = ns.Waypoint("DestroyWP4") - wp39 = ns.Waypoint("DestroyWP5") - wp40 = ns.Waypoint("DestroyWP6") - wp41 = ns.Waypoint("DestroyWP7") - wp42 = ns.Waypoint("DestroyWP8") - wp43 = ns.Waypoint("DestroyWP1a") - wp44 = ns.Waypoint("DestroyWP2a") - wp45 = ns.Waypoint("DestroyWP3a") - wp46 = ns.Waypoint("DestroyWP4a") - wp47 = ns.Waypoint("DestroyWP5a") - wp48 = ns.Waypoint("DestroyWP6a") - wp49 = ns.Waypoint("DestroyWP7a") - wp50 = ns.Waypoint("DestroyWP8a") - wp51 = ns.Waypoint("LichWP1") - wp52 = ns.Waypoint("LichWP2") - obj53 = ns.Object("Sentry1") - obj54 = ns.Object("Sentry2") - obj55 = ns.Object("Sentry3") - obj56 = ns.Object("Sentry4") - obj57 = ns.Object("Sentry5") - obj58 = ns.Object("Sentry6") - SentryRun() - obj66 = ns.Object("LLGhost") - wp67[0] = ns.Waypoint("LLGhostWP1") - wp67[1] = ns.Waypoint("LLGhostWP2") - wp67[2] = ns.Waypoint("LLGhostWP3") - wp67[3] = ns.Waypoint("LLGhostWP4") - wp67[4] = ns.Waypoint("LLGhostWP5") - wp67[5] = ns.Waypoint("LLGhostWP6") - gvar68 = ns.WallGroup("LLWallGroup") - obj72 = ns.Object("Spike1") - obj73 = ns.Object("Spike2") - obj74 = ns.Object("Spike3") - obj75 = ns.Object("Spike4") - wp76 = ns.Waypoint("Spike1WP") - wp77 = ns.Waypoint("Spike2WP") - wp78 = ns.Waypoint("Spike3WP") - wp79 = ns.Waypoint("Spike4WP") - gvar80 = ns.WallGroup("SpikeWallGroup") - gvar81 = ns.ObjectGroup("SpikeWallTrigGroup") - gvar82 = ns.ObjectGroup("CherubGroup") - gvar83 = ns.WallGroup("CherubWallGroup") - obj84 = ns.Object("Cherub1") - obj85 = ns.Object("Cherub2") - obj86 = ns.Object("Cherub3") - obj87 = ns.Object("Cherub4") - obj88 = ns.Object("Cherub5") - obj89 = ns.Object("Cherub6") - obj90 = ns.Object("Cherub7") - obj91 = ns.Object("Cherub8") - obj92 = ns.Object("Cherub9") - obj93 = ns.Object("Cherub10") - gvar102 = ns.ObjectGroup("SentryGroup1") - gvar103 = ns.ObjectGroup("SentryGroup2") - gvar104 = ns.ObjectGroup("SentryGroup3") - gvar105 = ns.ObjectGroup("SentryGroup4") - obj94 = ns.Object("Sentry1L") - obj95 = ns.Object("Sentry1R") - obj96 = ns.Object("Sentry2L") - obj97 = ns.Object("Sentry2R") - obj98 = ns.Object("Sentry3L") - obj99 = ns.Object("Sentry3R") - obj100 = ns.Object("Sentry4L") - obj101 = ns.Object("Sentry4R") - gvar107 = ns.ObjectGroup("OrbTriggerGroup") - gvar106 = ns.ObjectGroup("SentryMonsterGroup") - gvar108 = ns.WallGroup("OrbWallGroup1") - gvar109 = ns.WallGroup("OrbWallGroup2") - gvar110 = ns.WallGroup("OrbWallGroup3") - gvar10 = ns.WallGroup("OrbWallGroup4") - gvar116 = ns.ObjectGroup("OrbXPTrigGroup") - wp115 = ns.Waypoint("OrbXPWP") - obj4 = ns.Object("OrbPool1") - obj5 = ns.Object("Hecubah") - gvar7 = ns.ObjectGroup("OrbMonsterGroup") - gvar8 = ns.ObjectGroup("OrbMonsterGroup2") - gvar9 = ns.ObjectGroup("OrbMonsterGroup3") - gvar6 = ns.WallGroup("OrbWallGroupFinal") - wp11 = ns.Waypoint("OrbAudioWP") - gvar15 = ns.WallGroup("HecubahWallGroup") - wp12 = ns.Waypoint("HecubahEnterWP") - wp13 = ns.Waypoint("HecubahExitWP") - wp14 = ns.Waypoint("HecubahLookWP") - gvar16 = ns.ObjectGroup("OrbSoundGroup") - gvar17 = ns.ObjectGroup("OrbPoolTrigGroup") - gvar18 = ns.ObjectGroup("HecubahVanishTrigGroup") - wp19 = ns.Waypoint("HecubahVanishWP") - wp20 = ns.Waypoint("HecubahEndWP") - wp21 = ns.Waypoint("MapSwitchWP") - obj22 = ns.Object("HecubahEndTrig") - obj24 = ns.Object("ExitTeleporter") - wp117 = ns.Waypoint("Secret1AudioWP") - wp118 = ns.Waypoint("Secret2AudioWP") - gvar25 = ns.WallGroup("InvisibleWallGroup") - ns.WallGroupOpen(gvar25) - PlayAction2Music() - v0 = 0 - for { - if !(v0 < 32) { - goto LABEL1 - } - wp23[v0] = ns.Waypoint("SmokeWP" + strconv.Itoa(v0+1)) - v0 += 1 - } -LABEL1: - return -} -func OrbXP() { - ns.ObjectGroupOff(gvar116) - ns.AudioEvent(ns.FlagDrop, wp115) - ns.GiveXp(ns.GetHost(), 2000) -} -func Secret100XP() { - ns.GiveXp(ns.GetHost(), 100) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.AudioEvent(ns.JournalEntryAdd, wp117) -} -func Secret200XP() { - ns.GiveXp(ns.GetHost(), 200) - ns.PrintToAll("GeneralPrint:SecretFound") - ns.AudioEvent(ns.JournalEntryAdd, wp118) -} -func PlayOrbMusic() { - ns.Music(12, 100) -} -func PlayAction3Music() { - ns.Music(28, 100) -} -func SpikeMove() { - ns.ObjectGroupOff(gvar81) - ns.AudioEvent(ns.SpikeBlockMove, wp79) - ns.WallGroupOpen(gvar80) - ns.Move(obj72, wp76) - ns.Move(obj73, wp77) - ns.Move(obj74, wp78) - ns.Move(obj75, wp79) - PlayAction3Music() -} -func OpenOrbWallGroup1() { - if !(!ns.IsObjectOn(obj94) && !ns.IsObjectOn(obj95) && !ns.IsObjectOn(obj96) && !ns.IsObjectOn(obj97) && !ns.IsObjectOn(obj98) && !ns.IsObjectOn(obj99) && !ns.IsObjectOn(obj100) && !ns.IsObjectOn(obj101)) { - goto LABEL1 - } - ns.WallGroupOpen(gvar108) -LABEL1: - return -} -func ToggleSG1() { - ns.ObjectGroupToggle(gvar102) - OpenOrbWallGroup1() -} -func EnableSG1() { - ns.ObjectGroupOn(gvar102) -} -func ToggleSG2() { - ns.ObjectGroupToggle(gvar103) - OpenOrbWallGroup1() -} -func EnableSG2() { - ns.ObjectGroupOn(gvar103) -} -func ToggleSG3() { - ns.ObjectGroupToggle(gvar104) - OpenOrbWallGroup1() -} -func EnableSG3() { - ns.ObjectGroupOn(gvar104) -} -func ToggleSG4() { - ns.ObjectGroupToggle(gvar105) - OpenOrbWallGroup1() -} -func EnableSG4() { - ns.ObjectGroupOn(gvar105) -} -func OpenOrbWallGroup2() { - ns.WallGroupOpen(gvar109) - ns.ObjectGroupOn(gvar106) - ns.ObjectGroupOn(gvar82) - ns.WallGroupOpen(gvar83) -} -func OpenOrbWallGroup3() { - ns.WallGroupOpen(gvar110) -} -func OpenOrbWallGroup4() { - ns.WallGroupOpen(gvar10) - ns.ObjectGroupOff(gvar107) - ns.ObjectGroupOff(gvar102) - ns.ObjectGroupOff(gvar103) - ns.ObjectGroupOff(gvar104) - ns.ObjectGroupOff(gvar105) -} -func BossDieCheck() { - if !(flag111 && flag112 && flag113 && flag114) { - goto LABEL1 - } - OpenOrbWallGroup3() -LABEL1: - return -} -func BossDie1() { - flag111 = true - BossDieCheck() -} -func BossDie2() { - flag112 = true - BossDieCheck() -} -func BossDie3() { - flag113 = true - BossDieCheck() -} -func BossDie4() { - flag114 = true - BossDieCheck() -} -func OnEvent(typ string) { - switch typ { - case "PlayerDeath": - PlayerDeath() - case "MapInitialize": - MapInitialize() - } -} diff --git a/examples/wiz11a/dummy_test.go b/examples/wiz11a/dummy_test.go deleted file mode 100644 index 028debd..0000000 --- a/examples/wiz11a/dummy_test.go +++ /dev/null @@ -1,6 +0,0 @@ -package wiz11a - -import "testing" - -func TestBuild(t *testing.T) { -} diff --git a/examples/wiz11a/wiz11a.go b/examples/wiz11a/wiz11a.go deleted file mode 100644 index a417e2e..0000000 --- a/examples/wiz11a/wiz11a.go +++ /dev/null @@ -1,734 +0,0 @@ -package wiz11a - -import ( - "strconv" - - "github.com/noxworld-dev/noxscript/ns/v3" -) - -var ( - obj4 ns.ObjectID - obj5 ns.ObjectID - obj6 ns.ObjectID - obj7 ns.ObjectID - obj8 ns.ObjectID - obj9 ns.ObjectID - gvar10 ns.WaypointGroupID - gvar11 ns.WaypointGroupID - wp12 ns.WaypointID - gvar13 int - flag14 bool - flag15 bool - gvar16 int - obj17 ns.ObjectID - obj18 ns.ObjectID - gvar19 ns.WallGroupID - gvar20 ns.WallGroupID - gvar21 ns.WallGroupID - wp22 ns.WaypointID - gvar23 ns.WaypointGroupID - gvar24 ns.WaypointGroupID - obj25 ns.ObjectID - obj26 ns.ObjectID - gvar27 ns.WallGroupID - gvar28 ns.WallGroupID - gvar29 ns.WallGroupID - wp30 ns.WaypointID - wp31 ns.WaypointID - wp32 ns.WaypointID - wp33 ns.WaypointID - wp34 ns.WaypointID - gvar35 ns.WaypointGroupID - gvar36 ns.WaypointGroupID - gvar37 ns.WaypointGroupID - flag38 bool - wp39 ns.WaypointID - obj40 ns.ObjectID - fvar41 float32 - fvar42 float32 - flag43 bool - flag44 bool - flag45 bool - flag46 bool -) - -func init() { - flag15 = false - gvar16 = 0 - flag14 = false - flag43 = false - flag38 = false - flag44 = false - flag45 = false - flag46 = false -} -func StartTTRoom() { - ns.JournalEntry(ns.GetHost(), "War11Hecubah", 2) - ns.PrintToAll("Con01a:NewJournalEntry") - ns.WideScreen(true) - ns.Frozen(ns.GetHost(), true) - ns.Frozen(obj4, true) - ns.Frozen(obj5, true) - ns.Frozen(obj6, true) - ns.Frozen(obj7, true) - ns.Frozen(obj8, true) - ns.Frozen(obj9, true) - ns.CreatureIdle(obj4) - ns.CreatureIdle(ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj4) - ns.LookAtObject(obj4, ns.GetHost()) - ns.FrameTimer(1, HecTTTalk) -} -func HecTTTalk() { - ns.SetDialog(obj4, ns.NORMAL, HecTTStart, HecTTEnd) - ns.StartDialog(obj4, ns.GetHost()) -} -func HecTTStart() { - ns.TellStory(ns.HumanMaleEatFood, "War11a:CatchMe") -} -func HecTTEnd() { - ns.CancelDialog(obj4) - ns.Frozen(obj4, false) - ns.Walk(obj4, 1321, 4793) - ns.Music(27, 100) -} -func EnterBlinkRoom() { - if !ns.IsCaller(obj4) { - goto LABEL1 - } - ns.MoveObject(obj4, 1052, 3866) - ns.Frozen(obj4, true) - ns.WideScreen(false) - ns.Frozen(ns.GetHost(), false) -LABEL1: - if !ns.IsCaller(ns.GetHost()) { - goto LABEL2 - } - ns.ObjectOff(ns.GetTrigger()) - ns.WideScreen(true) - ns.Frozen(ns.GetHost(), true) - ns.CreatureIdle(obj4) - ns.CreatureIdle(ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj4) - ns.LookAtObject(obj4, ns.GetHost()) - ns.FrameTimer(15, HecBlinkTalk) -LABEL2: - return -} -func HecBlinkTalk() { - ns.SetDialog(obj4, ns.NORMAL, HecBlinkStart, HecBlinkEnd) - ns.StartDialog(obj4, ns.GetHost()) -} -func HecBlinkStart() { - ns.TellStory(ns.HumanMaleEatFood, "Con10b.scr:HecubahDialog1") -} -func HecBlinkEnd() { - ns.CancelDialog(obj4) - ns.Frozen(obj4, false) - ns.Walk(obj4, 1140, 3785) -} -func EnterArena() { - if !ns.IsCaller(obj4) { - goto LABEL1 - } - ns.WideScreen(false) - ns.Frozen(ns.GetHost(), false) - ns.MoveObject(obj4, 4378, 1925) - ns.CreatureGuard(obj4, 4378, 1925, 0, 0, 0) -LABEL1: - if !ns.IsCaller(ns.GetHost()) { - goto LABEL2 - } - ns.ObjectOff(ns.GetTrigger()) - ns.WayPointGroupOff(gvar10) - ns.WayPointGroupOn(gvar11) -LABEL2: - return -} -func TempInit() { - ns.SetDialog(obj4, ns.NORMAL, HecTTStart, HecTTEnd) -} -func Hunting() { - if !(ns.CurrentHealth(ns.GetTrigger()) > 0) { - goto LABEL1 - } - ns.CreatureHunt(ns.GetTrigger()) -LABEL1: - return -} -func Lich1Die() { -} -func Lich2Die() { -} -func Lich3Die() { -} -func Lich4Die() { -} -func Lich1Setup() { - ns.SetCallback(obj5, 13, Hunting) - ns.SetCallback(obj5, 5, Lich1Die) - ns.SetCallback(obj5, 4, Hunting) - ns.CreatureHunt(obj5) - ns.SetOwner(obj4, obj5) -} -func Lich2Setup() { - ns.SetCallback(obj6, 13, Hunting) - ns.SetCallback(obj6, 5, Lich2Die) - ns.SetCallback(obj6, 4, Hunting) - ns.CreatureHunt(obj6) - ns.SetOwner(obj4, obj6) -} -func Lich3Setup() { - ns.SetCallback(obj7, 13, Hunting) - ns.SetCallback(obj7, 5, Lich3Die) - ns.SetCallback(obj7, 4, Hunting) - ns.CreatureHunt(obj7) - ns.SetOwner(obj4, obj7) -} -func Lich4Setup() { - ns.SetCallback(obj8, 13, Hunting) - ns.SetCallback(obj8, 5, Lich4Die) - ns.SetCallback(obj8, 4, Hunting) - ns.CreatureHunt(obj8) - ns.SetOwner(obj4, obj8) -} -func HecLoseSight() { - ns.CreatureHunt(ns.GetTrigger()) -} -func OpenBlinkWalls1() { - ns.WallGroupOpen(gvar28) -} -func CloseBlinkWalls1() { - ns.WallGroupClose(gvar28) -} -func OpenBlinkWalls2() { - ns.WallGroupOpen(gvar29) -} -func CloseBlinkWalls2() { - ns.WallGroupClose(gvar29) -} -func OpeningSetPiece() { - ns.Frozen(obj5, true) - ns.Frozen(obj6, true) - ns.Frozen(obj7, true) - ns.Frozen(obj8, true) - ns.Frozen(ns.GetHost(), true) - ns.WideScreen(true) - ns.LookAtObject(ns.GetHost(), obj4) -} -func Hecubah1Start() { - ns.TellStory(ns.HumanMaleEatFood, "Wiz11A.scr:HecubahTalk01") -} -func Hecubah1End() { - ns.CancelDialog(obj4) - ns.WideScreen(false) - ns.Frozen(ns.GetHost(), false) - ns.Frozen(obj4, false) - ns.Frozen(obj5, false) - ns.Frozen(obj6, false) - ns.Frozen(obj7, false) - ns.Frozen(obj8, false) - ns.AggressionLevel(obj4, 0.83) - ns.SetCallback(obj4, 13, HecLoseSight) - ns.SetCallback(obj4, 4, Hunting) -} -func SetPieceInit() { - wp39 = ns.Waypoint("HecubahWP") - obj40 = ns.Object("HecubahLight") -} -func OpenBlinkWallsA() { - ns.WallGroupOpen(gvar20) -} -func OpenBlinkWallsB() { - ns.WallGroupOpen(gvar21) -} -func MapInitialize() { - flag38 = true - obj25 = ns.Object("NewTeleporter") - obj26 = ns.Object("TeleportLight") - gvar27 = ns.WallGroup("TeleportWalls") - gvar28 = ns.WallGroup("BlinkWalls1") - gvar29 = ns.WallGroup("BlinkWalls2") - gvar20 = ns.WallGroup("BlinkWallsA") - gvar21 = ns.WallGroup("BlinkWallsB") - wp30 = ns.Waypoint("OpenDoorWP") - wp31 = ns.Waypoint("TeleportNewWP") - wp32 = ns.Waypoint("SetPieceStartWP") - wp33 = ns.Waypoint("BattleStartWP") - wp34 = ns.Waypoint("LeaveWP") - gvar35 = ns.WaypointGroup("EscapeWP") - gvar36 = ns.WaypointGroup("BlinkBookWP") - gvar10 = ns.WaypointGroup("BlinkWP") - gvar37 = ns.WaypointGroup("Arena2WP") - gvar11 = ns.WaypointGroup("CheeseWP") - obj4 = ns.Object("Hecubah") - obj5 = ns.Object("Lich1") - obj6 = ns.Object("Lich2") - obj7 = ns.Object("Lich3") - obj8 = ns.Object("Lich4") - obj9 = ns.Object("Lich5") - obj17 = ns.Object("FinalTeleporter") - obj18 = ns.Object("TPINTrigger") - gvar19 = ns.WallGroup("FinaleWalls") - wp12 = ns.Waypoint("TeleportWP") - wp22 = ns.Waypoint("PlayerSounds") - gvar23 = ns.WaypointGroup("ArenaWP") - gvar24 = ns.WaypointGroup("FacadeWP") - ns.WayPointGroupOff(gvar24) - ns.WayPointGroupOff(gvar23) - ns.WayPointGroupOff(gvar37) - ns.WayPointGroupOff(gvar36) - ns.WayPointGroupOff(gvar11) - ns.WayPointGroupOff(gvar35) - ns.StoryPic(obj4, "HecubahPic") - ns.SetDialog(obj4, ns.NORMAL, Hecubah1Start, Hecubah1End) - SetPieceInit() - ns.StartupScreen(11) - ns.FrameTimer(10, StartTTRoom) -} -func PlayerDeath() { - ns.DeathScreen(11) -} -func HecubahDies() { - fvar41 = ns.GetObjectX(obj4) - fvar42 = ns.GetObjectY(obj4) - ns.MoveWaypoint(wp22, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.Music(0, 100) - ns.AudioEvent(ns.HecubahDieFrame0A, wp22) - ns.FrameTimer(66, HecubahDie1) - ns.FrameTimer(130, HecubahDie2) - ns.FrameTimer(170, HecubahDie3) - ns.FrameTimer(280, HecubahDie4) -} -func HecubahDie1() { - ns.AudioEvent(ns.HecubahDieFrame98, wp22) -} -func HecubahDie2() { - ns.AudioEvent(ns.HecubahDieFrame194, wp22) -} -func HecubahDie3() { - ns.AudioEvent(ns.HecubahDieFrame283, wp22) -} -func HecubahDie4() { - ns.AudioEvent(ns.HecubahDieFrame439, wp22) - ns.MoveObject(obj40, fvar41, fvar42) -} -func OpenDoors() { - if !ns.IsCaller(obj4) { - goto LABEL1 - } - if !flag43 { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.WallGroupOpen(gvar27) - ns.Move(obj4, wp31) - ns.MoveWaypoint(wp22, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.BoulderMove, wp22) - CheckPlayerZone() -LABEL1: - return -} -func StartTeleporter() { - if !ns.IsCaller(obj4) { - goto LABEL1 - } - if flag38 { - goto LABEL2 - } - ns.ObjectOff(ns.GetTrigger()) - ns.MoveObject(obj26, ns.GetWaypointX(wp31), ns.GetWaypointY(wp31)) - ns.ObjectOn(obj25) - goto LABEL3 -LABEL2: - ns.ObjectOff(ns.GetTrigger()) - ns.ObjectOn(obj25) - ns.MoveObject(obj26, ns.GetWaypointX(wp31), ns.GetWaypointY(wp31)) - ns.CreatureGuard(obj4, ns.GetWaypointX(wp31), ns.GetWaypointY(wp31), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost()), 0) -LABEL3: - ns.ObjectOn(obj5) - ns.ObjectOn(obj6) - ns.ObjectOn(obj7) - ns.ObjectOn(obj8) - ns.ObjectOn(obj9) - ns.WideScreen(false) - ns.Frozen(ns.GetHost(), false) -LABEL1: - return -} -func StartIntro() { - ns.Frozen(obj4, true) - ns.CreatureIdle(obj4) - ns.LookAtObject(obj4, ns.GetHost()) - ns.StartDialog(obj4, ns.GetHost()) -} -func HecubahCroak() { - ns.ImmediateBlind() - ns.Frozen(obj4, true) - ns.Frozen(ns.GetHost(), true) - ns.FrameTimer(20, EndPlaces) -} -func FreezePlayer() { - ns.Frozen(ns.GetHost(), true) - ns.Frozen(obj4, true) - ns.LookAtObject(ns.GetHost(), obj4) - ns.FrameTimer(40, DeathPieceFadeIn) -} -func SetNPCPositions() { - ns.MoveObject(ns.GetHost(), 4142, 4364) - ns.MoveObject(ns.GetHost(), 4249, 4342) - ns.FrameTimer(10, FreezePlayer) -} -func DeathPieceFadeIn() { - ns.UnBlind() - ns.FrameTimer(60, HecubahDeathTalk) -} -func HecubahDeath1Start() { - ns.TellStory(ns.HumanMaleEatFood, "Wiz11A.scr:HecubahTalk07") -} -func HecubahDeath1End() { - ns.CancelDialog(obj4) - ns.Frozen(obj4, false) - ns.WideScreen(false) - HecubahDies() - ns.SecondTimer(13, FinalFadeOut) -} -func HecubahDeathTalk() { - ns.SetDialog(obj4, ns.NORMAL, HecubahDeath1Start, HecubahDeath1End) - ns.StartDialog(obj4, ns.GetHost()) -} -func FinalFadeOut() { - ns.Blind() - ns.EndGame(1) -} -func HecubahRun() { - if !(ns.CurrentHealth(obj4) <= 150) { - goto LABEL1 - } - if !(flag43 == false && flag38 == false) { - goto LABEL2 - } - flag43 = true - ns.Enchant(obj4, ns.ENCHANT_INVULNERABLE, 0) - ns.AggressionLevel(obj4, 0) - ns.Move(obj4, wp30) -LABEL2: - if !(flag43 == false && flag38 == true) { - goto LABEL1 - } - flag43 = true - ns.AggressionLevel(obj4, 0) - ns.Enchant(obj4, ns.ENCHANT_INVULNERABLE, 0) - if !ns.HasEnchant(obj4, ns.ENCHANT_INVISIBLE) { - goto LABEL3 - } - ns.EnchantOff(obj4, ns.ENCHANT_INVISIBLE) -LABEL3: - ns.MoveWaypoint(wp22, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.TeleportOut, wp22) - ns.Effect(ns.SMOKE_BLAST, ns.GetObjectX(obj4), ns.GetObjectY(obj4), 0, 0) - ns.Effect(ns.SPARK_EXPLOSION, ns.GetObjectX(obj4), ns.GetObjectY(obj4), 0, 0) - ns.MoveObject(obj4, ns.GetWaypointX(wp34), ns.GetWaypointY(wp34)) - ns.Frozen(obj4, true) - ns.CreatureIdle(obj4) - ns.LookAtObject(obj4, ns.ObjectID(wp32)) // FIXME - CheckPlayerZone() -LABEL1: - return -} -func SetEveryone() { - ns.UnBlind() - ns.FrameTimer(1, FreezeEveryone) -} -func FreezeEveryone() { - ns.Frozen(ns.GetHost(), true) - ns.CreatureIdle(ns.GetHost()) - ns.Frozen(obj4, true) - ns.Frozen(obj5, true) - ns.Frozen(obj6, true) - ns.Frozen(obj7, true) - ns.Frozen(obj8, true) - ns.LookAtObject(obj4, ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj4) - ns.SetDialog(obj4, ns.NEXT, HecubahTeleport1Start, HecubahTeleport1End) - ns.StartDialog(obj4, ns.GetHost()) -} -func HecDeathRayMiss() { - ns.CastSpellLocationLocation(ns.SPELL_DEATH_RAY, ns.GetObjectX(obj4), ns.GetObjectY(obj4), ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())-50) - ns.SetDialog(obj4, ns.NEXT, HecFacade1Start, HecFacade1End) - ns.FrameTimer(10, StartFacadeSetPiece) -} -func HecubahTeleport1Start() { - ns.TellStory(ns.HumanMaleEatFood, "Wiz11A.scr:HecubahTalk05") -} -func HecubahTeleport1End() { - ns.SetDialog(obj4, ns.NORMAL, HecubahTeleport2Start, HecubahTeleport2End) - ns.StartDialog(obj4, ns.GetHost()) -} -func HecubahTeleport2Start() { - ns.TellStory(ns.HumanMaleEatFood, "Wiz11A.scr:HecubahTalk06") -} -func HecubahTeleport2End() { - ns.ObjectOn(obj17) - ns.Frozen(obj4, false) - ns.Frozen(ns.GetHost(), false) - ns.Frozen(obj5, false) - ns.Frozen(obj6, false) - ns.Frozen(obj7, false) - ns.Frozen(obj8, false) -} -func SetHecubahPosition() { - var ( - v0 int - v1 int - ) - if !ns.IsCaller(obj4) { - goto LABEL1 - } - flag14 = true - ns.WayPointGroupOff(gvar35) - v0 = ns.CurrentHealth(obj4) - v1 = v0 - 300 - ns.Damage(obj4, 0, v1, 0) - ns.MoveObject(obj4, 1462, 1322) -LABEL1: - if !ns.IsCaller(ns.GetHost()) { - goto LABEL2 - } - ns.WayPointGroupOff(gvar23) - ns.Frozen(ns.GetHost(), true) - ns.LookAtObject(ns.GetHost(), obj4) - ns.LookAtObject(obj4, ns.GetHost()) - ns.ObjectOff(obj18) - ns.FrameTimer(10, HecDeathRayMiss) -LABEL2: - return -} -func FreezeFacadeHecubah() { - if !ns.IsCaller(obj4) { - goto LABEL1 - } - ns.ObjectOff(ns.GetTrigger()) - ns.Frozen(obj4, true) - ns.CreatureIdle(obj4) -LABEL1: - return -} -func StartFacadeSetPiece() { - ns.StartDialog(obj4, ns.GetHost()) -} -func HecFacade1Start() { - ns.TellStory(ns.HumanMaleEatFood, "Wiz11A.scr:HecubahTalk02") -} -func HecFacade1End() { - ns.SetDialog(obj4, ns.NORMAL, HecFacade2Start, HecFacade2End) - ns.StartDialog(obj4, ns.GetHost()) -} -func HecFacade2Start() { - ns.TellStory(ns.HumanMaleEatFood, "Wiz11A.scr:HecubahTalk03") -} -func HecFacade2End() { - ns.CancelDialog(obj4) - ns.WayPointGroupOn(gvar24) - ns.WayPointGroupOff(gvar37) - ns.WayPointGroupOff(gvar36) - ns.AggressionLevel(obj4, 0.83) - ns.Frozen(obj4, false) - ns.Frozen(ns.GetHost(), false) -} -func AlternateStep1() { - ns.MoveObject(ns.GetHost(), 4841, 1183) - ns.Frozen(ns.GetHost(), true) - ns.CreatureIdle(ns.GetHost()) - ns.LookAtObject(ns.GetHost(), ns.ObjectID(wp34)) // FIXME - ns.MoveObject(obj4, ns.GetWaypointX(wp30), ns.GetWaypointY(wp30)) - ns.Frozen(obj4, true) - ns.CreatureIdle(obj4) - ns.LookAtObject(obj4, ns.GetHost()) - ns.UnBlind() - ns.FrameTimer(30, AlternateStep2) -} -func AlternateStep2() { - ns.WideScreen(true) - ns.SetDialog(obj4, ns.NEXT, AltStart, AltEnd) - ns.StartDialog(obj4, ns.GetHost()) -} -func AltStart() { - ns.TellStory(ns.HumanMaleEatFood, "Wiz11A.scr:HecubahTalk05") -} -func AltEnd() { - ns.SetDialog(obj4, ns.NORMAL, Alt2Start, Alt2End) - ns.StartDialog(obj4, ns.GetHost()) -} -func Alt2Start() { - ns.TellStory(ns.HumanMaleEatFood, "Wiz11A.scr:HecubahTalk06") -} -func Alt2End() { - flag43 = true - ns.AggressionLevel(obj4, 0) - ns.Frozen(obj4, false) - ns.ObjectOn(obj25) - ns.Walk(obj4, ns.GetWaypointX(wp30), ns.GetWaypointY(wp30)) -} -func EnterZone() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - flag44 = true -LABEL1: - return -} -func ExitZone() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - flag44 = false -LABEL1: - return -} -func EndPlaces() { - ns.Frozen(obj4, false) - ns.Frozen(ns.GetHost(), false) - ns.MoveObject(obj4, 1462, 1322) - ns.MoveObject(ns.GetHost(), 1550, 1430) - ns.FrameTimer(1, EndFreeze) -} -func EndFreeze() { - ns.Frozen(obj4, true) - ns.Frozen(ns.GetHost(), true) - ns.LookAtObject(obj4, ns.GetHost()) - ns.CreatureIdle(ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj4) - ns.UnBlind() - ns.WideScreen(true) - ns.FrameTimer(30, HecubahDeathTalk) -} -func CheckPlayerZone() { - if !(flag43 == true && flag44 == true) { - goto LABEL1 - } - ns.Frozen(ns.GetHost(), true) - ns.WideScreen(true) - ns.CreatureIdle(ns.GetHost()) - ns.LookAtObject(ns.GetHost(), obj4) - if !(ns.CurrentHealth(obj5) > 0) { - goto LABEL2 - } - ns.ObjectOff(obj5) -LABEL2: - if !(ns.CurrentHealth(obj6) > 0) { - goto LABEL3 - } - ns.ObjectOff(obj6) -LABEL3: - if !(ns.CurrentHealth(obj7) > 0) { - goto LABEL4 - } - ns.ObjectOff(obj7) -LABEL4: - if !(ns.CurrentHealth(obj8) > 0) { - goto LABEL5 - } - ns.ObjectOff(obj8) -LABEL5: - if !(ns.CurrentHealth(obj9) > 0) { - goto LABEL6 - } - ns.ObjectOff(obj9) -LABEL6: - ns.WayPointGroupOn(gvar35) - ns.Frozen(obj4, false) - ns.Move(obj4, wp30) - goto LABEL7 -LABEL1: - ns.FrameTimer(1, CheckPlayerZone) -LABEL7: - return -} -func StartOpeningPiece() { - flag46 = true - ns.Frozen(ns.GetHost(), true) - ns.WideScreen(true) - ns.CreatureIdle(ns.GetHost()) - ns.LookAtObject(ns.GetHost(), ns.ObjectID(wp32)) // FIXME - ns.MoveWaypoint(wp22, ns.GetObjectX(ns.GetHost()), ns.GetObjectY(ns.GetHost())) - ns.AudioEvent(ns.TeleportIn, wp22) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp32), ns.GetWaypointY(wp32), 0, 0) - ns.Effect(ns.SPARK_EXPLOSION, ns.GetWaypointX(wp32), ns.GetWaypointY(wp32), 0, 0) - ns.MoveObject(obj4, ns.GetWaypointX(wp32), ns.GetWaypointY(wp32)) - ns.Frozen(obj4, true) - ns.CreatureIdle(obj4) - ns.LookAtObject(obj4, ns.GetHost()) - ns.SetDialog(obj4, ns.NORMAL, HecubahOpenStart, HecubahOpenEnd) - ns.StartDialog(obj4, ns.GetHost()) -} -func HecubahOpenStart() { - ns.TellStory(ns.HumanMaleEatFood, "Wiz11A.scr:HecubahTalk01") -} -func HecubahOpenEnd() { - ns.CancelDialog(obj4) - ns.Frozen(obj4, false) - ns.AudioEvent(ns.TeleportOut, wp22) - ns.Effect(ns.SMOKE_BLAST, ns.GetWaypointX(wp32), ns.GetWaypointY(wp32), 0, 0) - ns.Effect(ns.SPARK_EXPLOSION, ns.GetWaypointX(wp32), ns.GetWaypointY(wp32), 0, 0) - ns.MoveObject(obj4, ns.GetWaypointX(wp33), ns.GetWaypointY(wp33)) - ns.FrameTimer(15, ReleasePlayer) -} -func ReleasePlayer() { - ns.Frozen(obj5, false) - ns.Frozen(obj6, false) - ns.Frozen(obj7, false) - ns.Frozen(obj8, false) - ns.Frozen(obj9, false) - ns.AggressionLevel(obj4, 0.83) - ns.AggressionLevel(obj5, 0.83) - ns.AggressionLevel(obj6, 0.83) - ns.AggressionLevel(obj7, 0.83) - ns.AggressionLevel(obj8, 0.83) - ns.AggressionLevel(obj9, 0.83) - ns.CreatureHunt(obj4) - ns.CreatureHunt(obj5) - ns.CreatureHunt(obj6) - ns.CreatureHunt(obj7) - ns.CreatureHunt(obj8) - ns.CreatureHunt(obj9) - ns.WideScreen(false) - ns.Frozen(ns.GetHost(), false) - ns.Music(16, 100) -} -func StartHecTalk() { - if !ns.IsCaller(ns.GetHost()) { - goto LABEL1 - } - if flag46 { - goto LABEL1 - } - ns.Music(11, 100) - flag46 = true - ns.WayPointGroupOn(gvar37) - ns.WayPointGroupOn(gvar36) - ns.Frozen(ns.GetHost(), true) - ns.WideScreen(true) - ns.CreatureIdle(ns.GetHost()) - ns.LookAtObject(ns.GetHost(), ns.ObjectID(wp32)) // FIXME - ns.SecondTimer(1, StartOpeningPiece) -LABEL1: - return -} -func CheckHecHealth() { - ns.PrintToAll(strconv.Itoa(ns.CurrentHealth(obj4))) - if !(ns.CurrentHealth(obj4) > 0) { - goto LABEL1 - } - ns.FrameTimer(5, CheckHecHealth) -LABEL1: - return -} -func OnEvent(typ string) { - switch typ { - case "MapInitialize": - MapInitialize() - case "PlayerDeath": - PlayerDeath() - } -}