private static UnitSettings readUnitSettings(ReadBuffer rb) { UnitSettings us; us.used = rb.readByteArray(228); us.hp = rb.readIntArray(228); us.shield = rb.readShortArray(228); us.armor = rb.readByteArray(228); us.build_time = rb.readShortArray(228); us.mineral_cost = rb.readShortArray(228); us.gas_cost = rb.readShortArray(228); us.str_unit_name = rb.readShortArray(228); us.weapon_damage = rb.readShortArray(130); us.upgrade_bonus = rb.readShortArray(130); return(us); }
public static Settings loadFromFile(String fileName) { Settings s = new Settings(); try { byte[] bytes = File.ReadAllBytes(fileName); ReadBuffer rb = new ReadBuffer(bytes); s.settingsPath = fileName; s.inpuPath = rb.readString(); s.outputPath = rb.readString(); s.enableVisor = rb.readBool(); s.enableBarrier = rb.readBool(); s.EMPDamage = rb.readInt(); s.addLeaderboard = rb.readBool(); s.addTouchRevive = rb.readBool(); s.addSancColors = rb.readBool(); s.useDefaultGunfireSound = rb.readBool(); s.useDefaultVisorSound = rb.readBool(); s.useDefaultBackgroundSound = rb.readBool(); s.gunforeSoundPath = new SoundFile("STORAGE", rb.readString(), null, 0, false, false, false); s.visorSound = new SoundFile("STORAGE", rb.readString(), null, 0, false, false, false); s.backgroundSound = new SoundFile("STORAGE", rb.readString(), null, 0, false, false, false); s.addTimelock = rb.readBool(); s.timeLockMessage = rb.readString(); s.timeLockRangeFrom = rb.readString(); s.timeLockRangeTo = rb.readString(); try { s.adjustHPAndWeapons = rb.readBool(); s.muteUnits = rb.readBool(); s.preferredSettings = readUnitSettings(rb); s.ignoreArmors = rb.readByteArray(130); } catch (Exception) { s.adjustHPAndWeapons = s.enableBarrier; s.muteUnits = false; } try { s.mapName = rb.readString(); s.mapDescription = rb.readString(); s.mapObjectives = rb.readString(); s.useObjectives = rb.readBool(); } catch (Exception) { s.mapName = ""; s.mapDescription = ""; s.mapObjectives = ""; s.useObjectives = false; } } catch (Exception) { return(null); } return(s); }