private void setupData(DataRow r) { int objectType = int.Parse(r["type"].ToString()); String oType = ""; switch (objectType) { case 0: oType = "Mobs"; break; case 3: oType = "Planets"; break; case 11: oType = "Stargates"; break; case 12: oType = "Starbases"; break; case 37: oType = "Decorations"; break; case 38: oType = "Harvestables"; break; } dp = new StargateProps(); //Base Props + Nav Point Props dp.SectorID = int.Parse(r["sector_id"].ToString()); dp.NavType = r["nav_type"].ToString(); dp.Signature = float.Parse(r["signature"].ToString()); dp.IsHuge = (Boolean)r["is_huge"]; dp.BaseXP = int.Parse(r["base_xp"].ToString()); dp.ExplorationRange = float.Parse(r["exploration_range"].ToString()); dp.BaseAssetID = int.Parse(r["base_asset_id"].ToString()); AdobeColors.HSL hslColor = new AdobeColors.HSL(); hslColor.H = float.Parse(r["h"].ToString()); hslColor.S = float.Parse(r["s"].ToString()); hslColor.L = float.Parse(r["v"].ToString()); Color newColor = AdobeColors.HSL_to_RGB(hslColor); dp.Color = newColor; dp.Type = oType; dp.Scale = float.Parse(r["scale"].ToString());; dp.PositionX = float.Parse(r["position_x"].ToString()); dp.PositionY = float.Parse(r["position_y"].ToString()); dp.PositionZ = float.Parse(r["position_z"].ToString());; double[] quat1 = new double[4]; quat1[0] = double.Parse(r["orientation_z"].ToString()); quat1[1] = double.Parse(r["orientation_u"].ToString()); quat1[2] = double.Parse(r["orientation_v"].ToString()); quat1[3] = double.Parse(r["orientation_w"].ToString()); QuaternionCalc qc1 = new QuaternionCalc(); double[] ang1 = qc1.QuatToAngle(quat1); if (ang1[0] == double.NaN) { ang1[0] = 0; } if (ang1[1] == double.NaN) { ang1[1] = 0; } if (ang1[2] == double.NaN) { ang1[2] = 0; } dp.Orientation_Yaw = Math.Round(ang1[0], 0); dp.Orientation_Pitch = Math.Round(ang1[1], 0); dp.Orientation_Roll = Math.Round(ang1[2], 0); dp.Name = r["name"].ToString(); dp.AppearsInRadar = (Boolean)r["appears_in_radar"]; dp.RadarRange = float.Parse(r["radar_range"].ToString()); dp.Destination = int.Parse(r["gate_to"].ToString()); dp.SoundEffect = int.Parse(r["sound_effect_id"].ToString()); dp.SoundEffectRange = float.Parse(r["sound_effect_range"].ToString()); //Stargate Specific Props dp.IsClassSpecific = (Boolean)r["classSpecific"]; //TODO: Get Faction Name from ID; String factionName = mainFrm.factions.findNameByID(int.Parse(r["faction_id"].ToString())); dp.FactionID = factionName; }
private void setupData(DataRow r) { int objectType = int.Parse(r["type"].ToString()); String oType = ""; switch (objectType) { case 0: oType = "Mobs"; break; case 3: oType = "Planets"; break; case 11: oType = "Stargates"; break; case 12: oType = "Starbases"; break; case 37: oType = "Decorations"; break; case 38: oType = "Harvestables"; break; } dp = new PlanetProps(); //Base Props dp.SectorID = int.Parse(r["sector_id"].ToString()); dp.NavType = r["nav_type"].ToString(); dp.Signature = float.Parse(r["signature"].ToString()); dp.IsHuge = (Boolean)r["is_huge"]; dp.BaseXP = int.Parse(r["base_xp"].ToString()); dp.ExplorationRange = float.Parse(r["exploration_range"].ToString()); dp.BaseAssetID = int.Parse(r["base_asset_id"].ToString()); AdobeColors.HSL hslColor = new AdobeColors.HSL(); hslColor.H = float.Parse(r["h"].ToString()); hslColor.S = float.Parse(r["s"].ToString()); hslColor.L = float.Parse(r["v"].ToString()); Color newColor = AdobeColors.HSL_to_RGB(hslColor); dp.Color = newColor; dp.Type = oType; dp.Scale = float.Parse(r["scale"].ToString());; dp.PositionX = float.Parse(r["position_x"].ToString()); dp.PositionY = float.Parse(r["position_y"].ToString()); dp.PositionZ = float.Parse(r["position_z"].ToString());; double[] quat1 = new double[4]; quat1[0] = double.Parse(r["orientation_z"].ToString()); quat1[1] = double.Parse(r["orientation_u"].ToString()); quat1[2] = double.Parse(r["orientation_v"].ToString()); quat1[3] = double.Parse(r["orientation_w"].ToString()); QuaternionCalc qc1 = new QuaternionCalc(); double[] ang1 = qc1.QuatToAngle(quat1); if (ang1[0] == double.NaN) { ang1[0] = 0; } if (ang1[1] == double.NaN) { ang1[1] = 0; } if (ang1[2] == double.NaN) { ang1[2] = 0; } dp.Orientation_Yaw = Math.Round(ang1[0], 0); dp.Orientation_Pitch = Math.Round(ang1[1], 0); dp.Orientation_Roll = Math.Round(ang1[2], 0); dp.Name = r["name"].ToString(); dp.AppearsInRadar = (Boolean)r["appears_in_radar"]; dp.RadarRange = float.Parse(r["radar_range"].ToString()); dp.Destination = int.Parse(r["gate_to"].ToString()); dp.SoundEffect = int.Parse(r["sound_effect_id"].ToString()); dp.SoundEffectRange = float.Parse(r["sound_effect_range"].ToString()); try { //Planet Props dp.OrbitID = int.Parse(r["orbit_id"].ToString()); dp.OrbitDist = float.Parse(r["orbit_dist"].ToString()); dp.OrbitAngle = float.Parse(r["orbit_angle"].ToString()); dp.OrbitRate = float.Parse(r["orbit_rate"].ToString()); dp.RotateAngle = float.Parse(r["rotate_angle"].ToString()); dp.RotateRate = float.Parse(r["rotate_rate"].ToString()); dp.TiltAngle = float.Parse(r["tilt_angle"].ToString()); dp.IsLandable = bool.Parse(r["is_landable"].ToString()); } catch (Exception) { dp.OrbitID = 0; dp.OrbitDist = 0; dp.OrbitAngle = 0; dp.OrbitRate = 0; dp.RotateAngle = 0; dp.RotateRate = 0; dp.TiltAngle = 0; dp.IsLandable = false; } }
private void setupData(DataRow r) { int objectType = int.Parse(r["type"].ToString()); String oType = ""; switch (objectType) { case 0: oType = "Mobs"; break; case 3: oType = "Planets"; break; case 11: oType = "Stargates"; break; case 12: oType = "Starbases"; break; case 37: oType = "Decorations"; break; case 38: oType = "Harvestables"; break; } dp = new MobProps(); dp.SectorID = int.Parse(r["sector_id"].ToString()); dp.NavType = r["nav_type"].ToString(); dp.Signature = float.Parse(r["signature"].ToString()); dp.IsHuge = (Boolean)r["is_huge"]; dp.BaseXP = int.Parse(r["base_xp"].ToString()); dp.ExplorationRange = float.Parse(r["exploration_range"].ToString()); dp.BaseAssetID = int.Parse(r["base_asset_id"].ToString()); AdobeColors.HSL hslColor = new AdobeColors.HSL(); hslColor.H = float.Parse(r["h"].ToString()); hslColor.S = float.Parse(r["s"].ToString()); hslColor.L = float.Parse(r["v"].ToString()); Color newColor = AdobeColors.HSL_to_RGB(hslColor); dp.Color = newColor; dp.Type = oType; dp.Scale = float.Parse(r["scale"].ToString());; dp.PositionX = float.Parse(r["position_x"].ToString()); dp.PositionY = float.Parse(r["position_y"].ToString()); dp.PositionZ = float.Parse(r["position_z"].ToString());; double[] quat1 = new double[4]; quat1[0] = double.Parse(r["orientation_z"].ToString()); quat1[1] = double.Parse(r["orientation_u"].ToString()); quat1[2] = double.Parse(r["orientation_v"].ToString()); quat1[3] = double.Parse(r["orientation_w"].ToString()); QuaternionCalc qc1 = new QuaternionCalc(); double[] ang1 = qc1.QuatToAngle(quat1); if (ang1[0] == double.NaN) { ang1[0] = 0; } if (ang1[1] == double.NaN) { ang1[1] = 0; } if (ang1[2] == double.NaN) { ang1[2] = 0; } dp.Orientation_Yaw = Math.Round(ang1[0], 0); dp.Orientation_Pitch = Math.Round(ang1[1], 0); dp.Orientation_Roll = Math.Round(ang1[2], 0); dp.Name = r["name"].ToString(); dp.AppearsInRadar = (Boolean)r["appears_in_radar"]; dp.RadarRange = float.Parse(r["radar_range"].ToString()); dp.Destination = int.Parse(r["gate_to"].ToString()); dp.SoundEffect = int.Parse(r["sound_effect_id"].ToString()); dp.SoundEffectRange = float.Parse(r["sound_effect_range"].ToString()); dp.SpawnGroup = "<Collection...>"; dp.Count = int.Parse(r["mob_count"].ToString()); dp.SpawnRadius = float.Parse(r["mob_spawn_radius"].ToString()); dp.RespawnTime = float.Parse(r["respawn_time"].ToString()); dp.DelayedSpawn = (Boolean)r["delayed_spawn"]; }
private void setupData(DataRow r) { int objectType = int.Parse(r["type"].ToString()); String oType = ""; switch (objectType) { case 0: oType = "Mobs"; break; case 3: oType = "Planets"; break; case 11: oType = "Stargates"; break; case 12: oType = "Starbases"; break; case 37: oType = "Decorations"; break; case 38: oType = "Harvestables"; break; } dp = new HarvestableProps(); //Base Props dp.SectorID = int.Parse(r["sector_id"].ToString()); dp.NavType = r["nav_type"].ToString(); dp.Signature = float.Parse(r["signature"].ToString()); dp.IsHuge = (Boolean)r["is_huge"]; dp.BaseXP = int.Parse(r["base_xp"].ToString()); dp.ExplorationRange = float.Parse(r["exploration_range"].ToString()); dp.BaseAssetID = int.Parse(r["base_asset_id"].ToString()); AdobeColors.HSL hslColor = new AdobeColors.HSL(); hslColor.H = float.Parse(r["h"].ToString()); hslColor.S = float.Parse(r["s"].ToString()); hslColor.L = float.Parse(r["v"].ToString()); Color newColor = AdobeColors.HSL_to_RGB(hslColor); dp.Color = newColor; dp.Type = oType; dp.Scale = float.Parse(r["scale"].ToString());; dp.PositionX = float.Parse(r["position_x"].ToString()); dp.PositionY = float.Parse(r["position_y"].ToString()); dp.PositionZ = float.Parse(r["position_z"].ToString());; double[] quat1 = new double[4]; quat1[0] = double.Parse(r["orientation_z"].ToString()); quat1[1] = double.Parse(r["orientation_u"].ToString()); quat1[2] = double.Parse(r["orientation_v"].ToString()); quat1[3] = double.Parse(r["orientation_w"].ToString()); QuaternionCalc qc1 = new QuaternionCalc(); double[] ang1 = qc1.QuatToAngle(quat1); if (ang1[0] == double.NaN) { ang1[0] = 0; } if (ang1[1] == double.NaN) { ang1[1] = 0; } if (ang1[2] == double.NaN) { ang1[2] = 0; } dp.Orientation_Yaw = Math.Round(ang1[0], 0); dp.Orientation_Pitch = Math.Round(ang1[1], 0); dp.Orientation_Roll = Math.Round(ang1[2], 0); dp.Name = r["name"].ToString(); dp.AppearsInRadar = (Boolean)r["appears_in_radar"]; dp.RadarRange = float.Parse(r["radar_range"].ToString()); dp.Destination = int.Parse(r["gate_to"].ToString()); dp.SoundEffect = int.Parse(r["sound_effect_id"].ToString()); dp.SoundEffectRange = float.Parse(r["sound_effect_range"].ToString()); //Harvestable Props try { dp.Level = r["level"].ToString(); dp.ResType = "<Collection...>"; dp.ResCount = int.Parse(r["res_count"].ToString()); dp.MobSpawnRadius = float.Parse(r["spawn_radius"].ToString()); dp.PopRockChance = int.Parse(r["pop_rock_chance"].ToString()); dp.SpawnGroup = "<Collection...>"; dp.MaxFieldRadius = float.Parse(r["max_field_radius"].ToString()); String fieldName = ""; switch (int.Parse(r["field"].ToString())) { case 0: fieldName = "Random"; break; case 1: fieldName = "Ring"; break; case 2: fieldName = "Donut"; break; case 3: fieldName = "Cylinder"; break; case 4: fieldName = "Sphere"; break; case 5: fieldName = "Gas Cloud Clump"; break; } dp.Field = fieldName; } catch (Exception) { dp.Level = "1"; dp.Field = "Single"; dp.ResCount = 0; dp.MaxFieldRadius = 0; dp.MobSpawnRadius = 0; dp.PopRockChance = 0; dp.SpawnGroup = "<Collection...>"; } }