def Swarm := 0
def Inn := 1
def Hospital := 2
def Racetrack := 3
def Pool := 4
def Camp := 5
def School := 6
def Tower := 7
def Wall := 11
def Level0Construction := 0
def Level0Completed := 1
def Level1Construction := 2
def Level1Completed := 3
def Level2Construction := 4
def Level2Completed := 5
def buildingsCount := engine.buildingsCount
\# general team getter
def teamsCount := engine.teamsCount
def isAlive := engine.isTeamAlive
\# more defines for engine
def PrimaryObjective := 0
def SecondaryObjective := 1
def InvalidObjective := 2
\# general game getter
\# game gui
def show := gui.showScriptText
def showTr := gui.showScriptTextTr
def hide := gui.hideScriptText
\# wait on game variables
def wait(x) := if (x > 0) {
yield()
wait(x - 1)
}
0:0: ExecutionBlock
6:16: DecNode(Worker,1)
6:15: ConstNode NativeValue<int>(0x8466c60) = 0
7:18: DecNode(Explorer,1)
7:17: ConstNode NativeValue<int>(0x8466c60) = 1
8:17: DecNode(Warrior,1)
8:16: ConstNode NativeValue<int>(0x8466c60) = 2
10:36: DecNode(unitsCount,1)
10:36: SelectNode(unitsCount)
10:19: DefLookupNode(engine)
12:21: DecNode(AbilityWalk,1)
12:20: ConstNode NativeValue<int>(0x8466c60) = 3
13:21: DecNode(AbilitySwim,1)
13:20: ConstNode NativeValue<int>(0x8466c60) = 4
14:20: DecNode(AbilityFly,1)
14:19: ConstNode NativeValue<int>(0x8466c60) = 5
15:22: DecNode(AbilityBuild,1)
15:21: ConstNode NativeValue<int>(0x8466c60) = 6
16:24: DecNode(AbilityHarvest,1)
16:23: ConstNode NativeValue<int>(0x8466c60) = 7
17:28: DecNode(AbilityAttackSpeed,1)
17:27: ConstNode NativeValue<int>(0x8466c60) = 8
18:31: DecNode(AbilityAttackStrength,1)
18:30: ConstNode NativeValue<int>(0x8466c60) = 9
19:32: DecNode(AbilityMagicAttackAir,1)
19:30: ConstNode NativeValue<int>(0x8466c60) = 10
20:35: DecNode(AbilityMagicAttackGround,1)
20:33: ConstNode NativeValue<int>(0x8466c60) = 11
22:51: DecNode(unitsUpgradeCount,1)
22:51: SelectNode(unitsUpgradesCount)
22:26: DefLookupNode(engine)
26:15: DecNode(Swarm,1)
26:14: ConstNode NativeValue<int>(0x8466c60) = 0
27:13: DecNode(Inn,1)
27:12: ConstNode NativeValue<int>(0x8466c60) = 1
28:18: DecNode(Hospital,1)
28:17: ConstNode NativeValue<int>(0x8466c60) = 2
29:19: DecNode(Racetrack,1)
29:18: ConstNode NativeValue<int>(0x8466c60) = 3
30:14: DecNode(Pool,1)
30:13: ConstNode NativeValue<int>(0x8466c60) = 4
31:14: DecNode(Camp,1)
31:13: ConstNode NativeValue<int>(0x8466c60) = 5
32:16: DecNode(School,1)
32:15: ConstNode NativeValue<int>(0x8466c60) = 6
33:15: DecNode(Tower,1)
33:14: ConstNode NativeValue<int>(0x8466c60) = 7
34:15: DecNode(Wall,1)
34:13: ConstNode NativeValue<int>(0x8466c60) = 11
36:28: DecNode(Level0Construction,1)
36:27: ConstNode NativeValue<int>(0x8466c60) = 0
37:25: DecNode(Level0Completed,1)
37:24: ConstNode NativeValue<int>(0x8466c60) = 1
38:28: DecNode(Level1Construction,1)
38:27: ConstNode NativeValue<int>(0x8466c60) = 2
39:25: DecNode(Level1Completed,1)
39:24: ConstNode NativeValue<int>(0x8466c60) = 3
40:28: DecNode(Level2Construction,1)
40:27: ConstNode NativeValue<int>(0x8466c60) = 4
41:25: DecNode(Level2Completed,1)
41:24: ConstNode NativeValue<int>(0x8466c60) = 5
43:44: DecNode(buildingsCount,1)
43:44: SelectNode(buildingsCount)
43:23: DefLookupNode(engine)
47:36: DecNode(teamsCount,1)
47:36: SelectNode(teamsCount)
47:19: DefLookupNode(engine)
48:34: DecNode(isAlive,1)
48:34: SelectNode(isTeamAlive)
48:16: DefLookupNode(engine)
52:26: DecNode(PrimaryObjective,1)
52:25: ConstNode NativeValue<int>(0x8466c60) = 0
53:28: DecNode(SecondaryObjective,1)
53:27: ConstNode NativeValue<int>(0x8466c60) = 1
54:26: DecNode(InvalidObjective,1)
54:25: ConstNode NativeValue<int>(0x8466c60) = 2
62:31: DecNode(show,1)
62:31: SelectNode(showScriptText)
62:13: DefLookupNode(gui)
63:35: DecNode(showTr,1)
63:35: SelectNode(showScriptTextTr)
63:15: DefLookupNode(gui)
64:31: DecNode(hide,1)
64:31: SelectNode(hideScriptText)
64:13: DefLookupNode(gui)
73:2: DecNode(wait,1)
73:2: FunNode
70:10: ValPatternNode(x)
73:2: ApplyNode
70:27: ApplyNode
70:16: DefLookupNode(if)
70:22: ApplyNode
70:22: SelectNode(>)
70:20: DefLookupNode(x)
70:24: ConstNode NativeValue<int>(0x8466c60) = 0
70:27: ExecutionBlock
71:9: ApplyNode
71:2: DefLookupNode(yield)
71:7: ConstNode Value(0x848c8a0)
72:13: ApplyNode
72:2: DefLookupNode(wait)
72:9: ApplyNode
72:9: SelectNode(-)
72:7: DefLookupNode(x)
72:11: ConstNode NativeValue<int>(0x8466c60) = 1
Value(0x848c8a0)
0:0: ExecutionBlock
glob2: libgag/src/BinaryStream.cpp:107: virtual std::string GAGCore::BinaryInputStream::readText(const char*): Assertion `len < 1024*1024' failed.
Przerwane
zenfur@bluelight:/usr/local/share$
zenfur@bluelight:/usr/local/share$ glob2
zenfur@bluelight:/usr/local/share$ glob2
* Loading data/usl/Language/Runtime/Control.usl
def if (cond) := {
def ifTrue (trueVal) := [
def else(_) := trueVal
]
def ifFalse (_) := [
def else(falseVal) := falseVal
]
cond select (ifTrue, ifFalse)
}
def while (cond) (def body) := {
if (cond) {
body
while (cond) (body)
}
}
0:0: ExecutionBlock
9:2: DecNode(if,1)
9:2: FunNode
1:9: ValPatternNode(cond)
1:18: ExecutionBlock
4:3: DecNode(ifTrue,1)
4:3: FunNode
2:14: ValPatternNode(trueVal)
2:26: RecordBlock
3:25: DecNode(else,1)
3:25: FunNode
3:12: IgnorePatternNode
3:18: DefLookupNode(trueVal)
7:3: DecNode(ifFalse,1)
7:3: FunNode
5:15: IgnorePatternNode
5:21: RecordBlock
6:33: DecNode(else,1)
6:33: FunNode
6:12: ValPatternNode(falseVal)
6:25: DefLookupNode(falseVal)
8:7: ApplyNode
8:7: SelectNode(select)
8:2: DefLookupNode(cond)
8:14: RecordBlock
8:15: DefLookupNode(ifTrue)
8:23: DefLookupNode(ifFalse)
16:2: DecNode(while,1)
16:2: FunNode
11:12: ValPatternNode(cond)
16:2: FunNode
11:19: DefPatternNode(body)
11:32: ExecutionBlock
15:3: ApplyNode
12:12: ApplyNode
12:2: DefLookupNode(if)
12:6: DefLookupNode(cond)
12:12: ExecutionBlock
13:3: DefLookupNode(body)
14:22: ApplyNode
14:16: ApplyNode
14:3: DefLookupNode(while)
14:10: DefLookupNode(cond)
14:17: DefLookupNode(body)
Value(0x848c8a0)
* Loading data/usl/Language/Runtime/Classes.usl
def abstract := () \# TODO: throw an exception
def interface(singleton) := singleton.prototype
0:0: ExecutionBlock
2:1: DecNode(abstract,1)
1:17: ConstNode Value(0x848c8a0)
3:48: DecNode(interface,1)
3:48: FunNode
3:15: ValPatternNode(singleton)
3:48: SelectNode(prototype)
3:29: DefLookupNode(singleton)
Value(0x848c8a0)
* Loading data/usl/Language/Runtime/If.usl
val true := [
def select (ifTrue, _) := ifTrue
def not := false
def and(that) := that
def or (_) := true
def xor (that) := that select (false, true)
]
val false := [
def select (_, ifFalse) := ifFalse
def not := true
def and (that) := false
def or (that) := that
def xor (that) := that select (true, false)
]
0:0: ExecutionBlock
7:2: DecNode(true,2)
1:13: RecordBlock
2:34: DecNode(select,1)
2:34: FunNode
2:13: TuplePatternNode
2:14: ValPatternNode(ifTrue)
2:22: IgnorePatternNode
2:28: DefLookupNode(ifTrue)
3:18: DecNode(not,1)
3:13: DefLookupNode(false)
4:23: DecNode(and,1)
4:23: FunNode
4:10: ValPatternNode(that)
4:19: DefLookupNode(that)
5:20: DecNode(or,1)
5:20: FunNode
5:10: IgnorePatternNode
5:16: DefLookupNode(true)
6:45: DecNode(xor,1)
6:45: FunNode
6:11: ValPatternNode(that)
6:25: ApplyNode
6:25: SelectNode(select)
6:20: DefLookupNode(that)
6:32: RecordBlock
6:33: DefLookupNode(false)
6:40: DefLookupNode(true)
15:2: DecNode(false,2)
9:14: RecordBlock
10:36: DecNode(select,1)
10:36: FunNode
10:13: TuplePatternNode
10:14: IgnorePatternNode
10:17: ValPatternNode(ifFalse)
10:29: DefLookupNode(ifFalse)
11:17: DecNode(not,1)
11:13: DefLookupNode(true)
12:25: DecNode(and,1)
12:25: FunNode
12:11: ValPatternNode(that)
12:20: DefLookupNode(false)
13:23: DecNode(or,1)
13:23: FunNode
13:10: ValPatternNode(that)
13:19: DefLookupNode(that)
14:45: DecNode(xor,1)
14:45: FunNode
14:11: ValPatternNode(that)
14:25: ApplyNode
14:25: SelectNode(select)
14:20: DefLookupNode(that)
14:32: RecordBlock
14:33: DefLookupNode(true)
14:39: DefLookupNode(false)
Scope(0x875f070)
* Loading data/usl/Glob2/Runtime/Game.usl
\# wrappers around native interface to get shorter calls
\# units getter
def Worker := 0
def Explorer := 1
def Warrior := 2
def unitsCount := engine.unitsCount
def AbilityWalk := 3
def AbilitySwim := 4
def AbilityFly := 5
def AbilityBuild := 6
def AbilityHarvest := 7
def AbilityAttackSpeed := 8
def AbilityAttackStrength := 9
def AbilityMagicAttackAir := 10
def AbilityMagicAttackGround := 11
def unitsUpgradeCount := engine.unitsUpgradesCount
\# buildings getter
def Swarm := 0
def Inn := 1
def Hospital := 2
def Racetrack := 3
def Pool := 4
def Camp := 5
def School := 6
def Tower := 7
def Wall := 11
def Level0Construction := 0
def Level0Completed := 1
def Level1Construction := 2
def Level1Completed := 3
def Level2Construction := 4
def Level2Completed := 5
def buildingsCount := engine.buildingsCount
\# general team getter
def teamsCount := engine.teamsCount
def isAlive := engine.isTeamAlive
\# more defines for engine
def PrimaryObjective := 0
def SecondaryObjective := 1
def InvalidObjective := 2
\# general game getter
\# game gui
def show := gui.showScriptText
def showTr := gui.showScriptTextTr
def hide := gui.hideScriptText
\# wait on game variables
def wait(x) := if (x > 0) {
yield()
wait(x - 1)
}
0:0: ExecutionBlock
6:16: DecNode(Worker,1)
6:15: ConstNode NativeValue<int>(0x8466c60) = 0
7:18: DecNode(Explorer,1)
7:17: ConstNode NativeValue<int>(0x8466c60) = 1
8:17: DecNode(Warrior,1)
8:16: ConstNode NativeValue<int>(0x8466c60) = 2
10:36: DecNode(unitsCount,1)
10:36: SelectNode(unitsCount)
10:19: DefLookupNode(engine)
12:21: DecNode(AbilityWalk,1)
12:20: ConstNode NativeValue<int>(0x8466c60) = 3
13:21: DecNode(AbilitySwim,1)
13:20: ConstNode NativeValue<int>(0x8466c60) = 4
14:20: DecNode(AbilityFly,1)
14:19: ConstNode NativeValue<int>(0x8466c60) = 5
15:22: DecNode(AbilityBuild,1)
15:21: ConstNode NativeValue<int>(0x8466c60) = 6
16:24: DecNode(AbilityHarvest,1)
16:23: ConstNode NativeValue<int>(0x8466c60) = 7
17:28: DecNode(AbilityAttackSpeed,1)
17:27: ConstNode NativeValue<int>(0x8466c60) = 8
18:31: DecNode(AbilityAttackStrength,1)
18:30: ConstNode NativeValue<int>(0x8466c60) = 9
19:32: DecNode(AbilityMagicAttackAir,1)
19:30: ConstNode NativeValue<int>(0x8466c60) = 10
20:35: DecNode(AbilityMagicAttackGround,1)
20:33: ConstNode NativeValue<int>(0x8466c60) = 11
22:51: DecNode(unitsUpgradeCount,1)
22:51: SelectNode(unitsUpgradesCount)
22:26: DefLookupNode(engine)
26:15: DecNode(Swarm,1)
26:14: ConstNode NativeValue<int>(0x8466c60) = 0
27:13: DecNode(Inn,1)
27:12: ConstNode NativeValue<int>(0x8466c60) = 1
28:18: DecNode(Hospital,1)
28:17: ConstNode NativeValue<int>(0x8466c60) = 2
29:19: DecNode(Racetrack,1)
29:18: ConstNode NativeValue<int>(0x8466c60) = 3
30:14: DecNode(Pool,1)
30:13: ConstNode NativeValue<int>(0x8466c60) = 4
31:14: DecNode(Camp,1)
31:13: ConstNode NativeValue<int>(0x8466c60) = 5
32:16: DecNode(School,1)
32:15: ConstNode NativeValue<int>(0x8466c60) = 6
33:15: DecNode(Tower,1)
33:14: ConstNode NativeValue<int>(0x8466c60) = 7
34:15: DecNode(Wall,1)
34:13: ConstNode NativeValue<int>(0x8466c60) = 11
36:28: DecNode(Level0Construction,1)
36:27: ConstNode NativeValue<int>(0x8466c60) = 0
37:25: DecNode(Level0Completed,1)
37:24: ConstNode NativeValue<int>(0x8466c60) = 1
38:28: DecNode(Level1Construction,1)
38:27: ConstNode NativeValue<int>(0x8466c60) = 2
39:25: DecNode(Level1Completed,1)
39:24: ConstNode NativeValue<int>(0x8466c60) = 3
40:28: DecNode(Level2Construction,1)
40:27: ConstNode NativeValue<int>(0x8466c60) = 4
41:25: DecNode(Level2Completed,1)
41:24: ConstNode NativeValue<int>(0x8466c60) = 5
43:44: DecNode(buildingsCount,1)
43:44: SelectNode(buildingsCount)
43:23: DefLookupNode(engine)
47:36: DecNode(teamsCount,1)
47:36: SelectNode(teamsCount)
47:19: DefLookupNode(engine)
48:34: DecNode(isAlive,1)
48:34: SelectNode(isTeamAlive)
48:16: DefLookupNode(engine)
52:26: DecNode(PrimaryObjective,1)
52:25: ConstNode NativeValue<int>(0x8466c60) = 0
53:28: DecNode(SecondaryObjective,1)
53:27: ConstNode NativeValue<int>(0x8466c60) = 1
54:26: DecNode(InvalidObjective,1)
54:25: ConstNode NativeValue<int>(0x8466c60) = 2
62:31: DecNode(show,1)
62:31: SelectNode(showScriptText)
62:13: DefLookupNode(gui)
63:35: DecNode(showTr,1)
63:35: SelectNode(showScriptTextTr)
63:15: DefLookupNode(gui)
64:31: DecNode(hide,1)
64:31: SelectNode(hideScriptText)
64:13: DefLookupNode(gui)
73:2: DecNode(wait,1)
73:2: FunNode
70:10: ValPatternNode(x)
73:2: ApplyNode
70:27: ApplyNode
70:16: DefLookupNode(if)
70:22: ApplyNode
70:22: SelectNode(>)
70:20: DefLookupNode(x)
70:24: ConstNode NativeValue<int>(0x8466c60) = 0
70:27: ExecutionBlock
71:9: ApplyNode
71:2: DefLookupNode(yield)
71:7: ConstNode Value(0x848c8a0)
72:13: ApplyNode
72:2: DefLookupNode(wait)
72:9: ApplyNode
72:9: SelectNode(-)
72:7: DefLookupNode(x)
72:11: ConstNode NativeValue<int>(0x8466c60) = 1
Value(0x848c8a0)
0:0: ExecutionBlock
glob2: libgag/src/BinaryStream.cpp:107: virtual std::string GAGCore::BinaryInputStream::readText(const char*): Assertion `len < 1024*1024' failed.
Przerwane