日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

【C++第一个Demo】---控制台RPG游戏3【登陆菜单树】

發(fā)布時間:2023/12/1 c/c++ 51 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【C++第一个Demo】---控制台RPG游戏3【登陆菜单树】 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

【登陸系統(tǒng)--樹結(jié)構(gòu)】

1 首先我這里設(shè)計(jì),由一個基類MainMenu構(gòu)建樹結(jié)構(gòu),并實(shí)現(xiàn)控制臺上菜單之間的切換和返回操作

1 #ifndef _UI_BASE_H_ 2 #define _UI_BASE_H_ 3 4 #include <string> 5 #include <vector> 6 #include"..//Marco.h" 7 using namespace std; 8 9 //================ MainMenu 基類 ======================== 10 class MainMenu 11 { 12 public: 13 MainMenu(); 14 ~MainMenu(); 15 16 public: 17 // ==================== 外部接口 ======================= 18 void PrintUI(char type, int X, int Y); //打印UI點(diǎn) 19 virtual void LinkChild(MainMenu*); //作為子目錄鏈接 20 virtual void OutputFrame(); //打印框架 21 virtual void ChooseButton(); //按鍵選擇 22 virtual void ChangingOver(){}; //切換界面 23 24 //==================== 內(nèi)部函數(shù) ====================== 25 virtual void ButtonFunction(){}; //執(zhí)行按鈕功能 26 virtual void OutputButton(); //打印所有按鍵 27 virtual void RemoveButton(); //清除所有按鍵 28 virtual void RemoveButtonColor(); //移除按鍵底色 29 virtual void AppendButtonColor(); //添加按鍵底色 30 31 private: 32 CC_PROPERTY(char**, m_frame, Frame); //框架(界面) 33 CC_PROPERTY(int, m_row, Row); //frame高度 34 CC_PROPERTY(int, m_colu, Colu); //frame寬度 35 CC_PROPERTY(string*, m_button, Button); //自己的按鍵信息 36 37 //打印 childButton 的坐標(biāo)位置 38 CC_PROPERTY(size_t, m_index, Index); //當(dāng)前選中的按鍵序號(非角標(biāo)) 39 CC_PROPERTY(int, m_buttonX, ButtonX); 40 CC_PROPERTY(int, m_buttonY, ButtonY); 41 42 //tree結(jié)構(gòu) 43 CC_PROPERTY(MainMenu*, m_father, Father); //上級目錄 44 CC_PROPERTY(vector<MainMenu*>*, m_child, Child); //下級目錄 45 }; 46 47 #endif // _UI_BASE_H_ MainMenu.h 1 #include<iostream> 2 3 #include"..//Tip.h" 4 #include "MainMenu.h" 5 6 7 MainMenu::MainMenu() 8 { 9 //1 UI框架數(shù)據(jù) 10 char frame[40][60] = { 11 "mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm", 12 "m!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%@m", 13 "m*0000000000000000000000000000000000000000000000000000000*m", 14 "m*0000000000000000000000000000000000000000000000000000000*m", 15 "m*0000000000000000000000000000000000000000000000000000000*m", 16 "m*0000000000000000000000000000000000000000000000000000000*m", 17 "m*0000000000000000000000000000000000000000000000000000000*m", 18 "m*0000000000000000000000000000000000000000000000000000000*m", 19 "m*0000000000000000000000000000000000000000000000000000000*m", 20 "m*0000000000000000000000000000000000000000000000000000000*m", 21 "m*0000000000000000000000000000000000000000000000000000000*m", 22 "m*0000000000000000000000000000000000000000000000000000000*m", 23 "m*0000000000000000000000000000000000000000000000000000000*m", 24 "m*0000000000000000000000000000000000000000000000000000000*m", 25 "m*0000000000000000000000000000000000000000000000000000000*m", 26 "m*0000000000000000000000000000000000000000000000000000000*m", 27 "m*0000000000000000000000000000000000000000000000000000000*m", 28 "m*0000000000000000000000000000000000000000000000000000000*m", 29 "m*0000000000000000000000000000000000000000000000000000000*m", 30 "m*0000000000000000000000000000000000000000000000000000000*m", 31 "m*0000000000000000000000000000000000000000000000000000000*m", 32 "m*0000000000000000000000000000000000000000000000000000000*m", 33 "m*0000000000000000000000000000000000000000000000000000000*m", 34 "m*0000000000000000000000000000000000000000000000000000000*m", 35 "m*0000000000000000000000000000000000000000000000000000000*m", 36 "m*0000000000000000000000000000000000000000000000000000000*m", 37 "m*0000000000000000000000000000000000000000000000000000000*m", 38 "m*0000000000000000000000000000000000000000000000000000000*m", 39 "m*0000000000000000000000000000000000000000000000000000000*m", 40 "m*0000000000000000000000000000000000000000000000000000000*m", 41 "m*0000000000000000000000000000000000000000000000000000000*m", 42 "m*0000000000000000000000000000000000000000000000000000000*m", 43 "m*0000000000000000000000000000000000000000000000000000000*m", 44 "m*0000000000000000000000000000000000000000000000000000000*m", 45 "m*0000000000000000000000000000000000000000000000000000000*m", 46 "m*0000000000000000000000000000000000000000000000000000000*m", 47 "m*0000000000000000000000000000000000000000000000000000000*m", 48 "m*0000000000000000000000000000000000000000000000000000000*m", 49 "m#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%$m", 50 "mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm" 51 }; 52 m_row = 40; 53 m_colu = 60; 54 m_frame = GetCharMemory(m_row, m_colu); 55 for (int i = 0; i < m_row; i++) 56 strcpy(m_frame[i], frame[i]); 57 58 //Button數(shù)據(jù) 59 m_button = new string[3]; 60 61 //目錄按鍵的坐標(biāo)起點(diǎn) 62 m_index = 1; //默認(rèn)指向第一個按鈕 63 m_buttonX = 17; //第一個按鈕的坐標(biāo)x 64 m_buttonY = 24; //第一個按鈕的坐標(biāo)y 65 66 m_father = nullptr; 67 m_child = nullptr; 68 } 69 70 MainMenu::~MainMenu() 71 { 72 if (m_frame != nullptr) 73 DeleteCharMemory(m_frame,m_row); 74 75 if (m_button != nullptr) 76 { 77 delete[] m_button; 78 m_button = nullptr; 79 } 80 } 81 82 // ===================== 外部接口 =========================== 83 //打印框架 84 void MainMenu::OutputFrame() 85 { 86 Color(CT_Grey, CT_Black); 87 char** pFrame = GetFrame(); 88 //打印框架 89 for (int i = 0; i < GetRow(); i++) 90 { 91 for (int j = 0; j < GetColu() - 1; j++) 92 { 93 PrintUI(pFrame[i][j], i, j); 94 } 95 } 96 97 //游戲名字 98 char gameName[5][52] = { 99 "q000q00qq00qqqq0q0000qqq000q000q00qq00qqqq00qqqqqqq", 100 "q000q0q00q0q00q0q0000q00q00q000q0q00q0q00q000q0q0q0", 101 "q0q0q0q00q0qqqq0q0000q00q00q0q0q0qqqq0qqqq000q0q0q0", 102 "qq0qq0q00q0q0q00q0000q00q00qq0qq0q00q0q0q0000q0q0q0", 103 "q000q00qq00q00q0qqqq0qqq000q000q0q00q0q00q00qqqqqqq", 104 }; 105 106 Color(CT_Blue, CT_Blue); 107 ColorType color = CT_Blue; 108 for (int i = 0; i < 51; i++) 109 { 110 if (i == 44) color = CT_Red; 111 GotoXY(0 + 5, i + 4); 112 gameName[0][i] == '0' ? Color(CT_Grey, CT_Blue) : Color(color, CT_Blue); cout << " "; 113 GotoXY(1 + 5, i + 4); 114 gameName[1][i] == '0' ? Color(CT_Grey, CT_Blue) : Color(color, CT_Blue); cout << " "; 115 GotoXY(2 + 5, i + 4); 116 gameName[2][i] == '0' ? Color(CT_Grey, CT_Blue) : Color(color, CT_Blue); cout << " "; 117 GotoXY(3 + 5, i + 4); 118 gameName[3][i] == '0' ? Color(CT_Grey, CT_Blue) : Color(color, CT_Blue); cout << " "; 119 GotoXY(4 + 5, i + 4); 120 gameName[4][i] == '0' ? Color(CT_Grey, CT_Blue) : Color(color, CT_Blue); cout << " "; 121 _sleep(20); 122 } 123 124 Color(CT_Grey, CT_Blue); 125 } 126 127 //按鍵選擇 128 void MainMenu::ChooseButton() 129 { 130 while (true) 131 { 132 fflush(stdin); 133 char choose = getch(); //選擇按鍵 134 PlaySound(TEXT(".\\Music\\選擇.wav"), NULL, SND_ASYNC); 135 if (choose == -32) choose = getch(); //屏蔽-32 136 137 //當(dāng)按了方向鍵,切換按鈕 138 if (choose == 72 || choose == 80) 139 { 140 int dPos = 0; 141 switch (choose) 142 { 143 case 72: if ( m_index > 1 ) dPos = -1; break; 144 case 80: if ( m_index < m_child->size() )dPos = +1; break; 145 } 146 if (dPos != 0) //發(fā)生了變動 147 { 148 this->RemoveButtonColor(); //清除底色打印 149 m_index += dPos; 150 this->AppendButtonColor(); //添加底色打印 151 } 152 } 153 154 //按Enter確定按鍵進(jìn)入子菜單 155 if (choose == 13) 156 { 157 //清除當(dāng)前菜單按鍵、切換界面 158 this->RemoveButton(); 159 this->ChangingOver(); 160 161 //如果是最低菜單,執(zhí)行功能函數(shù) 162 if (m_child->at(m_index - 1)->m_child == nullptr) 163 { 164 m_child->at(m_index - 1)->ButtonFunction(); 165 return; 166 } 167 168 //否則打印子菜單按鍵 169 m_child->at(m_index - 1)->OutputButton(); 170 m_child->at(m_index - 1)->ChooseButton(); 171 } 172 } 173 } 174 175 //==================== 內(nèi)部函數(shù) ====================== 176 177 //打印所有按鍵 178 void MainMenu::OutputButton() 179 { 180 if (m_child == nullptr) 181 return; 182 183 Color(CT_Grey, CT_Black); 184 //遍歷打印按鈕 185 for (size_t i = 0; i < m_child->size(); i++) 186 { 187 //獲取按鍵信息 188 string* button = m_child->at(i)->m_button; 189 190 GotoXY(m_buttonX + 0 + 4 * i, m_buttonY); 191 cout << button[0]; 192 GotoXY(m_buttonX + 1 + 4 * i, m_buttonY); 193 cout << button[1]; 194 GotoXY(m_buttonX + 2 + 4 * i, m_buttonY); 195 cout << button[2]; 196 } 197 198 this->AppendButtonColor(); 199 } 200 201 //清除所有按鍵 202 void MainMenu::RemoveButton() 203 { 204 if (m_child == nullptr) 205 return; 206 207 Color(CT_Grey, CT_Black); 208 //遍歷打印在按鈕位置打印空格,清除按鍵 209 for (size_t i = 0; i < m_child->size(); i++) 210 { 211 GotoXY(m_buttonX + 0 + 4 * i, m_buttonY); 212 cout << " "; 213 GotoXY(m_buttonX + 1 + 4 * i, m_buttonY); 214 cout << " "; 215 GotoXY(m_buttonX + 2 + 4 * i, m_buttonY); 216 cout << " "; 217 } 218 } 219 220 //移除按鍵底色 221 void MainMenu::RemoveButtonColor() 222 { 223 Color(CT_Grey, CT_Black); 224 string* button = m_child->at(m_index - 1)->m_button; 225 GotoXY(m_buttonX + 0 + 4 * (m_index - 1), m_buttonY); 226 cout << button[0]; 227 GotoXY(m_buttonX + 1 + 4 * (m_index - 1), m_buttonY); 228 cout << button[1]; 229 GotoXY(m_buttonX + 2 + 4 * (m_index - 1), m_buttonY); 230 cout << button[2]; 231 232 } 233 234 //添加按鍵底色 235 void MainMenu::AppendButtonColor() 236 { 237 Color(CT_SkyBlue, CT_Red); 238 string* button = m_child->at(m_index - 1)->m_button; 239 GotoXY(m_buttonX + 0 + 4 * (m_index - 1), m_buttonY); 240 cout << button[0]; 241 GotoXY(m_buttonX + 1 + 4 * (m_index - 1), m_buttonY); 242 cout << button[1]; 243 GotoXY(m_buttonX + 2 + 4 * (m_index - 1), m_buttonY); 244 cout << button[2]; 245 Color(CT_Grey, CT_Black); 246 } 247 248 249 250 //將pMainMenu作為子目錄鏈接到本目錄 251 void MainMenu::LinkChild(MainMenu* pMainMenu) 252 { 253 pMainMenu->m_father = this; 254 255 if (this->m_child == nullptr) 256 m_child = new vector < MainMenu* > ; 257 258 m_child->push_back(pMainMenu); 259 } 260 261 262 263 264 //打印UI點(diǎn) 265 void MainMenu::PrintUI(char type, int X, int Y) 266 { 267 GotoXY(X, Y); 268 switch (type) 269 { 270 case '0': Color(CT_Grey, CT_Blue); 271 cout << " "; break; 272 case 'z': Color(CT_White, CT_Black); 273 cout << ""; break; 274 case '3': Color(CT_White, CT_Red); 275 cout << ""; break; 276 case '4': Color(CT_White, CT_Black); 277 cout << ""; break; 278 case '5': Color(CT_White, CT_Red); 279 cout << ""; break; 280 case '8': Color(CT_White, CT_Black); 281 cout << ""; break; 282 case 'c': Color(CT_White, CT_Black); 283 cout << ""; break; 284 case 'e': Color(CT_Green, CT_White); 285 cout << ""; break; 286 case 't': Color(CT_White, CT_Black); 287 cout << ""; break; 288 case 'r': Color(CT_White, CT_Black); 289 cout << ""; break; 290 case 'v': Color(CT_White, CT_Black); 291 cout << ""; break; 292 case 'b': Color(CT_White, CT_Black); 293 cout << ""; break; 294 case 'y': Color(CT_White, CT_Black); 295 cout << ""; break; 296 case 'u': Color(CT_White, CT_Pink); 297 cout << ""; break; 298 case 'i': Color(CT_White, CT_Black); 299 cout << ""; break; 300 case 'a': Color(CT_White, CT_Black); 301 cout << ""; break; 302 case 's': Color(CT_SkyBlue, CT_White); 303 cout << ""; break; 304 case 'd': Color(CT_White, CT_Black); 305 cout << ""; break; 306 case 'f': Color(CT_White, CT_Black); 307 cout << ""; break; 308 case 'm': Color(CT_Grey, CT_Black); 309 cout << ""; break; 310 case 'n': Color(CT_Green, CT_White); 311 cout << ""; break; 312 case '2': Color(CT_White, CT_Black); 313 cout << ""; break; 314 case '1': Color(CT_White, CT_Black); 315 cout << ""; break; 316 case '6': Color(CT_White, CT_Black); 317 cout << ""; break; 318 case '7': Color(CT_White, CT_Black); 319 cout << ""; break; 320 case '9': Color(CT_SkyBlue, CT_Black); 321 cout << ""; break; 322 case 'q': 323 cout << ""; break; 324 case 'o': Color(CT_White, CT_Black); 325 cout << ""; break; 326 case 'p': Color(CT_White, CT_Black); 327 cout << ""; break; 328 case 'w': Color(CT_Grey, CT_Black); 329 cout << ""; break; 330 case 'g': Color(CT_White, CT_Red); 331 cout << ""; break; 332 case 'h': Color(CT_White, CT_Red); 333 cout << ""; break; 334 case 'j': Color(CT_White, CT_Red); 335 cout << ""; break; 336 case 'k': Color(CT_White, CT_Red); 337 cout << ""; break; 338 case 'l': Color(CT_White, CT_Black); 339 cout << ""; break; 340 case 'x': Color(CT_White, CT_Black); 341 cout << "×"; break; 342 343 //子彈、手雷 344 case '_': Color(CT_White, CT_Black); cout << "о"; break; 345 case '+': Color(CT_White, CT_Black); cout << "¤"; break; 346 case 'C': Color(CT_White, CT_Black); cout << "·"; break; 347 case 'D': Color(CT_White, CT_Black); cout << ""; break; 348 349 //制表符 350 case '!': Color(CT_Yellow, CT_Red); 351 cout << ""; break; 352 case '&': Color(CT_Yellow, CT_Red); 353 cout << ""; break; 354 case '@': Color(CT_Yellow, CT_Red); 355 cout << ""; break; 356 case '=': Color(CT_Yellow, CT_Red); 357 cout << ""; break; 358 case '$': Color(CT_Yellow, CT_Red); 359 cout << ""; break; 360 case ')': Color(CT_TBlue, CT_Red); 361 cout << ""; break; 362 case '#': Color(CT_Yellow, CT_Red); 363 cout << ""; break; 364 case '-': Color(CT_Yellow, CT_Red); 365 cout << ""; break; 366 case '(': Color(CT_Yellow, CT_Red); 367 cout << ""; break; 368 case '*': Color(CT_Yellow, CT_Red); 369 cout << ""; break; 370 case '%': Color(CT_Yellow, CT_Red); 371 cout << ""; break; 372 //額外 373 case 'A': Color(CT_Yellow, CT_White); 374 cout << ""; break; 375 case 'B': Color(CT_Yellow, CT_White); 376 cout << ""; break; 377 } 378 } MainMenu.cpp

