From cad82ddb7748d47a63e737df81dda84ff44e8ed9 Mon Sep 17 00:00:00 2001 From: Jerry Chan 29 <791603901@qq.com> Date: Sat, 30 Jan 2021 11:06:01 +0800 Subject: [PATCH] =?UTF-8?q?snake=5F09=5Fcpp:=20=E4=B8=8A=E4=BC=A009?= =?UTF-8?q?=E5=B9=B4=E7=94=A8Dev=20C++=E5=86=99=E7=9A=84=E2=80=9C=E7=B2=BE?= =?UTF-8?q?=E7=AE=80=E7=89=88=E8=B4=AA=E5=90=83=E8=9B=87=E2=80=9D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- snake_09_cpp/Makefile.win | 33 ++ snake_09_cpp/README.md | 7 + snake_09_cpp/main.cpp | 379 ++++++++++++++++++ .../\350\264\252\345\220\203\350\233\207.dev" | 59 +++ .../\350\264\252\345\220\203\350\233\207.ico" | Bin 0 -> 171014 bytes ...264\252\345\220\203\350\233\207_private.h" | 23 ++ ...64\252\345\220\203\350\233\207_private.rc" | 37 ++ 7 files changed, 538 insertions(+) create mode 100644 snake_09_cpp/Makefile.win create mode 100644 snake_09_cpp/README.md create mode 100644 snake_09_cpp/main.cpp create mode 100644 "snake_09_cpp/\350\264\252\345\220\203\350\233\207.dev" create mode 100644 "snake_09_cpp/\350\264\252\345\220\203\350\233\207.ico" create mode 100644 "snake_09_cpp/\350\264\252\345\220\203\350\233\207_private.h" create mode 100644 "snake_09_cpp/\350\264\252\345\220\203\350\233\207_private.rc" diff --git a/snake_09_cpp/Makefile.win b/snake_09_cpp/Makefile.win new file mode 100644 index 0000000..72e1eaf --- /dev/null +++ b/snake_09_cpp/Makefile.win @@ -0,0 +1,33 @@ +# Project: ̰ +# Makefile created by Dev-C++ 4.9.9.2 + +CPP = g++.exe -D__DEBUG__ +CC = gcc.exe -D__DEBUG__ +WINDRES = windres.exe +RES = ̰_private.res +OBJ = main.o $(RES) +LINKOBJ = main.o $(RES) +LIBS = -L"C:/Program Files/DEV-CPP/Lib" -mwindows -lgmon -pg -g3 +INCS = -I"C:/Program Files/DEV-CPP/include" +CXXINCS = -I"C:/Program Files/DEV-CPP/lib/gcc/mingw32/3.4.2/include" -I"C:/Program Files/DEV-CPP/include/c++/3.4.2/backward" -I"C:/Program Files/DEV-CPP/include/c++/3.4.2/mingw32" -I"C:/Program Files/DEV-CPP/include/c++/3.4.2" -I"C:/Program Files/DEV-CPP/include" +BIN = ̰.exe +CXXFLAGS = $(CXXINCS) -pg -g3 +CFLAGS = $(INCS) -pg -g3 +RM = rm -f + +.PHONY: all all-before all-after clean clean-custom + +all: all-before ̰.exe all-after + + +clean: clean-custom + ${RM} $(OBJ) $(BIN) + +$(BIN): $(OBJ) + $(CPP) $(LINKOBJ) -o "̰.exe" $(LIBS) + +main.o: main.cpp + $(CPP) -c main.cpp -o main.o $(CXXFLAGS) + +̰_private.res: ̰_private.rc + $(WINDRES) -i ̰_private.rc --input-format=rc -o ̰_private.res -O coff diff --git a/snake_09_cpp/README.md b/snake_09_cpp/README.md new file mode 100644 index 0000000..e61074d --- /dev/null +++ b/snake_09_cpp/README.md @@ -0,0 +1,7 @@ +# snake_09_cpp +该目录下为29大约在2009年(14岁)左右的时候使用Dev C++开发的Windows Only的贪吃蛇游戏,由于年代久远了,Dev C++已经在Win10上跑不起来了,所以现在重新上传至Github的时候也只是根据找到的历史存档直接上传上来的,并没有在如今这个时代重新进行编译和测试。因此对于依然还想尝试build from source的朋友们,我只能说……祝你好运…… + +当然,如果只是想玩一玩的话,csdn和pudn上都有我当年上传的,包含有预编译二进制的压缩包,大家可以到这些地方去下载来直接玩耍: + +- https://download.csdn.net/download/czy_133/1742022 +- http://www.pudn.com/Download/item/id/1064306.html diff --git a/snake_09_cpp/main.cpp b/snake_09_cpp/main.cpp new file mode 100644 index 0000000..80e478b --- /dev/null +++ b/snake_09_cpp/main.cpp @@ -0,0 +1,379 @@ +//̰ + +#include +#include +#include +#include + +#define WIDTH 20 +#define HEIGHT 20 + +using namespace std; + +bool CheckNode (int,int,bool); //ͷβײ +void SnakeMove (void); //ߵƶ + +LRESULT CALLBACK WndProc (HWND,UINT,WPARAM,LPARAM); //ڹ̺ + +list m_snake; list m_key; //Լ뻺 +int direction = VK_LEFT,score = 0; //ǰ򼰵÷ +const int speed = 250; //ٶ +bool is_quickmove = false; //ĿǰǷڿƶ֮ +RECT rc_node,food,rc; //ʳPĻνṹ +HBRUSH red,green,blue; //õĻˢ + +int WINAPI WinMain (HINSTANCE hInstance, + HINSTANCE hPrevInstance, + LPSTR lpCmdLine, + int nCmdShow) + +{ + RECT window; // + DWORD style = WS_CAPTION | WS_POPUPWINDOW | WS_VISIBLE; //бб߿йرհťķ + HWND hwnd; //ھ + MSG messages; // + WNDCLASSEX wincl; // + + wincl.hInstance = hInstance; + wincl.lpszClassName = "CZY_Jerry"; + wincl.lpfnWndProc = WndProc; + wincl.style = 0; + wincl.cbSize = sizeof (WNDCLASSEX); + wincl.hIcon = LoadIcon (NULL, IDI_APPLICATION); + wincl.hIconSm = LoadIcon (NULL, IDI_APPLICATION); + wincl.hCursor = LoadCursor (NULL, IDC_ARROW); + wincl.lpszMenuName = NULL; + wincl.cbClsExtra = 0; + wincl.cbWndExtra = 0; + wincl.hbrBackground = (HBRUSH) GetStockObject (WHITE_BRUSH); + + if (!RegisterClassEx (&wincl)) + return 0; + + window.left = 0; + window.right = 500; + window.top = 0; + window.bottom = 500; + + AdjustWindowRect (&window,style,false); + + srand ((unsigned) time (NULL)); // + + /**/ + hwnd = CreateWindow ( + "CZY_Jerry", + "̰", + style, + 0, + 0, + window.right - window.left, + window.bottom - window.top, + NULL, + NULL, + hInstance, + NULL + ); + + if (!hwnd) + { + MessageBox (hwnd,"޷ڣ","ERROR",MB_OK | MB_ICONERROR); + return 0; + } + + SetWindowPos (hwnd,HWND_TOPMOST,0,0,0,0,SWP_NOMOVE | SWP_NOSIZE); //ö + ShowWindow (hwnd, nCmdShow); //ʾ + UpdateWindow (hwnd); //´ + + while (1) + { + if (GetMessage (&messages, NULL, 0, 0)) + { + TranslateMessage(&messages); //Ϣ + DispatchMessage(&messages); //ôڹ̺ + } + else break; + } + + return messages.wParam; +} + +LRESULT CALLBACK WndProc (HWND hwnd,UINT message,WPARAM wParam,LPARAM lParam) +{ + HDC hdc,mdc; //ʵDCDC + char str[30] = ""; // + bool flag = true; + list::iterator i_key; //뻺ĵ + list::iterator i_snake,i_temp; //ĵ + HBITMAP hbmp; // + PAINTSTRUCT ps; // + + switch (message) + { + case WM_CREATE: + m_snake.clear();// + m_key.clear();//ռ뻺 + + /*ʼʳνṹ*/ + rc_node.top = 300; + rc_node.bottom = rc_node.top + HEIGHT; + + for (int i=5;i>=0;i--) + { + rc_node.left = 300 + i * WIDTH; + rc_node.right = rc_node.left + WIDTH; + m_snake.push_front (rc_node); + } + + m_key.push_back (VK_RIGHT); + m_key.push_back (0); + + do + { + food.left = rand() % ((500 - WIDTH) / WIDTH) * WIDTH; + food.top = rand() % ((500 - HEIGHT) / HEIGHT) * HEIGHT; + } while (CheckNode (food.left,food.top,true)); + + food.right = food.left + WIDTH; + food.bottom = food.top + HEIGHT; + + /*ˢ*/ + red = CreateSolidBrush (RGB (255,0,0)); + green = CreateSolidBrush (RGB (0,255,0)); + blue = CreateSolidBrush (RGB (0,0,255)); + + /*ʱ*/ + SetTimer (hwnd,1,speed,NULL); + break; + + case WM_PAINT: //ʳ + hdc = BeginPaint (hwnd,&ps); + mdc = CreateCompatibleDC (hdc); + GetClientRect (hwnd,&rc); + hbmp = CreateCompatibleBitmap (hdc,rc.right - rc.left,rc.bottom - rc.top); + SelectObject (mdc,hbmp); + FillRect (mdc,&rc,(HBRUSH) GetStockObject (WHITE_BRUSH)); + + FillRect (mdc,&food,blue); + + i_snake = m_snake.begin(); + FillRect (mdc,&(*i_snake),red); + i_snake++; + + for (;i_snake != m_snake.end();i_snake++) + FillRect (mdc,&(*i_snake),green); + + BitBlt (hdc,0,0,rc.right - rc.top,rc.bottom - rc.top,mdc,0,0,SRCCOPY); + + EndPaint (hwnd,&ps); + DeleteDC (mdc); + DeleteObject (hbmp); + break; + + case WM_TIMER: + hdc = GetDC (hwnd); + SnakeMove(); //ƶ + + if (m_snake.begin() -> left == food.left && m_snake.begin() -> top == food.top) + { + do + { + food.left = rand() % ((500 - WIDTH) / WIDTH) * WIDTH; + food.top = rand() % ((500 - HEIGHT) / HEIGHT) * HEIGHT; + } while (CheckNode (food.left,food.top,true)); + + food.right = food.left + WIDTH; + food.bottom = food.top + HEIGHT; + score++; + } + else + { + i_temp = m_snake.end(); + i_temp--; + m_snake.erase (i_temp); + } + + m_key.push_back (0); + + /*ײԼ*/ + if (CheckNode (m_snake.begin() -> left,m_snake.begin() -> top,false)) + { + if (is_quickmove) KillTimer (hwnd,2); + else KillTimer (hwnd,1); + + sprintf (str,"Ϸ\nĵ÷֣%d",score); + MessageBox (hwnd,str,"ʾ",MB_OK | MB_ICONASTERISK | MB_TOPMOST); + + DestroyWindow (hwnd); + return 0; + } + else InvalidateRect (hwnd,NULL,false); //ǿˢ¿ͻ + + ReleaseDC (hwnd,hdc); //ͷDC + break; + + case WM_KEYDOWN: + if ((int) wParam == VK_ESCAPE) + { + DestroyWindow (hwnd); + return 0; + } + i_key = m_key.begin(); + + /*ƶ*/ + if (direction == (int) wParam) + { + if (! is_quickmove) + { + is_quickmove = true; + KillTimer (hwnd,1); + SetTimer (hwnd,2,speed/4,NULL); + } + } + /*ƶ*/ + else if (is_quickmove) + { + is_quickmove = false; + KillTimer (hwnd,2); + SetTimer (hwnd,1,speed,NULL); + } + + //жƶһ֮ڣ̰Ƿ෴Ԫس + for (;i_key != m_key.end();i_key++) + { + if ((int) wParam != (*i_key)) flag = true; + else + { + flag = false; + break; + } + } + + if (flag) //û + { + direction = (int) wParam; + //m_key.erase (m_key.end()); + + switch (direction) + { + case VK_UP: + m_key.push_back (VK_DOWN); + break; + case VK_DOWN: + m_key.push_back (VK_UP); + break; + case VK_LEFT: + m_key.push_back (VK_RIGHT); + break; + case VK_RIGHT: + m_key.push_back (VK_LEFT); + } + + m_key.push_back (0); + } + break; + + case WM_KEYUP: + /*ƶ*/ + if (is_quickmove) + { + is_quickmove = false; + KillTimer (hwnd,2); + SetTimer (hwnd,1,speed,NULL); + } + break; + + case WM_CLOSE: + DestroyWindow (hwnd); + return 0; + + case WM_DESTROY: + PostQuitMessage (0); + return 0; + + default: + return DefWindowProc (hwnd,message,wParam,lParam); + } + + return 0; +} + +bool CheckNode (int x,int y,bool flag) //ײ +{ + list::iterator i_s = m_snake.begin(); + if (! flag) + i_s++++++; + + for (;i_s != m_snake.end();i_s++) + if (i_s -> left == x && i_s -> top == y) return true; + + return false; +} + +void SnakeMove () //ƶ +{ + m_key.clear(); + + switch (direction) + { + case VK_UP: + if (rc_node.top <= 0) + { + rc_node.top = 500 - HEIGHT; + rc_node.bottom = 500; + } + else + { + rc_node.top -= HEIGHT; + rc_node.bottom -= HEIGHT; + } + + m_key.push_back (VK_DOWN); + break; + + case VK_DOWN: + if (rc_node.bottom >= 500) + { + rc_node.top = 0; + rc_node.bottom = HEIGHT; + } + else + { + rc_node.top += HEIGHT; + rc_node.bottom += HEIGHT; + } + + m_key.push_back (VK_UP); + break; + + case VK_LEFT: + if (rc_node.left <= 0) + { + rc_node.left = 500 - WIDTH; + rc_node.right = 500; + } + else + { + rc_node.left -= WIDTH; + rc_node.right -= WIDTH; + } + + m_key.push_back (VK_RIGHT); + break; + + case VK_RIGHT: + if (rc_node.right >= 500) + { + rc_node.left = 0; + rc_node.right = WIDTH; + } + else + { + rc_node.left += WIDTH; + rc_node.right += WIDTH; + } + + m_key.push_back (VK_LEFT); + } + + m_snake.push_front (rc_node); +} diff --git "a/snake_09_cpp/\350\264\252\345\220\203\350\233\207.dev" "b/snake_09_cpp/\350\264\252\345\220\203\350\233\207.dev" new file mode 100644 index 0000000..1cb095b --- /dev/null +++ "b/snake_09_cpp/\350\264\252\345\220\203\350\233\207.dev" @@ -0,0 +1,59 @@ +[Project] +FileName=̰.dev +Name=̰ +UnitCount=1 +Type=0 +Ver=1 +ObjFiles= +Includes= +Libs= +PrivateResource=̰_private.rc +ResourceIncludes= +MakeIncludes= +Compiler= +CppCompiler= +Linker= +IsCpp=1 +Icon=̰.ico +ExeOutput= +ObjectOutput= +OverrideOutput=0 +OverrideOutputName=̰.exe +HostApplication= +Folders= +CommandLine= +UseCustomMakefile=0 +CustomMakefile= +IncludeVersionInfo=1 +SupportXPThemes=0 +CompilerSet=0 +CompilerSettings=0000000000000101000000 + +[Unit1] +FileName=main.cpp +CompileCpp=1 +Folder= +Compile=1 +Link=1 +Priority=1000 +OverrideBuildCmd=0 +BuildCmd= + +[VersionInfo] +Major=1 +Minor=1 +Release=1 +Build=1 +LanguageID=2052 +CharsetID=1252 +CompanyName=CZY_JERRYST_Һæ +FileVersion=V1.1 +FileDescription=̰ +InternalName=̰ +LegalCopyright= +LegalTrademarks= +OriginalFilename=̰ +ProductName=̰ +ProductVersion=V1.1 +AutoIncBuildNr=0 + diff --git "a/snake_09_cpp/\350\264\252\345\220\203\350\233\207.ico" "b/snake_09_cpp/\350\264\252\345\220\203\350\233\207.ico" new file mode 100644 index 0000000000000000000000000000000000000000..14b81e27f6f948360960a355d98e48f780fef308 GIT binary patch literal 171014 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ƣZRQIju({nxmJ?@^ntjGt__ ziayyorw;9khrDgm)#|_bH+s)~yH-5`Kh7WE06Ks(^e}~I^D#bquqJ;Rd^=C>5nuY= zLDIPu`InA1`3JVFwA(Z7AtOF_8B<(hf|z4dyb;|jpC{=aXl(sLt^|M3J7Ij4x0%kP z9yA<@hNcU_RbGT=aF^Eg3qOp@@Eu&Aq3_cEo4QYI(eSPJjGvP~9L8rY9tXxQG;}&* z@8L&afrhHj*CXN6;1@UPXz&yB_iVfi-#J_}w%b4><8fe#@FaYxpYW#3Pr#4wJ2YkS z=roqC;Rkq(C)KAGUII_{3ZvN*x3{rA|8_mG5RIt@nqskvW1oYK18(9v#B>Zl#yd06 zCBu*NlkqYr(5AQF=~$OB`k3$G zD*L^?2|w@;-%N3sfs=Ow3<35gneGIKT{oGFIHFIHr`zx&9pL=d89za0;gjU!fD^|{ z54ZuQgdb$gU>eun>8*XFrDNLmu@X)S?0ywL)wu@fJ8S&p@I+XUk6GbIvS@sajZhsH zV~sd5e(4b}PRAC0LL8gA*;^jIplHsa?R)It2cFVeo2q;P4+Xz{f$)P)O!AH_BVXbl z+MqBWmi&I*M^^>>h?jHyJ4?JcexNaZvG$B+@;4Ntbo`inHLUqWXDd#)kLP?`0skeM zfu9CFGt;$1FM~z8RQSpFXf;1e*Mi)HJ&RH-OtA25!jI}m@-zon4Awe+R43~d9Y2bh z^*8xHTq9r2pM&QD@5~RTI)0F^oL7+&{!eSy22$Sm-NbUbj)~(d@o2uwu8}KVl4GV;sH1y^4IzmwzIDfG7Ef z`sN{XHI2y8MaHK-cE?9s2>h75XS4zyaKPNh7R@^oljOJgzwsW|;CYKXNgpNtiTY)lOXF}7VWo;DteHWfax0&arr1YacR z1Lv`Ty9Jc38h+4q{_SYyJ-f-4~8Qyfgc$P5f2S)lnZO8!29g z7RYqKRSRzmLZb|B=bt=|p!Io&n#Ns@m;9(WNU~#$4-G!|H#`pB!?ChwhtI!=h7Mnn zUF0__=9?J4bRFMop7LFf-_t%mSITA3xQn^I90%Rb$thy2uV>;|Ro|n?@MC+F5LeF& zF?Pk*t>p1`k1y+J_rO!)^XTtWw~FysItE>1?RwksJ%7Kaqv+^#O7kMZcfMy15|7JZ9{%b&s!e%!}XG5&SqEPa2M#XTVG3<*CTG z#~x68K=BEqJ#$xK&0`Y^X1sBL7Bo)L}UZI!?~+Phyeko)Gg=k7f7?qWgTxxDj?$Fq?ycn92|7djThL$p8e0{R5Lpg1l#x{Zi@GxZGLR@i6X6>-`S zcW3_!?2WGV^apP61DP`gr`^V_^$Ll_Dz9u8d1|_sc*M_Nc z{iV=PfH*DM*2uPJ}>OO$9{D9md6esEBEb;Yc6CrEqlys34^F1N{M<^n=3MDc0v8$Mj!q*_)`cX-kr-c$ZgcQN#0bC^|Nvm9N0eOzNsCqyUz&h^nt!KJv-NHk#|OZEWWhEL>lKu64{uP^1h@Qd?3 zeK6ar{eQ)q^Ri{&hPVShk$5!efjC}zDZ4nYw%~K})l`X%@uY{wvBUTQ$nR|BfaiIS z_rZ<%UeRyI_MR*oIWHv4@G>&#IUyFOQjVJRT0i=m{`Bg{@f?0}^h^6?6A$^A2K|Ol zHUlWH*xSG^IWrxB&%_?Pj4>DwBPWI@$qc#;9`Pca*q92uFmAynpyy>X(jK?e$C{DZ z^5QEES@gmEN%#o=65WctfhYJ0T%ogKSq)C$7jm|F4qsI#~i_WTd&sN z$Qxr0`iq>IP60O=PS97nK1IG3dWQJVtF^!Lfg9T`pJtt8kNt$$gUSke8(w)iY?EdO zUbOubAsBlqvWcRdzo>t;ai*O=uYa|xqMe`6zk0~d2RUCG&NO`&;j0j+6Y{aR}c0-0(R_kBWfX<91rC)uB8Q&bM)%(<`Inj{^|4 z^=I5j)M(uoh_{?}`T|jnH%bioS!I8 zT~x9$sIEU(oUZfZcK&>Ex+>8|p}PJ;v0Ueac3u{1#i;T8U$rf1>3pk;+ESF~#pi=- zpHJtsT^1FeMkpi zl{;Ol1NuWpng1;x9DT+Zmcn?gR>D1=QSoP-n2P4aKkv(@f`8XUbp>> z--tuYciPT4mN6UiELJpE#e7xz9rkhE#kh}{9q;-0&u9gGL`VErr%6ta*TQ(Xlaxe0 zw>TSp2Is^G;8S?k#>R|`9oOJ_^A_7vmpNhPb(sU8C?3xqy6r`=I_?vHw|QW_r*Xm| z>WTAZVUJz4BYLE7MnHSuFL>!x2M^XPDNw()tyIs6H)f**~Q_7VGJ zT*bU9)4}yRI>ve3 z<6-bP_-1aD*oSy_Vn$r{it`?yV~ork0C6hz)B+xO!Q?{r1DU{%o2|fZzl!VxdK9>U zKaWF#cXTy8h@LRs?h#+mN6)9+CBBDVFRU*Xuea7Q^jJ4>F5rO|urI(F>0t3ymxoun zeK4NKu1ddS-_Y&!!}$Hq?L)+X(FG}<+yy_ZePy2|au8V)O%6S|zU)&R_I}nrEO9L* z`QsG!P~aK%V&!?(p|Xyb{YjUpzL{hUxX@F|B^ZtJ039}=FVUOy3tjq3lm+0z*CvK2 zcsHO^(d)=Id0`!KE*%Z7$-5&T*7w8p^_gMaLRd>jjy`KWz%hGuf?o>zMX|3d>o#p| zp6yA{TCeEqI(cuGXu1B<4Yn_(uWxRm3o%gWfK7_>039}pg@Hd`7i{_d%DeUTo#f!c&*a0~dX8GWle*DO+iYISByn@e@qX%cn+G z;T7g6fxF%peuH=PitpVFKRezN&kJY14h3BDJos&@ukD&>BmYTs*plj?E~5kc2qZd0 zou&5CSLis)6>p%e%_(W_gMP_IhrRsOU+e1xBJ*<_9U=%!>miI(81T^2RIC-NDKCP=%kyNuR^xz zFZPXbI{N6Pqye}`*BkETH^UR;E0HTw$31)t-r1wJWj9+q-_kV!KaP9$txoGPGu=hL zyW3^fQm{`5^{=^TP4n~ei4NX<(AMQpccOuGn(d1qn-T1Il@91c_ONM$LE{r-A?hP& z5cb#?Uey1S`d7idbRjkt{n$2VC!CSrj-5n@w0J)7UC=cx9q;;v^-I`D)mPCs=x2N( z_9zLqLijS>6^>?;_5Fsn^(KM?*<)=PYmi$sXwpg0BG#+AksV|ZeI}$FNPfTT4nKmk zz{A+nTz8oKXpOV^RF3~>6WVlAve8i<7+Z+0$a21(Ht~nnAmDc-IZ!Njq3r?jVSHa~ zj`)5%`4N^6kjW+b(s1Q^LAU^?@VwjBv_4X6A8jpcTt^N6qtA0c5d5*9aKLH6vDs_Y znT~N^8~@#Uc2w(F_3eYqpMihbdnf3+zz0DdGQCuj1?qL0!c*9>CLKr24;p|U_lrcI z1^HuaB_GppPaDcZsn}WY#5l8^=Y@OL?XnjMJkR>%d|h(BR$KjC>3j8yrua3CtsJj* z6s}EwsZQz*`@sa=k?RkC2cFIMsTDHJcIWuFwZ!a!D*9859*o~=bjWFdUBKoSvPsnG z1$}@$B#vh^5Z>lX0Jpc)iM?k`=mg zZ&r*Jk!Ott={G8Y06yGM@DJC(7OXw3Impugkad&QZ&uFr{ftTNTkp8%$iD4- ztHZz7u}j}enAo8`)AYTCmcGewA9Xd~;Yd2eb$1-&27TnVVWM35rj_N&Vr99iSY2*d zp}j%x9xta3>;0d%@0F0(*^-0KG{8T_zs+gDnoPz9=95Z?%ohL9jJOW5g?yb0Z4hS< z{&?<(bjE$q(@|#+3y;}%K)^rW?8x!YUi$1AKfbr6>y3uU4!DngtL?3UO^?O#hHiJB zH9F`U1p^msNo{OgwyE_UgJIDCIyfz@?$}PGv&omywKEO)b|2%sL<8}t#>lolI@;n{ z$pGUB=1!2KJcfzh!KT6Y#`CgCN#Bd_EBo*QbIy<4->Eh6!g;;$-HYuP?6PlRaL@3+ zC(tb69z4grT})TtOHr`t?Bk&$`SliLE}FB=i0bkx+APh5k7mB0poqe_OKz$V<(!5_wnZv-s`x>&lJ8xKf<~BDXx$4 z8FxrG)%f4>kRMz45A}gl^IaX+;Jaz>lxHIi&`0QPkJVQ2b=8Iu=5LUJUVR~KHny8_Rvy<0dgo9J|M=t456^v_I{t&7 z9%H|IWFKU2b6hu_gR_YTL@VLJc;4|Y{I=~?^IKh`OvWSQ3dxD#A9)jgN548&!T-L? z6qC#3(7yd3dlUTH%zjA@=#R@oiw40q1z)SB3$XS17?Sxk?5FucJ&XsS5q_)u{dLS2 zIxVRaKR@XmY%K+yA|K89envPS5UhOfqRY2@jQ9Co&C$4L+_Mp{9KC>RFFF1*8caPZ z+}$nQ3D4vD-cUiU*_~Z!VCv>`gcm0#k8SJifPwsCL_Z`tZpXnaja$iR<e%Yj7V=A-^oX0udMC2Zr3+mjs=~A-f^6B6iud8Mh`1KFs$zuY5x^| zPyJjnq;DvJTbBX!4!F$>kTF>= zzG$X<(lEk@0|%dGVy|$-_l`1MQ$L3m)_&HvAOp>PtII&} zb)$Y&9gL0f&%v7&`9g|UZpWWwOw~;Q-0#smRx7To_ld6u-VglIsCP0Rsq#tGmBO8m zNyE57_!q1xj$ez{Ay>IyjXdt!yeq^Eum{3DHW?d{?|o07iQB`cd{>I^OYyxUlY<%^ zutlS{itfWfHj`YN4(fpaq=&-&svc4wMFZM*z5yP5c-a73pW6-p=zjS@yzlz5qARgiIh@FQUZPD&ZRlBt!H>*?AQ#jR4LE|kdQ8~% zpSHFl&7m=NhwqBrsj@?bZ#mfft6eRtej|HKCt$AiDTEvJF{Rp$xj2fD@Ne9Wu4 z+_Yy3{boMJWR@f6e z*Hb*pJV~lca2uVWffeE1;)NVrJYfD@^nY68fU51y`^CBU&2*6WiS|^8^Euoc6`S5} zYL%8{;NKd_3ZnzJR9)eqATzxS&MW?zZu8qzS%V3@NpP4?$95<-on4jKxmWph|xIQ z9Laa>W`prPi5KO2`7rlNoGtOE!I$~_Gr;F?+R@~-C9{dg5={afoNvi%%i-r7{L?q& zo;nTx@(n7nmj?VB{Lmm3@x9Ii&qv%FKlGq?vOXLB6JNnMQGRJhIw*&qxnkxJJNZCd z$42m+zlUCBTM^

