Forced forward movement
Forum rules
Before asking on how to use a ZDoom feature, read the ZDoom wiki first. This forum is archived - please use this set of forums to ask new questions.
Before asking on how to use a ZDoom feature, read the ZDoom wiki first. This forum is archived - please use this set of forums to ask new questions.
- LilWhiteMouse
- Posts: 2270
- Joined: Tue Jul 15, 2003 7:00 pm
- Location: Maine, US
- Contact:
Forced forward movement
How is forced forward movement accomplished? I can't download the Robotech demo (server not found), and my only copy went with my crashed HDD. Is there any way to do it via ACS?
You must have, unless it was a frictionless surface. It's always worked properly for me.
ThrustThing( angle, distance, -, -, - )
Although, I was never convinced that it was actually distance rather than speed, I wonder if it indicates a distance over which a "force" is applied and acceleration is inversely proportional to mass of the thing. ???
ThrustThing( angle, distance, -, -, - )
Although, I was never convinced that it was actually distance rather than speed, I wonder if it indicates a distance over which a "force" is applied and acceleration is inversely proportional to mass of the thing. ???
you could use currents/wind or convayer belts. the latter only works if you're actually touching the floor though, so you probably want wind or currents (for above/below deep water).
http://zdoom.doomworld.com/reference/ac ... SetCurrent
http://zdoom.doomworld.com/reference/ac ... or_SetWind
http://zdoom.doomworld.com/reference/ac ... h_SetForce
http://zdoom.doomworld.com/reference/ac ... SetCurrent
http://zdoom.doomworld.com/reference/ac ... or_SetWind
http://zdoom.doomworld.com/reference/ac ... h_SetForce
- LilWhiteMouse
- Posts: 2270
- Joined: Tue Jul 15, 2003 7:00 pm
- Location: Maine, US
- Contact:
- Hirogen2
- Posts: 2033
- Joined: Sat Jul 19, 2003 6:15 am
- Operating System Version (Optional): Tumbleweed x64
- Graphics Processor: Intel with Vulkan/Metal Support
- Location: Central Germany
- Contact:
That could be made an ACS enhancement, Randy?
Which means using current angle. This could work since angle usually is only 0-255, even in scripts.
The -1 of course must be stored as 0xFFFF(FFFF) in the BEHAVIOR lump.
When ThrustThing is called from a linedef, angle can range from 0 to 255, but internally (also scripts) it is passed as an int, so -- assuming that angle is an unsigned int --, could this be made:Biff wrote:ThrustThing( angle, distance, -, -, - )
Code: Select all
ThrustThing(-1, dist, ...)The -1 of course must be stored as 0xFFFF(FFFF) in the BEHAVIOR lump.
the only thing acc is concerned with in terms of acs specials is that they have the proper number of arguments and that the functions actually exist and have the correct syntax. other than that you can do whatever you want.
for instance you could open up zspecial.acs and change thrustthing to take three arguments instead of 2, and then do thrustthing(9, 64, 128); and acc would be happy and compile it. I'm not sure what would happen when zdoom attempted to run it (I imagine it would just ignore the 3rd argument), but it would compile
for instance you could open up zspecial.acs and change thrustthing to take three arguments instead of 2, and then do thrustthing(9, 64, 128); and acc would be happy and compile it. I'm not sure what would happen when zdoom attempted to run it (I imagine it would just ignore the 3rd argument), but it would compile