User:Snert: Difference between revisions
No edit summary |
No edit summary |
||
Line 49: | Line 49: | ||
setStreetLightsEnabled ( bool toggle ) -- Got to try and find the address for this first though | setStreetLightsEnabled ( bool toggle ) -- Got to try and find the address for this first though | ||
setBackgroundGunshotsEnabled ( bool toggle ) -- Gotta find this one as well.. again... | setBackgroundGunshotsEnabled ( bool toggle ) -- Gotta find this one as well.. again... | ||
setBirdsEnabled ( bool toggle ) -- I hate those pesky poopers at times.. Besides, it doesn't fit in some circumstances.. Gotta find the address D: | setBirdsEnabled ( bool toggle ) -- I hate those pesky poopers at times.. Besides, it doesn't fit in some circumstances.. Gotta find the address D: | ||
areStreetLightsEnabled | areStreetLightsEnabled | ||
areBackgroundGunshotsEnabled | areBackgroundGunshotsEnabled | ||
areBirdsEnabled | areBirdsEnabled | ||
Line 59: | Line 57: | ||
getRainLevel ( ) -- Make an educated guess | getRainLevel ( ) -- Make an educated guess | ||
resetRainLevel ( ) | resetRainLevel ( ) | ||
setPedBreath ( ped thePed, float breath ) -- For breath, as used underwater | |||
getPedBreath ( ped thePed ) | |||
isEventAdded ( string eventName ) -- Should be fairly obvious | isEventAdded ( string eventName ) -- Should be fairly obvious | ||
Line 134: | Line 135: | ||
Here are a couple of memory addresses which might be useful for implementing new functions, so I can't forget them. | Here are a couple of memory addresses which might be useful for implementing new functions, so I can't forget them. | ||
===Variables=== | |||
{| border="1" | {| border="1" | ||
Line 142: | Line 145: | ||
! Comments | ! Comments | ||
|- | |- | ||
| | | Rain | ||
| | | 0x0C81324 | ||
| | | float | ||
| Automatically | | Maximum: 1; Decreases over time; Doesn't appear to create thunder; Already in the MTA source | ||
|- | |||
| LS Street lights | |||
| 0x0960CF4 | |||
| bool (byte) | |||
| Automatically 1 at night (in LS); Setting this to 0 causes a new light corona to be created at all LS street lights | |||
|} | |} | ||
== | ===Functions=== | ||
Functions which are setting the above variables | |||
{| border="1" | |||
|- | |||
! Related to | |||
! Address | |||
! Bytes | |||
|- | |||
| Rain | |||
| 0x072bc92 & 0x072c686 | |||
| d9 1d 24 13 c8 00 | |||
|- | |||
| LS Street lights | |||
| 0x0408989 | |||
| c6 87 d0 4c 8e 00 02 | |||
|- | |||
| LS Street lights | |||
| 0x040cea3 | |||
| c6 45 10 03 | |||
|- | |||
| LS Street lights | |||
| 0x040cb71 | |||
| c6 83 d0 4c 8e 00 01 | |||
|} |
Revision as of 17:53, 30 November 2010
Resources
Debug monitor
Resource to easily be able to view server and client debug messages. (remotely)
Created as an example to demonstrate the use of on(Client)DebugMessage.
Images:
Server-side debug message viewer: http://dl.dropbox.com/u/4504893/images/debugmonitor_editor_s.png Client-side debug message viewer: http://dl.dropbox.com/u/4504893/images/debugmonitor_editor_c.png
Download (Note: Only works in 1.1 r2091 and later)
Camo vehicles
When this resource is enabled, boats will get the same color as the water, and planes will get the same color as the sky. What's not to like?
Created as an example to demonstrate the use of getWaterColor, getSkyGradient and RGB vehicle colors.
Camoplane example: http://www.xfire.com/video/3bcb4b/
Download (Note: Only works in 1.1 r2093 and later)
Function suggestions
Some functions I should work on sometime soon. (sort of my "TODO")
Server-side
-- None at the moment
Client-side
-- None at the moment
Both
setVehicleNitrousActivated ( vehicle theVehicle, bool toggle ) -- Being able to influence NOS would be great (should block GTA from disabling it as well) isVehicleNitrousActivated ( vehicle theVehicle ) -- Obvious function is obvious setVehicleNitrousRechargeDelay ( vehicle theVehicle, int delay ) -- Function to set the amount of time the driver has to wait to reactivate NOS getVehicleNitrousRechargeDelay ( vehicle theVehicle ) setStreetLightsEnabled ( bool toggle ) -- Got to try and find the address for this first though setBackgroundGunshotsEnabled ( bool toggle ) -- Gotta find this one as well.. again... setBirdsEnabled ( bool toggle ) -- I hate those pesky poopers at times.. Besides, it doesn't fit in some circumstances.. Gotta find the address D: areStreetLightsEnabled areBackgroundGunshotsEnabled areBirdsEnabled setRainLevel ( float level ) -- Internally defined and "working", but not used. Needs slight fixing getRainLevel ( ) -- Make an educated guess resetRainLevel ( ) setPedBreath ( ped thePed, float breath ) -- For breath, as used underwater getPedBreath ( ped thePed ) isEventAdded ( string eventName ) -- Should be fairly obvious isEventHandlerAdded ( string eventName, element attachedTo[, function handlerFunction ] ) -- Should be fairly obvious as well
Event suggestions
Events which might be quite useful. I should work on these sometime soon.
Server-side
onElementCreated ( ) -- Said it will be very slow, but still, it's a quite useful event. Besides, if onElementDestroyed isn't slow, why would this be slow? onVehicleNitrousActivated ( ) -- Should be fairly obvious onVehicleNitrousDeactivated ( ) -- Should be fairly obvious onVehicleTireStateChanged ( int tire, int state ) -- If you'd want vehicles with bulletproof wheels or something, you'd need to detect the state change first
Client-side
onClientElementCreated ( ) -- See server-side onClientVehicleNitrousActivated ( ) -- See server-side onClientVehicleNitrousDeactivated ( ) -- See server-side onClientVehicleTireStateChanged ( int tire, int state ) -- See server-side onClientVehicleDamage ( float loss ) -- Server-side version already exists, if only there'd be an easy way for it client-side...
FX functions
Doomed_Space_Marine did research on some particle effects on custom models. It would be very cool if we could make functions to do this instead, like we already can with some particle effects. (for instance: fxAddBlood) This would especially be very cool if we would be able to alter the fx, so for instance we could create colored smoke.
fxAddHeliKillBlood fxAddCarWashEffect fxAddCement fxAddClouds -- Note: It's a rather vague type of effect fxAddCokeTrail fxAddShower -- Note: Classed as "some water effect", but unknown what type of water effect. Assuming shower fxAddSmoke fxAddPour -- Seems more like it should be fxAddPee or fxAddPiss though fxAddLeaves fxAddSpray fxAddFireExtinghuiserEffect fxAddFlamethrowerFlame fxAddInsects
Weather functions
Warning: This section is for serious weathermen only!
I recently noticed how many functions MTA actually has to influence the weather. It would be quite awesome if we would be able to influence litterally every factor.
-- We currently have setWaveHeight setSkyGradient setWindVelocity setCloudsEnabled setWaterColor -- We'll need setRainLevel setHeatWaveIntensity setFogDensity setLightningEnabled -- (I really hope there is some way to separate lightning from rainy weathers) -- Anything else?
P.S. x86: fix setWeatherBlended, nao
Memory addresses
Here are a couple of memory addresses which might be useful for implementing new functions, so I can't forget them.
Variables
Purpose | Address | Address type | Comments |
---|---|---|---|
Rain | 0x0C81324 | float | Maximum: 1; Decreases over time; Doesn't appear to create thunder; Already in the MTA source |
LS Street lights | 0x0960CF4 | bool (byte) | Automatically 1 at night (in LS); Setting this to 0 causes a new light corona to be created at all LS street lights |
Functions
Functions which are setting the above variables
Related to | Address | Bytes |
---|---|---|
Rain | 0x072bc92 & 0x072c686 | d9 1d 24 13 c8 00 |
LS Street lights | 0x0408989 | c6 87 d0 4c 8e 00 02 |
LS Street lights | 0x040cea3 | c6 45 10 03 |
LS Street lights | 0x040cb71 | c6 83 d0 4c 8e 00 01 |