RemoveWorldModel: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
mNo edit summary
(Trees are below 700!)
(12 intermediate revisions by 3 users not shown)
Line 1: Line 1:
__NOTOC__  
__NOTOC__  
{{Server client function|New items}}
{{Server client function|New items}}
{{Note box|There are two types of world objects Binary IPL (anything not in data/maps and in gta3.img) and data IPL (anything in data/maps) Binary IPL removal requires a stream out if you are deleting anything within 300 units (anything visible) you can just move the camera to do this. Data IPL are removed instantly and this is not required. Also LOD objects are not removed automatically so you need to remove them separately.}}
<!--
{{Note box|Pre r4844: There are two types of world objects Binary IPL (anything not in data/maps and in gta3.img) and data IPL (anything in data/maps) Binary IPL removal requires a stream out if you are deleting anything within 300 units (anything visible) you can just move the camera to do this. Data IPL are removed instantly and this is not required. Also LOD objects are not removed automatically so you need to remove them separately.}}
-->
This function is used to remove a world object.
This function is used to remove a world object.
 
<!--
==Developer Note==
{{Tip|Pre r4844: It is strongly advised that you use this server side rather than client side because it will just function infinitely better as you should not need to handle streaming it out/back in.}}
I would strongly advise you use this server side rather than client side because it will just function infinitely better as you should not need to handle streaming it out/back in.
-->
 
==Syntax==  
==Syntax==  
<syntaxhighlight lang="lua">bool removeWorldModel ( int modelID, float radius, float x, float y, float z )</syntaxhighlight>  
<syntaxhighlight lang="lua">bool removeWorldModel ( int modelID, float radius, float x, float y, float z [, int interior = 0 ] )</syntaxhighlight>  


===Required Arguments===  
===Required Arguments===  
Line 16: Line 17:
*'''y:''' A floating point number representing the Y coordinate on the map.
*'''y:''' A floating point number representing the Y coordinate on the map.
*'''z:''' A floating point number representing the Z coordinate on the map.
*'''z:''' A floating point number representing the Z coordinate on the map.
===Optional Arguments===
{{New items|3.0132|1.3.2|
*'''interior:''' The interior ID to apply the removal to ( some objects in interior 13 show in all interiors so if you want to remove everything in interior 0 also remove everything in interior 13 )
}}


===Returns===
===Returns===
Line 21: Line 27:


==Requirements==
==Requirements==
{{Requirements|n/a|1.2.0-9.03618|}}
{{Requirements|1.2.0-9.03618|1.2.0-9.03618|}}


==Example==  
==Example==  
This example will removes buildings on BigEar.
This example will removes buildings on BigEar:
<section name="Client" class="client" show="true">
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
removeWorldModel(16617,1000,-300,1556,75) --lod
removeWorldModel(16617,1000,-300,1556,75) --lod
Line 32: Line 37:
removeWorldModel(16138,1000,-300,1556,75) -- model
removeWorldModel(16138,1000,-300,1556,75) -- model
</syntaxhighlight>
</syntaxhighlight>
</section>
 
This example removes CJ house:
<syntaxhighlight lang="lua">
for i=700,20000 do
    removeWorldModel(i,10,2494,-1696,17)
end
</syntaxhighlight>
 
This server script example removes all models, everywhere:
<syntaxhighlight lang="lua">
for i=550,20000 do
    removeWorldModel(i,10000,0,0,0)
end
setOcclusionsEnabled(false)  -- Also disable occlusions when removing certain models
setWaterLevel(-5000)        -- Also hide the default water as it will be full of holes
</syntaxhighlight>
 
==Changelog==
{{ChangelogHeader}}
{{ChangelogItem|1.3.1-9.04636|Added interior argument}}
{{ChangelogItem|1.3.1-9.04844|Everything streams out fine now.}}


==See Also==
==See Also==
{{Client_world_functions}}
{{Client_world_functions}}

Revision as of 07:54, 22 May 2013

This function is used to remove a world object.

Syntax

bool removeWorldModel ( int modelID, float radius, float x, float y, float z [, int interior = 0 ] )

Required Arguments

  • modelID: A whole integer specifying the GTASA object model ID.
  • radius: A floating point number representing the radius that will be eliminated.
  • x: A floating point number representing the X coordinate on the map.
  • y: A floating point number representing the Y coordinate on the map.
  • z: A floating point number representing the Z coordinate on the map.

Optional Arguments

  • interior: The interior ID to apply the removal to ( some objects in interior 13 show in all interiors so if you want to remove everything in interior 0 also remove everything in interior 13 )

Returns

Returns true if the object was removed, false if invalid arguments were passed.

Requirements

Minimum server version 1.2.0-9.03618
Minimum client version 1.2.0-9.03618

Note: Using this feature requires the resource to have the above minimum version declared in the meta.xml <min_mta_version> section. e.g. <min_mta_version server="1.2.0-9.03618" client="1.2.0-9.03618" />

Example

This example will removes buildings on BigEar:

removeWorldModel(16617,1000,-300,1556,75) --lod
removeWorldModel(16616,1000,-300,1556,75) --lod
removeWorldModel(16615,1000,-300,1556,75) --lod
removeWorldModel(16138,1000,-300,1556,75) -- model

This example removes CJ house:

for i=700,20000 do
    removeWorldModel(i,10,2494,-1696,17)
end

This server script example removes all models, everywhere:

for i=550,20000 do
    removeWorldModel(i,10000,0,0,0)
end
setOcclusionsEnabled(false)  -- Also disable occlusions when removing certain models
setWaterLevel(-5000)         -- Also hide the default water as it will be full of holes

Changelog

Version Description
1.3.1-9.04636 Added interior argument
1.3.1-9.04844 Everything streams out fine now.

See Also