下面是派生類,也就是登陸菜單中所有實(shí)際需要創(chuàng)建的選項(xiàng)

?1級菜單:NewGame?

1 #ifndef _NEW_GAME_H_ 2 #define _NEW_GAME_H_ 3 4 #include "MainMenu.h" 5 #include "..//Role//Hero.h" 6 #include "..//Map/Map_1.h" 7 #include "..//Map/Map_11.h" 8 #include "..//Map/Map_111.h" 9 #include "..//Map/Map_22.h" 10 #include "..//Map/Map_211.h" 11 12 13 class NewGame : public MainMenu 14 { 15 public: 16 NewGame() 17 { 18 GetButton()[0]="┏━━━━━━━━━┓"; 19 GetButton()[1]="┃開 始 新 游 戲┃"; 20 GetButton()[2]="┗━━━━━━━━━┛"; 21 22 } 23 24 //執(zhí)行按鈕功能 25 void ButtonFunction() 26 { 27 int x = GetButtonX(); 28 int y = GetButtonY(); 29 30 char name[255] = {}; 31 32 GotoXY(x - 2, y - 2); 33 cout << "┏━━━━━━━━━━━━━┓"; 34 GotoXY(x - 1, y - 2); 35 cout << "┃ ┃"; 36 GotoXY(x , y - 2); 37 cout << "┃輸入名字:_______________ ┃"; 38 GotoXY(x + 1, y - 2); 39 cout << "┃ ┃"; 40 GotoXY(x + 2, y - 2); 41 cout << "┗━━━━━━━━━━━━━┛"; 42 GotoXY(x , y + 5); cin >> name; 43 44 // 音樂 mp3 45 WCHAR mciCmd[] = TEXT("open .//music//background//gamestartup.mp3 alias background"); //.mp3格式的 46 mciSendString(mciCmd, NULL, 0, NULL); 47 mciSendString(TEXT("play background repeat"), NULL, 0, NULL); 48 49 //====== 游戲初始化 ========================== 50 system("cls"); 51 Role* pRole = new Hero(5, RT_CHINA,18,64); 52 pRole->SetName(name); 53 { 54 Body* body = new SniperRifle(2); 55 pRole->GetBackpack()->PushBackBody(body); 56 }; 57 58 59 Map* pMap = new Map_1(); 60 pMap->OutputMap(); 61 GameScene* gameScene = new GameScene(pRole, pMap); 62 pRole->InitShape(pMap->GetType().c_str()); 63 pRole->GetGameOI()->OutputOI(); 64 pRole->OutputRole(pMap); 65 gameScene->GameRuning(); 66 67 //GameRunning結(jié)束時返回菜單 68 this->GetFather()->OutputButton(); 69 this->GetFather()->ChooseButton(); 70 } 71 72 }; 73 74 75 #endif // _NEW_GAME_H_ NewGame.h ?1級菜單:OldGame 和2個2級菜單 1 #ifndef _OLD_GAME_H_ 2 #define _OLD_GAME_H_ 3 4 #include "MainMenu.h" 5 6 class OldGame : public MainMenu 7 { 8 public: 9 OldGame() 10 { 11 GetButton()[0] = "┏━━━━━━━━━┓"; 12 GetButton()[1] = "┃讀 取 舊 游 戲┃"; 13 GetButton()[2] = "┗━━━━━━━━━┛"; 14 } 15 }; 16 17 18 #endif // _OLD_GAME_H_ OldGame.h 1 #ifndef _OLD_GAME1_H_ 2 #define _OLD_GAME1_H_ 3 4 #include "MainMenu.h" 5 6 class OldGame1 : public MainMenu 7 { 8 public: 9 OldGame1() 10 { 11 GetButton()[0] = "┏━━━━━━━━━┓"; 12 GetButton()[1] = "┃讀 取 進(jìn) 度 一 ┃"; 13 GetButton()[2] = "┗━━━━━━━━━┛"; 14 } 15 16 17 //執(zhí)行按鈕功能 18 void ButtonFunction() 19 { 20 int x = GetButtonX(); 21 int y = GetButtonY(); 22 23 GotoXY(x, y); 24 cout << "進(jìn)度1加載中..."; 25 } 26 }; 27 28 29 #endif // _OLD_GAME1_H_ OldGame1.h 1 #ifndef _OLD_GAME2_H_ 2 #define _OLD_GAME2_H_ 3 4 #include "MainMenu.h" 5 6 class OldGame2 : public MainMenu 7 { 8 public: 9 OldGame2() 10 { 11 GetButton()[0] = "┏━━━━━━━━━┓"; 12 GetButton()[1] = "┃讀 取 進(jìn) 度 二 ┃"; 13 GetButton()[2] = "┗━━━━━━━━━┛"; 14 } 15 16 17 //執(zhí)行按鈕功能 18 void ButtonFunction() 19 { 20 int x = GetButtonX(); 21 int y = GetButtonY(); 22 23 GotoXY(x, y); 24 cout << "進(jìn)度2加載中..."; 25 26 } 27 }; 28 29 30 #endif // _OLD_GAME2_H_ OldGame2.h ?1級菜單:SetGame 和2個2級菜單 1 #ifndef _SET_GAME_H_ 2 #define _SET_GAME_H_ 3 4 #include "MainMenu.h" 5 6 class SetGame : public MainMenu 7 { 8 public: 9 SetGame() 10 { 11 GetButton()[0] = "┏━━━━━━━━━┓"; 12 GetButton()[1] = "┃ 游 戲 設(shè) 置 ┃"; 13 GetButton()[2] = "┗━━━━━━━━━┛"; 14 } 15 16 17 18 19 }; 20 21 22 #endif // _SET_GAME_H_ SetGame.h 1 #ifndef _VIDEO_H_ 2 #define _VIDEO_H_ 3 4 #include "MainMenu.h" 5 6 class Video : public MainMenu 7 { 8 public: 9 Video() 10 { 11 GetButton()[0] = "┏━━━━━━━━━┓"; 12 GetButton()[1] = "┃ 視 頻 設(shè) 置 ┃"; 13 GetButton()[2] = "┗━━━━━━━━━┛"; 14 } 15 16 17 //執(zhí)行按鈕功能 18 void ButtonFunction() 19 { 20 int x = GetButtonX(); 21 int y = GetButtonY(); 22 23 GotoXY(x, y); 24 cout << "按方向鍵調(diào)整亮度"; 25 26 } 27 }; 28 29 30 #endif // _VIDEO_H_ Video.h 1 #ifndef _AUDIO_H_ 2 #define _AUDIO_H_ 3 4 #include "MainMenu.h" 5 6 class Audio : public MainMenu 7 { 8 public: 9 Audio() 10 { 11 GetButton()[0] = "┏━━━━━━━━━┓"; 12 GetButton()[1] = "┃ 音 頻 設(shè) 置 ┃"; 13 GetButton()[2] = "┗━━━━━━━━━┛"; 14 } 15 16 17 //執(zhí)行按鈕功能 18 void ButtonFunction() 19 { 20 int x = GetButtonX(); 21 int y = GetButtonY(); 22 23 GotoXY(x, y); 24 cout << "按方向鍵調(diào)整大小"; 25 26 } 27 }; 28 29 30 #endif // _AUDIO_H_ Audio.h

