extends KinematicBody2D
export (int) var speed = 300
export (int) var jump_speed = -300
export (int) var gravity = 800
export (PackedScene) var fireball
onready var projetil = preload("res://fireball.tscn")
func _ready():
var p = projetil.instance()
add_child(p)
var velocity = Vector2.ZERO
func get_input():
velocity.x = 0
if Input.is_action_pressed("walk_right"):
$AnimatedSprite.set_flip_h(false)
$AnimatedSprite.play("run")
velocity.x += speed
elif Input.is_action_pressed("walk_left"):
$AnimatedSprite.set_flip_h(true)
$AnimatedSprite.play("run")
velocity.x -= speed
elif Input.is_action_pressed("gravity"):
jump_speed=-700
$AnimatedSprite.play("jump")
else:
$AnimatedSprite.play("idle")
if Input.is_action_pressed("gravity"):
jump_speed=-700
if Input.is_action_just_released("gravity"):
jump_speed=-500
if Input.is_action_just_pressed("fogo"):
shoot()
func shoot():
var _f = fireball.instance()
add_child(_f)## the error is in this line Unindent does not match any outer indentation level.
func _physics_process(delta):
get_input()
velocity.y += gravity * delta
velocity = move_and_slide(velocity, Vector2.UP)
if Input.is_action_just_pressed("jump"):
if is_on_floor():
velocity.y = jump_speed
this is the character code
extends KinematicBody2D
const throw_velocity = Vector2(800, -400)
var velocity = Vector2.ZERO
func _physics_process(delta):
velocity.y += delta
var collision = move_and_collide(velocity * delta)
if collision != null:
_on_impact(collision.normal)
func _on_impact(normal : Vector2):
velocity = velocity.bounce(normal)
velocity *= 0.5 + rand_range(-0.05,0.05)
this is the projectile code