source: binary-improvements/7dtd-server-fixes/src/AllocsLogFunctions.cs@ 180

Last change on this file since 180 was 159, checked in by alloc, 10 years ago

fixes

File size: 1.5 KB
Line 
1using AllocsFixes.PersistentData;
2using System;
3using System.Collections.Generic;
4using UnityEngine;
5
6namespace AllocsFixes
7{
8 public class AllocsLogFunctions
9 {
10 public static void RequestToSpawnPlayer (GameManager manager, int _clientId, string _name, string _playerClassname, string _skinTexture, int _chunkViewDim)
11 {
12 try {
13 ClientInfo ci = CommonMappingFunctions.GetClientInfoFromClientID (_clientId);
14 int entityId = CommonMappingFunctions.GetEntityID (ci);
15 EntityPlayer ep = CommonMappingFunctions.GetEntityPlayer (ci);
16 string steamId = CommonMappingFunctions.GetSteamID (ci);
17
18 string ip = ci.networkPlayer.ipAddress;
19 string name = string.Empty;
20
21 if (ep != null)
22 name = ep.EntityName;
23
24 Log.Out ("Player connected, clientid=" + _clientId +
25 ", entityid=" + entityId +
26 ", name=" + name +
27 ", steamid=" + steamId +
28 ", ip=" + ip
29 );
30
31 PersistentContainer.Instance.Players [steamId].SetOnline (ci);
32 PersistentData.PersistentContainer.Instance.Save ();
33 } catch (Exception e) {
34 Log.Out ("Error in AllocsLogFunctions.RequestToSpawnPlayer: " + e);
35 }
36 }
37
38 public static void PlayerDisconnected (ConnectionManager manager, int _clientId, bool _bShutdown)
39 {
40 try {
41 Player p = PersistentContainer.Instance.Players.GetPlayerByClientId (_clientId);
42 if (p != null) {
43 p.SetOffline ();
44 }
45 PersistentData.PersistentContainer.Instance.Save ();
46 } catch (Exception e) {
47 Log.Out ("Error in AllocsLogFunctions.PlayerDisconnected: " + e);
48 }
49 }
50 }
51}
Note: See TracBrowser for help on using the repository browser.