*?S%ehJRj?A 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 literal 0 HcmV?d00001 diff --git "a/snake_09_cpp/\350\264\252\345\220\203\350\233\207_private.h" "b/snake_09_cpp/\350\264\252\345\220\203\350\233\207_private.h" new file mode 100644 index 0000000..1d55bc6 --- /dev/null +++ "b/snake_09_cpp/\350\264\252\345\220\203\350\233\207_private.h" @@ -0,0 +1,23 @@ +/* THIS FILE WILL BE OVERWRITTEN BY DEV-C++ */ +/* DO NOT EDIT ! */ + +#ifndef ̰_PRIVATE_H +#define ̰_PRIVATE_H + +/* VERSION DEFINITIONS */ +#define VER_STRING "1.1.1.1" +#define VER_MAJOR 1 +#define VER_MINOR 1 +#define VER_RELEASE 1 +#define VER_BUILD 1 +#define COMPANY_NAME "CZY_JERRYST_Һæ" +#define FILE_VERSION "V1.1" +#define FILE_DESCRIPTION "̰" +#define INTERNAL_NAME "̰" +#define LEGAL_COPYRIGHT "" +#define LEGAL_TRADEMARKS "" +#define ORIGINAL_FILENAME "̰" +#define PRODUCT_NAME "̰" +#define PRODUCT_VERSION "V1.1" + +#endif /*̰_PRIVATE_H*/ diff --git "a/snake_09_cpp/\350\264\252\345\220\203\350\233\207_private.rc" "b/snake_09_cpp/\350\264\252\345\220\203\350\233\207_private.rc" new file mode 100644 index 0000000..d8cb2d9 --- /dev/null +++ "b/snake_09_cpp/\350\264\252\345\220\203\350\233\207_private.rc" @@ -0,0 +1,37 @@ +/* THIS FILE WILL BE OVERWRITTEN BY DEV-C++ */ +/* DO NOT EDIT! */ + +#include // include for version info constants + + +A ICON MOVEABLE PURE LOADONCALL DISCARDABLE "̰.ico" + +// +// TO CHANGE VERSION INFORMATION, EDIT PROJECT OPTIONS... +// +1 VERSIONINFO +FILEVERSION 1,1,1,1 +PRODUCTVERSION 1,1,1,1 +FILETYPE VFT_APP +{ + BLOCK "StringFileInfo" + { + BLOCK "080404E4" + { + VALUE "CompanyName", "CZY_JERRYST_Һæ" + VALUE "FileVersion", "V1.1" + VALUE "FileDescription", "̰" + VALUE "InternalName", "̰" + VALUE "LegalCopyright", "" + VALUE "LegalTrademarks", "" + VALUE "OriginalFilename", "̰" + VALUE "ProductName", "̰" + VALUE "ProductVersion", "V1.1" + } + } + BLOCK "VarFileInfo" + { + VALUE "Translation", 0x0804, 1252 + } +} +