Fixed unary negation bug, removed newline from print

This commit is contained in:
2023-02-10 18:38:25 +00:00
parent 53012dbce1
commit aeb008c684
11 changed files with 96 additions and 25 deletions

View File

@@ -24,7 +24,7 @@ fn getY(node: opaque) {
//lifecycle functions
fn onInit(node: opaque) {
print "render.toy:onInit() called";
print "render.toy:onInit() called\n";
node.loadTexture("sprites:/character.png");
parent = node.getNodeParent();
@@ -36,13 +36,13 @@ fn onStep(node: opaque) {
}
fn onFree(node: opaque) {
print "render.toy:onFree() called";
print "render.toy:onFree() called\n";
node.freeTexture();
}
fn onDraw(node: opaque) {
// print "render.toy:onDraw() called";
// print "render.toy:onDraw() called\n";
var px = parent.callNode("getX");
var py = parent.callNode("getY");
@@ -104,11 +104,11 @@ fn onKeyUp(node: opaque, event: string) {
}
fn onMouseMotion(node: opaque, x: int, y: int, xrel: int, yrel: int) {
print "entity.toy:onMouseMotion(" + string x + ", " + string y + ", " + string xrel + ", " + string yrel + ")";
// print "entity.toy:onMouseMotion(" + string x + ", " + string y + ", " + string xrel + ", " + string yrel + ")\n";
}
fn onMouseButtonDown(node: opaque, x: int, y: int, button: string) {
print "entity.toy:onMouseButtonDown(" + string x + ", " + string y + ", " + button + ")";
// print "entity.toy:onMouseButtonDown(" + string x + ", " + string y + ", " + button + ")\n";
//jump to pos
posX = x - WIDTH / 2;
@@ -116,10 +116,10 @@ fn onMouseButtonDown(node: opaque, x: int, y: int, button: string) {
}
fn onMouseButtonUp(node: opaque, x: int, y: int, button: string) {
print "entity.toy:onMouseButtonUp(" + string x + ", " + string y + ", " + button + ")";
// print "entity.toy:onMouseButtonUp(" + string x + ", " + string y + ", " + button + ")\n";
}
fn onMouseWheel(node: opaque, xrel: int, yrel: int) {
print "entity.toy:onMouseWheel(" + string xrel + ", " + string yrel + ")";
// print "entity.toy:onMouseWheel(" + string xrel + ", " + string yrel + ")\n";
}

View File

@@ -17,5 +17,5 @@ fn fib(n : int) {
for (var i = 0; i < 40; i++) {
var res = fib(i);
print string i + ": " + string res;
print string i + ": " + string res + "\n";
}

View File

@@ -5,5 +5,5 @@ fn fib(n : int) {
for (var i = 0; i < 20; i++) {
var res = fib(i);
print string i + ": " + string res;
print string i + ": " + string res + "\n";
}

61
scripts/level.toy Normal file
View File

@@ -0,0 +1,61 @@
//constants
var WIDTH: int const = 10;
var HEIGHT: int const = 10;
//WIDTH * HEIGHT in size
var tiles: [[int]] const = [
[1, 1, 1, 1, 1, 1, 1, 1, 1, 1],
[1, 0, 0, 0, 0, 0, 0, 0, 0, 1],
[1, 0, 0, 0, 0, 0, 0, 0, 0, 1],
[1, 0, 0, 0, 0, 0, 0, 0, 0, 1],
[1, 0, 0, 0, 0, 0, 0, 0, 0, 1],
[1, 0, 0, 0, 0, 0, 0, 0, 0, 1],
[1, 0, 0, 0, 0, 0, 0, 0, 0, 1],
[1, 0, 0, 0, 0, 0, 0, 0, 0, 1],
[1, 0, 0, 0, 0, 0, 0, 0, 0, 1],
[1, 1, 1, 1, 1, 1, 1, 1, 1, 1]
];
var tileset: [int: string] const = [
0: " ",
1: " X "
];
//variables
var posX: int = 5;
var posY: int = 5;
//functions
fn draw() {
for (var j: int = 0; j < HEIGHT; j++) {
for (var i: int = 0; i < WIDTH; i++) {
//draw the player pos
if (i == posX && j == posY) {
print " O ";
continue;
}
print tileset[ tiles[i][j] ];
}
print "\n";
}
print "\n";
}
fn move(xrel: int, yrel: int) {
if (xrel > 1 || xrel < -1 || yrel > 1 || yrel < -1 || (xrel != 0 && yrel != 0)) {
print "too fast!\n";
return;
}
if (tiles[posX + xrel][posY + yrel] > 0) {
print "Can't move that way\n";
return;
}
posX += xrel;
posY += yrel;
draw();
}

View File

@@ -29,7 +29,7 @@ for (var i = 0; i < SIZE -1; i++) {
prev += " ";
}
prev += "*"; //initial
print prev;
print prev + "\n";
//run
for (var iteration = 0; iteration < SIZE -1; iteration++) {
@@ -44,6 +44,6 @@ for (var iteration = 0; iteration < SIZE -1; iteration++) {
//right
output += (lookup[prev[SIZE-2]][prev[SIZE-1]][" "]);
print output;
print output + "\n";
prev = output;
}

View File

@@ -1,8 +1,10 @@
import compound;
var a = [false, false, false];
var d = ["one": false, "two": false];
print d.containsKey("one");
print d.containsKey("three");
var xrel: int = 0;
var yrel: int = 0;
if (xrel > 1 || xrel < -1 || yrel > 1 || yrel < -1) {
print "outside";
}
else {
print "inside";
}