public static float[] ReadFloatArray(byte[] data, ref int index) { int length = SerializableDataExtension.ReadInt32(data, ref index); float[] numArray = new float[length]; for (int index1 = 0; index1 < length; ++index1) { numArray[index1] = SerializableDataExtension.ReadFloat(data, ref index); } return(numArray); }
public static string ReadString(byte[] data, ref int index) { string empty = string.Empty; int num = SerializableDataExtension.ReadInt32(data, ref index); for (int index1 = 0; index1 < num; ++index1) { empty += BitConverter.ToChar(data, index).ToString(); index = index + 2; } return(empty); }
public static bool TryLoadData(out VehicleData[] data) { data = new VehicleData[CachedVehicleData.MaxVehicleCount]; byte[] data1 = SerializableDataExtension.instance.SerializableData.LoadData(CachedVehicleData._dataID); if (data1 == null) { return(false); } int index1 = 0; string empty = string.Empty; try { Utils.Log((object)"Try to load vehicle data."); string str = SerializableDataExtension.ReadString(data1, ref index1); if (string.IsNullOrEmpty(str) || str.Length != 4) { Utils.LogWarning((object)"Unknown data found."); return(false); } Utils.Log((object)("Found vehicle data version: " + str)); while (index1 < Math.Min(data1.Length, CachedVehicleData.MaxVehicleCount)) { int index2 = SerializableDataExtension.ReadInt32(data1, ref index1); if (str == "v001") { int num = (int)SerializableDataExtension.ReadByte(data1, ref index1); } data[index2].LastStopNewPassengers = SerializableDataExtension.ReadInt32(data1, ref index1); data[index2].LastStopGonePassengers = SerializableDataExtension.ReadInt32(data1, ref index1); data[index2].PassengersThisWeek = SerializableDataExtension.ReadInt32(data1, ref index1); data[index2].PassengersLastWeek = SerializableDataExtension.ReadInt32(data1, ref index1); data[index2].IncomeThisWeek = SerializableDataExtension.ReadInt32(data1, ref index1); data[index2].IncomeLastWeek = SerializableDataExtension.ReadInt32(data1, ref index1); data[index2].PassengerData = SerializableDataExtension.ReadFloatArray(data1, ref index1); data[index2].IncomeData = SerializableDataExtension.ReadFloatArray(data1, ref index1); if (str != "v001" && str != "v002") { data[index2].CurrentStop = SerializableDataExtension.ReadUInt16(data1, ref index1); } } return(true); } catch (Exception ex) { Utils.LogWarning((object)("Could not load vehicle data. " + ex.Message)); data = new VehicleData[CachedVehicleData.MaxVehicleCount]; return(false); } }
public static bool TryLoadData(out NodeData[] data) { data = new NodeData[32768]; byte[] data1 = SerializableDataExtension.instance.SerializableData.LoadData(CachedNodeData._dataID); if (data1 == null) { return(false); } int index1 = 0; string empty = string.Empty; try { Utils.Log((object)"Try to load net node data."); string str = SerializableDataExtension.ReadString(data1, ref index1); if (string.IsNullOrEmpty(str) || str.Length != 4) { Utils.LogWarning((object)"Unknown data found."); return(false); } Utils.Log((object)("Found net node data version: " + str)); while (index1 < data1.Length) { int index2 = SerializableDataExtension.ReadInt32(data1, ref index1); if (str == "v001") { double num = (double)SerializableDataExtension.ReadFloat(data1, ref index1); } data[index2].PassengersIn = SerializableDataExtension.ReadInt32(data1, ref index1); data[index2].PassengersOut = SerializableDataExtension.ReadInt32(data1, ref index1); data[index2].LastWeekPassengersIn = SerializableDataExtension.ReadInt32(data1, ref index1); data[index2].LastWeekPassengersOut = SerializableDataExtension.ReadInt32(data1, ref index1); data[index2].PassengerInData = SerializableDataExtension.ReadFloatArray(data1, ref index1); data[index2].PassengerOutData = SerializableDataExtension.ReadFloatArray(data1, ref index1); data[index2].Unbunching = str == "v001" || str == "v002" || SerializableDataExtension.ReadBool(data1, ref index1); } return(true); } catch (Exception ex) { Utils.LogWarning((object)("Could not load net node data. " + ex.Message)); data = new NodeData[32768]; return(false); } }