Skip to content

GitLab

  • Menu
Projects Groups Snippets
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
    • Switch to GitLab Next
  • Sign in / Register
  • solarus solarus
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Locked Files
  • Issues 222
    • Issues 222
    • List
    • Boards
    • Service Desk
    • Milestones
    • Iterations
    • Requirements
  • Merge requests 8
    • Merge requests 8
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
    • Test Cases
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Packages & Registries
    • Packages & Registries
    • Package Registry
    • Container Registry
    • Infrastructure Registry
  • Analytics
    • Analytics
    • CI/CD
    • Code review
    • Insights
    • Issue
    • Repository
    • Value stream
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Solarus Games
  • solarussolarus
  • Issues
  • #830

Closed
Open
Created Jan 25, 2016 by Diarandor@DiarandorDeveloper

Add methods entity:get_ground_point() and entity:get_ground_below()

Hi, I was testing my scripted Pegasus boots. That script creates a movement on the hero, and the movement is stopped when bad ground (hole, deep water or lava) is detected under the hero. If I run into a hole from the left, right or down sides, the hero falls into the hole (because the movement is stopped when the position of the hero is over the hole), but that does not happen when running from "up" direction. In that case, the hero is stopped, but he does not fall. The ground detected under the hero (when the hero is stopped after approaching from up direction) is hole, but he does not fall. I have also checked that if the hero approaches the hole from down direction, he starts falling one pixel before the ground detected under him becames hole.

What I guess from all of this is that the collision with bad grounds is shifted 1 pixel down (I am assuming that the ground detection under the hero is correct). I think that this bug is important enough to be corrected before the Solarus 1.5 release, to avoid similar problems.

EDIT: I was checking the ground using a timer that is called each millisecond (and not when the position of the hero changes). But this probably does not matter.

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Assignee
Assign to
Time tracking