gmqcc/data/frames.qc

57 lines
1.2 KiB
C++
Raw Normal View History

2012-08-19 14:14:19 +00:00
/* this is the WIP test for the parser...
* constantly adding stuff here to see if things break
*/
void(string) print = #1;
void(string,string) print2 = #1;
void(string,string,string) print3 = #1;
string(float) ftos = #2;
entity() spawn = #3;
void(entity) kill = #4;
$frame stand1 stand2 standX
.float frame;
.float nextthink;
.void() think;
entity self;
float time;
// void() stand2; this is auto-prototyped
2012-08-19 14:14:19 +00:00
void() stand1 = [ 0, stand2 ] {
// expands to:
//self.frame = 0;
//self.nextthink = time + 0.1;
//self.think = stand2
2012-08-19 14:14:19 +00:00
print("In stand 1...\n");
print3("--> self.frame should be 0, is ", ftos(self.frame), "\n");
};
void() stand2 = [ 1, stand1 ] {
print("In stand 2...\n");
print3("--> self.frame should be 1, is ", ftos(self.frame), "\n");
};
void() standm = {
2012-08-19 15:52:44 +00:00
local string bar;
bar = ftos(self);
print3("Foo ", ftos(self), "\n");
self.frame = 0;
self.nextthink = time + 0.1;
};
2012-08-19 14:14:19 +00:00
void() main = {
self = spawn();
time = 10;
2012-08-19 14:18:39 +00:00
print("Setting think\n");
self.think = stand1;
2012-08-19 14:14:19 +00:00
2012-08-19 14:18:39 +00:00
print("Running think\n");
standm();
print("Running from 'self'\n");
2012-08-19 14:18:39 +00:00
self.think();
self.think();
self.think();
2012-08-19 14:14:19 +00:00
};