IT/createProjectile: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
Line 27: Line 27:


==Example==
==Example==
In questo esempio creiamo un minigun spara missili
In questo esempio creiamo un minigun sparamissili
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
-- Questa funzione viene attivata ogni volta che il giocatore spara.
-- Questa funzione viene attivata ogni volta che il giocatore spara.
function onClientPlayerWeaponFireFunc(weapon,ammo,ammoInClip,hitX,hitY,hitZ,hitElement)
function onClientPlayerWeaponFireFunc(weapon,ammo,ammoInClip,hitX,hitY,hitZ,hitElement)
if weapon == 38 then -- if source is a local player and he uses minigun...
if weapon == 38 then -- se l'origine è un local player e usa il minigun...
if not createProjectile(getLocalPlayer(),19,getElementPosition(getLocalPlayer()),200) then -- then we either create a projectile...
if not createProjectile(getLocalPlayer(),19,getElementPosition(getLocalPlayer()),200) then -- quindi creiamo un proiettile
outputChatBox ( "Rocket minigun overheated! Give it a rest pal!", source ) -- or if projectile limit is reached we output player a chat message
outputChatBox ( "Minigun sparamissili surriscaldato! Fallo raffreddare un po'!", source ) -- o se il limite dei proiettili è raggiunto mandiamo un messaggio in chat al giocatore
end
end
end
end
end
end


-- Don't forget to add the onClientPlayerWeaponFireFunc function as a handler for onClientPlayerWeaponFire.
-- Non dimenticare di aggiungere la funzione onClientPlayerWeaponFireFunc come un handler per onClientPlayerWeaponFire.
addEventHandler("onClientPlayerWeaponFire", getLocalPlayer(), onClientPlayerWeaponFireFunc)
addEventHandler("onClientPlayerWeaponFire", getLocalPlayer(), onClientPlayerWeaponFireFunc)
</syntaxhighlight>
</syntaxhighlight>

Revision as of 11:12, 3 August 2011

« Torna alla Pagina principale italiana .


Questa funzione crea un proiettile del tipo specificato sulle coordinate specificate.

Sintassi

projectile createProjectile ( element creator, int weaponType [, float posX, float posY, float posZ, float force = 1.0, element target = nil, float rotX, float rotY, float rotZ, float velX, float velY, float velZ, int model ] )

Argomenti richiesti

  • creator: L'element rappresenta il creatore del proiettile. In caso vuoi che il proiettile sia sincronizzato per tutti, il creatore deve essere getLocalPlayer().
  • weaponType: int rappresenta il proiettile weaponType (caratteristiche). Gli ID validi sono:
« Torna alla Pagina principale italiana .

Gli esplosivi (projectiles) sono dei tipi di arma particolari, usati con la funzione client-side createProjectile.

  • 16: Granata
  • 17: Granata a gas
  • 18: Molotov
  • 19: Razzo (semplice)
  • 20: Razzo (a ricerca termica)
  • 21: Missile di Hydra

Argomenti opzionali

NOTA: Quando usi argomenti opzionali, devi fornire tutti gli altri argomenti prima di quello che vuoi utilizzare. Per altre informazioni consulta la pagina Argomenti opzionali.
  • posX,posY,posZ: float coordinate di partenza per il proiettile. Esse sono le coordinate del creatore da default.
  • force: float rappresenta la forza di partenza del proiettile.
  • target: element obbiettivo usato dai missili a ricerca termica.
  • rotX,rotY,rotZ: float rotazione di partenza del proiettile.
  • velX,velY,velZ: float velocità di partenza del proiettile.
  • model: integer che rapprensenta il modello del proiettile, usa il modello di default per weaponType se non specificato.

Returns

Restituisce un elemento proiettile se la creazione del proiettile è avvenuta con successo. Restituisce false se non è possibile creare un proiettile (ID dell'arma sbagliato o il limite dei proiettili è stato raggiunto).

Example

In questo esempio creiamo un minigun sparamissili

-- Questa funzione viene attivata ogni volta che il giocatore spara.
function onClientPlayerWeaponFireFunc(weapon,ammo,ammoInClip,hitX,hitY,hitZ,hitElement)
	if weapon == 38 then -- se l'origine è un local player e usa il minigun...
		if not createProjectile(getLocalPlayer(),19,getElementPosition(getLocalPlayer()),200) then -- quindi creiamo un proiettile
			outputChatBox ( "Minigun sparamissili surriscaldato! Fallo raffreddare un po'!", source ) -- o se il limite dei proiettili è raggiunto mandiamo un messaggio in chat al giocatore
		end
	end
end

-- Non dimenticare di aggiungere la funzione onClientPlayerWeaponFireFunc come un handler per onClientPlayerWeaponFire.
addEventHandler("onClientPlayerWeaponFire", getLocalPlayer(), onClientPlayerWeaponFireFunc)

See also