Tengo un videojuego hecho en JavaScript usando la biblioteca createjs.
En los créditos, dibujo una URL en el lienzo como texto, pero deseo que sea un enlace en el que se pueda hacer clic.
Después de mucho buscar en Google y buscar en foros, no he encontrado una pregunta similar.
Intenté usar el método String link() , pero no funciona. El juego se inicia pero los créditos no se abren.
var oLink = new createjs.Text("www.amzd.hr"," 20px "+FONT_GAME, "#000080"); oLink.y = +270; oLink.textAlign = "center"; oLink.textBaseline = "middle"; oLink.x = +100; oLink.lineWidth = 300; let oLink = oLink.link("https://www.amzd.hr"); _oPanelContainer.addChild(oLink);Puede agregar un detector de eventos a la instancia de Text que abre su enlace.
oLink.addEventListener("click", function(e) { window.open("https://url"); });Una nota es que las áreas de impacto en el texto son perfectas en píxeles, por lo que querrá agregar un área de impacto. Aquí hay un pseudocódigo que usa getBounds() para determinar el tamaño del texto.
var b = oLink.getBounds(); oLink.hitArea = new createsjs.Shape( new createjs.Graphics().drawRect(bx, by, b.width, b.height) ));Hay un tutorial sobre la interacción del mouse aquí: https://createjs.com/tutorials/Mouse%20Interaction/
Salud,