Skip to content

Commit

Permalink
presionar los botones no dispara el metodo que coloca un bloque, la c…
Browse files Browse the repository at this point in the history
…amara se mueve con las acciones predefinidas del boton de direccion configurado
  • Loading branch information
SergioJimenezM committed Mar 3, 2020
1 parent 25d2447 commit 1347723
Show file tree
Hide file tree
Showing 3 changed files with 50 additions and 29 deletions.
32 changes: 23 additions & 9 deletions mapaProvicional.tscn
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
[gd_scene load_steps=3 format=2]
[gd_scene load_steps=4 format=2]

[ext_resource path="res://scripts/editorScript.gd" type="Script" id=1]
[ext_resource path="res://tileSet/tileset.tres" type="TileSet" id=2]
[ext_resource path="res://scripts/camara.gd" type="Script" id=3]

[node name="raiz" type="Node2D"]
script = ExtResource( 1 )
Expand All @@ -11,29 +12,42 @@ tile_set = ExtResource( 2 )
format = 1
tile_data = PoolIntArray( 131078, 0, 0, 327685, 0, 0 )

[node name="botonera" type="Control" parent="."]
margin_right = 140.0
margin_bottom = 603.0
[node name="camara" type="Camera2D" parent="."]
position = Vector2( 515.608, 306.964 )
current = true
script = ExtResource( 3 )

[node name="Cargar" type="Button" parent="botonera"]
[node name="botonera" type="Control" parent="camara"]
margin_left = -515.581
margin_top = -306.084
margin_right = -375.581
margin_bottom = 296.916
__meta__ = {
"_edit_use_anchors_": false
}

[node name="Cargar" type="Button" parent="camara/botonera"]
margin_left = 30.0
margin_top = 120.0
margin_right = 100.0
margin_bottom = 170.0
text = "Cargar"
__meta__ = {
"_edit_use_anchors_": false
}

[node name="Guardar" type="Button" parent="botonera"]
[node name="Guardar" type="Button" parent="camara/botonera"]
margin_left = 30.0
margin_top = 30.0
margin_right = 100.0
margin_bottom = 80.0
text = "Guardar"

[node name="Salir" type="Button" parent="botonera"]
[node name="Salir" type="Button" parent="camara/botonera"]
margin_left = 30.0
margin_top = 500.0
margin_right = 100.0
margin_bottom = 550.0
text = "Finalizar"
[connection signal="pressed" from="botonera/Cargar" to="." method="cargar"]
[connection signal="pressed" from="botonera/Guardar" to="." method="guardar"]
[connection signal="pressed" from="camara/botonera/Cargar" to="." method="cargar"]
[connection signal="pressed" from="camara/botonera/Guardar" to="." method="guardar"]
13 changes: 13 additions & 0 deletions scripts/camara.gd
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
extends Camera2D

export var velocidadDeLaCamara = 10
export var limitesDeLaCamara = Vector2(200, 200)

func _process(delta):
var moverX = int(Input.is_action_pressed("ui_right")) - int(Input.is_action_pressed("ui_left"))
var moverY = int(Input.is_action_pressed("ui_down")) - int(Input.is_action_pressed("ui_up"))

var DeltaMultiplicado = velocidadDeLaCamara * delta

position.x = lerp(position.x, position.x - moverX * velocidadDeLaCamara, DeltaMultiplicado)
position.y = lerp(position.y, position.y - moverY * velocidadDeLaCamara, DeltaMultiplicado)
34 changes: 14 additions & 20 deletions scripts/editorScript.gd
Original file line number Diff line number Diff line change
Expand Up @@ -14,30 +14,26 @@ func _ready():
loDeLosTiles = get_node("loDeLosTiles")
#se toma un puntero al nodo hijo para mayor comodidad

func _input(event):
#Si un input event no es respondido, se ejecuta este metodo
func _unhandled_input(event):
if(event is InputEventMouseButton and event.is_pressed()):
if(event.button_index == BUTTON_WHEEL_UP or event.button_index == BUTTON_WHEEL_DOWN):
if(spriteActual == 0):
spriteActual = 1
else:
spriteActual = 0
#toma las presiones del mouse despues de el punto 130
#esto por que no quiero estorbarle a los botones
#¿ahora como carajos muevo la camara con la posicion del mouse
#sin romper ese limite arbitrario?
if(event.position.x > 130):
if(event.button_index == BUTTON_LEFT and event.pressed):
#en caso de presionar el boton izquierdo
var tilePos = loDeLosTiles.world_to_map(event.position)
#toma un vector(x,y) y lo traduce en coordenadas de malla
loDeLosTiles.set_cellv(tilePos, spriteActual)
#cambia la celda de la posicion por el sprite(0:yerba 1:tierra)
if(event.button_index == BUTTON_RIGHT and event.pressed):
#igual pero con el boton contrario
var tilePos = loDeLosTiles.world_to_map(event.position)
#exactamente lo mismo, pero la posicion cambiará
loDeLosTiles.set_cellv(tilePos, -1)
#un -1 va a eliminar el sprite en ese sitio de la malla
if(event.button_index == BUTTON_LEFT and event.pressed):
#en caso de presionar el boton izquierdo
var tilePos = loDeLosTiles.world_to_map(get_global_mouse_position())
#toma un vector(x,y) y lo traduce en coordenadas de malla
loDeLosTiles.set_cellv(tilePos, spriteActual)
#cambia la celda de la posicion por el sprite(0:yerba 1:tierra)
if(event.button_index == BUTTON_RIGHT and event.pressed):
#igual pero con el boton contrario
var tilePos = loDeLosTiles.world_to_map(get_global_mouse_position())
#exactamente lo mismo, pero la posicion cambiará
loDeLosTiles.set_cellv(tilePos, -1)
#un -1 va a eliminar el sprite en ese sitio de la malla

func guardar():
var archivador = File.new()
Expand All @@ -56,5 +52,3 @@ func cargar():

func salir():
guardar()

pass

0 comments on commit 1347723

Please sign in to comment.