source: 2016/koodauskerho/ChristianI/WIn11/FysiikkaPeli1/FysiikkaPeli1/FysiikkaPeli1/FysiikkaPeli1.cs @ 8404

Revision 8404, 6.1 KB checked in by sieerinn, 2 years ago (diff)
Line 
1using System;
2using System.Collections.Generic;
3using Jypeli;
4using Jypeli.Assets;
5using Jypeli.Controls;
6using Jypeli.Effects;
7using Jypeli.Widgets;
8
9public class FysiikkaPeli1 : PhysicsGame
10{
11    List<Widget> startMenu = new List<Widget>();
12
13    public override void Begin()
14    {
15       
16        Window.Fullscreen = true;
17        PhoneBackButton.Listen(ConfirmExit, "Lopeta peli");
18        Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta peli");
19       
20
21        StartMenu();
22    }
23    void StartMenu()
24    {
25        MultiSelectWindow startmenu = new MultiSelectWindow("Welcome to Windows 11.", "Login into Windows", "Shutdown", "Settings");
26        startmenu.AddItemHandler(0, logintowin);
27        startmenu.AddItemHandler(1, Exit);
28        startmenu.AddItemHandler(2, winsettings);
29        startmenu.DefaultCancel = -1;
30        Add(startmenu);
31       
32    }
33    void logintowin()
34    {
35        InputWindow login = new InputWindow("Input User Password:");
36        login.TextEntered += TarkistaSalasana;
37        Add(login);
38    }
39
40    private void TarkistaSalasana(InputWindow sender)
41    {
42       if (sender.InputBox.Text == "katt203x") 
43        {
44            WinDesktop();
45           
46        } else if (sender.InputBox.Text == " x")
47        {
48            WinDesktop();
49        }
50            else
51        {
52            Label wrongpass = new Label("Wrong Password.");
53            wrongpass.Y = Screen.Top - 100;
54            Add(wrongpass);
55            logintowin();
56        }
57    }
58
59   
60       
61   
62    void WinDesktop()
63    {
64        ClearGameObjects();
65        Label Taskbar = new Label(Screen.Width, 75);
66        Taskbar.Image = LoadImage("Taskbar");
67        Taskbar.Position = new Vector(0, Screen.BottomSafe + Taskbar.Height * 0.5);
68        Add(Taskbar);
69        PushButton startlbl = new PushButton(140, 75);
70        startlbl.Text = "Start";
71        startlbl.Pressed += MakeBar;
72        startlbl.Position = new Vector(Screen.Left + startlbl.Width * 0.5, Screen.Bottom + startlbl.Height * 0.5);
73        Add(startlbl);
74        Mouse.IsCursorVisible = true;
75        Image taustaKuva = LoadImage("Ti6qoP7");
76        Level.Background.Image = taustaKuva;
77        Keyboard.Listen(Key.F, ButtonState.Pressed, Assistant, "Assistant");
78       
79    }
80    void Assistant()
81    {
82        InputBox assistant = new InputBox(40);
83        assistant.Text = "Hello. ";
84        Add(assistant);
85        Keyboard.Listen(Key.Enter, ButtonState.Pressed, CheckA, "Check the URL", assistant);
86    }
87    void CheckA(InputBox assistant)
88    {
89        if (assistant.Text == "Test")
90        {
91            MessageDisplay.Add("Hi. This is Assistant test.");
92        } else if (assistant.Text == "Katie Smith") {
93            MessageDisplay.Add("Katie Smith is Mr. Smith's wife. He owns a website called ´www.kattysweb.com´. Mr. Smith is a app developer. ");
94        } else if {
95            MessageDisplay.Add("www.kattysweb.com is Katie Smith's website.");
96        } else
97        {
98            MessageDisplay.Add("Sorry. I did not find anything about your question.");
99        }
100    }
101        void WWWeb()
102    {
103        Window webwindow = new Window(800, 600);
104        webwindow.Image = LoadImage("webwindow");
105        webwindow.Position = new Vector(Screen.Left + webwindow.Width * 1.5, Screen.Bottom + webwindow.Height * 1.0);
106        Add(webwindow);
107        webwindow.IsModal = false;
108        Mouse.Listen(MouseButton.Right, ButtonState.Pressed,CloseWeb, "Close the Web window", webwindow);
109        InputBox url = new InputBox(30);
110        url.Text = "Write URL here...";
111        webwindow.Add(url);
112        Keyboard.Listen(Key.Enter, ButtonState.Pressed, CheckURL, "Check the URL", url);
113       
114    }
115    void CheckURL(InputBox url)
116    {
117     if (url.Text == "www.test.com")
118        {
119            MessageDisplay.Add("This is a test.");
120        } else if (url.Text == "www.kattysweb.com")
121        {
122            MessageDisplay.Add("Welcome to Kattysweb! Website by Katie Smith.");
123        } else
124        {
125                MessageDisplay.Add("Error. Website not found. Try another URL.");
126            }
127        }
128         
129
130    void CloseWeb(Window webwindow)
131    {
132        if (Mouse.IsCursorOn(webwindow))
133        {
134            webwindow.Close();
135        }
136       
137       
138    }
139    private void MakeBar()
140    {
141        if(startMenu.Count > 0)
142        {
143            foreach (Widget item in startMenu)
144            {
145                item.Destroy();
146            }
147            startMenu.Clear();
148            return;
149        }
150        double startY = 75;
151        Label bas = new Label(Screen.Width * 0.35, Screen.Height * 0.75);
152        bas.Color = Color.Red;
153        bas.Position = new Vector(Screen.Left + bas.Width * 0.5, Screen.Bottom + startY + bas.Height * 0.5);
154        Add(bas);
155        startMenu.Add(bas);
156
157        Tuple<String, Action>[] options =
158        {
159            new Tuple<String, Action>("web", WWWeb),
160            new Tuple<string, Action>("Ti6qoP7", ErrormsgNR),
161        };
162
163
164        for (int i = 0; i < options.Length; i++)
165        {
166            PushButton lab = new PushButton(bas.Width, startY);
167            lab.Position = new Vector( bas.X, Screen.Bottom + lab.Height * 0.5 + startY * (i+1));
168            lab.Image = LoadImage(options[i].Item1);
169            lab.Pressed += options[i].Item2;
170            Add(lab);
171            startMenu.Add(lab);
172        }
173
174
175    }
176    void ErrormsgNR()
177    {
178        MessageDisplay.Add("Error. Not ready yet.");
179    }
180    void HelloWorld()
181    {
182        MessageDisplay.Add("Hello world");
183    }
184
185    void easteregg1()
186    {
187        Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Activate EE");
188    }
189    void winsettings()
190    {
191        MultiSelectWindow settings1 = new MultiSelectWindow("Settings", "Password", "is", "0110101101100001011101000111010000110010001100000011001101111000");
192        Add(settings1);
193        settings1.AddItemHandler(0, StartMenu);
194        settings1.AddItemHandler(1, StartMenu);
195        settings1.AddItemHandler(2, StartMenu);
196        settings1.DefaultCancel = 0;
197    }
198}
Note: See TracBrowser for help on using the repository browser.