diff --git a/scenes/game.tscn b/scenes/game.tscn index dbaf83f..f6ddcae 100644 --- a/scenes/game.tscn +++ b/scenes/game.tscn @@ -454,7 +454,7 @@ script = ExtResource("2_iywne") [node name="TileMapLayer" type="TileMapLayer" parent="." unique_id=55809753] texture_filter = 1 -tile_map_data = PackedByteArray("AAAVAAwAAQAAAAQAAAAWAAwAAQABAAQAAAAXAAwAAQACAAQAAAAIAA0AAQAEAAEAAAAIAAwAAQAGAAMAAAAIAAsAAQAAAAAAAAAJAAsAAQABAAAAAAAJAAwAAQABAAIAAAAKAAwAAQAHAAAAAAAKAAsAAQABAAAAAAALAAsAAQACAAAAAAALAAwAAQACAAEAAAALAA0AAQACAAIAAAAKAA0AAQAAAAIAAAAOAAoAAQAAAAQAAAAPAAoAAQABAAQAAAAQAAoAAQACAAQAAAAVAAsAAwAAAAAAAAAXAAsAAgAAAAEAAAAXAAoAAgAAAAAAAAAWAAsAAgAAAAEAAAAWAAoAAgAAAAAAAAAIAA4AAQAEAAEAAAApAA4AAQAAAAAAAAAqAA4AAQABAAAAAAArAA4AAQABAAAAAAAsAA4AAQABAAAAAAAsAA8AAQABAAIAAAAtAA8AAQABAAIAAAAtAA4AAQABAAAAAAAuAA4AAQACAAAAAAACAA8AAQAAAAQAAAADAA8AAQABAAQAAAAEAA8AAQABAAQAAAAFAA8AAQABAAQAAAAGAA8AAQABAAQAAAAHAA8AAQABAAQAAAAIAA8AAQAMAAAAAAAJAA8AAQABAAAAAAAKAA8AAQABAAAAAAALAA8AAQABAAAAAAAMAA8AAQABAAAAAAANAA8AAQABAAAAAAAOAA8AAQABAAAAAAAPAA8AAQABAAAAAAAQAA8AAQABAAAAAAARAA8AAQABAAAAAAASAA8AAQABAAAAAAATAA8AAQABAAAAAAAUAA8AAQABAAAAAAAVAA8AAQABAAAAAAAWAA8AAQABAAAAAAAXAA8AAQABAAAAAAAYAA8AAQABAAAAAAAZAA8AAQABAAAAAAAaAA8AAQABAAAAAAAbAA8AAQABAAAAAAAcAA8AAQABAAAAAAAdAA8AAQABAAAAAAAeAA8AAQABAAAAAAAfAA8AAQABAAAAAAAgAA8AAQABAAAAAAAhAA8AAQABAAAAAAAiAA8AAQAJAAMAAAAjAA8AAQABAAQAAAAkAA8AAQABAAQAAAAlAA8AAQABAAQAAAAmAA8AAQABAAQAAAAnAA8AAQABAAQAAAAoAA8AAQABAAQAAAApAA8AAQAKAAQAAAAqAA8AAQABAAIAAAArAA8AAQABAAIAAAAuAA8AAQAJAAQAAAAvAA8AAQABAAQAAAAwAA8AAQABAAQAAAAxAA8AAQABAAQAAAAyAA8AAQABAAQAAAAzAA8AAQABAAQAAAA0AA8AAQABAAQAAAA1AA8AAQABAAQAAAA2AA8AAQABAAQAAAA3AA8AAQABAAQAAAA4AA8AAQABAAQAAAA5AA8AAQABAAQAAAA6AA8AAQABAAQAAAA7AA8AAQABAAQAAAA8AA8AAQABAAQAAAA9AA8AAQABAAQAAAA+AA8AAQABAAQAAAA/AA8AAQABAAQAAABAAA8AAQABAAQAAABBAA8AAQABAAQAAABCAA8AAQABAAQAAABDAA8AAQABAAQAAABEAA8AAQABAAQAAABFAA8AAQABAAQAAABGAA8AAQABAAQAAABHAA8AAQACAAQAAAAZAAoAAQAAAAQAAAAaAAoAAQABAAQAAAAbAAoAAQAQAAQAAAAbAAkAAQAPAAMAAAAcAAkAAQACAAQAAAAdAAcAAQAAAAQAAAAeAAcAAQABAAQAAAAfAAcAAQABAAQAAAAgAAcAAQACAAQAAAAaAAUAAQACAAQAAAAZAAUAAQAPAAQAAAAZAAQAAQAQAAMAAAAYAAQAAQABAAQAAAAXAAQAAQAAAAQAAAAiABMAAQACAAIAAAAiABIAAQACAAEAAAAiABEAAQACAAEAAAAiABAAAQACAAEAAAAhABMAAQABAAIAAAAhABIAAQABAAEAAAAhABEAAQABAAEAAAAhABAAAQABAAEAAAAgABMAAQABAAIAAAAgABIAAQABAAEAAAAgABEAAQABAAEAAAAgABAAAQABAAEAAAAfABMAAQABAAIAAAAfABIAAQABAAEAAAAfABEAAQABAAEAAAAfABAAAQABAAEAAAAeABMAAQABAAIAAAAeABIAAQABAAEAAAAeABEAAQABAAEAAAAeABAAAQABAAEAAAAdABMAAQABAAIAAAAdABIAAQABAAEAAAAdABEAAQABAAEAAAAdABAAAQABAAEAAAAcABMAAQABAAIAAAAcABIAAQABAAEAAAAcABEAAQABAAEAAAAcABAAAQABAAEAAAAbABMAAQABAAIAAAAbABIAAQABAAEAAAAbABEAAQABAAEAAAAbABAAAQABAAEAAAAaABMAAQABAAIAAAAaABIAAQABAAEAAAAaABEAAQABAAEAAAAaABAAAQABAAEAAAAZABMAAQABAAIAAAAZABIAAQABAAEAAAAZABEAAQABAAEAAAAZABAAAQABAAEAAAAYABMAAQABAAIAAAAYABIAAQABAAEAAAAYABEAAQABAAEAAAAYABAAAQABAAEAAAAXABMAAQABAAIAAAAXABIAAQABAAEAAAAXABEAAQABAAEAAAAXABAAAQABAAEAAAAWABMAAQABAAIAAAAWABIAAQABAAEAAAAWABEAAQABAAEAAAAWABAAAQABAAEAAAAVABMAAQABAAIAAAAVABIAAQABAAEAAAAVABEAAQABAAEAAAAVABAAAQABAAEAAAAUABMAAQABAAIAAAAUABIAAQABAAEAAAAUABEAAQABAAEAAAAUABAAAQABAAEAAAATABMAAQABAAIAAAATABIAAQABAAEAAAATABEAAQABAAEAAAATABAAAQABAAEAAAASABMAAQABAAIAAAASABIAAQABAAEAAAASABEAAQABAAEAAAASABAAAQABAAEAAAARABMAAQABAAIAAAARABIAAQABAAEAAAARABEAAQABAAEAAAARABAAAQABAAEAAAAQABMAAQABAAIAAAAQABIAAQABAAEAAAAQABEAAQABAAEAAAAQABAAAQABAAEAAAAPABMAAQABAAIAAAAPABIAAQABAAEAAAAPABEAAQABAAEAAAAPABAAAQABAAEAAAAOABMAAQABAAIAAAAOABIAAQABAAEAAAAOABEAAQABAAEAAAAOABAAAQABAAEAAAANABMAAQABAAIAAAANABIAAQABAAEAAAANABEAAQABAAEAAAANABAAAQABAAEAAAAMABMAAQABAAIAAAAMABIAAQABAAEAAAAMABEAAQABAAEAAAAMABAAAQABAAEAAAALABMAAQABAAIAAAALABIAAQABAAEAAAALABEAAQABAAEAAAALABAAAQABAAEAAAAKABMAAQABAAIAAAAKABIAAQABAAEAAAAKABEAAQABAAEAAAAKABAAAQABAAEAAAAJABMAAQABAAIAAAAJABIAAQABAAEAAAAJABEAAQABAAEAAAAJABAAAQABAAEAAAAIABMAAQAAAAIAAAAIABIAAQAAAAEAAAAIABEAAQAAAAEAAAAIABAAAQAAAAEAAAA=") +tile_map_data = PackedByteArray("AAAVAAwAAQAAAAQAAAAWAAwAAQABAAQAAAAXAAwAAQACAAQAAAAIAA0AAQAEAAEAAAAIAAwAAQAGAAMAAAAIAAsAAQAAAAAAAAAJAAsAAQABAAAAAAAJAAwAAQABAAIAAAAKAAwAAQAHAAAAAAAKAAsAAQABAAAAAAALAAsAAQACAAAAAAALAAwAAQACAAEAAAALAA0AAQACAAIAAAAKAA0AAQAAAAIAAAAOAAoAAQAAAAQAAAAPAAoAAQABAAQAAAAQAAoAAQACAAQAAAAVAAsAAwAAAAAAAAAXAAsAAgAAAAEAAAAXAAoAAgAAAAAAAAAWAAsAAgAAAAEAAAAWAAoAAgAAAAAAAAAIAA4AAQAEAAEAAAApAA4AAQAAAAAAAAAqAA4AAQABAAAAAAArAA4AAQABAAAAAAAsAA4AAQABAAAAAAAsAA8AAQABAAIAAAAtAA8AAQABAAIAAAAtAA4AAQABAAAAAAAuAA4AAQACAAAAAAACAA8AAQAAAAIAAAADAA8AAQABAAIAAAAEAA8AAQABAAIAAAAFAA8AAQAJAAQAAAAGAA8AAQABAAQAAAAHAA8AAQABAAQAAAAIAA8AAQAMAAAAAAAJAA8AAQABAAAAAAAKAA8AAQABAAAAAAALAA8AAQABAAAAAAAMAA8AAQABAAAAAAANAA8AAQABAAAAAAAOAA8AAQABAAAAAAAPAA8AAQABAAAAAAAQAA8AAQABAAAAAAARAA8AAQABAAAAAAASAA8AAQABAAAAAAATAA8AAQABAAAAAAAUAA8AAQABAAAAAAAVAA8AAQABAAAAAAAWAA8AAQABAAAAAAAXAA8AAQABAAAAAAAYAA8AAQABAAAAAAAZAA8AAQABAAAAAAAaAA8AAQABAAAAAAAbAA8AAQABAAAAAAAcAA8AAQABAAAAAAAdAA8AAQABAAAAAAAeAA8AAQABAAAAAAAfAA8AAQABAAAAAAAgAA8AAQABAAAAAAAhAA8AAQABAAAAAAAiAA8AAQAJAAMAAAAjAA8AAQABAAQAAAAkAA8AAQABAAQAAAAlAA8AAQABAAQAAAAmAA8AAQABAAQAAAAnAA8AAQABAAQAAAAoAA8AAQABAAQAAAApAA8AAQAKAAQAAAAqAA8AAQABAAIAAAArAA8AAQABAAIAAAAuAA8AAQAJAAQAAAAvAA8AAQABAAQAAAAwAA8AAQABAAQAAAAxAA8AAQABAAQAAAAyAA8AAQABAAQAAAAzAA8AAQABAAQAAAA0AA8AAQABAAQAAAA1AA8AAQABAAQAAAA2AA8AAQABAAQAAAA3AA8AAQABAAQAAAA4AA8AAQABAAQAAAA5AA8AAQABAAQAAAA6AA8AAQABAAQAAAA7AA8AAQABAAQAAAA8AA8AAQABAAQAAAA9AA8AAQABAAQAAAA+AA8AAQABAAQAAAA/AA8AAQABAAQAAABAAA8AAQABAAQAAABBAA8AAQABAAQAAABCAA8AAQABAAQAAABDAA8AAQABAAQAAABEAA8AAQABAAQAAABFAA8AAQABAAQAAABGAA8AAQABAAQAAABHAA8AAQACAAQAAAAZAAoAAQAAAAQAAAAaAAoAAQABAAQAAAAbAAoAAQAQAAQAAAAbAAkAAQAPAAMAAAAcAAkAAQACAAQAAAAdAAcAAQAAAAQAAAAeAAcAAQABAAQAAAAfAAcAAQABAAQAAAAgAAcAAQACAAQAAAAaAAUAAQACAAQAAAAZAAUAAQAPAAQAAAAZAAQAAQAQAAMAAAAYAAQAAQABAAQAAAAXAAQAAQAAAAQAAAAiABMAAQACAAIAAAAiABIAAQACAAEAAAAiABEAAQACAAEAAAAiABAAAQACAAEAAAAhABMAAQABAAIAAAAhABIAAQABAAEAAAAhABEAAQABAAEAAAAhABAAAQABAAEAAAAgABMAAQABAAIAAAAgABIAAQABAAEAAAAgABEAAQABAAEAAAAgABAAAQABAAEAAAAfABMAAQABAAIAAAAfABIAAQABAAEAAAAfABEAAQABAAEAAAAfABAAAQABAAEAAAAeABMAAQABAAIAAAAeABIAAQABAAEAAAAeABEAAQABAAEAAAAeABAAAQABAAEAAAAdABMAAQABAAIAAAAdABIAAQABAAEAAAAdABEAAQABAAEAAAAdABAAAQABAAEAAAAcABMAAQABAAIAAAAcABIAAQABAAEAAAAcABEAAQABAAEAAAAcABAAAQABAAEAAAAbABMAAQABAAIAAAAbABIAAQABAAEAAAAbABEAAQABAAEAAAAbABAAAQABAAEAAAAaABMAAQABAAIAAAAaABIAAQABAAEAAAAaABEAAQABAAEAAAAaABAAAQABAAEAAAAZABMAAQABAAIAAAAZABIAAQABAAEAAAAZABEAAQABAAEAAAAZABAAAQABAAEAAAAYABMAAQABAAIAAAAYABIAAQABAAEAAAAYABEAAQABAAEAAAAYABAAAQABAAEAAAAXABMAAQABAAIAAAAXABIAAQABAAEAAAAXABEAAQABAAEAAAAXABAAAQABAAEAAAAWABMAAQABAAIAAAAWABIAAQABAAEAAAAWABEAAQABAAEAAAAWABAAAQABAAEAAAAVABMAAQABAAIAAAAVABIAAQABAAEAAAAVABEAAQABAAEAAAAVABAAAQABAAEAAAAUABMAAQABAAIAAAAUABIAAQABAAEAAAAUABEAAQABAAEAAAAUABAAAQABAAEAAAATABMAAQABAAIAAAATABIAAQABAAEAAAATABEAAQABAAEAAAATABAAAQABAAEAAAASABMAAQABAAIAAAASABIAAQABAAEAAAASABEAAQABAAEAAAASABAAAQABAAEAAAARABMAAQABAAIAAAARABIAAQABAAEAAAARABEAAQABAAEAAAARABAAAQABAAEAAAAQABMAAQABAAIAAAAQABIAAQABAAEAAAAQABEAAQABAAEAAAAQABAAAQABAAEAAAAPABMAAQABAAIAAAAPABIAAQABAAEAAAAPABEAAQABAAEAAAAPABAAAQABAAEAAAAOABMAAQABAAIAAAAOABIAAQABAAEAAAAOABEAAQABAAEAAAAOABAAAQABAAEAAAANABMAAQABAAIAAAANABIAAQABAAEAAAANABEAAQABAAEAAAANABAAAQABAAEAAAAMABMAAQABAAIAAAAMABIAAQABAAEAAAAMABEAAQABAAEAAAAMABAAAQABAAEAAAALABMAAQABAAIAAAALABIAAQABAAEAAAALABEAAQABAAEAAAALABAAAQABAAEAAAAKABMAAQABAAIAAAAKABIAAQABAAEAAAAKABEAAQABAAEAAAAKABAAAQABAAEAAAAJABMAAQABAAIAAAAJABIAAQABAAEAAAAJABEAAQABAAEAAAAJABAAAQABAAEAAAAIABMAAQAAAAIAAAAIABIAAQAAAAEAAAAIABEAAQAAAAEAAAAIABAAAQAAAAEAAAAFAA4AAQACAAAAAAAEAA4AAQABAAAAAAADAA4AAQABAAAAAAACAA4AAQAKAAMAAAABAA4AAQAPAAQAAAABAA0AAQAEAAEAAAABAAwAAQAQAAMAAAAAAAwAAQAPAAQAAAAAAAsAAQAEAAEAAAAEAAsAAQAAAAQAAAAFAAsAAQACAAQAAAAAAAoAAQAEAAEAAAAAAAkAAQAEAAEAAAAAAAgAAQAPAAMAAAABAAgAAQACAAQAAAA=") tile_set = SubResource("TileSet_0tnpc") [node name="Player" parent="." unique_id=161143934 instance=ExtResource("3_iywne")] @@ -483,7 +483,7 @@ position = Vector2(690, 346) position = Vector2(580, 400) [node name="Crate3" parent="Crates" unique_id=1771442258 instance=ExtResource("2_lnu2h")] -position = Vector2(575, 255) +position = Vector2(104, 246) [node name="Crate4" parent="Crates" unique_id=34543093 instance=ExtResource("2_lnu2h")] position = Vector2(609, 394) @@ -498,12 +498,12 @@ metadata/_edit_group_ = true shape = SubResource("WorldBoundaryShape2D_lbhrr") [node name="NPCCharacter" parent="." unique_id=597270257 instance=ExtResource("6_u5sy4")] -position = Vector2(103, 417) +position = Vector2(-67, 375) [node name="Coins" type="Node2D" parent="." unique_id=1168180087] [node name="Coin" parent="Coins" unique_id=716723108 instance=ExtResource("13_trtic")] -position = Vector2(501, 461) +position = Vector2(160, 342) [node name="Coin2" parent="Coins" unique_id=63477808 instance=ExtResource("13_trtic")] position = Vector2(574, 459) @@ -514,7 +514,7 @@ position = Vector2(513, 308) [node name="Slimes" type="Node2D" parent="." unique_id=48874920] [node name="Slime" parent="Slimes" unique_id=525177366 instance=ExtResource("14_trtic")] -position = Vector2(270, 344) +position = Vector2(707, 376) [node name="Slime3" parent="Slimes" unique_id=957608778 instance=ExtResource("14_trtic")] position = Vector2(494, 311) diff --git a/scenes/player.tscn b/scenes/player.tscn index 0d3fc46..ce076de 100644 --- a/scenes/player.tscn +++ b/scenes/player.tscn @@ -201,4 +201,10 @@ autoplay = "idle" [node name="Camera2D" type="Camera2D" parent="." unique_id=453583176] offset = Vector2(0, -30) +[node name="RightDownCast" type="RayCast2D" parent="." unique_id=348369067] +target_position = Vector2(17, 12) + +[node name="LeftDownCast" type="RayCast2D" parent="." unique_id=96701627] +target_position = Vector2(-14, 12) + [connection signal="animation_finished" from="PlayerGraphic" to="." method="_on_animation_finished"] diff --git a/scripts/gameController.gd b/scripts/gameController.gd index 835fdb4..7a17692 100644 --- a/scripts/gameController.gd +++ b/scripts/gameController.gd @@ -46,13 +46,11 @@ func _process(delta: float) -> void: func _on_trigger(body: Variant, effect, trigger) -> void: - print("GC knows trigger...."+effect) if body is Crate: match effect: "destroy": destroySignal.emit(body) "teleport": - print("GC teleport an object") teleportSignal.emit(body) if body is Player: @@ -64,7 +62,6 @@ func _on_trigger(body: Variant, effect, trigger) -> void: func crateUpdate(cratesAmount)->void: crateTotal = cratesAmount - print("GC updated crates: "+str(crateTotal)) if crateTotal <=0: print("You WON!!!") currentLevel +=1 @@ -84,12 +81,10 @@ func bulletDamage(body:Node2D, bullet:Bullet)->void: destroySignal.emit(bullet) func _on_coin_collected(body:Node2D, coin:Coin)->void: - print("GC knows coin collected") coinsCollected +=1 destroySignal.emit(coin) func totalCoins(value)->void: - print("GC knows coins remaining "+str(value)) if value <=0: #no coins left in level currentLevel +=1 @@ -99,8 +94,6 @@ func totalCoins(value)->void: func _on_slime_damage(body:Node2D, slime:Slime)->void: playerHealth -= enemiesDict[slime]["damage"] - print("GC knows damage from slime "+str(enemiesDict[slime]["damage"])) - print("GC knows slime damage to player "+str(playerHealth)) if playerHealth <=0: print("YOU DED") levelChangeSignal.emit(levels[currentLevel]) diff --git a/scripts/player.gd b/scripts/player.gd index 42dcd97..5e9afcb 100644 --- a/scripts/player.gd +++ b/scripts/player.gd @@ -3,6 +3,8 @@ class_name Player extends CharacterBody2D @onready var right_target: Marker2D = $RightTarget @onready var left_target: Marker2D = $LeftTarget @onready var player_graphic: AnimatedSprite2D = $PlayerGraphic +@onready var right_down_cast: RayCast2D = $RightDownCast +@onready var left_down_cast: RayCast2D = $LeftDownCast const SPEED = 300.0 @@ -11,41 +13,66 @@ const BUMP_POWER = 50 enum FaceDirection{LEFT, RIGHT} var facing:FaceDirection = FaceDirection.RIGHT var direction +#awarness +var cliffEdge = false enum PlayerState{IDLE,RUNNING, JUMPING, FALLING} var current_player_state:PlayerState = PlayerState.IDLE var jumpUp:bool = false +func _ready() -> void: + var timer = Timer.new() + add_child(timer) + + timer.wait_time = 3.0 # Wait time in seconds + timer.one_shot = false # Set to false for repeating + timer.autostart = true # Start automatically on enter + timer.timeout.connect(handle_ai) + timer.start() + func _physics_process(delta: float) -> void: - handle_input() + #handle_input() handle_movement(delta) handle_state() handle_animation() move_and_slide() handle_collisions() - -func handle_input()->void: - direction = Input.get_axis("ui_left", "ui_right") - if direction <0: - player_graphic.flip_h = true - if direction >0: - player_graphic.flip_h = false - - # Handle jump. - if Input.is_action_just_pressed("ui_accept") and is_on_floor(): + +func handle_ai()->void: + var ran = randi()%10 + #running, idle + print("random number "+str(ran)) + direction = 0 + if ran<=4: + direction = -1 + if ran>=7: + direction = 1 + + #shooting + var shootran = randi()%5 + if shootran >3: + shoot() + +func jump()->void: + if is_on_floor(): velocity.y = JUMP_VELOCITY current_player_state = PlayerState.JUMPING jumpUp = true - # Handle Shoot - if Input.is_action_just_pressed("shoot"): - print("Player wants to shoot") - match facing: +func shoot()->void: + match facing: FaceDirection.RIGHT: - print("Shoot to the right") %SceneManager.makeBullet(right_target.global_transform, 700) FaceDirection.LEFT: - print("Shoot to the left") %SceneManager.makeBullet(left_target.global_transform, -700) + +func handle_input()->void: + direction = Input.get_axis("ui_left", "ui_right") + # Handle jump. + if Input.is_action_just_pressed("ui_accept"): + jump() + # Handle Shoot + if Input.is_action_just_pressed("shoot"): + shoot() func handle_state()->void: match current_player_state: PlayerState.IDLE when velocity.x !=0: @@ -73,6 +100,7 @@ func handle_animation()->void: player_graphic.play("falling") func handle_movement(delta)->void: + # Add the gravity. if not is_on_floor(): velocity += get_gravity() * delta @@ -80,10 +108,13 @@ func handle_movement(delta)->void: velocity.x = direction * SPEED if direction <0: facing=FaceDirection.LEFT + player_graphic.flip_h = true if direction >0: facing=FaceDirection.RIGHT + player_graphic.flip_h = false else: velocity.x = move_toward(velocity.x, 0, SPEED) + func handle_collisions()->void: for i in get_slide_collision_count(): var c = get_slide_collision(i) @@ -91,9 +122,16 @@ func handle_collisions()->void: c.get_collider().apply_central_impulse(-c.get_normal()*BUMP_POWER) if c.get_collider() is NPCCharacter: var myCharacter:NPCCharacter = c.get_collider() - var direction = -c.get_normal()*BUMP_POWER - myCharacter.knockBack(direction) - + var mydirection = -c.get_normal()*BUMP_POWER + myCharacter.knockBack(mydirection) + if not right_down_cast.is_colliding() and is_on_floor(): + #on edge of drop on right side + if velocity.x > 100: + jump() + if not left_down_cast.is_colliding() and is_on_floor(): + #on edge of drop on left side + if velocity.x <-100: + jump() func _on_animation_finished() -> void: match current_player_state: PlayerState.JUMPING: diff --git a/scripts/scene_manager.gd b/scripts/scene_manager.gd index f4fd30e..198de40 100644 --- a/scripts/scene_manager.gd +++ b/scripts/scene_manager.gd @@ -23,7 +23,6 @@ func _process(delta: float) -> void: pass func buildLevel()->void: - print("building level") updateCrates() updateTriggers() updateCoins() @@ -111,8 +110,6 @@ func bulletFactory()->Bullet : bulletArray.push_front(myBullet) return myBullet func makeBullet(targetPosition, speed)->void: - print("Make a bullet!") - print("bullets created: "+str( bulletArray.size() )) var myBullet:Bullet = bulletFactory() myBullet.transform = targetPosition myBullet.setSpeed(speed)