1級菜單:GameInfo

1 #ifndef _Game_Info_H_ 2 #define _Game_Info_H_ 3 4 #include "MainMenu.h" 5 6 //============= 登錄界面 =============== 7 8 class GameInfo : public MainMenu 9 { 10 public: 11 GameInfo(); 12 13 public://==== 外部接口 ====== 14 virtual void ChangingOver(); //切換界面 15 16 virtual void ButtonFunction(); //執(zhí)行按鈕功能 17 18 19 20 }; 21 22 #endif // _Game_Info_H_ GameInfo.h 1 #include"..//Marco.h" 2 #include"..//Tip.h" 3 4 #include "GameInfo.h" 5 using namespace std; 6 7 8 GameInfo::GameInfo() 9 { 10 GetButton()[0]="┏━━━━━━━━━┓"; 11 GetButton()[1]="┃ 關(guān) 于 我 們 ┃"; 12 GetButton()[2]="┗━━━━━━━━━┛"; 13 } 14 15 16 //切換界面 17 void GameInfo::ChangingOver() 18 { 19 20 } 21 22 //執(zhí)行按鈕功能 23 void GameInfo::ButtonFunction() 24 { 25 //游戲簡介 26 string introduction[26] = {}; 27 introduction[0] = " 自從前蘇聯(lián)時期美、蘇兩國實(shí)行“雙方保證毀滅政策”之后,世界一直出于冷戰(zhàn)與和平的狀態(tài)......"; 28 introduction[1] = "愛因斯坦曾說“我不知道第三次世界大戰(zhàn)用什么武器,但是第四次世界大戰(zhàn)人類將只會用木棒和石頭打”"; 29 introduction[2] = "也就是說以現(xiàn)在的科技文明爆發(fā)戰(zhàn)爭就等于自我毀滅。 "; 30 introduction[3] = " 八十年代美國有個學(xué)者寫過一本書《文明的沖突》,很出名,大致意思是未來世界沖突不再像冷戰(zhàn)那"; 31 introduction[4] = "樣,而是政治集團(tuán)和意識形態(tài)的沖突,而最終歸結(jié)到文明之間的沖突,世界主要分為基督教文明,佛教文"; 32 introduction[5] = "明和伊斯蘭教文明。基督教文明和佛教文明與外界沖突很有限,更多表現(xiàn)是經(jīng)濟(jì)戰(zhàn)爭和領(lǐng)土糾紛,而且范"; 33 introduction[6] = "圍和強(qiáng)度是可控的。只有伊斯蘭教文明和外部世界有強(qiáng)烈的對抗性和排他性。未來伊斯蘭教很可能會越來"; 34 introduction[7] = "越趨向保守和原教旨主義,瓦哈比之類的激進(jìn)教派將逐步占據(jù)絕對主導(dǎo),開明的穆斯林將逐步被排擠和屠"; 35 introduction[8] = "殺,當(dāng)伊斯蘭世界完成內(nèi)部極端主義的整合和統(tǒng)一后,矛頭將逐步對外,會在全世界掀起全面的圣戰(zhàn)。新"; 36 introduction[9] = "的統(tǒng)一的阿拉伯帝國將會重新出現(xiàn),它將在中東的邊境將開展大肆的侵略,在全世界將進(jìn)行全面的高強(qiáng)度"; 37 introduction[10] = "的有政府組織的自殺式恐怖襲擊,試圖用瓦哈比派統(tǒng)治全世界,到那個時候,全世界將被迫和伊斯蘭文明"; 38 introduction[11] = "進(jìn)行一場全面戰(zhàn)爭,甚至?xí)嗷ケl(fā)大規(guī)模種族屠殺,只有通過這種方式,文明的沖突才可最終得到解決"; 39 introduction[12] = " "; 40 introduction[13] = " 歷史歷歷在目...... "; 41 introduction[14] = " 1979年,震驚世界的伊朗伊斯蘭革命爆發(fā),推翻了親美的巴列維封建王朝。 "; 42 introduction[15] = " 同樣在1979年末,蘇聯(lián)出兵入侵阿富汗,美國開始資助阿富汗及巴基斯坦的圣戰(zhàn)者抗蘇武裝。 "; 43 introduction[16] = " 2003年,美國總統(tǒng)小布什以伊拉克薩達(dá)姆政權(quán)擁有“大規(guī)模殺傷性武器”為由,出兵侵占伊拉克。盡"; 44 introduction[17] = "管推翻了薩達(dá)姆的獨(dú)裁統(tǒng)治,最終卻沒有找到任何“大規(guī)模殺傷性武器”,美國此舉的副作用是大規(guī)模摧"; 45 introduction[18] = "毀了伊拉克的各種社會機(jī)構(gòu),客觀上促成伊境內(nèi)恐怖主義組織如雨后春筍般涌現(xiàn)...... "; 46 introduction[19] = " 2006年10月,本.拉登副手扎卡維宣布成立“伊拉克伊斯蘭國”...... "; 47 introduction[20] = " 2011年,“阿拉伯之春”波及敘利亞,敘開始動亂,敘利亞從此陷入曠日持久的血腥宗派沖突。“伊"; 48 introduction[21] = "斯蘭國”在血腥的敘利亞內(nèi)戰(zhàn)中“崛起”,他們在敘利亞東部地區(qū)建立了根據(jù)地,伊斯蘭國襲擊的范圍不"; 49 introduction[22] = "斷擴(kuò)大,沖突次數(shù)不斷增加,世界人民飽受極端組織的困擾...... "; 50 introduction[23] = " 為了維護(hù)世界和平,2014年9月,美國組建了一個包括中、俄、英、法等54個國家和歐盟 、北約以及"; 51 introduction[24] = "阿盟等地區(qū)組織在內(nèi)的國際聯(lián)盟以打擊IS;從此,第三次世界大戰(zhàn)全面爆發(fā)…… "; 52 introduction[25] = " 雖然我們的生活暫未受到恐怖襲擊的影響,但為了世界的和平,我避免不了卷入這場戰(zhàn)爭。 "; 53 54 Color(CT_White, CT_Black); 55 56 //打印信息 57 system("cls"); 58 GotoXY(2, 21); 59 cout << "【 游 戲 信 息 】"; 60 GotoXY(4, 3); 61 cout << "●游戲名稱:英文名 World War III"; 62 GotoXY(6, 3); 63 cout << " 中文名 第三次世界大戰(zhàn)"; 64 GotoXY(8, 3); 65 cout << "●游戲類型: Adventure puzzle RPG"; 66 GotoXY(10, 3); 67 cout << "●學(xué)生姓名: xx"; 68 GotoXY(12, 3); 69 cout << "●版權(quán)所有:xxx"; 70 GotoXY(14, 21); 71 cout << "【 游 戲 背 景 】"; 72 73 //printRow開始打印的行號 (開始行號會依次上升 -2) 74 //indexMin當(dāng)前打印最小角標(biāo)(最小角標(biāo)為0,但當(dāng)總行數(shù)超過6行時依次增加) 75 //indexMax當(dāng)前打印最大角標(biāo)(最大角標(biāo)會依次遞增 +1) 76 //size 表示可現(xiàn)實(shí)最大行數(shù) 77 int size = 7; 78 int indexMin = 0; 79 int dTime = 2000; 80 for (int printRow = 30, indexMax = 0; indexMax < 26; indexMax++) 81 { 82 //當(dāng)總行速達(dá)到6時,最小角標(biāo)開始遞增 ,開始、結(jié)束打印的行號不再變化 83 if (indexMax > size) 84 indexMin = indexMax - size; 85 86 for (int row = printRow, j = indexMin; j <= indexMax; j++, row += 2) 87 { 88 GotoXY(row, 3); 89 //最新的一行一個字一個字打印 90 if (j == indexMax) 91 { 92 Color(CT_White, CT_Red); 93 cout << introduction[j]; 94 Color(CT_White, CT_Black); 95 break; 96 } 97 cout << introduction[j]; 98 } 99 100 if (indexMax < size) 101 printRow -= 2; 102 103 //停頓時間 104 _sleep(dTime); 105 106 //按鍵修改速度 107 if (kbhit()) 108 { 109 char ch = getch(); 110 dTime = dTime / 2; 111 } 112 } 113 char ch = getch(); 114 //結(jié)束時返回菜單 115 this->GetFather()->OutputFrame(); 116 this->GetFather()->OutputButton(); 117 this->GetFather()->ChooseButton(); 118 } GameInfo.cpp

