public UnitNormalEditor() { InitializeComponent(); FilePath = null; frmAttacks = new Attacks(); frmDetails = new DetailsEditor(); frmUnitSizeEditor = new UnitSizeEditor(); DicRequirement = BaseSkillRequirement.LoadAllRequirements(); DicEffect = BaseEffect.LoadAllEffects(); txtName.Text = ""; txtPrice.Text = "0"; txtDescription.Text = ""; txtBaseHP.Text = "0"; txtBaseEN.Text = "0"; txtBaseArmor.Text = "0"; txtBaseMobility.Text = "0"; txtBaseMovement.Text = "0"; txtPartsSlots.Value = 1; lstPilots.Items.Clear(); lstAnimations.Items.Add(new ListViewItem("Default")); lstAnimations.Items.Add(new ListViewItem("Hit")); lstAnimations.Items.Add(new ListViewItem("Hit To Default")); lstAnimations.Items.Add(new ListViewItem("Move Foward")); lstAnimations.Items.Add(new ListViewItem("Move Foward To Default")); lstAnimations.Items.Add(new ListViewItem("Move Backward")); lstAnimations.Items.Add(new ListViewItem("Move Backward To Default")); lstAnimations.Items.Add(new ListViewItem("Destroyed")); lstAnimations.Items.Add(new ListViewItem("Shield")); lstAnimations.Items.Add(new ListViewItem("Shield To Default")); lstAnimations.Items.Add(new ListViewItem("Parry Start")); lstAnimations.Items.Add(new ListViewItem("Parry End")); lstAnimations.Items.Add(new ListViewItem("Shoot Down Firing")); lstAnimations.Items.Add(new ListViewItem("Shoot Down Shot")); }
private void LoadEffects() { foreach (KeyValuePair <string, BaseEffect> ActiveEffect in BaseEffect.LoadFromAssemblyFiles(Directory.GetFiles("Effects", "*.dll"), typeof(SkillEffect), new UnitEffectParams(GlobalBattleContext, GlobalQuickLoadContext))) { DicEffect.Add(ActiveEffect.Key, ActiveEffect.Value); } foreach (KeyValuePair <string, BaseEffect> ActiveEffect in BaseEffect.LoadFromAssemblyFiles(Directory.GetFiles("Effects/Battle Map", "*.dll"), typeof(SkillEffect), new UnitEffectParams(GlobalBattleContext, GlobalQuickLoadContext))) { DicEffect.Add(ActiveEffect.Key, ActiveEffect.Value); } List <Assembly> ListAssembly = RoslynWrapper.GetCompiledAssembliesFromFolder("Effects", "*.csx", SearchOption.TopDirectoryOnly); foreach (Assembly ActiveAssembly in ListAssembly) { foreach (KeyValuePair <string, BaseEffect> ActiveEffect in BaseEffect.LoadFromAssembly(ActiveAssembly, typeof(SkillEffect), new UnitEffectParams(GlobalBattleContext, GlobalQuickLoadContext))) { DicEffect.Add(ActiveEffect.Key, ActiveEffect.Value); } } ListAssembly = RoslynWrapper.GetCompiledAssembliesFromFolder("Effects/Battle Map", "*.csx", SearchOption.TopDirectoryOnly); foreach (Assembly ActiveAssembly in ListAssembly) { foreach (KeyValuePair <string, BaseEffect> ActiveEffect in BaseEffect.LoadFromAssembly(ActiveAssembly, typeof(SkillEffect), new UnitEffectParams(GlobalBattleContext, GlobalQuickLoadContext))) { DicEffect.Add(ActiveEffect.Key, ActiveEffect.Value); } } foreach (KeyValuePair <string, BaseEffect> ActiveEffect in BaseEffect.LoadAllEffects()) { if (!DicEffect.ContainsKey(ActiveEffect.Key)) { DicEffect.Add(ActiveEffect.Key, ActiveEffect.Value); } } }
public RelationshipEditor(BaseAutomaticSkill[] ArrayRelationshipBonus) { InitializeComponent(); AllowEvents = false; DicRequirement = BaseSkillRequirement.LoadAllRequirements(); DicEffect = BaseEffect.LoadAllEffects(); cboRequirementType.Items.AddRange(DicRequirement.Values.OrderBy(x => x.SkillRequirementName).ToArray()); ListRelationshipSkill = new List <BaseAutomaticSkill>(); ListRelationshipSkillOriginal = new List <BaseAutomaticSkill>(); foreach (BaseAutomaticSkill ActiveSkill in ArrayRelationshipBonus) { ListRelationshipSkill.Add(ActiveSkill); ListRelationshipSkillOriginal.Add(ActiveSkill); for (int L = 0; L < ActiveSkill.ListSkillLevel.Count; ++L) { lstCharacters.Items.Add("Character " + (lstCharacters.Items.Count + 1)); } } AllowEvents = true; }
public void LoadUnitsLoadout() { Unit.LoadAllUnits(); FileStream FS = new FileStream("Content/New game units loadout.txt", FileMode.Open, FileAccess.ReadWrite); StreamReader SR = new StreamReader(FS); Dictionary <string, Unit> DicUnitType = Unit.LoadAllUnits(); Dictionary <string, BaseSkillRequirement> DicRequirement = BaseSkillRequirement.LoadAllRequirements(); Dictionary <string, BaseEffect> DicEffect = BaseEffect.LoadAllEffects(); //Read everything while (!SR.EndOfStream) { string UnitName = SR.ReadLine(); string[] UnitInfo = UnitName.Split(new[] { "\\", "/" }, StringSplitOptions.None); Unit _SpawnUnit = Unit.FromType(UnitInfo[0], UnitName.Remove(0, UnitInfo[0].Length + 1), GameScreen.ContentFallback, DicUnitType, DicRequirement, DicEffect); TeamUnits.ListAll.Add(_SpawnUnit); } FS.Close(); }
public override void Load() { Trace.Listeners.Add(new TextWriterTraceListener("ClientError.log", "myListener")); PlayerManager.DicUnitType = Unit.LoadAllUnits(); PlayerManager.DicRequirement = BaseSkillRequirement.LoadAllRequirements(); PlayerManager.DicEffect = BaseEffect.LoadAllEffects(); PlayerManager.DicAutomaticSkillTarget = AutomaticSkillTargetType.LoadAllTargetTypes(); PlayerManager.DicManualSkillTarget = ManualSkillTarget.LoadAllTargetTypes(); fntArial12 = Content.Load<SpriteFont>("Fonts/Arial12"); ChatInput = new TextInput(fntArial12, sprPixel, sprPixel, new Vector2(68, 518), new Vector2(470, 20), SendMessage); sndBGM = new FMODSound(FMODSystem, "Content/Triple Thunder/Menus/Music/Channel.mp3"); sndBGM.SetLoop(true); sndBGM.PlayAsBGM(); sndButtonOver = new FMODSound(FMODSystem, "Content/Triple Thunder/Menus/SFX/Button Over.wav"); sndButtonClick = new FMODSound(FMODSystem, "Content/Triple Thunder/Menus/SFX/Button Click.wav"); sprBackground = Content.Load<Texture2D>("Triple Thunder/Menus/Channel/Background"); sprLicenseAll = Content.Load<Texture2D>("Triple Thunder/Menus/Channel/License All"); sprTitleBattle = Content.Load<Texture2D>("Triple Thunder/Menus/Channel/Title Battle"); LocalPlayerSelectionButton = new BoxButton(new Rectangle(400, 8, 120, 45), fntArial12, "Local Players\r\nManagement", OnButtonOver, SelectLocalPlayers); QuickStartButton = new BoxButton(new Rectangle(47, 70, 100, 45), fntArial12, "Quick Start", OnButtonOver, null); CreateARoomButton = new BoxButton(new Rectangle(150, 70, 100, 45), fntArial12, "Create\n\ra Room", OnButtonOver, CreateARoom); WaitingRoomOnlyButton = new InteractiveButton(Content, "Triple Thunder/Menus/Channel/Waiting Room Only", new Vector2(447, 85), OnButtonOver, null); InfoButton = new BoxButton(new Rectangle(572, 40, 100, 35), fntArial12, "Info", OnButtonOver, null); RankingButton = new BoxButton(new Rectangle(682, 40, 100, 35), fntArial12, "Ranking", OnButtonOver, null); OptionsButton = new BoxButton(new Rectangle(572, 74, 100, 35), fntArial12, "Options", OnButtonOver, null); HelpButton = new BoxButton(new Rectangle(682, 74, 100, 35), fntArial12, "Help", OnButtonOver, null); ShowAllPlayersFilter = new BoxButton(new Rectangle(572, 130, 60, 25), fntArial12, "All", OnButtonOver, ShowAllPlayers); ShowFriendsFilter = new BoxButton(new Rectangle(572 + 62, 130, 60, 25), fntArial12, "Friends", OnButtonOver, ShowFriends); ShowGuildsFilter = new BoxButton(new Rectangle(572 + 62 + 62, 130, 60, 25), fntArial12, "Guild", OnButtonOver, ShowGuild); InventoryButton = new BoxButton(new Rectangle(572, 514, 100, 45), fntArial12, "Inventory", OnButtonOver, OpenInventory); ShopButton = new BoxButton(new Rectangle(682, 514, 100, 45), fntArial12, "Shop", OnButtonOver, OpenShop); ShowAllPlayersFilter.CanBeChecked = true; ShowFriendsFilter.CanBeChecked = true; ShowGuildsFilter.CanBeChecked = true; ShowAllPlayersFilter.Select(); ArrayMenuButton = new IUIElement[] { LocalPlayerSelectionButton, CreateARoomButton, QuickStartButton, InfoButton, RankingButton, OptionsButton, HelpButton, ShowAllPlayersFilter, ShowFriendsFilter, ShowGuildsFilter, ShopButton, InventoryButton, }; if (OnlineGameClient != null) { InitOnlineGameClient(); InitOnlineCommunicationClient(); } else { BattleMapPlayer NewPlayer = new BattleMapPlayer(PlayerManager.OnlinePlayerID, "Player " + (PlayerManager.ListLocalPlayer.Count + 1), BattleMapPlayer.PlayerTypes.Online, false, 0, true, Color.Blue); PlayerManager.ListLocalPlayer.Add(NewPlayer); PlayerManager.ListLocalPlayer[0].LoadLocally(GameScreen.ContentFallback); } }
public static void LoadSystemLists() { Dictionary <string, BaseSkillRequirement> DicRequirement = BaseSkillRequirement.LoadAllRequirements(); Dictionary <string, BaseEffect> DicEffect = BaseEffect.LoadAllEffects(); Dictionary <string, AutomaticSkillTargetType> DicAutomaticSkillTarget = AutomaticSkillTargetType.LoadAllTargetTypes(); Dictionary <string, ManualSkillTarget> DicManualSkillTarget = ManualSkillTarget.LoadAllTargetTypes(); #region Parts if (File.Exists("Content/Parts List.txt")) { StreamReader SR = new StreamReader("Content/Parts List.txt"); while (!SR.EndOfStream) { string Line = SR.ReadLine(); string[] PartByType = Line.Split('/'); if (PartByType[0] == "Standard Parts") { ListPart.Add(Line, new UnitStandardPart("Content/Units/" + Line + ".pep", DicRequirement, DicEffect, DicAutomaticSkillTarget)); } else if (PartByType[0] == "Consumable Parts") { ListPart.Add(Line, new UnitConsumablePart("Content/Units/" + Line + ".pep", DicRequirement, DicEffect, DicAutomaticSkillTarget, DicManualSkillTarget)); } } SR.Close(); } else { string[] Files = Directory.GetFiles("Content/Units/Standard Parts", "*.pep", SearchOption.AllDirectories); foreach (string File in Files) { ListPart.Add(File, new UnitStandardPart(File, DicRequirement, DicEffect, DicAutomaticSkillTarget)); } Files = Directory.GetFiles("Content/Units/Consumable Parts", "*.pep", SearchOption.AllDirectories); foreach (var File in Files) { ListPart.Add(File, new UnitConsumablePart(File, DicRequirement, DicEffect, DicAutomaticSkillTarget, DicManualSkillTarget)); } } #endregion #region Buyable Skills if (File.Exists("Content/Buyable Skills List.txt")) { StreamReader SR = new StreamReader("Content/Buyable Skills List.txt"); while (!SR.EndOfStream) { string Line = SR.ReadLine(); ListBuyableSkill.Add(new BaseAutomaticSkill("Content/Characters/Skills/" + Line + ".pecs", Line, DicRequirement, DicEffect, DicAutomaticSkillTarget)); } SR.Close(); } else { string[] Files = Directory.GetFiles("Content/Characters/Skills", "*.pecs", SearchOption.AllDirectories); foreach (string File in Files) { string RelativePath = File; ListBuyableSkill.Add(new BaseAutomaticSkill(File, RelativePath, DicRequirement, DicEffect, DicAutomaticSkillTarget)); } } #endregion #region Spirits if (File.Exists("Content/Spirits List.txt")) { StreamReader SR = new StreamReader("Content/Spirits List.txt"); while (!SR.EndOfStream) { string Line = SR.ReadLine(); ListSpirit.Add(new ManualSkill("Content/Characters/Spirits/" + Line + ".pecs", DicRequirement, DicEffect, DicAutomaticSkillTarget, DicManualSkillTarget)); } SR.Close(); } else { string[] Files = Directory.GetFiles("Content/Characters/Spirits", "*.pecs", SearchOption.AllDirectories); foreach (string File in Files) { ListSpirit.Add(new ManualSkill(File, DicRequirement, DicEffect, DicAutomaticSkillTarget, DicManualSkillTarget)); } } #endregion #region Skills if (File.Exists("Content/Skills List.txt")) { StreamReader SR = new StreamReader("Content/Skills List.txt"); while (!SR.EndOfStream) { string Line = SR.ReadLine(); ListBuyableSkill.Add(new BaseAutomaticSkill("Content/Characters/Skills/" + Line + ".pecs", Line, DicRequirement, DicEffect, DicAutomaticSkillTarget)); } SR.Close(); } else { string[] Files = Directory.GetFiles("Content/Characters/Skills", "*.pecs", SearchOption.AllDirectories); foreach (string File in Files) { string RelativePath = File; ListSkill.Add(new BaseAutomaticSkill(File, RelativePath, DicRequirement, DicEffect, DicAutomaticSkillTarget)); } } #endregion #region Abilities if (File.Exists("Content/Abilities List.txt")) { StreamReader SR = new StreamReader("Content/Abilities List.txt"); while (!SR.EndOfStream) { string Line = SR.ReadLine(); ListAbility.Add(new BaseAutomaticSkill("Content/Units/Abilities/" + Line + ".pecs", Line, DicRequirement, DicEffect, DicAutomaticSkillTarget)); } SR.Close(); } else { string[] Files = Directory.GetFiles("Content/Units/Abilities", "*.pecs", SearchOption.AllDirectories); foreach (string File in Files) { string RelativePath = File; ListAbility.Add(new BaseAutomaticSkill(File, RelativePath, DicRequirement, DicEffect, DicAutomaticSkillTarget)); } } #endregion }
public override void Update(GameTime gameTime) { EllapsedTime += gameTime.ElapsedGameTime.TotalSeconds; if (EllapsedTime >= 10) { int OldNumberOfGameScreen = ListGameScreen.Count; MultiplayerScreen Autoplay = new MultiplayerScreen(); Autoplay.Load(); Constants.ShowAnimation = false; DeathmatchMap NewMap = Autoplay.LoadAutoplay(); NewMap.ListGameScreen = ListGameScreen; NewMap.Load(); NewMap.Init(); NewMap.TogglePreview(true); //Remove any GameScreen created by the map so they don't show up immediately. List <GameScreen> ListGameScreenCreatedByMap = new List <GameScreen>(ListGameScreen.Count - OldNumberOfGameScreen); for (int S = ListGameScreen.Count - 1 - OldNumberOfGameScreen; S >= 0; --S) { ListGameScreenCreatedByMap.Add(ListGameScreen[S]); ListGameScreen.RemoveAt(S); } RemoveAllScreens(); ListGameScreen.Insert(0, NewMap); NewMap.Update(gameTime); for (int S = 0; S < ListGameScreenCreatedByMap.Count; ++S) { ListGameScreen.Insert(0, ListGameScreenCreatedByMap[S]); ListGameScreenCreatedByMap[S].Update(gameTime); } ListGameScreenCreatedByMap.Clear(); } if (InputHelper.InputUpPressed()) { EllapsedTime = 0; SelectedChoice--; sndSelection.Play(); if (SelectedChoice == -1) { SelectedChoice = 4; } } else if (InputHelper.InputDownPressed()) { EllapsedTime = 0; SelectedChoice++; sndSelection.Play(); if (SelectedChoice == 5) { SelectedChoice = 0; } } else if (InputHelper.InputConfirmPressed()) { switch ((MenuChoices)SelectedChoice) { case MenuChoices.NewGame: sndIntroSong.Stop(); sndConfirm.Play(); /* * * int OldNumberOfGameScreen = ListGameScreen.Count; * StreamReader BR = new StreamReader("Content/Map path.ini"); * DeathmatchMap NewMap = new DeathmatchMap(BR.ReadLine(), 0, new Dictionary<string, List<Core.Units.Squad>>()); * BR.Close(); * NewMap.ListGameScreen = ListGameScreen; * NewMap.PlayerRoster = new Roster(); * NewMap.PlayerRoster.LoadRoster(); * NewMap.Load(); * NewMap.Init(); * NewMap.TogglePreview(true); * * //Remove any GameScreen created by the map so they don't show up immediately. * List<GameScreen> ListGameScreenCreatedByMap = new List<GameScreen>(ListGameScreen.Count - OldNumberOfGameScreen); * for (int S = ListGameScreen.Count - 1 - OldNumberOfGameScreen; S >= 0; --S) * { * ListGameScreenCreatedByMap.Add(ListGameScreen[S]); * ListGameScreen.RemoveAt(S); * } * * RemoveAllScreens(); * ListGameScreen.Insert(0, NewMap); * NewMap.Update(gameTime); * * for (int S = 0; S < ListGameScreenCreatedByMap.Count; ++S) * { * ListGameScreen.Insert(0, ListGameScreenCreatedByMap[S]); * ListGameScreenCreatedByMap[S].Update(gameTime); * } * * ListGameScreenCreatedByMap.Clear();*/ PushScreen(new GameSelection()); break; case MenuChoices.QuickLoad: if (File.Exists("User Data/Saves/TempSave.sav")) { sndIntroSong.Stop(); sndConfirm.Play(); BattleMap QuickLoadMap = BattleMap.LoadTemporaryMap(ListGameScreen); QuickLoadMap.TogglePreview(true); ListGameScreen.Insert(0, QuickLoadMap); } else { sndDeny.Play(); } break; case MenuChoices.Encyclopedia: sndDeny.Play(); break; case MenuChoices.Option: PushScreen(new OptionMenu()); sndConfirm.Play(); break; case MenuChoices.LoadGame: if (File.Exists("User Data/Saves/SRWE Save.bin")) { sndIntroSong.Stop(); sndConfirm.Play(); Roster PlayerRoster = new Roster(); PlayerRoster.LoadRoster(); Dictionary <string, Unit> DicUnitType = Unit.LoadAllUnits(); Dictionary <string, BaseSkillRequirement> DicRequirement = BaseSkillRequirement.LoadAllRequirements(); Dictionary <string, BaseEffect> DicEffect = BaseEffect.LoadAllEffects(); Dictionary <string, AutomaticSkillTargetType> DicAutomaticSkillTarget = AutomaticSkillTargetType.LoadAllTargetTypes(); Dictionary <string, ManualSkillTarget> DicManualSkillTarget = ManualSkillTarget.LoadAllTargetTypes(); DataScreen.LoadProgression(PlayerRoster, DicUnitType, DicRequirement, DicEffect, DicAutomaticSkillTarget, DicManualSkillTarget); PushScreen(new NewIntermissionScreen(PlayerRoster)); } else { sndDeny.Play(); } break; } } }
static void Main(string[] args) { string[] Files = Directory.GetFiles("Mods", "*.dll"); for (int F = 0; F < Files.Length; F++) { Assembly ass = Assembly.LoadFile(Path.GetFullPath(Files[F])); //Get every classes in it. Type[] types = ass.GetTypes(); for (int t = 0; t < types.Length; t++) { //Look if the class inherit from Unit somewhere. Type ObjectType = types[t].BaseType; bool InstanceIsBaseObject = ObjectType == typeof(BattleMap); while (ObjectType != null && ObjectType != typeof(BattleMap)) { ObjectType = ObjectType.BaseType; if (ObjectType == null) { InstanceIsBaseObject = false; } } //If this class is from BaseEditor, load it. if (InstanceIsBaseObject) { BattleMap instance = Activator.CreateInstance(types[t]) as BattleMap; BattleMap.DicBattmeMapType.Add(instance.GetMapType(), instance); } } } PlayerManager.DicUnitType = Unit.LoadAllUnits(); PlayerManager.DicRequirement = BaseSkillRequirement.LoadAllRequirements(); PlayerManager.DicEffect = BaseEffect.LoadAllEffects(); PlayerManager.DicAutomaticSkillTarget = AutomaticSkillTargetType.LoadAllTargetTypes(); PlayerManager.DicManualSkillTarget = ManualSkillTarget.LoadAllTargetTypes(); Dictionary <string, OnlineScript> DicOnlineScripts = new Dictionary <string, OnlineScript>(); IniFile ConnectionInfo = IniFile.ReadFromFile("Connection Info.ini"); string ConnectionChain = ConnectionInfo.ReadField("Game Server Info", "Connection Chain"); string UserInformationChain = ConnectionInfo.ReadField("User Information Info", "Connection Chain"); GameMongoDBManager Databse = new GameMongoDBManager(); Databse.Init(ConnectionChain, UserInformationChain); GameServer OnlineServer = new GameServer(Databse, DicOnlineScripts); DicOnlineScripts.Add(AskLoginScriptServer.ScriptName, new AskLoginScriptServer(OnlineServer)); DicOnlineScripts.Add(BaseAskJoinRoomScriptServer.ScriptName, new AskJoinRoomScriptServer(OnlineServer)); DicOnlineScripts.Add(AskRoomListScriptServer.ScriptName, new AskRoomListScriptServer(OnlineServer)); DicOnlineScripts.Add(BaseCreateRoomScriptServer.ScriptName, new CreateRoomScriptServer(OnlineServer, BattleMapClientGroup.Template)); DicOnlineScripts.Add(TransferRoomScriptServer.ScriptName, new TransferRoomScriptServer(OnlineServer, BattleMapClientGroup.Template)); string PublicIP = ConnectionInfo.ReadField("Game Server Info", "Public IP"); int PublicPort = int.Parse(ConnectionInfo.ReadField("Game Server Info", "Public Port")); Trace.Listeners.Add(new TextWriterTraceListener("Game Server Error.log", "myListener")); OnlineServer.StartListening(PublicIP, PublicPort); Console.ReadKey(); OnlineServer.StopListening(); }
public void TestLoadAll() { BaseEffect.LoadAllEffects(); BaseSkillRequirement.LoadAllRequirements(); AutomaticSkillTargetType.LoadAllTargetTypes(); }