uPeppe / physics.inc

physics.inc - SA-MP library to simulate 2D and 3D physics (realistic movements, collisions, and more)
31 stars 19 forks source link

Issues updating physics.inc to latest #4

Open Chaprnks opened 4 years ago

Chaprnks commented 4 years ago

Due to the confusion with SA-MP forums deleting the topic (sigh.. yet another topic), I didnt realize my physics.inc file was ancient. Fortunately, I found the new forum topic on bugershot forums. I tried looking through the commits on this repository, but some of the old functions I use aren't even on here, even dating back to 0.1! I'm trying to update my physics.inc to the latest. I've had pretty good luck so far (GetHandle -> GetObject, SetHandle -> SetObject). I am on the last function change, but I can't seem to find a suitable replacement for it, without having to restructure the whole code that uses physics.


physics.old.inc (unknown version) #define PHY_GetHandleObject(%1) (PHY_Object[%1][PHY_DynamicObject])

It seems this old include uses PHY_DynamicObject, to store the object id internally. Starting with the repository, this function was completely removed.


I've attached the unknown physics.old.inc include to help determine what version it is; and further pinpoint what changes need to be made to make it compatible with the latest version.

physics.old.txt


I've also attached snippets from functions throughout the script that contain this function, in order to better understand how the module utilizes this include.

Here are the lines in the code which contain the function: 28, 66, 107, 141, 164, 272, 290, 309, 337, 493, 522, 539

snippets.pwn.txt

uPeppe commented 4 years ago

Hi! You're using a non-official version of the include, written by someone to make it support Dynamic Objects (Streamer)

https://forum.sa-mp.com/showthread.php?t=446286 the topic is here

My advice is to use last physics.inc version and use that with normal Objects (created through CreateObject)

I never implemented a streamer support because the performance would be way worse, especially for an high demanding code such as the pool one.

uPeppe commented 4 years ago

"streamed objects wouldn't work correctly with this kind of system they update too slowly "

source: https://forum.sa-mp.com/showthread.php?t=446286&page=11