?

1級菜單:退出游戲

1 #ifndef _EXIT_GAME_H_ 2 #define _EXIT_GAME_H_ 3 4 #include "MainMenu.h" 5 6 7 class ExitGame : public MainMenu 8 { 9 public: 10 ExitGame() 11 { 12 GetButton()[0] = "┏━━━━━━━━━┓"; 13 GetButton()[1] = "┃太危險了還是離開吧┃"; 14 GetButton()[2] = "┗━━━━━━━━━┛"; 15 } 16 17 18 19 //執(zhí)行按鈕功能 20 void ButtonFunction() 21 { 22 exit(0); 23 } 24 25 }; 26 27 28 #endif // _EXIT_GAME_H_ ExitGame.h

還有一個可以復(fù)用的菜單:返回上一層菜單

1 #ifndef _RETURN_H_ 2 #define _RETURN_H_ 3 4 #include "MainMenu.h" 5 6 7 class Return : public MainMenu 8 { 9 public: 10 Return() 11 { 12 GetButton()[0] = "┏━━━━━━━━━┓"; 13 GetButton()[1] = "┃ 返 回 上 一 級 ┃"; 14 GetButton()[2] = "┗━━━━━━━━━┛"; 15 } 16 17 //執(zhí)行按鈕功能 18 void ButtonFunction() 19 { 20 this->RemoveButton(); 21 this->GetFather()->GetFather()->OutputButton(); 22 this->GetFather()->GetFather()->ChooseButton(); 23 } 24 25 }; 26 27 28 #endif // _RETURN_H_ Return.h

