From 47678c34c4c6b736974dc60c3f8dbe83e5a21706 Mon Sep 17 00:00:00 2001 From: Regalis Date: Tue, 4 Aug 2015 21:32:57 +0300 Subject: [PATCH] automatically adding .gz to when saving a map, netlobbyscreen ui changes --- Subsurface/Content/Items/Tools/tools.xml | 4 +- Subsurface/Content/Items/Weapons/railgun.xml | 2 +- Subsurface/Properties/AssemblyInfo.cs | 4 +- Subsurface/Source/DebugConsole.cs | 8 +-- Subsurface/Source/GameSession/TraitorMode.cs | 2 +- Subsurface/Source/Networking/GameServer.cs | 5 ++ Subsurface/Source/Networking/NetworkMember.cs | 1 + Subsurface/Source/Screens/NetLobbyScreen.cs | 54 +++++++++--------- Subsurface_Solution.v12.suo | Bin 585216 -> 585216 bytes 9 files changed, 39 insertions(+), 41 deletions(-) diff --git a/Subsurface/Content/Items/Tools/tools.xml b/Subsurface/Content/Items/Tools/tools.xml index 1e6441e34..de8247a95 100644 --- a/Subsurface/Content/Items/Tools/tools.xml +++ b/Subsurface/Content/Items/Tools/tools.xml @@ -25,7 +25,7 @@ - + @@ -65,7 +65,7 @@ - + diff --git a/Subsurface/Content/Items/Weapons/railgun.xml b/Subsurface/Content/Items/Weapons/railgun.xml index 3431add15..fe9db5a6a 100644 --- a/Subsurface/Content/Items/Weapons/railgun.xml +++ b/Subsurface/Content/Items/Weapons/railgun.xml @@ -51,7 +51,7 @@ - + diff --git a/Subsurface/Properties/AssemblyInfo.cs b/Subsurface/Properties/AssemblyInfo.cs index 0f41eb25e..a9326b975 100644 --- a/Subsurface/Properties/AssemblyInfo.cs +++ b/Subsurface/Properties/AssemblyInfo.cs @@ -31,5 +31,5 @@ using System.Runtime.InteropServices; // You can specify all the values or you can default the Build and Revision Numbers // by using the '*' as shown below: // [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("0.1.0.0")] -[assembly: AssemblyFileVersion("0.1.0.0")] +[assembly: AssemblyVersion("0.1.1.0")] +[assembly: AssemblyFileVersion("0.1.1.0")] diff --git a/Subsurface/Source/DebugConsole.cs b/Subsurface/Source/DebugConsole.cs index d1541fa83..9eb9a94c1 100644 --- a/Subsurface/Source/DebugConsole.cs +++ b/Subsurface/Source/DebugConsole.cs @@ -252,19 +252,13 @@ namespace Subsurface break; case "savemap": if (commands.Length < 2) break; - Submarine.SaveCurrent("Content/SavedMaps/" + string.Join(" ", commands.Skip(1))); + Submarine.SaveCurrent("Content/SavedMaps/" + string.Join(" ", commands.Skip(1))+".gz"); NewMessage("map saved", Color.Green); break; case "loadmap": if (commands.Length < 2) break; Submarine.Load("Content/SavedMaps/" + string.Join(" ", commands.Skip(1))); break; - //case "savegame": - // SaveUtil.SaveGame(); - // break; - //case "loadgame": - // SaveUtil.LoadGame(SaveUtil.SaveFolder + "save"); - // break; case "messagebox": if (commands.Length < 3) break; new GUIMessageBox(commands[1], commands[2]); diff --git a/Subsurface/Source/GameSession/TraitorMode.cs b/Subsurface/Source/GameSession/TraitorMode.cs index b327a31cb..e81751bff 100644 --- a/Subsurface/Source/GameSession/TraitorMode.cs +++ b/Subsurface/Source/GameSession/TraitorMode.cs @@ -64,7 +64,7 @@ namespace Subsurface if (target.character.IsDead) { string endMessage = traitor.character.Info.Name + " was a traitor! "; - endMessage += (traitor.character.Info.Gender == Gender.Male) ? "his" : "her"; + endMessage += (traitor.character.Info.Gender == Gender.Male) ? "His" : "Her"; endMessage += " task was to assassinate " + target.character.Info.Name + ". The task was succesful."; End(endMessage); } diff --git a/Subsurface/Source/Networking/GameServer.cs b/Subsurface/Source/Networking/GameServer.cs index 331b465c0..bd7a3e794 100644 --- a/Subsurface/Source/Networking/GameServer.cs +++ b/Subsurface/Source/Networking/GameServer.cs @@ -29,6 +29,9 @@ namespace Subsurface.Networking config = new NetPeerConfiguration("subsurface"); + //config.SimulatedLoss = 0.2f; + //config.SimulatedMinimumLatency = 0.25f; + config.Port = port; config.EnableUPnP = true; @@ -531,6 +534,8 @@ namespace Subsurface.Networking public void NewTraitor(Client traitor, Client target) { + new GUIMessageBox("New traitor", traitor.name + " is the traitor and the target is " + target+"."); + NetOutgoingMessage msg = server.CreateMessage(); msg.Write((byte)PacketTypes.Traitor); msg.Write(target.name); diff --git a/Subsurface/Source/Networking/NetworkMember.cs b/Subsurface/Source/Networking/NetworkMember.cs index 188415b8c..1841557d4 100644 --- a/Subsurface/Source/Networking/NetworkMember.cs +++ b/Subsurface/Source/Networking/NetworkMember.cs @@ -97,6 +97,7 @@ namespace Subsurface.Networking crewFrame.Padding = new Vector4(10.0f, 10.0f, 10.0f, 10.0f); GUIListBox crewList = new GUIListBox(new Rectangle(0, 0, 200, 300), Color.White * 0.7f, GUI.style, crewFrame); + crewList.Padding = new Vector4(10.0f, 10.0f, 10.0f, 10.0f); crewList.OnSelected = SelectCharacter; foreach (Character character in crew) diff --git a/Subsurface/Source/Screens/NetLobbyScreen.cs b/Subsurface/Source/Screens/NetLobbyScreen.cs index 9625bd268..7324cebc4 100644 --- a/Subsurface/Source/Screens/NetLobbyScreen.cs +++ b/Subsurface/Source/Screens/NetLobbyScreen.cs @@ -23,7 +23,7 @@ namespace Subsurface private GUITextBox textBox, seedBox; - GUIFrame previewPlayer; + //GUIFrame previewPlayer; private GUIScrollBar durationBar; @@ -41,7 +41,6 @@ namespace Subsurface get { return subList.SelectedData as Submarine; } } - public GameModePreset SelectedMode { get { return modeList.SelectedData as GameModePreset; } @@ -113,13 +112,13 @@ namespace Subsurface //server info panel ------------------------------------------------------------ - infoFrame = new GUIFrame(new Rectangle(0, 0, (int)(panelRect.Width * 0.6f), (int)(panelRect.Height * 0.6f)), GUI.style, menu); + infoFrame = new GUIFrame(new Rectangle(0, 0, (int)(panelRect.Width * 0.7f), (int)(panelRect.Height * 0.6f)), GUI.style, menu); //infoFrame.Padding = GUI.style.smallPadding; //chatbox ---------------------------------------------------------------------- GUIFrame chatFrame = new GUIFrame( new Rectangle(0, (int)(panelRect.Height * 0.6f + 20), - (int)(panelRect.Width * 0.6f), + (int)(panelRect.Width * 0.7f), (int)(panelRect.Height * 0.4f - 20)), GUI.style, menu); @@ -131,15 +130,15 @@ namespace Subsurface //player info panel ------------------------------------------------------------ playerFrame = new GUIFrame( - new Rectangle((int)(panelRect.Width * 0.6f + 20), 0, - (int)(panelRect.Width * 0.4f - 20), (int)(panelRect.Height * 0.6f)), + new Rectangle((int)(panelRect.Width * 0.7f + 20), 0, + (int)(panelRect.Width * 0.3f - 20), (int)(panelRect.Height * 0.6f)), GUI.style, menu); //player list ------------------------------------------------------------------ GUIFrame playerListFrame = new GUIFrame( - new Rectangle((int)(panelRect.Width * 0.6f + 20), (int)(panelRect.Height * 0.6f + 20), - (int)(panelRect.Width * 0.4f - 20), (int)(panelRect.Height * 0.4f - 20)), + new Rectangle((int)(panelRect.Width * 0.7f + 20), (int)(panelRect.Height * 0.6f + 20), + (int)(panelRect.Width * 0.3f - 20), (int)(panelRect.Height * 0.4f - 20)), GUI.style, menu); playerList = new GUIListBox(new Rectangle(0,0,0,0), null, GUI.style, playerListFrame); @@ -266,50 +265,51 @@ namespace Subsurface if (GameModePreset.list.Count > 0) modeList.Select(0); } else if (playerFrame.children.Count==0) - { - int x = playerFrame.Rect.Width / 2; - + { playerFrame.ClearChildren(); - new GUITextBlock(new Rectangle(x, 0, 200, 30), "Name: ", GUI.style, playerFrame); + new GUITextBlock(new Rectangle(60, 0, 200, 30), "Name: ", GUI.style, playerFrame); - GUITextBox playerName = new GUITextBox(new Rectangle(x, 30, 0, 20), + GUITextBox playerName = new GUITextBox(new Rectangle(60, 30, 0, 20), Alignment.TopLeft, GUI.style, playerFrame); playerName.Text = Game1.Client.CharacterInfo.Name; playerName.OnEnter += ChangeCharacterName; - new GUITextBlock(new Rectangle(x, 70, 200, 30), "Gender: ", GUI.style, playerFrame); + new GUITextBlock(new Rectangle(0, 70, 200, 30), "Gender: ", GUI.style, playerFrame); - GUIButton maleButton = new GUIButton(new Rectangle(x, 100, 70, 20), "Male", + GUIButton maleButton = new GUIButton(new Rectangle(0, 100, 70, 20), "Male", Alignment.TopLeft, GUI.style,playerFrame); maleButton.UserData = Gender.Male; maleButton.OnClicked += SwitchGender; - GUIButton femaleButton = new GUIButton(new Rectangle(x+90, 100, 70, 20), "Female", + GUIButton femaleButton = new GUIButton(new Rectangle(90, 100, 70, 20), "Female", Alignment.TopLeft, GUI.style, playerFrame); femaleButton.UserData = Gender.Female; femaleButton.OnClicked += SwitchGender; - new GUITextBlock(new Rectangle(x, 150, 200, 30), "Job preferences:", GUI.style, playerFrame); + new GUITextBlock(new Rectangle(0, 150, 200, 30), "Job preferences:", GUI.style, playerFrame); - jobList = new GUIListBox(new Rectangle(x, 180, 150, 0), GUI.style, playerFrame); + jobList = new GUIListBox(new Rectangle(0, 180, 180, 0), GUI.style, playerFrame); + jobList.Enabled = false; foreach (JobPrefab job in JobPrefab.List) { - GUITextBlock jobText = new GUITextBlock(new Rectangle(0,0,0,20), job.Name, GUI.style, jobList); + GUITextBlock jobText = new GUITextBlock(new Rectangle(0,0,0,20), job.Name, GUI.style, Alignment.Left, Alignment.Right, jobList); jobText.UserData = job; - GUIButton upButton = new GUIButton(new Rectangle(jobText.Rect.Width - 45, 0, 20, 20), "u", GUI.style, jobText); + GUIButton upButton = new GUIButton(new Rectangle(0, 0, 20, 20), "u", GUI.style, jobText); upButton.UserData = -1; upButton.OnClicked += ChangeJobPreference; - GUIButton downButton = new GUIButton(new Rectangle(jobText.Rect.Width - 20, 0, 20, 20), "d", GUI.style, jobText); + GUIButton downButton = new GUIButton(new Rectangle(25, 0, 20, 20), "d", GUI.style, jobText); downButton.UserData = 1; downButton.OnClicked += ChangeJobPreference; } UpdateJobPreferences(jobList); + //UpdatePreviewPlayer(Game1.Client.CharacterInfo); + UpdatePreviewPlayer(Game1.Client.CharacterInfo); } @@ -407,7 +407,7 @@ namespace Subsurface menu.Draw(spriteBatch); - if (previewPlayer!=null) previewPlayer.Draw(spriteBatch); + //if (previewPlayer!=null) previewPlayer.Draw(spriteBatch); GUI.Draw((float)deltaTime, spriteBatch, null); @@ -455,13 +455,11 @@ namespace Subsurface private void UpdatePreviewPlayer(CharacterInfo characterInfo) { - previewPlayer = new GUIFrame( - new Rectangle(playerFrame.Rect.X + 20, playerFrame.Rect.Y + 20, 230, 300), - new Color(0.0f, 0.0f, 0.0f, 0.8f), GUI.style); - previewPlayer.Padding = new Vector4(5.0f, 5.0f, 5.0f, 5.0f); - characterInfo.CreateInfoFrame(previewPlayer); + GUIComponent existing = playerFrame.FindChild("playerhead"); + if (existing != null) playerFrame.RemoveChild(existing); - previewPlayer.UserData = characterInfo; + GUIImage image = new GUIImage(new Rectangle(0, 0, 30, 30), characterInfo.HeadSprite, Alignment.TopLeft, playerFrame); + image.UserData = "playerhead"; } private bool SwitchGender(GUIButton button, object obj) diff --git a/Subsurface_Solution.v12.suo b/Subsurface_Solution.v12.suo index 8f04bc37485a672900db44059409bf846d0b2b72..257584790bc71f8cebcf3d45441126b0c2f136a2 100644 GIT binary patch delta 3522 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 R69SN^G=IB!x62Z3)^)r{-e}*+`2f z?#7ZPkr0;K?$yLbrR9;@h9D>}&Ljfrh)LwbWQ;N0u}ssZekJ2%Xk#g2|Bs-9H6KoA zy0gDI=iPhmJ?Gqe&wbAqO7VqK8ZwCmvTjP`CX=ZJEF_cZ32++x9h?H4yMD@ zb{-Rtu#NP3$3Iv)Dd8{|s*>kC3uO`P?t<)ia)@g##u~Z1!|fbo69z8Bpve`ly-zIYWon0- z6Ee3KDXc@u8;xp=Qgt<)LL@&OvJ`a`6}LYg%-|l~bC^z|?N)1fNBLmW4B=Y5BKmg-EF5K3fkzlxEPzsGz~aGG#JA&#Truok&S*!oeokXb+w#t zBXIz+4By8ybhn$BB0a5ay7KVkkfgVjE&tpMN*EbS{?KFtdlY8gg7}PIP$5;Sdr1|C zof%U+I7q+wyhHl?EzSDxrqhH^ZyI4TA11mgHM3?hnO+ou^qE(3TinB6Bd;Wl%H{T- zkX;Tfv4-o9eS%5tw1sOR!5j{Q(_+rR!k8z~+zFlm10W8# zNz@O-gue=-4m_STiPnMm@O$u>16oPEGvEnJgc<|(>lg2&l-atw7#pWOOV{RNc)gNK z#8tV7Mg1k?IT$wAmxGb5k%MzQ2ZZ-7=mm!mj95I7`Bf?X0XEl_(sRTk<ibjQi^ zfdl)31?Q_yh1QlA*7wVTN{ZHt72ZbLOJvc`F{Wwc(#{Z*``2@)toRjA)APFNptaM- zULnV4FP!R_JJNUPEW2VD|v^UHt! z&aEdBqUF)K6eG8f;yj=1B9HbSF)b6mJ|KszI>=_r?i_QBzSPE7kt1j2%hqo#oblc4 zf$xObo7zfcPqTFam1yV4DSaxzjY`|e_Cp-hRac$*!bzuIX4RTg^;E`AL{ALL;J6qb zsW&I;iSg{i=*}_r8HIKA{b_B!^)XAFmd(P0Is8>e-1Njx(kiN-A9<_qxUXgY3r2$a zyE*(8+!nY>7O<1^f_d!Qa{v9bQno$HvK?o|4o~S#4@XX$_x8N0Rc#h|a|(;s<}=dP zGo{ggW_SpFK*sWUZ?B9SLdJ4z|uaGFW$Hc!3bqBg4Ay+}(0ht9pG>Llq%BU8o zD?kY_4vi)#B9>xBTtq7US`ej%D8 zlIK2!9xt9&pyH|_jgxCkzZ|**2hhI(as;vultMT9$4vT|pRtV2rM#Q0Y-8^q%QF4r zhe?K(ag}~1>3&+M=eMzL(snZzJZ$V+1-3xzWG>vH!t?R>q_>6*Dr<~AJo>RMLweV- zI&F|8MApH}Mz9VZ`%NNpBx#NjSRR^oqiM=S5KlusI-%D>E&&_Re=qm|w1axFYGmf3 zdT32x7_@=AVd)1U+=jdG{C()hAPp}~&<&Xl`RqiS@q97hPi^`)X`e8=*3TH#h=L>8 z(sxWzW!*hyRbMyCYUztYH%j@-LN_M<-$FM=P7d8jlIUL*%UwPfsB$DiUd z`-C-9&zjB$sBt~^$AbL{7V&Dw<~Mg%$~PX*uQ(kSai(ZS?RXKqScK{nzBCwy^H4Qq{VY3SVL~%o~7vOR-;ahKr1KLsr5~~P$d5T4J>+B!x{=SY!t=w zr^=y!az&5#@Q?WaqiT#euBU3EuBjTaB_e&^e^-i81z%SwhRZRNNxziJNzoqUO!zKf z^}fkNX6Z{dUdt}7D$6G?j_!5wI_hk*`AGNWa-XxY+pW8k@QGlilFMstJ!Bp~>Bb5= zv2=>e_mfS&QOM%-oG17Z(u#SQs+VO*Xt(nv<3aW3H=btev`qGtrHyQR4 z_W9S^8~(IP9Eh(rF}m%pofWOaU4L$_oK^9W49v&N;xA=9>5J#=T+P?uld;P9WGt0K k4{&!&R-R4Kj&P=D<=a-%FIQJ{pa3(l0IR;b+7?{