diff options
| author | Apickx <Apickx@cogarr.org> | 2015-12-28 19:10:44 -0500 |
|---|---|---|
| committer | Apickx <Apickx@cogarr.org> | 2015-12-28 19:10:44 -0500 |
| commit | 5c4ebc932d8c02522802c842d43d863d89aca162 (patch) | |
| tree | 6be7ad664bdf060127e6df6baa72beaf508aa149 /gamemode/shared/player_pigeon.lua | |
| download | wintersurvival2-5c4ebc932d8c02522802c842d43d863d89aca162.tar.gz wintersurvival2-5c4ebc932d8c02522802c842d43d863d89aca162.tar.bz2 wintersurvival2-5c4ebc932d8c02522802c842d43d863d89aca162.zip | |
Initial commit
Diffstat (limited to 'gamemode/shared/player_pigeon.lua')
| -rw-r--r-- | gamemode/shared/player_pigeon.lua | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/gamemode/shared/player_pigeon.lua b/gamemode/shared/player_pigeon.lua new file mode 100644 index 0000000..2256af0 --- /dev/null +++ b/gamemode/shared/player_pigeon.lua @@ -0,0 +1,44 @@ +local meta = FindMetaTable("Player")
+
+if (SERVER) then
+ util.AddNetworkString("AssignPigeon")
+
+ function meta:SpawnPigeon()
+ if (IsValid(self.Pigeon)) then return end
+
+ self.Pigeon = ents.Create("ws_pigeon")
+ self.Pigeon:SetPos(self:GetPos())
+ self.Pigeon:SetPlayer(self)
+ self.Pigeon:Spawn()
+ self.Pigeon:Activate()
+
+ print("Spawned Pigeon: "..self:Nick())
+
+ timer.Simple(0.2,function()
+ net.Start("AssignPigeon")
+ net.WriteEntity(self)
+ net.WriteEntity(self.Pigeon)
+ net.Broadcast() end)
+ end
+
+ function meta:UpdatePigeons()
+ for k,v in pairs(player.GetAll()) do
+ if (IsValid(v.Pigeon)) then
+ timer.Simple(math.Rand(0.1,0.2),function()
+ net.Start("AssignPigeon")
+ net.WriteEntity(v)
+ net.WriteEntity(v.Pigeon)
+ net.Send(self)
+ end)
+ end
+ end
+ end
+else
+ net.Receive("AssignPigeon",function() net.ReadEntity().Pigeon = net.ReadEntity() end)
+end
+
+function meta:GetPigeon()
+ return self.Pigeon
+end
+
+
|