?

2、通過上面的的類可以創(chuàng)建出菜單,然后通過一個登陸管理類,來設(shè)置這些按鈕的層級關(guān)系(樹結(jié)構(gòu)中的位置關(guān)系)

1 #ifndef _LAND_SURFACE_H_ 2 #define _LAND_SURFACE_H_ 3 4 #include "MainMenu.h" 5 #include "GameInfo.h" 6 #include "NewGame.h" 7 #include "ExitGame.h" 8 #include "Return.h" 9 #include "OldGame.h" 10 #include "OldGame1.h" 11 #include "OldGame2.h" 12 #include "SetGame.h" 13 #include "Audio.h" 14 #include "Video.h" 15 //=======用來管理登陸系統(tǒng)============ 16 class LandSurface 17 { 18 public: 19 //初始化登陸界面(靜態(tài)函數(shù),不用創(chuàng)建對象) 20 static MainMenu* InitLandSurface() 21 { 22 MainMenu* pMainMenu = new MainMenu(); 23 //主菜單 24 MainMenu* pNewGame = new NewGame(); 25 pMainMenu->LinkChild(pNewGame); 26 MainMenu* pOldGame = new OldGame(); 27 pMainMenu->LinkChild(pOldGame); 28 MainMenu* pSetGame = new SetGame(); 29 pMainMenu->LinkChild(pSetGame); 30 MainMenu* pGameInfo = new GameInfo(); 31 pMainMenu->LinkChild(pGameInfo); 32 MainMenu* pExitGame = new ExitGame(); 33 pMainMenu->LinkChild(pExitGame); 34 //OldGame 35 MainMenu* pOldGame1 = new OldGame1(); 36 pOldGame->LinkChild(pOldGame1); 37 MainMenu* pOldGame2 = new OldGame2(); 38 pOldGame->LinkChild(pOldGame2); 39 MainMenu* pReturn1 = new Return(); 40 pOldGame->LinkChild(pReturn1); 41 //SetGame 42 MainMenu* pAudio = new Audio(); 43 pSetGame->LinkChild(pAudio); 44 MainMenu* pVideo = new Video(); 45 pSetGame->LinkChild(pVideo); 46 MainMenu* pReturn2 = new Return(); 47 pSetGame->LinkChild(pReturn2); 48 49 return pMainMenu; 50 } 51 52 }; 53 54 55 #endif // _LAND_SURFACE_H_ LandSurface.h

?

總結(jié):通過這段代碼,可以實(shí)現(xiàn)控制臺中制作出一個自動排成1列的菜單目錄,可以給任意菜單添加和刪除子菜單,實(shí)現(xiàn)了菜單與子菜單之間的進(jìn)入和返回操作

截圖:

?

轉(zhuǎn)載于:https://www.cnblogs.com/nanwei/p/7087683.html

總結(jié)

以上是生活随笔為你收集整理的【C++第一个Demo】---控制台RPG游戏3【登陆菜单树】的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

