Jump to content
    1. Welcome to GTAForums!

    1. GTANet.com

    1. GTA Online

      1. Los Santos Drug Wars
      2. Updates
      3. Find Lobbies & Players
      4. Guides & Strategies
      5. Vehicles
      6. Content Creator
      7. Help & Support
    2. Red Dead Online

      1. Blood Money
      2. Frontier Pursuits
      3. Find Lobbies & Outlaws
      4. Help & Support
    3. Crews

    1. Grand Theft Auto Series

      1. Bugs*
      2. St. Andrews Cathedral
    2. GTA VI

    3. GTA V

      1. Guides & Strategies
      2. Help & Support
    4. GTA IV

      1. The Lost and Damned
      2. The Ballad of Gay Tony
      3. Guides & Strategies
      4. Help & Support
    5. GTA San Andreas

      1. Classic GTA SA
      2. Guides & Strategies
      3. Help & Support
    6. GTA Vice City

      1. Classic GTA VC
      2. Guides & Strategies
      3. Help & Support
    7. GTA III

      1. Classic GTA III
      2. Guides & Strategies
      3. Help & Support
    8. Portable Games

      1. GTA Chinatown Wars
      2. GTA Vice City Stories
      3. GTA Liberty City Stories
    9. Top-Down Games

      1. GTA Advance
      2. GTA 2
      3. GTA
    1. Red Dead Redemption 2

      1. PC
      2. Help & Support
    2. Red Dead Redemption

    1. GTA Mods

      1. GTA V
      2. GTA IV
      3. GTA III, VC & SA
      4. Tutorials
    2. Red Dead Mods

      1. Documentation
    3. Mod Showroom

      1. Scripts & Plugins
      2. Maps
      3. Total Conversions
      4. Vehicles
      5. Textures
      6. Characters
      7. Tools
      8. Other
      9. Workshop
    4. Featured Mods

      1. Design Your Own Mission
      2. OpenIV
      3. GTA: Underground
      4. GTA: Liberty City
      5. GTA: State of Liberty
    1. Rockstar Games

    2. Rockstar Collectors

    1. Off-Topic

      1. General Chat
      2. Gaming
      3. Technology
      4. Movies & TV
      5. Music
      6. Sports
      7. Vehicles
    2. Expression

      1. Graphics / Visual Arts
      2. GFX Requests & Tutorials
      3. Writers' Discussion
      4. Debates & Discussion
    1. Announcements

    2. Support

    3. Suggestions

Object Rotation Velocity


12jango
 Share

Recommended Posts



{$CLEO .cs}




thread 'sweat'




