fix stuff
This commit is contained in:
parent
95d5d5e58f
commit
2b74c4316b
2 changed files with 27 additions and 27 deletions
|
|
@ -74,7 +74,7 @@ let draw = fn(state) {
|
||||||
if ((0 - epsilon) < b_diff) && (b_diff < epsilon) { count = count + 1; };
|
if ((0 - epsilon) < b_diff) && (b_diff < epsilon) { count = count + 1; };
|
||||||
|
|
||||||
if count == 0 {
|
if count == 0 {
|
||||||
draw_text("Match the colors", 200, 200, 50, { .r: 255, .g: 255, .b: 255 });
|
draw_text("Match the colors", 70, 80, 30, { .r: 255, .g: 255, .b: 255 });
|
||||||
};
|
};
|
||||||
if count == 1 {
|
if count == 1 {
|
||||||
draw_text("Close", 200, 200, 50, { .r: 255, .g: 255, .b: 255 });
|
draw_text("Close", 200, 200, 50, { .r: 255, .g: 255, .b: 255 });
|
||||||
|
|
|
||||||
52
game.ayin
52
game.ayin
|
|
@ -25,12 +25,12 @@ let setup = fn() {
|
||||||
.shot: 1,
|
.shot: 1,
|
||||||
.shot_timer: 0,
|
.shot_timer: 0,
|
||||||
},
|
},
|
||||||
.enemy: {
|
.opponent: {
|
||||||
.pos: {
|
.pos: {
|
||||||
.x: dim.w,
|
.x: dim.w,
|
||||||
.y: dim.h,
|
.y: dim.h,
|
||||||
},
|
},
|
||||||
.speed: 20,
|
.speed: 60,
|
||||||
.timer: 0,
|
.timer: 0,
|
||||||
},
|
},
|
||||||
.bullets: {
|
.bullets: {
|
||||||
|
|
@ -74,41 +74,41 @@ let move_player = fn(state, input) {
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
let move_enemy = fn(state) {
|
let move_opponent = fn(state) {
|
||||||
let delta = get_frame_time();
|
let delta = get_frame_time();
|
||||||
|
|
||||||
let enemy_movement = {
|
let opponent_movement = {
|
||||||
.x: if abs(state.enemy.pos.x - state.player.pos.x) < 5 { 0 } else { if state.enemy.pos.x < state.player.pos.x { 1 } else { -1 } },
|
.x: if abs(state.opponent.pos.x - state.player.pos.x) < 5 { 0 } else { if state.opponent.pos.x < state.player.pos.x { 1 } else { -1 } },
|
||||||
.y: if abs(state.enemy.pos.y - state.player.pos.y) < 5 { 0 } else { if state.enemy.pos.y < state.player.pos.y { 1 } else { -1 } },
|
.y: if abs(state.opponent.pos.y - state.player.pos.y) < 5 { 0 } else { if state.opponent.pos.y < state.player.pos.y { 1 } else { -1 } },
|
||||||
};
|
};
|
||||||
|
|
||||||
state.enemy.pos.x =
|
state.opponent.pos.x =
|
||||||
max(0,
|
max(0,
|
||||||
min( state.enemy.pos.x + (delta * state.enemy.speed * enemy_movement.x)
|
min( state.opponent.pos.x + (delta * state.opponent.speed * opponent_movement.x)
|
||||||
, screen_size - dim.w
|
, screen_size - dim.w
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
state.enemy.pos.y =
|
state.opponent.pos.y =
|
||||||
max(0,
|
max(0,
|
||||||
min( state.enemy.pos.y + (delta * state.enemy.speed * enemy_movement.y)
|
min( state.opponent.pos.y + (delta * state.opponent.speed * opponent_movement.y)
|
||||||
, screen_size - dim.w
|
, screen_size - dim.w
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
shoot_bullets(state, enemy_movement);
|
shoot_bullets(state, opponent_movement);
|
||||||
}
|
}
|
||||||
|
|
||||||
let shoot_bullets = fn(state, enemy_movement) {
|
let shoot_bullets = fn(state, opponent_movement) {
|
||||||
let delta = get_frame_time();
|
let delta = get_frame_time();
|
||||||
|
|
||||||
state.enemy.timer = state.enemy.timer - 1;
|
state.opponent.timer = state.opponent.timer - 1;
|
||||||
if (state.enemy.timer <= 0) && (state.status != "caught") {
|
if (state.opponent.timer <= 0) && (state.status != "caught") {
|
||||||
state.enemy.timer = shoot_timer;
|
state.opponent.timer = shoot_timer;
|
||||||
|
|
||||||
state.bullets.pos.x = state.enemy.pos.x + (dim.w * enemy_movement.x);
|
state.bullets.pos.x = state.opponent.pos.x + (dim.w * opponent_movement.x);
|
||||||
state.bullets.pos.y = state.enemy.pos.y + (dim.h * enemy_movement.y);
|
state.bullets.pos.y = state.opponent.pos.y + (dim.h * opponent_movement.y);
|
||||||
state.bullets.movement.x = enemy_movement.x;
|
state.bullets.movement.x = opponent_movement.x;
|
||||||
state.bullets.movement.y = enemy_movement.y;
|
state.bullets.movement.y = opponent_movement.y;
|
||||||
};
|
};
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
@ -139,21 +139,21 @@ let update = fn(state, input) {
|
||||||
state.player.shot_timer = 0;
|
state.player.shot_timer = 0;
|
||||||
};
|
};
|
||||||
|
|
||||||
move_enemy(state);
|
move_opponent(state);
|
||||||
move_bullets(state);
|
move_bullets(state);
|
||||||
|
|
||||||
if is_touching(make_rect(state.bullets.pos, { .w: dim.w / 2, .h: dim.h / 2 }), make_rect(state.player.pos, dim)) && (state.player.shot_timer == 0) {
|
if is_touching(make_rect(state.bullets.pos, { .w: dim.w / 2, .h: dim.h / 2 }), make_rect(state.player.pos, dim)) && (state.player.shot_timer == 0) {
|
||||||
state.player.shot = state.player.shot + 1;
|
state.player.shot = state.player.shot + 1;
|
||||||
state.player.shot_timer = shot_timer;
|
state.player.shot_timer = shot_timer;
|
||||||
};
|
};
|
||||||
if is_touching(make_rect(state.enemy.pos, dim), make_rect(state.player.pos, dim)) {
|
if is_touching(make_rect(state.opponent.pos, dim), make_rect(state.player.pos, dim)) {
|
||||||
state.status = "caught";
|
state.status = "caught";
|
||||||
};
|
};
|
||||||
|
|
||||||
if input.gamepad1.buttons.y {
|
if input.gamepad1.buttons.y {
|
||||||
let new_state = setup();
|
let new_state = setup();
|
||||||
state.player = new_state.player;
|
state.player = new_state.player;
|
||||||
state.enemy = new_state.enemy;
|
state.opponent = new_state.opponent;
|
||||||
state.bullets = new_state.bullets;
|
state.bullets = new_state.bullets;
|
||||||
state.status = new_state.status;
|
state.status = new_state.status;
|
||||||
state.timer = new_state.timer;
|
state.timer = new_state.timer;
|
||||||
|
|
@ -173,15 +173,15 @@ let draw = fn(state) {
|
||||||
let color = { .r: 105 + (state.player.shot_timer * 100), .g: 225, .b: 125 };
|
let color = { .r: 105 + (state.player.shot_timer * 100), .g: 225, .b: 125 };
|
||||||
draw_rectangle(player_rect, color);
|
draw_rectangle(player_rect, color);
|
||||||
|
|
||||||
let enemy_rect = {
|
let opponent_rect = {
|
||||||
.x: state.enemy.pos.x,
|
.x: state.opponent.pos.x,
|
||||||
.y: state.enemy.pos.y,
|
.y: state.opponent.pos.y,
|
||||||
.w: dim.w,
|
.w: dim.w,
|
||||||
.h: dim.h,
|
.h: dim.h,
|
||||||
};
|
};
|
||||||
|
|
||||||
let color = { .r: 255, .g: 155, .b: 255 - (state.player.shot_timer * 50) };
|
let color = { .r: 255, .g: 155, .b: 255 - (state.player.shot_timer * 50) };
|
||||||
draw_rectangle(enemy_rect, color);
|
draw_rectangle(opponent_rect, color);
|
||||||
|
|
||||||
let bullet_rect = {
|
let bullet_rect = {
|
||||||
.x: state.bullets.pos.x,
|
.x: state.bullets.pos.x,
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue