Hvordan får du en figur til at bevæge sig og hoppe som i en 2D sidescroller?

[et_pb_dmb_code_snippet code=”CnVzaW5nIFVuaXR5RW5naW5lOwp1c2luZyBTeXN0ZW0uQ29sbGVjdGlvbnM7CgpwdWJsaWMgY2xhc3MgVG9wRG93bk1vdmVtZW50MkQgOiBNb25vQmVoYXZpb3VyCnsKCiAgICBwdWJsaWMgS2V5Q29kZSBCdXR0b25MZWZ0ID0gS2V5Q29kZS5MZWZ0QXJyb3c7CiAgICBwdWJsaWMgS2V5Q29kZSBCdXR0b25SaWdodCA9IEtleUNvZGUuUmlnaHRBcnJvdzsKICAgIHB1YmxpYyBLZXlDb2RlIEJ1dHRvbkp1bXAgPSBLZXlDb2RlLlNwYWNlOwoKICAgIHB1YmxpYyBmbG9hdCBQbGF5ZXJTcGVlZCA9IDQwMDsKICAgIHB1YmxpYyBmbG9hdCBQbGF5ZXJKdW1wUG93ZXIgPSA4OwoKICAgIHB1YmxpYyBSaWdpZGJvZHkyRCBQbGF5ZXJSaWdpZGJvZHk7CgogICAgdm9pZCBVcGRhdGUoKQogICAgewogICAgICAgIFZlY3RvcjIgcGxheWVyRmluYWxNb3ZlbWVudCA9IG5ldyBWZWN0b3IyKDAsIDApOwoKICAgICAgICAvLyBWaSBnZW1tZXIgYWNjZWxlcmF0aW9uZW4gb2cgc8OmdHRlciB5IHRpbCBkZXQKICAgICAgICAvLyBQcsO4diBhdCBmamVybmUgZGVubmUgbGluamUgb2cgc2UgZm9yc2tlbGxlbi4KCiAgICAgICAgaWYgKElucHV0LkdldEtleShCdXR0b25MZWZ0KSkKICAgICAgICB7CiAgICAgICAgICAgIHBsYXllckZpbmFsTW92ZW1lbnQueCA9IC0xOwogICAgICAgIH0KCiAgICAgICAgaWYgKElucHV0LkdldEtleShCdXR0b25SaWdodCkpCiAgICAgICAgewogICAgICAgICAgICBwbGF5ZXJGaW5hbE1vdmVtZW50LnggPSAxOwogICAgICAgIH0KCiAgICAgICAgaWYgKElucHV0LkdldEtleURvd24oQnV0dG9uSnVtcCkpCiAgICAgICAgewogICAgICAgICAgICBQbGF5ZXJSaWdpZGJvZHkudmVsb2NpdHkgKz0gVmVjdG9yMi51cCAqIFBsYXllckp1bXBQb3dlcjsKICAgICAgICB9CgogICAgICAgIC8vIFZvcmVzIHJldG5pbmcgIlBsYXllcmZpbmFsbW92ZW1lbnQiIHPDpnR0ZXMgdGlsIGhhc3RpZ2hlZGVuCiAgICAgICAgLy8gQmxpdmVyIGdhbmdldCBtZWQgZGVuIHNwZWVkIHZpIHZpbCBoYXZlIHDDpSBzcGlsbGVyZW4KICAgICAgICAvLyBvZyBUaW1lLmRlbHRhVGltZSBnw7hyIGF0IHNwZWVkIGVyICJpIHNla3VuZGV0IiBvZyBpa2tlIHBlciBmcmFybWUKICAgICAgICBQbGF5ZXJSaWdpZGJvZHkudmVsb2NpdHkgPSBuZXcgVmVjdG9yMihwbGF5ZXJGaW5hbE1vdmVtZW50LnggKiBQbGF5ZXJTcGVlZCAqIFRpbWUuZGVsdGFUaW1lLCBQbGF5ZXJSaWdpZGJvZHkudmVsb2NpdHkueSk7CgogICAgfQp9Cg==” style=”obsidian” linenums=”on” usetabwidth=”on” tabwidth=”14″ _builder_version=”4.2″ hover_enabled=”0″]CnVzaW5nIFVuaXR5RW5naW5lOwp1c2luZyBTeXN0ZW0uQ29sbGVjdGlvbnM7CgpwdWJsaWMgY2xhc3MgVG9wRG93bk1vdmVtZW50MkQgOiBNb25vQmVoYXZpb3VyCnsKCiAgICBwdWJsaWMgS2V5Q29kZSBCdXR0b25MZWZ0ID0gS2V5Q29kZS5MZWZ0QXJyb3c7CiAgICBwdWJsaWMgS2V5Q29kZSBCdXR0b25SaWdodCA9IEtleUNvZGUuUmlnaHRBcnJvdzsKICAgIHB1YmxpYyBLZXlDb2RlIEJ1dHRvbkp1bXAgPSBLZXlDb2RlLlNwYWNlOwoKICAgIHB1YmxpYyBmbG9hdCBQbGF5ZXJTcGVlZCA9IDQwMDsKICAgIHB1YmxpYyBmbG9hdCBQbGF5ZXJKdW1wUG93ZXIgPSA4OwoKICAgIHB1YmxpYyBSaWdpZGJvZHkyRCBQbGF5ZXJSaWdpZGJvZHk7CgogICAgdm9pZCBVcGRhdGUoKQogICAgewogICAgICAgIFZlY3RvcjIgcGxheWVyRmluYWxNb3ZlbWVudCA9IG5ldyBWZWN0b3IyKDAsIDApOwoKICAgICAgICAvLyBWaSBnZW1tZXIgYWNjZWxlcmF0aW9uZW4gb2cgc8OmdHRlciB5IHRpbCBkZXQKICAgICAgICAvLyBQcsO4diBhdCBmamVybmUgZGVubmUgbGluamUgb2cgc2UgZm9yc2tlbGxlbi4KCiAgICAgICAgaWYgKElucHV0LkdldEtleShCdXR0b25MZWZ0KSkKICAgICAgICB7CiAgICAgICAgICAgIHBsYXllckZpbmFsTW92ZW1lbnQueCA9IC0xOwogICAgICAgIH0KCiAgICAgICAgaWYgKElucHV0LkdldEtleShCdXR0b25SaWdodCkpCiAgICAgICAgewogICAgICAgICAgICBwbGF5ZXJGaW5hbE1vdmVtZW50LnggPSAxOwogICAgICAgIH0KCiAgICAgICAgaWYgKElucHV0LkdldEtleURvd24oQnV0dG9uSnVtcCkpCiAgICAgICAgewogICAgICAgICAgICBQbGF5ZXJSaWdpZGJvZHkudmVsb2NpdHkgKz0gVmVjdG9yMi51cCAqIFBsYXllckp1bXBQb3dlcjsKICAgICAgICB9CgogICAgICAgIC8vIFZvcmVzIHJldG5pbmcgIlBsYXllcmZpbmFsbW92ZW1lbnQiIHPDpnR0ZXMgdGlsIGhhc3RpZ2hlZGVuCiAgICAgICAgLy8gQmxpdmVyIGdhbmdldCBtZWQgZGVuIHNwZWVkIHZpIHZpbCBoYXZlIHDDpSBzcGlsbGVyZW4KICAgICAgICAvLyBvZyBUaW1lLmRlbHRhVGltZSBnw7hyIGF0IHNwZWVkIGVyICJpIHNla3VuZGV0IiBvZyBpa2tlIHBlciBmcmFybWUKICAgICAgICBQbGF5ZXJSaWdpZGJvZHkudmVsb2NpdHkgPSBuZXcgVmVjdG9yMihwbGF5ZXJGaW5hbE1vdmVtZW50LnggKiBQbGF5ZXJTcGVlZCAqIFRpbWUuZGVsdGFUaW1lLCBQbGF5ZXJSaWdpZGJvZHkudmVsb2NpdHkueSk7CgogICAgfQp9Cg==[/et_pb_dmb_code_snippet]

Du skal ikke tænke på det som at du vil have en figur til at hoppe og flytte sig rundt på skærmen. Tænk over hvad der sker i koordinatsystemet på objektet.

Hvis du vil have noget til at gå mod højre i et koordinatsystem?
Så er det et positivt tal i X retningen.

Hvad hvis den skal gå til venstre i koordinatsystemet?
Så er det i en negativ retning i X.

Hvis du vil have den til at hoppe?
Så er det positivt  i Y retningen. 

Så det du gerne vil er:

  1. Have den til at gå X plus/minus når du trykker på to forskellige tastaturknapper (f.eks. højre/venstre)
  2. Have den til at gå plus i Y når du trykker på en tastaturknap (f.eks. mellemrum)