📄 game.cpp.html
字号:
353: wxButton<font color=#990000>*</font> guess_button <font color=#990000>=</font> <b><font color=#0000FF>new</font></b> <b><font color=#000000>wxButton</font></b><font color=#990000>(</font><b><font color=#0000FF>this</font></b><font color=#990000>,</font>
354: ID_GUESS<font color=#990000>,</font> <font color=#FF0000>"Guess"</font><font color=#990000>)</font><font color=#990000>;</font>
355:
356: wxBoxSizer<font color=#990000>*</font> bottom_sizer <font color=#990000>=</font> <b><font color=#0000FF>new</font></b> <b><font color=#000000>wxBoxSizer</font></b><font color=#990000>(</font>wxHORIZONTAL<font color=#990000>)</font><font color=#990000>;</font>
357: bottom_sizer<font color=#990000>-</font><font color=#990000>></font><b><font color=#000000>Add</font></b><font color=#990000>(</font><b><font color=#0000FF>new</font></b> <b><font color=#000000>wxStaticText</font></b><font color=#990000>(</font><b><font color=#0000FF>this</font></b><font color=#990000>,</font> <font color=#990000>-</font><font color=#993399>1</font><font color=#990000>,</font> <font color=#FF0000>"Hours"</font><font color=#990000>)</font><font color=#990000>)</font><font color=#990000>;</font>
358: bottom_sizer<font color=#990000>-</font><font color=#990000>></font><b><font color=#000000>Add</font></b><font color=#990000>(</font>hour_text<font color=#990000>)</font><font color=#990000>;</font>
359: bottom_sizer<font color=#990000>-</font><font color=#990000>></font><b><font color=#000000>Add</font></b><font color=#990000>(</font><b><font color=#0000FF>new</font></b> <b><font color=#000000>wxStaticText</font></b><font color=#990000>(</font><b><font color=#0000FF>this</font></b><font color=#990000>,</font> <font color=#990000>-</font><font color=#993399>1</font><font color=#990000>,</font> <font color=#FF0000>"Minutes"</font><font color=#990000>)</font><font color=#990000>)</font><font color=#990000>;</font>
360: bottom_sizer<font color=#990000>-</font><font color=#990000>></font><b><font color=#000000>Add</font></b><font color=#990000>(</font>minute_text<font color=#990000>)</font><font color=#990000>;</font>
361: bottom_sizer<font color=#990000>-</font><font color=#990000>></font><b><font color=#000000>Add</font></b><font color=#990000>(</font>guess_button<font color=#990000>)</font><font color=#990000>;</font>
362:
363: wxBoxSizer<font color=#990000>*</font> frame_sizer <font color=#990000>=</font> <b><font color=#0000FF>new</font></b> <b><font color=#000000>wxBoxSizer</font></b><font color=#990000>(</font>wxVERTICAL<font color=#990000>)</font><font color=#990000>;</font>
364: frame_sizer<font color=#990000>-</font><font color=#990000>></font><b><font color=#000000>Add</font></b><font color=#990000>(</font>window<font color=#990000>,</font> <font color=#993399>1</font><font color=#990000>,</font> wxGROW<font color=#990000>)</font><font color=#990000>;</font>
365: frame_sizer<font color=#990000>-</font><font color=#990000>></font><b><font color=#000000>Add</font></b><font color=#990000>(</font>bottom_sizer<font color=#990000>,</font> <font color=#993399>0</font><font color=#990000>,</font> wxALIGN_CENTER<font color=#990000>)</font><font color=#990000>;</font>
366:
367: <b><font color=#000000>SetAutoLayout</font></b><font color=#990000>(</font><b><font color=#0000FF>true</font></b><font color=#990000>)</font><font color=#990000>;</font>
368: <b><font color=#000000>SetSizer</font></b><font color=#990000>(</font>frame_sizer<font color=#990000>)</font><font color=#990000>;</font>
369:
370: <b><font color=#000000>new_round</font></b><font color=#990000>(</font><font color=#990000>)</font><font color=#990000>;</font>
371: <font color=#FF0000>}</font>
372:
373: <font color=#009900>void</font> GameFrame<font color=#990000>:</font><font color=#990000>:</font><b><font color=#000000>OnGuess</font></b><font color=#990000>(</font>wxCommandEvent<font color=#990000>&</font> event<font color=#990000>)</font>
374: <font color=#FF0000>{</font>
375: tries<font color=#990000>+</font><font color=#990000>+</font><font color=#990000>;</font>
376: <font color=#009900>int</font> hours <font color=#990000>=</font> <b><font color=#000000>atoi</font></b><font color=#990000>(</font>hour_text<font color=#990000>-</font><font color=#990000>></font><b><font color=#000000>GetValue</font></b><font color=#990000>(</font><font color=#990000>)</font><font color=#990000>.</font><b><font color=#000000>c_str</font></b><font color=#990000>(</font><font color=#990000>)</font><font color=#990000>)</font><font color=#990000>;</font>
377: <font color=#009900>int</font> minutes <font color=#990000>=</font> <b><font color=#000000>atoi</font></b><font color=#990000>(</font>minute_text<font color=#990000>-</font><font color=#990000>></font><b><font color=#000000>GetValue</font></b><font color=#990000>(</font><font color=#990000>)</font><font color=#990000>.</font><b><font color=#000000>c_str</font></b><font color=#990000>(</font><font color=#990000>)</font><font color=#990000>)</font><font color=#990000>;</font>
378: <b><font color=#0000FF>if</font></b> <font color=#990000>(</font>hours <font color=#990000><</font> <font color=#993399>1</font> <font color=#990000>|</font><font color=#990000>|</font> hours <font color=#990000>></font> <font color=#993399>12</font><font color=#990000>)</font>
379: <font color=#FF0000>{</font>
380: wxMessageDialog<font color=#990000>*</font> dialog <font color=#990000>=</font> <b><font color=#0000FF>new</font></b> <b><font color=#000000>wxMessageDialog</font></b><font color=#990000>(</font><b><font color=#0000FF>this</font></b><font color=#990000>,</font>
381: <font color=#FF0000>"Hours must be between 1 and 12"</font><font color=#990000>)</font><font color=#990000>;</font>
382: dialog<font color=#990000>-</font><font color=#990000>></font><b><font color=#000000>ShowModal</font></b><font color=#990000>(</font><font color=#990000>)</font><font color=#990000>;</font>
383: dialog<font color=#990000>-</font><font color=#990000>></font><b><font color=#000000>Destroy</font></b><font color=#990000>(</font><font color=#990000>)</font><font color=#990000>;</font>
384: <b><font color=#0000FF>return</font></b><font color=#990000>;</font>
385: <font color=#FF0000>}</font>
386: <b><font color=#0000FF>if</font></b> <font color=#990000>(</font>minutes <font color=#990000><</font> <font color=#993399>0</font> <font color=#990000>|</font><font color=#990000>|</font> minutes <font color=#990000>></font> <font color=#993399>59</font><font color=#990000>)</font>
387: <font color=#FF0000>{</font>
388: wxMessageDialog<font color=#990000>*</font> dialog <font color=#990000>=</font> <b><font color=#0000FF>new</font></b> <b><font color=#000000>wxMessageDialog</font></b><font color=#990000>(</font><b><font color=#0000FF>this</font></b><font color=#990000>,</font>
389: <font color=#FF0000>"Hours must be between 1 and 12"</font><font color=#990000>)</font><font color=#990000>;</font>
390: dialog<font color=#990000>-</font><font color=#990000>></font><b><font color=#000000>ShowModal</font></b><font color=#990000>(</font><font color=#990000>)</font><font color=#990000>;</font>
391: dialog<font color=#990000>-</font><font color=#990000>></font><b><font color=#000000>Destroy</font></b><font color=#990000>(</font><font color=#990000>)</font><font color=#990000>;</font>
392: <b><font color=#0000FF>return</font></b><font color=#990000>;</font>
393: <font color=#FF0000>}</font>
394: <b><font color=#0000FF>if</font></b> <font color=#990000>(</font>current_hours <font color=#990000>=</font><font color=#990000>=</font> hours <font color=#990000>&</font><font color=#990000>&</font> current_minutes <font color=#990000>=</font><font color=#990000>=</font> minutes<font color=#990000>)</font>
395: <font color=#FF0000>{</font>
396: string text <font color=#990000>=</font> <font color=#FF0000>"Congratulations, "</font> <font color=#990000>+</font> player<font color=#990000>.</font><b><font color=#000000>get_name</font></b><font color=#990000>(</font><font color=#990000>)</font>
397: <font color=#990000>+</font> <font color=#FF0000>"! That is correct."</font><font color=#990000>;</font>
398: wxMessageDialog<font color=#990000>*</font> dialog <font color=#990000>=</font> <b><font color=#0000FF>new</font></b> <b><font color=#000000>wxMessageDialog</font></b><font color=#990000>(</font><b><font color=#0000FF>this</font></b><font color=#990000>,</font>
399: text<font color=#990000>.</font><b><font color=#000000>c_str</font></b><font color=#990000>(</font><font color=#990000>)</font><font color=#990000>)</font><font color=#990000>;</font>
400: dialog<font color=#990000>-</font><font color=#990000>></font><b><font color=#000000>ShowModal</font></b><font color=#990000>(</font><font color=#990000>)</font><font color=#990000>;</font>
401: dialog<font color=#990000>-</font><font color=#990000>></font><b><font color=#000000>Destroy</font></b><font color=#990000>(</font><font color=#990000>)</font><font color=#990000>;</font>
402: player<font color=#990000>.</font><b><font color=#000000>increment_score</font></b><font color=#990000>(</font><font color=#990000>)</font><font color=#990000>;</font>
403: <b><font color=#000000>new_round</font></b><font color=#990000>(</font><font color=#990000>)</font><font color=#990000>;</font>
404: <font color=#FF0000>}</font>
405: <b><font color=#0000FF>else</font></b>
406: <font color=#FF0000>{</font>
407: string text <font color=#990000>=</font> <font color=#FF0000>"Sorry, "</font> <font color=#990000>+</font> player<font color=#990000>.</font><b><font color=#000000>get_name</font></b><font color=#990000>(</font><font color=#990000>)</font>
408: <font color=#990000>+</font> <font color=#FF0000>"! That is not correct."</font><font color=#990000>;</font>
409: wxMessageDialog<font color=#990000>*</font> dialog <font color=#990000>=</font> <b><font color=#0000FF>new</font></b> <b><font color=#000000>wxMessageDialog</font></b><font color=#990000>(</font><b><font color=#0000FF>this</font></b><font color=#990000>,</font>
410: text<font color=#990000>.</font><b><font color=#000000>c_str</font></b><font color=#990000>(</font><font color=#990000>)</font><font color=#990000>)</font><font color=#990000>;</font>
411: dialog<font color=#990000>-</font><font color=#990000>></font><b><font color=#000000>ShowModal</font></b><font color=#990000>(</font><font color=#990000>)</font><font color=#990000>;</font>
412: dialog<font color=#990000>-</font><font color=#990000>></font><b><font color=#000000>Destroy</font></b><font color=#990000>(</font><font color=#990000>)</font><font color=#990000>;</font>
413: <b><font color=#0000FF>if</font></b> <font color=#990000>(</font>tries <font color=#990000>=</font><font color=#990000>=</font> <font color=#993399>2</font><font color=#990000>)</font> <b><font color=#000000>new_round</font></b><font color=#990000>(</font><font color=#990000>)</font><font color=#990000>;</font>
414: <font color=#FF0000>}</font>
415: <font color=#FF0000>}</font>
416:
417: <font color=#009900>void</font> GameFrame<font color=#990000>:</font><font color=#990000>:</font><b><font color=#000000>new_round</font></b><font color=#990000>(</font><font color=#990000>)</font>
418: <font color=#FF0000>{</font>
419: tries <font color=#990000>=</font> <font color=#993399>0</font><font color=#990000>;</font>
420: <font color=#009900>int</font> level <font color=#990000>=</font> player<font color=#990000>.</font><b><font color=#000000>get_level</font></b><font color=#990000>(</font><font color=#990000>)</font><font color=#990000>;</font>
421: <b><font color=#0000FF>if</font></b> <font color=#990000>(</font>level <font color=#990000>=</font><font color=#990000>=</font> <font color=#993399>1</font><font color=#990000>)</font> current_minutes <font color=#990000>=</font> <font color=#993399>0</font><font color=#990000>;</font>
422: <b><font color=#0000FF>else</font></b> <b><font color=#0000FF>if</font></b> <font color=#990000>(</font>level <font color=#990000>=</font><font color=#990000>=</font> <font color=#993399>2</font><font color=#990000>)</font> current_minutes <font color=#990000>=</font> <font color=#993399>15</font> <font color=#990000>*</font> <b><font color=#000000>rand_int</font></b><font color=#990000>(</font><font color=#993399>0</font><font color=#990000>,</font> <font color=#993399>3</font><font color=#990000>)</font><font color=#990000>;</font>
423: <b><font color=#0000FF>else</font></b> <b><font color=#0000FF>if</font></b> <font color=#990000>(</font>level <font color=#990000>=</font><font color=#990000>=</font> <font color=#993399>3</font><font color=#990000>)</font> current_minutes <font color=#990000>=</font> <font color=#993399>5</font> <font color=#990000>*</font> <b><font color=#000000>rand_int</font></b><font color=#990000>(</font><font color=#993399>0</font><font color=#990000>,</font> <font color=#993399>11</font><font color=#990000>)</font><font color=#990000>;</font>
424: <b><font color=#0000FF>else</font></b> current_minutes <font color=#990000>=</font> <b><font color=#000000>rand_int</font></b><font color=#990000>(</font><font color=#993399>0</font><font color=#990000>,</font> <font color=#993399>59</font><font color=#990000>)</font><font color=#990000>;</font>
425: current_hours <font color=#990000>=</font> <b><font color=#000000>rand_int</font></b><font color=#990000>(</font><font color=#993399>1</font><font color=#990000>,</font> <font color=#993399>12</font><font color=#990000>)</font><font color=#990000>;</font>
426: window<font color=#990000>-</font><font color=#990000>></font><b><font color=#000000>set_time</font></b><font color=#990000>(</font>current_hours<font color=#990000>,</font> current_minutes<font color=#990000>)</font><font color=#990000>;</font>
427: <font color=#FF0000>}</font>
428:
429: <font color=#009900>void</font> GameFrame<font color=#990000>:</font><font color=#990000>:</font><b><font color=#000000>OnPlayerName</font></b><font color=#990000>(</font>wxCommandEvent<font color=#990000>&</font> event<font color=#990000>)</font>
430: <font color=#FF0000>{</font>
431: wxTextEntryDialog<font color=#990000>*</font> dialog <font color=#990000>=</font> <b><font color=#0000FF>new</font></b> <b><font color=#000000>wxTextEntryDialog</font></b><font color=#990000>(</font><b><font color=#0000FF>this</font></b><font color=#990000>,</font>
432: <font color=#FF0000>"What is your name?"</font><font color=#990000>)</font><font color=#990000>;</font>
433: dialog<font color=#990000>-</font><font color=#990000>></font><b><font color=#000000>ShowModal</font></b><font color=#990000>(</font><font color=#990000>)</font><font color=#990000>;</font>
434: player<font color=#990000>.</font><b><font color=#000000>set_name</font></b><font color=#990000>(</font>dialog<font color=#990000>-</font><font color=#990000>></font><b><font color=#000000>GetValue</font></b><font color=#990000>(</font><font color=#990000>)</font><font color=#990000>.</font><b><font color=#000000>c_str</font></b><font color=#990000>(</font><font color=#990000>)</font><font color=#990000>)</font><font color=#990000>;</font>
435: dialog<font color=#990000>-</font><font color=#990000>></font><b><font color=#000000>Destroy</font></b><font color=#990000>(</font><font color=#990000>)</font><font color=#990000>;</font>
436: <font color=#FF0000>}</font>
437:
438: <font color=#009900>void</font> GameFrame<font color=#990000>:</font><font color=#990000>:</font><b><font color=#000000>OnPlayerLevel</font></b><font color=#990000>(</font>wxCommandEvent<font color=#990000>&</font> event<font color=#990000>)</font>
439: <font color=#FF0000>{</font>
440: wxTextEntryDialog<font color=#990000>*</font> dialog <font color=#990000>=</font> <b><font color=#0000FF>new</font></b> <b><font color=#000000>wxTextEntryDialog</font></b><font color=#990000>(</font><b><font color=#0000FF>this</font></b><font color=#990000>,</font>
441: <font color=#FF0000>"At what level do you want to play? (1-4)"</font><font color=#990000>)</font><font color=#990000>;</font>
442: dialog<font color=#990000>-</font><font color=#990000>></font><b><font color=#000000>ShowModal</font></b><font color=#990000>(</font><font color=#990000>)</font><font color=#990000>;</font>
443: <font color=#009900>int</font> level <font color=#990000>=</font> <b><font color=#000000>atoi</font></b><font color=#990000>(</font>dialog<font color=#990000>-</font><font color=#990000>></font><b><font color=#000000>GetValue</font></b><font color=#990000>(</font><font color=#990000>)</font><font color=#990000>.</font><b><font color=#000000>c_str</font></b><font color=#990000>(</font><font color=#990000>)</font><font color=#990000>)</font><font color=#990000>;</font>
444: dialog<font color=#990000>-</font><font color=#990000>></font><b><font color=#000000>Destroy</font></b><font color=#990000>(</font><font color=#990000>)</font><font color=#990000>;</font>
445: <b><font color=#0000FF>if</font></b> <font color=#990000>(</font>level <font color=#990000><</font> <font color=#993399>1</font> <font color=#990000>|</font><font color=#990000>|</font> level <font color=#990000>></font> <font color=#993399>4</font><font color=#990000>)</font>
446: <font color=#FF0000>{</font>
447: wxMessageDialog<font color=#990000>*</font> dialog <font color=#990000>=</font> <b><font color=#0000FF>new</font></b> <b><font color=#000000>wxMessageDialog</font></b><font color=#990000>(</font><b><font color=#0000FF>this</font></b><font color=#990000>,</font>
448: <font color=#FF0000>"The level must be between 1 and 4"</font><font color=#990000>)</font><font color=#990000>;</font>
449: dialog<font color=#990000>-</font><font color=#990000>></font><b><font color=#000000>ShowModal</font></b><font color=#990000>(</font><font color=#990000>)</font><font color=#990000>;</font>
450: dialog<font color=#990000>-</font><font color=#990000>></font><b><font color=#000000>Destroy</font></b><font color=#990000>(</font><font color=#990000>)</font><font color=#990000>;</font>
451: <b><font color=#0000FF>return</font></b><font color=#990000>;</font>
452: <font color=#FF0000>}</font>
453: player<font color=#990000>.</font><b><font color=#000000>set_level</font></b><font color=#990000>(</font>level<font color=#990000>)</font><font color=#990000>;</font>
454: <font color=#FF0000>}</font>
455:
456: GameApp<font color=#990000>:</font><font color=#990000>:</font><b><font color=#000000>GameApp</font></b><font color=#990000>(</font><font color=#990000>)</font>
457: <font color=#FF0000>{</font>
458: <b><font color=#000000>rand_seed</font></b><font color=#990000>(</font><font color=#990000>)</font><font color=#990000>;</font>
459: frame <font color=#990000>=</font> <b><font color=#0000FF>new</font></b> <b><font color=#000000>GameFrame</font></b><font color=#990000>(</font><font color=#990000>)</font><font color=#990000>;</font>
460: <font color=#FF0000>}</font>
461:
462: <font color=#009900>bool</font> GameApp<font color=#990000>:</font><font color=#990000>:</font><b><font color=#000000>OnInit</font></b><font color=#990000>(</font><font color=#990000>)</font>
463: <font color=#FF0000>{</font>
464: frame<font color=#990000>-</font><font color=#990000>></font><b><font color=#000000>Show</font></b><font color=#990000>(</font><b><font color=#0000FF>true</font></b><font color=#990000>)</font><font color=#990000>;</font>
465: <b><font color=#0000FF>return</font></b> <b><font color=#0000FF>true</font></b><font color=#990000>;</font>
466: <font color=#FF0000>}</font>
467:
</tt>
</pre>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -