zongors-reality-engine/docs/project-syntax-example/client.zre

40 lines
1010 B
Plaintext

use "common.ztl";
fn main(argc real, argv str[]) {
let screen_width = 800; ! implied uint32
let screen_height = 450; ! implied uint32
let username = argv[0]; ! implied str
let password = argv[1]; ! implied str
let me = Player(username, [0.0, 1.0, 2.0], PURPLE); ! implied Player struct
let running = true;
while (running) {
window("zwl client", screen_width, screen_height) {
splitbox(parent.size 0.25) {
canvas("2D") {
if (button("logout")) {
me.logout();
running = false;
}
}
}
splitbox(parent.size 0.75) {
canvas("3D") {
model(Floor([0, 0, 0], 30));
me.update();
model(Cube(me.pos, [0.5, 0.5, 0.5], me.appearance));
if (let players = me.server.read("players")) {
for (p in players) {
model(Cube(p.pos, [0.5, 0.5, 0.5], p.apperance));
}
}
}
}
}
}
exits("Client Closed Successfully");
}