Godot: Control :: has_point no aparece como método virtual

Creado en 13 mar. 2017  ·  3Comentarios  ·  Fuente: godotengine/godot

Sistema operativo o dispositivo - versión Godot:
Godot 2.1 / HEAD, pero parece que el maestro también está algo afectado

Descripcion del problema:
Mientras codificaba algunas cosas para un juego (no FOSS), nombré uno de mis métodos como has_point en un script de herencia CanvasItem que se asignó a algunos controles. Llegué a return true , ya que otros scripts lo anularían ... Y luego, de repente, todos los controles con ese script empezaron a captar todos los clics: risas:

Decidí buscar en los documentos, ya que sospechaba que podría haber sucedido algo como esto, pero Control::has_point no estaba en la lista, ya que no está vinculado en absoluto.

Tenga en cuenta que la implementación has_point en scene/gui/control.cpp:572-588 llama al método de script.

Pasos para reproducir:

  1. Haz un guión con:
extends Control
func has_point(point):
    return true
  1. Agréguelo a un nodo de botón
  2. Correr
  3. Beneficio (o en realidad, llorar)

Enlace a un proyecto de ejemplo mínimo: en parte con prisa aquí, por lo que tal vez más tarde a pedido.

Como arreglar:

  1. Ir a scene/gui/control.cpp:2516
  2. Agregue una macro BIND_VMETHOD adecuada, como aquí: scene/main/node.cpp:2923
BIND_VMETHOD(MethodInfo("_process", PropertyInfo(Variant::REAL, "delta")));
  1. Compile, asegúrese de que la lista de documentos sea Control::has_point(Vector2 point)
  2. Hacer un PR
bug documentation junior job

Comentario más útil

Me gustaría probar esto como mi primera contribución.

Todos 3 comentarios

Me gustaría probar esto como mi primera contribución.

También eliminar el bind_method regular? (también conocido como # 7960)

Aunque no estoy seguro de eso

Editar: debería aprender a leer. duh.

Corregido por # 8023.

¿Fue útil esta página
0 / 5 - 0 calificaciones

Temas relacionados

mefihl picture mefihl  ·  3Comentarios

nunodonato picture nunodonato  ·  3Comentarios

RebelliousX picture RebelliousX  ·  3Comentarios

testman42 picture testman42  ·  3Comentarios

n-pigeon picture n-pigeon  ·  3Comentarios