Difference between revisions of "User:QQuix"
imported>QQuix |
imported>QQuix |
||
Line 1: | Line 1: | ||
{{TOCright}} | |||
---- | ---- | ||
Under construction | '''Under construction'''---- | ||
---- | |||
= | I thought it better to dump my things here instead of editing WIKI pages for several reasons (language, not being sure where it should go, lack of talent for writing, etc) | ||
I anybody considers anything worthy of being somewhere else, just let me know. | |||
[[User:QQuix|QQuix]] 20:14, 26 August 2008 (EDT) | |||
=Script code= | |||
==Distances and angles== | |||
(WIP) | |||
===Three angle systems=== | |||
The game uses three angle ‘systems’: | |||
====World Angle==== | |||
Range – 0-360 - 0 degrees is up, increasing clockwise up to 360. (e.g: 90 = Right, 180 = Down, 270 = Left). | |||
This is the most common. It is the angle you find in the CS for Reference Rotation. | |||
This type of angle is returned by: GetAngle Z, GetStartingAngle | |||
This type of angle must be provided for: SetAngle Z | |||
====Heading Angle==== | |||
Range – -180 to +180 - 0 degrees is up, increasing clockwise up to 180 and decreasing counterclockwise down to -180. (e.g: 90 = Right, 180 = Down, -90 = Left, -180 = Down). | |||
This is used to tell how a second object is positioned in relation to a first object heading | |||
This type of angle is returned by: GetHeadingAngle | |||
====Trigonometric Angle==== | |||
Range – 0 to 360 - 0 degrees is right, increasing counterclockwise up to 360. (e.g: 90 = Up, 180 = Left, 270 = Down). | |||
This is the standard trigonometric angle system. | |||
This type of angle must be provided for OBSE trigonometric functions: Sin, Cos, Tan, etc | |||
===Sample code (2D)=== | |||
====DeltaX & DeltaY from Angle and distance ==== | |||
Useful when positioning an object at a given distance and angle from another object | |||
;================================= | |||
; Get: DeltaX and DeltaY | |||
; From: Angle and distance | |||
;================================= | |||
set xAngle to xxx | |||
set xDistance to xxx | |||
if xAngle <= 90 | |||
set xxTrigAngle to 90 - xAngle | |||
else | |||
set xxTrigAngle to 450 - xAngle | |||
endif | |||
set xDeltaX to xDistance * cos xxTrigAngle | |||
set xDeltaY to xDistance * sin xxTrigAngle | |||
==== Angle and distance from DeltaX & DeltaY ==== | |||
Useful to calculate the horizontal (2D) distance between two objects or in situations where GetDistance is not reliable. | |||
Useful to calculate the heading angle in situations where GetHeadingAngle is not reliable (non-actors). | |||
;================================= | |||
; Get: Angle and distance | |||
; From: DeltaX and DeltaY | |||
;================================= | |||
set xAngle to atan2 xDeltaX xDeltaY ; returns -180 to +180 | |||
if xAngle < 0 | |||
set xAngle to xAngle + 360 ; convert to 0-360 | |||
endif | |||
set xDistance to ( xDeltaX * xDeltaX ) + ( xDeltaY * xDeltaY ) | |||
set xDistance to sqrt xDistance | |||
====Adding two angles ==== | |||
Self explanatory | |||
;================================= | |||
; Get: Angle | |||
; From: Adding two angles | |||
;================================= | |||
set xAngle to xAngleA + xAngleB | |||
if xAngle > 360 | |||
set xAngle to xAngle - 360 | |||
endif | |||
if xAngle < 0 | |||
set xAngle to xAngle + 360 | |||
endif | |||
===Sample code (3D)=== | |||
WIP | |||
=Observations= | |||
Nothing at the moment | |||
=My Mods= | |||
==QQuix Divine Elegance Showroom== | |||
http://www.tesnexus.com/downloads/file.php?id=17588 | |||
This mod creates a showroom in Divine Elegance’s basement where live models will wear whatever Palonirya has for sale (Fashion Show style). | |||
And Palonirya is so proud of her showroom that she decided to share it with all clothes and armor merchants in Cyrodill. ANY store. | |||
This Mod is designed to show clothes and armor from any mod that adds them to one of the game shops. '''Even items/shops that will be created in the future'''. | |||
==WIP== | |||
===QQuix Fly Away=== | |||
To be filled | |||
== | ===Dynamic x non-dynamic items=== | ||
To be filled | |||
== | =Personal info= | ||
Site: http://thewormhole.nfshost.com/forum/index.php/board,227.0.html | |||
Location: Brazil | |||
Professional experience: IT. Started as a programmer, for a few years, long time ago. Since then, did a lot of other things in the IT business. | |||
I enjoy figuring out how to do things with the CS script. For this reason, I rarely, if ever, look into existing scripts from other modders. So, I may be reinventing the wheel all the time and may not come out with the best solution, but it is a conscious decision to improve learning and enjoy what I like to do. | |||
{{Scripter}} | {{Scripter}} |
Revision as of 20:14, 26 August 2008
Under construction----
I thought it better to dump my things here instead of editing WIKI pages for several reasons (language, not being sure where it should go, lack of talent for writing, etc)
I anybody considers anything worthy of being somewhere else, just let me know.
QQuix 20:14, 26 August 2008 (EDT)
Script code
Distances and angles
(WIP)
Three angle systems
The game uses three angle ‘systems’:
World Angle
Range – 0-360 - 0 degrees is up, increasing clockwise up to 360. (e.g: 90 = Right, 180 = Down, 270 = Left).
This is the most common. It is the angle you find in the CS for Reference Rotation.
This type of angle is returned by: GetAngle Z, GetStartingAngle
This type of angle must be provided for: SetAngle Z
Heading Angle
Range – -180 to +180 - 0 degrees is up, increasing clockwise up to 180 and decreasing counterclockwise down to -180. (e.g: 90 = Right, 180 = Down, -90 = Left, -180 = Down).
This is used to tell how a second object is positioned in relation to a first object heading
This type of angle is returned by: GetHeadingAngle
Trigonometric Angle
Range – 0 to 360 - 0 degrees is right, increasing counterclockwise up to 360. (e.g: 90 = Up, 180 = Left, 270 = Down). This is the standard trigonometric angle system.
This type of angle must be provided for OBSE trigonometric functions: Sin, Cos, Tan, etc
Sample code (2D)
DeltaX & DeltaY from Angle and distance
Useful when positioning an object at a given distance and angle from another object
;================================= ; Get: DeltaX and DeltaY ; From: Angle and distance ;================================= set xAngle to xxx set xDistance to xxx if xAngle <= 90 set xxTrigAngle to 90 - xAngle else set xxTrigAngle to 450 - xAngle endif set xDeltaX to xDistance * cos xxTrigAngle set xDeltaY to xDistance * sin xxTrigAngle
Angle and distance from DeltaX & DeltaY
Useful to calculate the horizontal (2D) distance between two objects or in situations where GetDistance is not reliable.
Useful to calculate the heading angle in situations where GetHeadingAngle is not reliable (non-actors).
;================================= ; Get: Angle and distance ; From: DeltaX and DeltaY ;================================= set xAngle to atan2 xDeltaX xDeltaY ; returns -180 to +180 if xAngle < 0 set xAngle to xAngle + 360 ; convert to 0-360 endif set xDistance to ( xDeltaX * xDeltaX ) + ( xDeltaY * xDeltaY ) set xDistance to sqrt xDistance
Adding two angles
Self explanatory
;================================= ; Get: Angle ; From: Adding two angles ;================================= set xAngle to xAngleA + xAngleB if xAngle > 360 set xAngle to xAngle - 360 endif if xAngle < 0 set xAngle to xAngle + 360 endif
Sample code (3D)
WIP
Observations
Nothing at the moment
My Mods
QQuix Divine Elegance Showroom
http://www.tesnexus.com/downloads/file.php?id=17588
This mod creates a showroom in Divine Elegance’s basement where live models will wear whatever Palonirya has for sale (Fashion Show style).
And Palonirya is so proud of her showroom that she decided to share it with all clothes and armor merchants in Cyrodill. ANY store.
This Mod is designed to show clothes and armor from any mod that adds them to one of the game shops. Even items/shops that will be created in the future.
WIP
QQuix Fly Away
To be filled
Dynamic x non-dynamic items
To be filled
Personal info
Site: http://thewormhole.nfshost.com/forum/index.php/board,227.0.html Location: Brazil
Professional experience: IT. Started as a programmer, for a few years, long time ago. Since then, did a lot of other things in the IT business.
I enjoy figuring out how to do things with the CS script. For this reason, I rarely, if ever, look into existing scripts from other modders. So, I may be reinventing the wheel all the time and may not come out with the best solution, but it is a conscious decision to improve learning and enjoy what I like to do.