成人午夜黄色 | 久久综合久久综合这里只有精品 | 精品视频久久 | 又粗又长又大又爽又黄少妇毛片 | 国产精品久久99精品毛片三a | 色视频 在线 | 超碰电影在线观看 | 久久综合久久综合久久综合 | 亚洲涩涩涩涩涩涩 | 国产综合精品一区二区三区 | 日韩欧美电影在线 | 日韩成人黄色av | 麻豆91精品91久久久 | 成 人 黄 色 片 在线播放 | 中文视频在线看 | 成人av影视观看 | 欧美aaa一级| 国产精品区二区三区日本 | 开心激情婷婷 | 亚洲尺码电影av久久 | 国产精品久久久久影视 | 国产99在线免费 | 欧美国产日韩在线观看 | 国产一区二区三区四区大秀 | a黄色影院| 欧美精品一区二区三区一线天视频 | 国产精品一区二区视频 | 国产精品久久久久永久免费观看 | 狠狠狠狠狠狠操 | 天天激情站 | 成人av动漫在线 | 2019av在线视频 | 久久综合五月天婷婷伊人 | 天天爱天天操天天射 | 色偷偷中文字幕 | 免费福利在线视频 | 伊人久久影视 | 四虎在线观看 | 欧美午夜理伦三级在线观看 | 欧美精品中文 | 国产在线观看xxx | 久草在线官网 | 国产精品麻豆三级一区视频 | 免费高清在线视频一区· | 92中文资源在线 | 最近中文字幕久久 | 亚洲午夜精品在线观看 | 日日躁你夜夜躁你av蜜 | 日本午夜免费福利视频 | 日韩在线三级 | 在线电影 一区 | 欧美一级片免费在线观看 | 国产成人99av超碰超爽 | 国产色视频一区二区三区qq号 | 国内精品视频免费 | 国产精品久久久久一区二区三区共 | 99久久久久| 美女视频永久黄网站免费观看国产 | 国产精品一区二区久久久 | 国产成人一区二区三区影院在线 | 免费色黄 | 丁香激情视频 | 日本成人免费在线观看 | 国产一区二区精品在线 | 久久精品男人的天堂 | 亚洲伊人第一页 | 成x99人av在线www | 久久夜色精品国产欧美一区麻豆 | 天天爽人人爽夜夜爽 | 国内精品视频一区二区三区八戒 | 国产精品久久久亚洲 | 国产精品美女视频网站 | 亚洲精品久久久久久国 | 一区二区三区电影大全 | 成人国产精品av | 婷婷久久一区二区三区 | 亚洲欧洲成人 | 日韩中文字幕国产 | 日韩毛片在线一区二区毛片 | 天天玩夜夜操 | av超碰在线观看 | 久久精品—区二区三区 | 综合亚洲视频 | 日韩精品一区二区三区免费观看视频 | 超碰在线97观看 | 黄p网站在线观看 | 国产亚洲精品久久 | 国产视频资源在线观看 | 亚洲作爱视频 | 91在线九色| 又长又大又黑又粗欧美 | 色婷婷午夜 | 国产精品免费不 | 国产在线一线 | 国产成人在线免费观看 | 久久三级毛片 | 黄色av高清| 日韩在线精品视频 | 天天综合色天天综合 | 麻豆久久精品 | 99久久精品国产免费看不卡 | 国产自偷自拍 | 日韩精品偷拍 | 一区二区三区动漫 | 国产手机精品视频 | 二区视频在线 | av怡红院| 欧美激情操 | 97色婷婷人人爽人人 | 中文字幕乱码亚洲精品一区 | www国产一区 | 又色又爽又激情的59视频 | 九九综合九九 | 国产激情久久久 | 色婷婷视频在线 | 国产成人综合精品 | 久草视频免费在线观看 | 日本久久久久久科技有限公司 | 日韩欧美一区二区三区在线 | 国产精品福利在线观看 | 麻豆手机在线 | 又爽又黄又刺激的视频 | 免费观看久久 | 亚洲热久久| 日韩久久精品一区二区三区下载 | 欧美一级欧美一级 | 国产精品99久久久 | 亚洲综合视频在线观看 | 日韩精品高清不卡 | 在线观看亚洲成人 | 黄网站色成年免费观看 | 九九在线精品视频 | 99久久精品网 | 天堂黄色片| 日韩一区在线免费观看 | 色婷婷综合久久久久中文字幕1 | 国产中文字幕在线观看 | 日韩福利在线观看 | 亚洲人人网 | 国产一区二区在线免费播放 | 超薄丝袜一二三区 | 97在线超碰 | 国产 日韩 在线 亚洲 字幕 中文 | 色在线最新 | 美女视频久久 | 国产亚洲精品综合一区91 | 激情网在线观看 | 成年人免费观看在线视频 | 久久久久亚洲天堂 | 久久福利 | 西西444www| 日韩高清不卡一区二区三区 | 天天综合天天综合 | 国产精品一区二区三区在线看 | 国产中文字幕在线看 | 国产一级电影 | 韩国三级一区 | av女优中文字幕在线观看 | 国产视频精品久久 | 99爱精品在线 | 91亚洲永久精品 | 射久久久 | 欧亚日韩精品一区二区在线 | 91中文字幕一区 | 五月婷婷在线视频观看 | 精品在线二区 | 久久综合精品一区 | 婷婷综合在线 | 久久在现视频 | 亚洲欧美国产精品18p | 免费婷婷| 91成人在线看 | 激情婷婷久久 | 性色av免费在线观看 | 中文字幕成人网 | 特黄一级毛片 | 91精品久 | 色婷婷狠| 91欧美精品 | 中文字幕第一页在线播放 | av电影久久 | 人人揉人人揉人人揉人人揉97 | 久久久久亚洲精品成人网小说 | 色综合久久88色综合天天免费 | 久久国产综合视频 | 久草在线视频在线 | 久久99精品国产一区二区三区 | 五月天综合色 | 亚洲精品男人的天堂 | 在线观看福利网站 | 久久综合狠狠综合久久狠狠色综合 | 色天天综合网 | 欧美日韩视频观看 | 福利网址在线观看 | 日韩精品欧美专区 | 日韩精品视频免费看 | 色综合网| 日韩在线大片 | www免费视频com━ | 午夜影院在线观看18 | 国产午夜精品福利视频 | 国产精品xxxx18a99 | 久久久国产视频 | 久久调教视频 | 超碰在线个人 | 精品超碰 | 国产精品黄色 | 国产区高清在线 | 国产综合在线视频 | 超碰在线资源 | 日韩一区二区免费播放 | 欧美精品xxx | 欧美日韩大片在线观看 | 国产伦精品一区二区三区四区视频 | 久久国产精品99久久久久久丝袜 | 99久久精品免费 | 日韩一区二区免费在线观看 | 久久都是精品 | 国产日韩亚洲 | 国内免费久久久久久久久久久 | 91夫妻视频| 免费av网址大全 | 日韩在线 一区二区 | 丝袜足交在线 | www.天天色.com | 久久人人爽人人片 | 日韩免费区 | 国产精品久久久久高潮 | 久久婷婷综合激情 | 日韩在线观看av | 在线亚洲欧美视频 | 成人a毛片 | 国模一二三区 | 成人宗合网| 96精品高清视频在线观看软件特色 | 国产精品久久久久久久久久免费 | 五月综合在线观看 | 网站在线观看日韩 | 亚洲aⅴ久久精品 | 精品影院一区二区久久久 | 久草免费在线视频 | 国产精品一区二区久久精品 | 国产高清一区二区 | 日韩成人邪恶影片 | 国产一级片一区二区三区 | 二区三区中文字幕 | 狠狠狠狠狠狠 | 亚洲国产电影在线观看 | 五月婷婷激情 | 欧美精品一区二区三区一线天视频 | 成人理论电影 | 久久国内精品视频 | 欧美黄色高清 | 成人在线观看资源 | 九色在线| 日韩专区在线 | 日韩精品在线免费播放 | 免费黄色网址网站 | 96香蕉视频 | a√天堂中文在线 | av网站在线免费观看 | 国产精品欧美精品 | 日韩精品最新在线观看 | 亚洲人成在线观看 | 综合精品久久 | 五月激情六月丁香 | 色香蕉网 | 免费看黄的| 91香蕉视频好色先生 | 9ⅰ精品久久久久久久久中文字幕 | 美女网站在线 | 欧美美女视频在线观看 | 操操操人人 | 国产在线播放一区二区 | 亚洲黄色av | 91在线免费观看网站 | 国产免费观看视频 | 日韩欧美精品在线观看视频 | 亚洲国产精品女人久久久 | 99精品视频观看 | 在线观看亚洲成人 | 色 中文字幕| 天天操天天操天天操天天操天天操天天操 | 波多野结衣理论片 | 欧美亚洲久久 | 亚洲第二色 | www.com.黄 | 色婷婷丁香 | 亚州中文av | 亚洲一级片在线看 | 日韩和的一区二在线 | 视频 国产区 | 中文字幕亚洲欧美 | 国产视频91在线 | 91九色pron| 国产精品区免费视频 | 久久男人免费视频 | 国产精品99久久久久久有的能看 | 成人a在线观看 | 久草.com| 色网站免费在线观看 | 91亚洲精品乱码久久久久久蜜桃 | 免费黄色在线网站 | www.天天操.com | 天天色天天色天天色 | 久久综合干 | 久久精品国产成人 | 天天综合网天天综合色 | 免费aa大片 | 亚洲人成人在线 | 狠狠干婷婷色 | 青春草视频在线播放 | 胖bbbb搡bbbb擦bbbb | 午夜免费久久看 | av在线不卡观看 | 免费一级片久久 | 成人在线一区二区 | 亚洲精品大片www | 亚洲精品av在线 | 国产精品99在线观看 | 天天草天天草 | 国产精品久久久久久久久岛 | 亚洲特级毛片 | 久久久久久久久久久影视 | 国产流白浆高潮在线观看 | 国产精品免费久久久久影院仙踪林 | 亚洲国产精品第一区二区 | 国产美女精品视频 | av东方在线| 国产69精品久久app免费版 | av在线a| 天天射日 | 亚洲成人免费观看 | 成人免费在线播放视频 | 香蕉视频免费看 | 超碰个人在线 | 九九九热精品 | 成人午夜性影院 | 青青草国产精品 | 亚洲91精品 | 欧美另类v| 亚洲国产精品一区二区久久,亚洲午夜 | 亚洲国产精品小视频 | 欧美va日韩va | 在线视频 你懂得 | 日本久久91| 中文字幕丝袜制服 | 91香蕉视频720p | 最新的av网站 | 久久久久免费看 | 成人中文字幕在线观看 | 人人玩人人添人人澡97 | 欧美成人基地 | 99爱爱| wwwwww国产| 国内精品小视频 | 日韩a级黄色片 | 精品国产片 | 久久久久久国产精品美女 | 国产精品不卡在线观看 | 婷婷成人亚洲综合国产xv88 | 亚洲一区二区天堂 | 丁香婷婷综合五月 | 91大片网站| 中文字幕精品一区二区三区电影 | 日本精品视频在线观看 | 黄色网中文字幕 | 国产高清福利在线 | 国产精品18久久久久久首页狼 | www.国产高清 | 九九在线高清精品视频 | 成片人卡1卡2卡3手机免费看 | 欧美一二三四在线 | 日韩精品无码一区二区三区 | 手机成人在线电影 | 精品人妖videos欧美人妖 | 婷婷免费在线视频 | 精品成人久久 | 91看片在线 | 婷婷丁香九月 | 日本中文字幕网址 | 久久久久国产精品午夜一区 | 久久国产精品一区二区三区四区 | 五月婷亚洲 | 亚洲久草网 | 国产高清一级 | www.色com| 极品久久久 | 精品黄色在线 | 怡红院久久 | 日本久久久精品视频 | 欧美a级成人淫片免费看 | 97视频人人免费看 | 9在线观看免费高清完整版在线观看明 | 久久精品99国产国产 | 久久超级碰 | 久久久久久久久久久久久久电影 | 久久综合免费 | 亚洲精选在线 | 日韩精选在线 | 有码中文字幕在线观看 | 97操碰 | 中文字幕免费久久 | 国产精品久久久久久久99 | 在线黄色国产电影 | 99热日本| 欧美一区成人 | 成人综合婷婷国产精品久久免费 | 精品一区二区在线观看 | www.com.黄| 伊人天天狠天天添日日拍 | 天天摸天天干天天操天天射 | 91精品1区2区 | 日韩精品久久一区二区 | 特级大胆西西4444www | 久久久精品国产免费观看一区二区 | 久草视频在线新免费 | 最近日韩中文字幕中文 | 五月天婷亚洲天综合网鲁鲁鲁 | 日日夜夜综合 | 激情婷婷在线观看 | 综合久久综合久久 | 九九九热精品免费视频观看 | 久久av免费电影 | 这里只有精品视频在线观看 | 精品视频久久久久久 | 在线观看 亚洲 | 久草www| 黄色av电影免费观看 | 99久久夜色精品国产亚洲96 | 亚洲高清网站 | 五月婷婷播播 | 9999精品免费视频 | 国产无限资源在线观看 | 午夜神马福利 | 久久精品国产一区二区 | 成人av影院在线观看 | 天天插综合网 | 新版资源中文在线观看 | 91女人18片女毛片60分钟 | av资源免费在线观看 | 天天爽夜夜爽人人爽曰av | www.国产毛片 | 少妇bbw揉bbb欧美 | 亚洲aⅴ乱码精品成人区 | 亚洲香蕉视频 | 欧美ⅹxxxxxx | 亚洲春色成人 | 午夜狠狠操 | 欧美最爽乱淫视频播放 | 超碰在线个人 | 成人网看片 | 五月天久久综合网 | 视频二区 | 8x成人免费视频 | 日韩欧美一区二区三区视频 | 黄色中文字幕在线 | 天天操天天操一操 | 天堂在线视频中文网 | 在线精品视频免费播放 | 99视频在线观看一区三区 | 国产欧美精品一区二区三区四区 | 又紧又大又爽精品一区二区 | 亚洲午夜久久久久久久久 | 欧美色图亚洲图片 | 五月婷婷六月丁香激情 | 国产精品久久久久一区 | 国内精品视频在线 | 黄色精品视频 | 日日日网 | 国产精品一区二区精品视频免费看 | 久久久久久看片 | 日韩精品一区二区三区免费观看视频 | 福利一区在线视频 | 国产成人精品一区二区三区福利 | 五月激情六月丁香 | 黄色成人在线 | 奇米影视8888在线观看大全免费 | 亚洲视频网站在线观看 | 国产青春久久久国产毛片 | 精品国产自在精品国产精野外直播 | 日日夜夜精品网站 | 日韩在线观看视频中文字幕 | 91插插插免费视频 | 国产99黄| 日韩av女优视频 | 天天天色综合a | 日韩精品中字 | 日韩手机视频 | 久久99久国产精品黄毛片入口 | 精品二区久久 | 日韩欧美69 | 91九色网址| 992tv又爽又黄的免费视频 | 狠狠操狠狠插 | 亚洲国产高清在线观看视频 | 一级黄色片在线播放 | 奇米网8888| 日日爽夜夜操 | www夜夜操 | 欧美日bb | 在线免费试看 | 天天撸夜夜操 | 黄色特级一级片 | 九九视频这里只有精品 | 五月婷婷爱| 综合色天天 | 成人h视频 | 激情丁香| 天天干天天干天天射 | 天天综合网在线观看 | 久久综合婷婷综合 | 中文字幕一区二区三区在线观看 | 国产破处视频在线播放 | 久久综合亚洲鲁鲁五月久久 | 精品国产aⅴ麻豆 | 不卡av电影在线观看 | 狠狠色丁香久久婷婷综合五月 | 四虎成人精品永久免费av九九 | 探花视频在线观看免费 | 国产综合在线视频 | 白丝av免费观看 | 欧美视频网址 | 国产日产亚洲精华av | 人人澡视频 | 久久精品视频2 | 特级片免费看 | 激情综合久久 | 91污视频在线 | 91热在线| 久久黄色免费 | 天天干天天干天天射 | 4438全国亚洲精品在线观看视频 | 偷拍视频一区 | 91在线一区 | a√资源在线 | 亚洲va欧洲va国产va不卡 | 91亚洲夫妻 | 99热在线观看免费 | 日韩一二三区不卡 | 伊人婷婷在线 | 蜜臀av性久久久久蜜臀aⅴ流畅 | 亚洲另类xxxx | 一区二区视频在线看 | 中文字幕在线视频第一页 | 国产福利在线免费 | 五月天亚洲激情 | 欧美一级片在线播放 | 久久亚洲人 | 成人黄色小说网 | 日韩电影中文字幕 | 亚洲国产成人久久 | 国产一区不卡在线 | 91看片在线看片 | 日韩字幕在线观看 | 免费在线观看日韩欧美 | 欧美精品在线观看免费 | 亚洲精品www | www.玖玖玖| 成人在线观看免费视频 | 国产一区二区在线看 | 999免费视频 | 国产麻豆电影 | 国产亚洲综合在线 | 91成人网页版 | 天天天天天天操 | 亚洲国产剧情 | 日日夜夜操av | 久久手机免费视频 | 精品视频99 | 亚洲精品成人av在线 | 国产精品第72页 | 丁香六月婷婷开心 | 精品久久一 | 成人免费观看在线视频 | 91视频a| 人人爽人人爽人人爽学生一级 | 久久影视一区 | 婷婷激情在线 | av免费在线观 | 成人资源站 | 24小时日本在线www免费的 | 成人四虎 | 久久国产精品99精国产 | 91超在线| 国产玖玖精品视频 | 久久国产精品久久精品国产演员表 | 亚洲影院一区 | 日韩黄色av网站 | av不卡中文字幕 | 91麻豆精品国产自产在线游戏 | 久久婷婷综合激情 | 国产精品女人久久久 | 在线观看日韩国产 | 99精品乱码国产在线观看 | 亚洲视频www| 成人综合日日夜夜 | 国产小视频在线观看免费 | 久久久国产精品一区二区中文 | 久久99影院 | 久久久久欠精品国产毛片国产毛生 | 日韩字幕在线 | 久久久久高清 | 99久久er热在这里只有精品15 | 色久综合 | 日韩电影在线观看一区二区三区 | 视频一区视频二区在线观看 | 国产一区精品在线 | 九色精品免费永久在线 | 久草免费福利在线观看 | 玖玖在线观看视频 | 色激情五月 | 久久综合狠狠综合久久狠狠色综合 | 国产一区二区久久精品 | av大全在线播放 | 不卡的一区二区三区 | www黄色软件 | 亚洲日本欧美在线 | 97超碰色偷偷 | 久久免费美女视频 | 综合网av | 国产中文在线字幕 | 国产精品久久片 | 成人黄色中文字幕 | 美女网站免费福利视频 | 麻豆激情电影 | 91九色性视频 | 国产免费黄视频在线观看 | 激情动态 | 欧美成人在线免费 | 国产精品va视频 | 免费麻豆 | 成人午夜精品久久久久久久3d | 手机成人av | 99色资源 | 91视频免费视频 | 久久天天躁夜夜躁狠狠躁2022 | 亚洲专区 国产精品 | bbbbb女女女女女bbbbb国产 | 国产精品视频 | 欧美午夜一区二区福利视频 | 五月综合 | 97理论电影| 国产成人免费观看久久久 | 一区二区电影网 | 国产午夜三级一区二区三 | 国产精品成人久久久 | 精品视频在线免费观看 | 又爽又黄在线观看 | 97超碰在线久草超碰在线观看 | 欧美成人精品欧美一级乱黄 | 亚洲精品动漫成人3d无尽在线 | 天天搞天天干 | 久久精品亚洲国产 | 六月丁香婷婷在线 | 免费毛片一区二区三区久久久 | 91亚洲夫妻 | 亚洲精品 在线视频 | 国产精品一区二区三区免费视频 | 黄色片免费看 | 亚洲精品99久久久久中文字幕 | 久久av网址| 黄色亚洲片 | 91黄色视屏| 色在线视频网 | 91麻豆视频 | 久久视频一区二区 | 亚洲一区动漫 | 天天爽天天搞 | 久久免费视频7 | 在线不卡的av | 久久久久久久免费 | 色香蕉在线视频 | 激情五月在线视频 | 欧洲一区二区三区精品 | 国内精品福利视频 | 欧美性黑人 | 九九九热精品免费视频观看 | 精品超碰| 亚洲天堂网视频在线观看 | 中文字幕精品一区二区三区电影 | 亚洲无线视频 | 国产精品久久久久久一区二区三区 | 九九九毛片| 国产亚洲日 | 国产韩国精品一区二区三区 | 蜜桃视频日韩 | 在线看黄网站 | 天海冀一区二区三区 | 久久久精品欧美 | 国产精品毛片久久久 | 欧美极品少妇xxxxⅹ欧美极品少妇xxxx亚洲精品 | 中文永久字幕 | 久草久草久草久草 | 久久玖| 国产视频资源在线观看 | 日韩一区二区三区免费电影 | 国产亚洲精品久久19p | 日韩精品不卡在线 | 久草99| 久久久国产精品成人免费 | 国产精品久久久久久久久久久杏吧 | 在线免费黄网站 | 国产精品嫩草55av | 激情综合色综合久久 | 国产九色在线播放九色 | 国精产品999国精产 久久久久 | 亚洲国产中文字幕在线 | 久久999精品 | 99 精品 在线 | 午夜久久久久久久久久久 | 99视频精品视频高清免费 | 欧美日韩国产网站 | 色天天中文| 国产小视频在线免费观看视频 | 麻豆传媒一区二区 | 精品国产观看 | 天堂在线视频中文网 | 精品一区二区在线免费观看 | 五月婷婷开心中文字幕 | 国产超碰在线 | 狠狠干 狠狠操 | 亚洲一区二区三区在线看 | 免费看一及片 | 五月开心六月婷婷 | 国产一区在线免费观看 | 欧美aa级| 中文字幕电影网 | 最近最新mv字幕免费观看 | 色婷婷视频 | 999国内精品永久免费视频 | 国产欧美久久久精品影院 | 一级做a视频 | 免费午夜网站 | 亚洲天堂视频在线 | 午夜三级在线 | 国内精品一区二区 | 天天搞夜夜骑 | 国产黄免费看 | 日本特黄一级片 | 99精品欧美一区二区 | 欧洲精品在线视频 | 一本一本久久a久久精品综合 | 国产精品久久久久久久av电影 | 在线观看一区 | 日韩免费在线 | 国产免码va在线观看免费 | 天天操天天干天天操天天干 | 欧美日韩二区三区 | 中文字幕av在线播放 | 丝袜美腿一区 | 亚洲国产欧美在线人成大黄瓜 | 国产一区二区三区视频在线 | 摸bbb搡bbb搡bbbb | 91在线蜜桃臀 | 黄色软件大全网站 | 成年人电影毛片 | 六月色| 国产精品久久久久久久久久久杏吧 | 女人18毛片a级毛片一区二区 | av中文电影| 日韩夜夜爽 | 中文日韩在线 | 成人性生交大片免费看中文网站 | 国产中文字幕久久 | 国产97在线观看 | 丁香花五月 | 最新国产精品久久精品 | 国产+日韩欧美 | 高清av网站 | 夜夜躁狠狠躁日日躁 | 国内综合精品午夜久久资源 | 国产99久久久国产 | 亚洲va在线va天堂 | 日本久久久久久久久 | 成年人免费看的视频 | 国产精品ⅴa有声小说 | 一区二区三区免费在线 | 亚洲v欧美v国产v在线观看 | 正在播放国产一区二区 | 啪啪免费试看 | 精品久久片 | 成人免费在线观看入口 | 操操操夜夜操 | 午夜精品福利一区二区 | 国产精品24小时在线观看 | 精品日韩在线 | 久久久久久久久国产 | 天天天色综合 | 91传媒91久久久 | 九九综合九九综合 | 久久久精品国产一区二区 | 久色免费视频 | 精品91久久久久 | 亚洲视频免费在线观看 | 久久在线观看 | 69精品久久久 | 激情五月综合 | 色悠悠久久综合 | 久久精品视频在线看 | 欧美电影在线观看 | 81精品国产乱码久久久久久 | 欧美日韩精品在线 | 18久久久久 | 久久精品视频免费观看 | 中文在线a√在线 | 一本一道久久a久久综合蜜桃 | 91豆麻精品91久久久久久 | 日韩欧美亚洲 | 欧美色图一区 | 黄色特级一级片 | 高清在线一区 | 五月激情姐姐 | 中文字幕在线国产 | 天天操综合 | 国产成人av在线影院 | 日韩精品一区二区在线观看视频 | 在线观看免费黄视频 | 91九色在线| 亚洲视频第一页 | 亚洲国产精品激情在线观看 | 在线观看视频中文字幕 | 欧美精品一区二区性色 | 91精品免费看 | 免费日韩一区二区三区 | 久草在线视频在线观看 | 亚洲视频在线免费观看 | 色就干| 久久视频 | 久久久亚洲影院 | 成人 亚洲 欧美 | 国产精品第二页 | 国产色视频一区 | 日韩精品不卡在线 | 丁香花在线观看免费完整版视频 | av网站免费在线 | 欧美午夜精品久久久久久孕妇 | 97视频在线播放 | 久久毛片网站 | 午夜精品一区二区三区四区 | 99久久精品无码一区二区毛片 | 黄色网在线播放 | 黄色av免费电影 | 国产欧美综合视频 | 婷婷色5月| 国产小视频你懂的在线 | 久久影视精品 | 亚洲视频一级 | 久久国产精品一区二区三区 | 国产免费嫩草影院 | 国产小视频福利在线 | 91在线区 | 一区二区三区四区在线 | 国产香蕉在线 | 久久情爱 | 天天插综合 | av电影一区二区三区 | 亚洲精品在线视频 | 97碰在线 | 国内精品视频在线播放 | 69视频国产| 草在线 | 欧美va天堂va视频va在线 | 人人插人人做 | 国产精品毛片一区二区 | 91精品国产91p65| 开心激情婷婷 | 麻豆影视在线播放 | 久久激情综合 | 国产精品久免费的黄网站 | 国产高清视频在线观看 | 在线国产中文字幕 | 在线观看国产麻豆 | 国产成人综 | 亚洲激情中文 | 亚洲最新av | 国产精品久久久一区二区三区网站 | 精品免费在线视频 | 99r在线视频 | 国产精品久久久免费看 | 午夜精品一区二区三区免费 | 又爽又黄又刺激的视频 | 天天综合久久综合 | 国产一区在线视频播放 | 国产精品一区二区三区99 | 国产精品久久久久9999 | 精品在线观 | 五月天综合网 | 久久免费视频国产 | 成人免费一区二区三区在线观看 | 免费视频a | 最近日本中文字幕a | 在线看岛国av | 国产一级不卡视频 | 久久久影院一区二区三区 | 亚洲精品国产精品国自产在线 | 欧美在线视频一区二区 | 亚洲精品久久久久中文字幕m男 | 黄色免费在线视频 | 在线观看电影av | 国产视频九色蝌蚪 | 国产精品原创av片国产免费 | 国产夫妻自拍av | 免费网站观看www在线观看 | 97色噜噜| 成人app在线免费观看 | 精品久久久久免费极品大片 | 国产精品久久三 | 国产在线黄色 | 久久夜夜爽 | 西西444www| 国产精品99久久免费黑人 | 天天综合久久综合 | av五月婷婷 | 精品国产伦一区二区三区观看说明 | 日色在线视频 | 欧美一二三区播放 | 国产亚洲精品女人久久久久久 | 狠狠的干狠狠的操 | 日韩色视频在线观看 | 日韩视频中文字幕 | 国产高清永久免费 | 国产理伦在线 | 国产视频不卡一区 | 国产成人亚洲在线观看 | 国产成人久久精品77777 | 久久久免费毛片 | 国产在线a视频 | av一区二区三区在线播放 | 免费观看一区二区 | 黄色app网站在线观看 | 美女黄视频免费看 | 性色av香蕉一区二区 | 日韩激情视频在线观看 | 色婷婷视频 | 97超碰人人澡人人爱 | 亚洲无吗天堂 | 蜜桃av久久久亚洲精品 | 九九久久免费 | 日p视频 | 国产精品不卡在线观看 | av大全在线观看 | 亚洲综合色站 | 黄色成人在线 | 久久99精品久久久久久三级 | 97涩涩视频| 天天射天天艹 | 国产精品手机视频 | 中文字幕最新精品 | 免费在线观看的av网站 | 亚洲va欧美 | 亚洲va欧洲va国产va不卡 | 欧美日韩性生活 | 亚洲高清不卡av | 精品亚洲视频在线观看 | 婷婷久久精品 | 国产精品美女久久久久久久久久久 | 欧美一区免费在线观看 | 成年人在线观看免费视频 | 激情久久久久久久久久久久久久久久 | 99久久精品国 | japanesexxx乱女另类 | 亚洲 欧美 另类人妖 | 视频在线在亚洲 | 国产在线视频在线观看 | 国产精品久久综合 | 日本在线视频一区二区三区 | 深爱婷婷久久综合 | 美女视频a美女大全免费下载蜜臀 | 久久久www成人免费毛片麻豆 | 国产精品美女久久久久久久 | 狠狠操影视 | 国产亚洲一区二区在线观看 | 久久精品亚洲一区二区三区观看模式 | 国产精品婷婷午夜在线观看 | 一级免费看| 成人一级在线观看 | 久久综合色一综合色88 | 国产人在线成免费视频 | 国产精品一区二区三区久久 | 97超在线| 日韩视频一区二区三区在线播放免费观看 | 国产中文字幕在线视频 | 日韩特黄一级欧美毛片特黄 | 操操操com | 久久天堂精品视频 | 日日干天天射 | 黄色片网站大全 | 日韩在线视频精品 | 丝袜美女在线观看 | av在线免费观看网站 | 91尤物国产尤物福利在线播放 | 日韩精品在线免费播放 | 91人人澡人人爽人人精品 | 国产 日韩 在线 亚洲 字幕 中文 | 日韩免费播放 | 亚洲激情五月 | 欧美精品乱码99久久影院 |