Files
wnsrc/lua/effects/arccw_uc_confetti.lua
lifestorm 6a58f406b1 Upload
2024-08-04 23:54:45 +03:00

71 lines
1.6 KiB
Lua

--[[
| This file was obtained through the combined efforts
| of Madbluntz & Plymouth Antiquarian Society.
|
| Credits: lifestorm, Gregory Wayne Rossel JR.,
| Maloy, DrPepper10 @ RIP, Atle!
|
| Visit for more: https://plymouth.thetwilightzone.ru/
--]]
function EFFECT:Init( data )
local vOffset = data:GetOrigin()
sound.Play( "garrysmod/balloon_pop_cute.wav", vOffset, 90, math.random( 90, 120 ) )
local NumParticles = 48
local emitter = ParticleEmitter( vOffset, true )
for i = 0, NumParticles do
local Color = Color(math.random(255), math.random(255), math.random(255))
local Pos = Vector( math.Rand( -0.5, 0.5 ), math.Rand( -0.5, 0.5 ), math.Rand( -0.5, 0.5 ) ) + data:GetStart()
local particle = emitter:Add( "particles/balloon_bit", vOffset + Pos * 8 )
if ( particle ) then
particle:SetVelocity( Pos * 600 )
particle:SetLifeTime( 0 )
particle:SetDieTime( 10 )
particle:SetStartAlpha( 255 )
particle:SetEndAlpha( 255 )
local Size = math.Rand( 1, 2 )
particle:SetStartSize( Size )
particle:SetEndSize( 0 )
particle:SetRoll( math.Rand( 0, 360 ) )
particle:SetRollDelta( math.Rand( -2, 2 ) )
particle:SetAirResistance( 80 )
particle:SetGravity( Vector( 0, 0, -300 ) )
local RandDarkness = math.Rand( 0.8, 1.0 )
particle:SetColor( Color.r * RandDarkness, Color.g * RandDarkness, Color.b * RandDarkness )
particle:SetCollide( true )
particle:SetAngleVelocity( Angle( math.Rand( -160, 160 ), math.Rand( -160, 160 ), math.Rand( -160, 160 ) ) )
particle:SetBounce( 0 )
particle:SetLighting( true )
end
end
emitter:Finish()
end
function EFFECT:Think()
return false
end
function EFFECT:Render()
end