• Quantum Storage Device
    221 replies, posted
[QUOTE=nerfer2]That doesn't seem fun. I like messy.[/QUOTE] As do I. But like I said, I want both versions lol. One that tosses it back out in every direction, and one that puts it back how it was. It would be useful for say, storing a contraption or office or a small fort or whatever.
One more suggestion: When the device is destroyed while empty, create an out-of-control wormhole like it does currently. When the device has something in it, the "opening" effect is used, and the contents are expelled violently.
when is the new verson comeing out
To be honest, although this is a very nice piece of lua, and the effects are great, it needs so much more. To list a few: 1) Support for wiremod, simply so that you can activate it without dying horribly. 2) Remember the position of objects so that they don't mess up when they come out 3) Don't break the constraints I had hoped that this would let me do things like carry a large contraption around in a bottle, but instead it just destroys everything. As I said, good work, but it needs more.
Hey i dont know how to install it ive put it in my addons but it doesnt wokr:( Help Please? Yes i know my comment is late
Did you spawn it? It's in the entities tab.
[QUOTE=GahHeadcrab!]Hey i dont know how to install it ive put it in my addons but it doesnt wokr:( Help Please? Yes i know my comment is late[/QUOTE] Yes, it's in the entities tab. Should be under "Other" in the entities tab. And for the record, write your contractions properly.
I hate the radiation.. It should kill npc's, yes, but not me D: Maybe make it a grenade that has right click make it dissapear, and left click make it stay, and just throw it around, press "use", and it all comes out, and the device gets gone. :D
Reminds me of the suitcase of holding!
Wow! A Entitle with a back story? There is a GOD! :D
amazing!
Darn! The link is broken... I wish someone would upload it to GmMods.
is an update coming like a new 1
I've had this obstacle before the download you linked is 2 mb I am unable to download over 1mb I love the things you make they are incredible! I'd also love to be able to use them >.< Gmodfiles Filefront Fileplant FPSbanana all good sources
how do you make lua files?
ok i downloaded and i cant find it its in the addions folder
[QUOTE=Coffee Creamer;14018525]ok i downloaded and i cant find it its in the addions folder[/QUOTE] nevermind i found it
I downloaded the file and extracted it to addons but i can't find it in game, any help?
PLEASE upload somewhere else THE DOWNLOAD DOSEN'T WORK
well... we have duplicators and it dont returns all in the right position of the before one but.. is a bit stylish XD
[QUOTE=darkavenger3;11101072]I Ragdolled myself and got sucked in, and i couldn't re spawn so i had to rejoin :D[/QUOTE] I did that to my friend once, as an experiment.
[QUOTE=Drasnus;14233849]I did that to my friend once, as an experiment.[/QUOTE] That's mean. :/
well you want wire support for this? here is it: go into your garrysmod addons folder, open \QuantumStorageDevice\lua\entities\sent_QuantumStorageDevice\init.lua mark all and then paste the code in which follows here: [code] AddCSLuaFile("cl_init.lua") AddCSLuaFile("shared.lua") include('shared.lua') ----------variables------------ ENT.StartExplosion = 0 ENT.StartExpEffectDel = CurTime() ENT.Inflate = 0 ENT.Deflate = 0 ENT.SavedThings = {} ENT.SavedThingss = {} ENT.OpenClosed = 1 ENT.BeanCounter = 0 ENT.Destroyed = 0 ENT.DestroyDel = CurTime() ENT.DestroyFirst = 0 ENT.DestroySecond = 0 ENT.DestroyThird = 0 ENT.UseDel = CurTime() ENT.IsFull = 0 ENT.FullExplosion = 0 ENT.FullExpEffectDel = CurTime() ENT.IdleDel = CurTime() ENT.Idle = NULL ENT.Explosion = NULL ENT.MegaPortarStop = NULL ENT.MegaPortarStart = NULL ENT.MegaPortal = NULL ------------------------------------VARIABLES END function ENT:SpawnFunction( ply, tr ) --------Spawning the entity and getting some sounds i use. if ( !tr.Hit ) then return end local SpawnPos = tr.HitPos + tr.HitNormal * 10 local ent = ents.Create( "sent_QuantumStorageDevice" ) ent:SetPos( SpawnPos ) ent:Spawn() ent:Activate() ent.Owner = ply return ent end function ENT:Initialize() self.Entity:SetModel( "models/props_junk/garbage_glassbottle001a.mdl") self.Entity:SetMaterial("effects/AnnahilationBomb.vtf") self.Entity:PhysicsInit(SOLID_VPHYSICS) self.Entity:SetMoveType(MOVETYPE_VPHYSICS) self.Entity:SetSolid(SOLID_VPHYSICS) self.Entity:SetSolid(SOLID_VPHYSICS) local phys = self.Entity:GetPhysicsObject() if(phys:IsValid()) then phys:Wake() end self.Idle = CreateSound(self.Entity,"BeerBomb/IdleSound.wav") self.Explosion = CreateSound(self.Entity,"BeerBomb/explosion.wav") self.MegaPortarStart = CreateSound(self.Entity,"HL1/ambience/particle_suck2.wav") self.MegaPortal = CreateSound(self.Entity,"ambient/levels/labs/teleport_malfunctioning.wav") self.MegaPortarStop = CreateSound(self.Entity,"ambient/levels/labs/electric_explosion1.wav") for i=1,200 do self.SavedThings[i] = NULL self.SavedThingss[i] = NULL end if not (WireAddon == nil) then self.Inputs = Wire_CreateInputs(self.Entity, { "On" }) end --if not (WireAddon == nil) then self.Outputs = Wire_CreateOutputs(self.Entity, { "Stored" }) end end -------------------------------------------PHYS COLLIDE function ENT:PhysicsCollide( data, phys ) ent = data.HitEntity end --------------- -------------------------------------------THINK function ENT:Think() if CurTime() > self.IdleDel then self.IdleDel = CurTime()+1 self.Entity:EmitSound("BeerBomb/IdleSound.wav", 80, 100) end if self.StartExplosion == 1 and self.StartExpEffectDel > CurTime() and self.Inflate == 0 and self.FullExplosion == 0 then local effectdata = EffectData() effectdata:SetOrigin( self.Entity:GetPos()) effectdata:SetMagnitude( (self.StartExpEffectDel - CurTime())) util.Effect( "Annahilation", effectdata ) effectdata:SetOrigin( self.Entity:GetPos() ) effectdata:SetMagnitude( (self.StartExpEffectDel - CurTime())) util.Effect( "AnnahilationHeat", effectdata ) end if self.StartExplosion == 1 and self.StartExpEffectDel < CurTime() and self.Inflate == 0 then self.Inflate = 1 self.StartExpEffectDel = CurTime()+2 if self.OpenClosed == 0 then local effectdata = EffectData() effectdata:SetOrigin( self.Entity:GetPos() ) effectdata:SetMagnitude( (self.StartExpEffectDel - CurTime())) util.Effect( "AnnahilationInflate", effectdata ) end if self.OpenClosed == 1 then local effectdata = EffectData() effectdata:SetOrigin( self.Entity:GetPos() ) effectdata:SetMagnitude( (self.StartExpEffectDel - CurTime())) util.Effect( "AnnahilationInflateRed", effectdata ) end end if self.StartExplosion == 1 and self.StartExpEffectDel < CurTime() and self.Inflate == 1 and self.Deflate == 0 then self.Deflate = 1 self.StartExpEffectDel = CurTime()+1 if self.OpenClosed == 0 then local effectdata = EffectData() effectdata:SetOrigin( self.Entity:GetPos() ) effectdata:SetMagnitude( (self.StartExpEffectDel - CurTime())) util.Effect( "AnnahilationDeflate", effectdata ) for k, v in pairs( ents.FindInSphere( self.Entity:GetPos(), 200 ) ) do if string.find(v:GetClass(), "prop_physics") or string.find(v:GetClass(), "prop_ragdoll") then self.BeanCounter = self.BeanCounter+1 self.SavedThings[self.BeanCounter] = v:GetClass() self.SavedThingss[self.BeanCounter] = v:GetModel() v:Remove() end end self.IsFull = 1 end if self.OpenClosed == 1 then local effectdata = EffectData() effectdata:SetOrigin( self.Entity:GetPos() ) effectdata:SetMagnitude( (self.StartExpEffectDel - CurTime())) util.Effect( "AnnahilationDeflateRed", effectdata ) for i=1,self.BeanCounter do local Prop = ents.Create(self.SavedThings[i]) Prop:SetModel(self.SavedThingss[i]) Prop:SetPos(self.Entity:GetPos()+ Vector( math.Rand( -100, 100 ), math.Rand( -100, 100 ),math.Rand( 20, 100 ) )) Prop:Spawn() Msg("Spawning prop \n ") end end end if self.StartExplosion == 1 and self.StartExpEffectDel > CurTime() then for k, v in pairs( ents.FindInSphere( self.Entity:GetPos(), 300 ) ) do if string.find(v:GetClass(), "prop_ragdoll") and self.OpenClosed == 0 then constraint.NoCollide( self.Entity, v, 0, 0 ) local phys = v:GetPhysicsObject() local bones = v:GetPhysicsObjectCount() for i=0,bones-1 do v:GetPhysicsObjectNum(i):EnableGravity(false) end end if string.find(v:GetClass(), "prop_physics") or string.find(v:GetClass(), "prop_ragdoll") and self.OpenClosed == 0 then if self.OpenClosed == 0 then constraint.NoCollide( self.Entity, v, 0, 0 ) if self.OpenClosed == 0 then local r,g,b,a = v:GetColor() r = r-8 g = g-8 b = b-8 a = a-8 if a <= 1 then a = 0 end if r <= 1 then r = 0 end if g <= 1 then g = 0 end if b <= 1 then b = 0 end constraint.NoCollide( self.Entity, v, 0, 0 ) v:SetColor(r,g,b,a) end local phys = v:GetPhysicsObject( ) phys:EnableGravity(false) phys:ApplyForceCenter(Vector(0,0, (phys:GetMass()*8))) v:SetGravity( 0.1 ) local direction = v:GetPos()-self.Entity:GetPos() direction:Normalize() direction = direction*(phys:GetMass()*-20) phys:ApplyForceCenter(direction) local effectdata = EffectData() effectdata:SetEntity(self.Entity) effectdata:SetStart( self.Entity:GetPos() ) effectdata:SetOrigin( v:GetPos() ) effectdata:SetScale( 5 ) util.Effect( "TeslaZap", effectdata ) end end if string.find(v:GetClass(), "prop_physics") or string.find(v:GetClass(), "prop_ragdoll") and self.OpenClosed == 1 then if self.OpenClosed == 1 then constraint.NoCollide( self.Entity, v, 0, 0 ) local phys = v:GetPhysicsObject( ) phys:ApplyForceCenter(Vector(0,0,(phys:GetMass()*50))) v:SetGravity( 0.1 ) local direction = v:GetPos()-self.Entity:GetPos() direction:Normalize() direction = direction*(phys:GetMass()*50) phys:ApplyForceCenter(direction) end end if string.find(v:GetClass(), "npc_*") then local Korv = v:Health() - 5 v:Fire("sethealth",
Old
i found out how you did it. its made to copy the item/prop data and then delete the objects. then it will spawn new ones when you open it. i found out this because it sucked in a door with a different skin and transformed it back to the origonal. still its very clever and still works well beside the skin thing
Cool ^_^
This looks awsome, definetly downloading right now. Though I suggest you make an alternate version that doesn't have a vortex like portal, so you can use the phys gun to deposit things manually in it.
Haha, YOU ARE A GENIUS!!! :D
It isn't working!I extracted it to addons and can't find it anywhere.Where is it supposed to be?
[QUOTE=gamelover95;16696543]It isn't working!I extracted it to addons and can't find it anywhere.Where is it supposed to be?[/QUOTE] Don't say that it isn't working before you have tried it! You will find it in the entities tab.
Sorry, you need to Log In to post a reply to this thread.