Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Unhardcoded teleporter entity #897

Open
wants to merge 3 commits into
base: master
Choose a base branch
from

Conversation

AllyTally
Copy link
Contributor

@AllyTally AllyTally commented Nov 3, 2022

Changes:

In an effort to reduce the split between custom levels and the main game, I've made a system where when exiting a teleporter, the player follows a three point Bézier curve. Point A (the starting point) is the teleporter's center, and point B and C are saved in the teleporter's data, along with facing direction, gravity state and the amount of frames that following the curve should take.

Along with adding a teleporter edentity to house this addition, this PR also runs setteleporter() dynamically when loading edentities, much like trinkets.

However, this PR does NOT replace the current system, and is instead locked to editor-only at the moment, for the following reasons:

  • The main game does not use the edentity system (this is possible to change, but...)
  • There's certain glitches that speedrunners/TASes use, and I don't know much about glitchrunner mode, so I think someone else should do that part.

The PR also contains an editor tool to place them down, which lets you control the points of the curve, and facing direction/gravity state.

Legal Stuff:

By submitting this pull request, I confirm that...

  • My changes may be used in a future commercial release of VVVVVV
  • I will be credited in a CONTRIBUTORS file and the "GitHub Friends"
    section of the credits for all of said releases, but will NOT be compensated
    for these changes

@AllyTally
Copy link
Contributor Author

I've pushed a new commit which adds p5 and p6 to the createentity scripting command, since they were added to the internal function.

@NyakoFox NyakoFox force-pushed the teleporters-neo branch 3 times, most recently from 16e0cde to a68cf9d Compare February 7, 2023 03:40
@AllyTally AllyTally changed the title Teleporter additions Unhardcoded teleporter entity Feb 20, 2023
@AllyTally AllyTally force-pushed the teleporters-neo branch 5 times, most recently from 3bb65ec to c1f8dd8 Compare March 23, 2023 22:43
@NyakoFox NyakoFox force-pushed the teleporters-neo branch 3 times, most recently from be5bca8 to fb7d28b Compare November 28, 2023 20:39
Copy link
Contributor

@InfoTeddy InfoTeddy left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Style pass.

desktop_version/src/Entity.cpp Outdated Show resolved Hide resolved
desktop_version/src/Map.cpp Outdated Show resolved Hide resolved
desktop_version/src/Map.cpp Outdated Show resolved Hide resolved
third_party/c-hashmap Outdated Show resolved Hide resolved
@NyakoFox NyakoFox force-pushed the teleporters-neo branch 2 times, most recently from bca9021 to 4242570 Compare October 1, 2024 14:00
Copy link
Contributor

@InfoTeddy InfoTeddy left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Another style pass.

desktop_version/src/Map.cpp Outdated Show resolved Hide resolved
AllyTally and others added 2 commits November 7, 2024 15:06
Co-authored-by: Misa Elizabeth Kai <infoteddy@infoteddy.info>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants