StartResource: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
(This has more chance of actually working)
Line 31: Line 31:
This example starts a specified resource with the command; "/resource-start".
This example starts a specified resource with the command; "/resource-start".
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
function startTheResource ( thePlayer, command, resource )
function startTheResource ( thePlayer, command, resourceName )
if ( resource ) then -- Check if they specified a resource name
if ( resourceName ) then -- Check if they specified a resource name
resource = getResourceFromName ( resource ) -- Get the resource
local resource = getResourceFromName ( resourceName ) -- Get the resource
local start = startResource ( resource ) -- Start the resource
local start = startResource ( resource ) -- Start the resource
if ( start ) then -- If it was successfully started...
if ( start ) then -- If it was successfully started...
outputChatBox ( resource .. " was started successfully.", thePlayer, 255, 0, 0 )
outputChatBox ( resourceName .. " was started successfully.", thePlayer, 255, 0, 0 )
else -- If it wasn't successfully started...
else -- If it wasn't successfully started...
outputChatBox ( "This resource doesn't exist.", thePlayer, 255, 0, 0 )
outputChatBox ( "This resource doesn't exist.", thePlayer, 255, 0, 0 )

Revision as of 19:57, 22 February 2010

This function starts a resource either persistently or as a dependency of the current resource. If you start the resource persistently, the resource will run until stopped either using stopResource or by the server admin. A resource started as a dependency will stop when your resource stops, if no other resources have it as a depdendency. This is the same effect as using an include in your meta.xml file.

The function also allows you to specify a number of boolean options. These allow you to disable the loading of various aspects of the resource. This is generally useful for editors rather than for actual gamemodes. It could also be used as a way to preview a resource before enabling the scripting aspects, though this could produce unreliable results. There is no way for a resource to tell if it is being run with any of these booleans set.

Syntax

bool startResource ( resource resourceToStart, [bool persistent = false, bool startIncludedResources = true, bool loadServerConfigs = true, bool loadMaps = true, bool loadServerScripts = true, bool loadHTML = true, bool loadClientConfigs = true, bool loadClientScripts = true, bool loadFiles = true] )

Required Arguments

  • resourceToStart: The resource that should be started.

Optional Arguments

NOTE: When using optional arguments, you might need to supply all arguments before the one you wish to use. For more information on optional arguments, see optional arguments.

  • persistent: A boolean specifying if the resource should continue to run even after this resource has been stopped or not. If this is true then the resource will run until another resource or user terminates it or the server shuts down.
  • startIncludedResources: A boolean specifying if the resource's included/dependant resources will be started.
  • loadServerConfigs: A boolean specifying if server side config (XML) files should be loaded with the resource.
  • loadMaps: A boolean specifying if any .map files will be started with the resource.
  • loadServerScripts: A boolean specifying if server side script files should be started alongside the resource.
  • loadHTML: A boolean specifying if HTML files should be started alongside the resource.
  • loadClientConfigs: A boolean specifying if client configs should be loaded alongside the resource.
  • loadClientScripts: A boolean specifying if client scripts should be loaded and started alongside the resource.
  • loadFiles: A boolean specifying if client-side files should be loaded alongside the resource.

Returns

Returns true if the resource has been started successfully, false otherwise.

Example

This example starts a specified resource with the command; "/resource-start".

function startTheResource ( thePlayer, command, resourceName )
	if ( resourceName ) then -- Check if they specified a resource name
		local resource = getResourceFromName ( resourceName ) -- Get the resource
		
		local start = startResource ( resource ) -- Start the resource
		if ( start ) then -- If it was successfully started...
			outputChatBox ( resourceName .. " was started successfully.", thePlayer, 255, 0, 0 )
		else -- If it wasn't successfully started...
			outputChatBox ( "This resource doesn't exist.", thePlayer, 255, 0, 0 )
		end
	else -- If they didn't put a resource name...
		outputChatBox ( "Please specify a resource to start.", thePlayer, 255, 0, 0 )
	end
end
addCommandHandler ( "resource-start", startTheResource ) -- Make it trigger when somebody types "/resource-start"

See Also