Cursor postion not being detected.
Can microstudio locate your mouse once you move out of the initial game window? For context, I added this line of code "screen.setTranslation(-x, -y)" you can see the code below. This made the game centre around the player. However, I also have a piece of code that lets my sword point towards the users cursor, but it stops working once I leave some kind of invisible box. Please help.
constructor = function() this.x = 0 this.y = 0 this.speed = 5 this.sword = "player_with_sword" this.sword_length = 25 this.angle = 0 // angle for the sword this.attack_timer = 0 this.trigger = object end this.trigger.x = 0 this.trigger.y = 0 end update = function() // direction check, short form without loops (just maths...) this.y += (keyboard.W-keyboard.S)*this.speed this.x += (keyboard.D-keyboard.A)*this.speed // calculating the angle from the player to the mouse position // +30 is the offset for the sword position this.angle = getAngle(this.x+30,this.y,mouse.x,mouse.y)-45 // the sword is drawn under 45 degree if mouse.left then this.attack_timer = 15 end if this.attack_timer > 0 then this.attack_timer -= 1 end calculate_position_trigger() end calculate_position_trigger = function() this.trigger.x = this.x + 30 + this.sword_length * cosd( this.angle + this.attack_timer * 6 + 45 ) this.trigger.y = this.y + this.sword_length * sind( this.angle + this.attack_timer * 6 + 45) end draw = function() screen.clear() screen.setTranslation(-x, -y) screen.drawMap( "map", 0, 0, 300, 200 ) screen.drawSprite("player", this.x - camera.x, this.y - camera.y, 40, 40 ) screen.setDrawRotation(this.angle + this.attack_timer*6) // change the drawing angle for the sword screen.drawSprite("player_with_sword", this.x+30 - camera.x, this.y - camera.y, 40, 40) screen.setDrawRotation(0) // reset screen.drawRound( this.trigger.x, this.trigger.y, 5, 5 ) // print( this.attack_timer) end end // helper function // finds the angle in degrees from point 1 to point 2 getAngle = function(x1, y1, x2, y2) return atan2d(y2 - y1, x2 - x1) end