:LOAD
wait 0
Model.Load(615)
Model.Load(#NULL)
if and
Model.Available(615)
Model.Available(#NULL)
jf @LOAD




:TRI
wait 0
if and
Player.Defined($PLAYER_CHAR)
0AB0: key_pressed 49
jf @TRI
04C4: store_coords_to [email protected] [email protected] [email protected] from_actor $PLAYER_ACTOR with_offset 0.0 3.0 5.0
04C4: store_coords_to [email protected] [email protected] [email protected] from_actor $PLAYER_ACTOR with_offset 13.0 3.0 5.0
[email protected] = Object.Create(615, [email protected], [email protected], [email protected])
[email protected] = Object.Create(615, [email protected], [email protected], [email protected])




:TO
wait 0
Object.Angle([email protected]) = 0.0
Object.Angle([email protected]) = 0.0
if and
Player.Defined($PLAYER_CHAR)
0AB0: key_pressed 50
jf @TO




:wAN
wait 0
0400: store_coords_to [email protected] [email protected] [email protected] from_object [email protected] with_offset 0.0 0.0 0.0
// Movement velocity
[email protected] = 0.02
[email protected] = 77.0
// Get the in-between vector
0063: [email protected] -= [email protected]
0063: [email protected] -= [email protected]
0063: [email protected] -= [email protected]
// Calculate vector length
050A: [email protected] = distance_between_XYZ 0.0 0.0 0.0 and_XYZ [email protected] [email protected] [email protected]
// Get the unit vector
0073: [email protected] /= [email protected]
0073: [email protected] /= [email protected]
0073: [email protected] /= [email protected]
// Multiply the vector by velocity
006B: [email protected] *= [email protected]
006B: [email protected] *= [email protected]
006B: [email protected] *= [email protected]
// Calculate the angle between the 2 points
05A1: set_object [email protected] rotation_velocity_about_an_axis [email protected] [email protected] [email protected] through_center_of_body




05A6: get_object [email protected] rotation_velocity_about_an_axis_X [email protected] axis_Y [email protected] axis_Z [email protected] through_center_of_body
0453: set_object [email protected] XY_rotation [email protected] [email protected] angle [email protected]
jump @WAN



Just a simple script; press 1 to spawn two trees in front of you then press 2 to rotate one tree.


It supposed to rotate both tree, but it's only one tree rotating (object [email protected]), I tried to rotate the other tree (object [email protected]) by using opcode 05A6 first then use 0453 to rotate it but didn't work! :rol:


So, what does opcode 05A6 use for? I thought it would get an object rotation so you can use it to set another object's rotation to be same as the one you get? :/


Edited by 12jango
Link to comment
Share on other sites

You wrote [email protected]. SB oddly accepts this big syntactical incongruity and treats it as a local variable with a hexadecimal identifier ([email protected]).

Edited by Wesser

012          345
678   9A   BCD
EFG HIJK LMN
OPQR  STUV
WX    YZ

Link to comment
Share on other sites

Is there any way to use 05A6:?

Edited by 12jango
Link to comment
Share on other sites

You wrote [email protected]. SB oddly accepts this big syntactical incongruity and treats it as a local variable with a hexadecimal identifier ([email protected]).

huh, funny :p should I fix that or leave it alone as a one yet feature?

Link to comment
Share on other sites

huh, funny :p should I fix that or leave it alone as a one yet feature?

Maybe tweak it so it's less ambiguous and allow hex for globals too?

Link to comment
Share on other sites

It is not bad at all. I would suggest to clear the ambiguity with a percent sign (%).

012          345
678   9A   BCD
EFG HIJK LMN
OPQR  STUV
WX    YZ

Link to comment
Share on other sites

What about

 

$0x20 - global variable with ID [email protected] - local variable with ID 32
Edited by fastman92
Link to comment
Share on other sites

It will be still ambiguous as x and X are valid characters for defining custom globals names. Adding a special character right after the dollar sign ($) or before the local ID will easily advert SB to treat everything following (till another distinguishing token) as a hexadecimal number.

Edited by Wesser

012          345
678   9A   BCD
EFG HIJK LMN
OPQR  STUV
WX    YZ

Link to comment
Share on other sites

Ok, true.

Link to comment
Share on other sites

GTA scripts have too much data types characters already, so I would not add a one yet as the proposed percent sign.

 

The common convention for the variables naming is that the names must not begin with a digit. So $0x10 is not a valid name.

In fact SB threats it as a hexadimal value and compiles $0x10 as $16. Similarly, [email protected] will be compiled as [email protected] It means that the fastman's way is already implemented.

 

[email protected] definitely should be reported as an error by the compiler (and it looks so, two data types characters in one token are used).

Link to comment
Share on other sites

Yes, my bad, SB behaves like most compilers do indeed. Didn't know about the way of representing variables indices in hexadecimal. I totally agree with you then.

012          345
678   9A   BCD
EFG HIJK LMN
OPQR  STUV
WX    YZ

Link to comment
Share on other sites

So you're saying 05A6: isn't working at all?

Edited by 12jango
Link to comment
Share on other sites

  • 4 weeks later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • 1 User Currently Viewing
    0 members, 0 Anonymous, 1 Guest

×
×
  • Create New...

Important Information

By using GTAForums.com, you agree to our Terms of Use and Privacy Policy.