2 Commits

Author SHA1 Message Date
felicianoa237 30dc582241 The code now properly updates and writes to the console. 2025-03-24 19:11:24 -05:00
felicianoa237 806041eaaa Updated code 2025-03-24 09:02:39 -05:00
25 changed files with 418 additions and 1793 deletions
+1 -1
View File
@@ -3,4 +3,4 @@ project(ConsoleMenu C)
set(CMAKE_C_STANDARD 17) set(CMAKE_C_STANDARD 17)
add_executable(ConsoleMenu main.c entities.h console_functions.c player_functions.c entities.c game.c game.h) add_executable(ConsoleMenu main.c entities.h console_functions.c player_functions.c entities.c game.c game.h console_function.h)
File diff suppressed because it is too large Load Diff
@@ -1,116 +0,0 @@
{
"inputs" :
[
{
"path" : "CMakeLists.txt"
},
{
"isGenerated" : true,
"path" : "cmake-build-debug/CMakeFiles/3.25.2/CMakeSystem.cmake"
},
{
"isCMake" : true,
"isExternal" : true,
"path" : "C:/Users/tony/AppData/Local/Programs/CLion/bin/cmake/win/x64/share/cmake-3.25/Modules/CMakeSystemSpecificInitialize.cmake"
},
{
"isGenerated" : true,
"path" : "cmake-build-debug/CMakeFiles/3.25.2/CMakeCCompiler.cmake"
},
{
"isCMake" : true,
"isExternal" : true,
"path" : "C:/Users/tony/AppData/Local/Programs/CLion/bin/cmake/win/x64/share/cmake-3.25/Modules/CMakeSystemSpecificInformation.cmake"
},
{
"isCMake" : true,
"isExternal" : true,
"path" : "C:/Users/tony/AppData/Local/Programs/CLion/bin/cmake/win/x64/share/cmake-3.25/Modules/CMakeGenericSystem.cmake"
},
{
"isCMake" : true,
"isExternal" : true,
"path" : "C:/Users/tony/AppData/Local/Programs/CLion/bin/cmake/win/x64/share/cmake-3.25/Modules/CMakeInitializeConfigs.cmake"
},
{
"isCMake" : true,
"isExternal" : true,
"path" : "C:/Users/tony/AppData/Local/Programs/CLion/bin/cmake/win/x64/share/cmake-3.25/Modules/Platform/Windows.cmake"
},
{
"isCMake" : true,
"isExternal" : true,
"path" : "C:/Users/tony/AppData/Local/Programs/CLion/bin/cmake/win/x64/share/cmake-3.25/Modules/Platform/WindowsPaths.cmake"
},
{
"isCMake" : true,
"isExternal" : true,
"path" : "C:/Users/tony/AppData/Local/Programs/CLion/bin/cmake/win/x64/share/cmake-3.25/Modules/CMakeCInformation.cmake"
},
{
"isCMake" : true,
"isExternal" : true,
"path" : "C:/Users/tony/AppData/Local/Programs/CLion/bin/cmake/win/x64/share/cmake-3.25/Modules/CMakeLanguageInformation.cmake"
},
{
"isCMake" : true,
"isExternal" : true,
"path" : "C:/Users/tony/AppData/Local/Programs/CLion/bin/cmake/win/x64/share/cmake-3.25/Modules/Compiler/GNU-C.cmake"
},
{
"isCMake" : true,
"isExternal" : true,
"path" : "C:/Users/tony/AppData/Local/Programs/CLion/bin/cmake/win/x64/share/cmake-3.25/Modules/Compiler/GNU.cmake"
},
{
"isCMake" : true,
"isExternal" : true,
"path" : "C:/Users/tony/AppData/Local/Programs/CLion/bin/cmake/win/x64/share/cmake-3.25/Modules/Compiler/CMakeCommonCompilerMacros.cmake"
},
{
"isCMake" : true,
"isExternal" : true,
"path" : "C:/Users/tony/AppData/Local/Programs/CLion/bin/cmake/win/x64/share/cmake-3.25/Modules/Platform/Windows-GNU-C.cmake"
},
{
"isCMake" : true,
"isExternal" : true,
"path" : "C:/Users/tony/AppData/Local/Programs/CLion/bin/cmake/win/x64/share/cmake-3.25/Modules/Platform/Windows-GNU.cmake"
},
{
"isGenerated" : true,
"path" : "cmake-build-debug/CMakeFiles/3.25.2/CMakeRCCompiler.cmake"
},
{
"isCMake" : true,
"isExternal" : true,
"path" : "C:/Users/tony/AppData/Local/Programs/CLion/bin/cmake/win/x64/share/cmake-3.25/Modules/CMakeRCInformation.cmake"
},
{
"isCMake" : true,
"isExternal" : true,
"path" : "C:/Users/tony/AppData/Local/Programs/CLion/bin/cmake/win/x64/share/cmake-3.25/Modules/Platform/Windows-windres.cmake"
},
{
"isCMake" : true,
"isExternal" : true,
"path" : "C:/Users/tony/AppData/Local/Programs/CLion/bin/cmake/win/x64/share/cmake-3.25/Modules/Platform/Windows-GNU-C-ABI.cmake"
},
{
"isCMake" : true,
"isExternal" : true,
"path" : "C:/Users/tony/AppData/Local/Programs/CLion/bin/cmake/win/x64/share/cmake-3.25/Modules/CMakeCommonLanguageInclude.cmake"
}
],
"kind" : "cmakeFiles",
"paths" :
{
"build" : "C:/Users/tony/CLionProjects/ConsoleMenu/cmake-build-debug",
"source" : "C:/Users/tony/CLionProjects/ConsoleMenu"
},
"version" :
{
"major" : 1,
"minor" : 0
}
}
@@ -1,60 +0,0 @@
{
"configurations" :
[
{
"directories" :
[
{
"build" : ".",
"jsonFile" : "directory-.-Debug-d0094a50bb2071803777.json",
"minimumCMakeVersion" :
{
"string" : "3.25"
},
"projectIndex" : 0,
"source" : ".",
"targetIndexes" :
[
0
]
}
],
"name" : "Debug",
"projects" :
[
{
"directoryIndexes" :
[
0
],
"name" : "ConsoleMenu",
"targetIndexes" :
[
0
]
}
],
"targets" :
[
{
"directoryIndex" : 0,
"id" : "ConsoleMenu::@6890427a1f51a3e7e1df",
"jsonFile" : "target-ConsoleMenu-Debug-f48b0a9821e7dfeadbdf.json",
"name" : "ConsoleMenu",
"projectIndex" : 0
}
]
}
],
"kind" : "codemodel",
"paths" :
{
"build" : "C:/Users/tony/CLionProjects/ConsoleMenu/cmake-build-debug",
"source" : "C:/Users/tony/CLionProjects/ConsoleMenu"
},
"version" :
{
"major" : 2,
"minor" : 4
}
}
@@ -1,108 +0,0 @@
{
"cmake" :
{
"generator" :
{
"multiConfig" : false,
"name" : "Ninja"
},
"paths" :
{
"cmake" : "C:/Users/tony/AppData/Local/Programs/CLion/bin/cmake/win/x64/bin/cmake.exe",
"cpack" : "C:/Users/tony/AppData/Local/Programs/CLion/bin/cmake/win/x64/bin/cpack.exe",
"ctest" : "C:/Users/tony/AppData/Local/Programs/CLion/bin/cmake/win/x64/bin/ctest.exe",
"root" : "C:/Users/tony/AppData/Local/Programs/CLion/bin/cmake/win/x64/share/cmake-3.25"
},
"version" :
{
"isDirty" : false,
"major" : 3,
"minor" : 25,
"patch" : 2,
"string" : "3.25.2",
"suffix" : ""
}
},
"objects" :
[
{
"jsonFile" : "codemodel-v2-9df17108c187408da78d.json",
"kind" : "codemodel",
"version" :
{
"major" : 2,
"minor" : 4
}
},
{
"jsonFile" : "cache-v2-6b62abc1f814621609b8.json",
"kind" : "cache",
"version" :
{
"major" : 2,
"minor" : 0
}
},
{
"jsonFile" : "cmakeFiles-v1-4e459d7f7cf078158571.json",
"kind" : "cmakeFiles",
"version" :
{
"major" : 1,
"minor" : 0
}
},
{
"jsonFile" : "toolchains-v1-1e1a127bbafb6ee7eed5.json",
"kind" : "toolchains",
"version" :
{
"major" : 1,
"minor" : 0
}
}
],
"reply" :
{
"cache-v2" :
{
"jsonFile" : "cache-v2-6b62abc1f814621609b8.json",
"kind" : "cache",
"version" :
{
"major" : 2,
"minor" : 0
}
},
"cmakeFiles-v1" :
{
"jsonFile" : "cmakeFiles-v1-4e459d7f7cf078158571.json",
"kind" : "cmakeFiles",
"version" :
{
"major" : 1,
"minor" : 0
}
},
"codemodel-v2" :
{
"jsonFile" : "codemodel-v2-9df17108c187408da78d.json",
"kind" : "codemodel",
"version" :
{
"major" : 2,
"minor" : 4
}
},
"toolchains-v1" :
{
"jsonFile" : "toolchains-v1-1e1a127bbafb6ee7eed5.json",
"kind" : "toolchains",
"version" :
{
"major" : 1,
"minor" : 0
}
}
}
}
@@ -1,156 +0,0 @@
{
"artifacts" :
[
{
"path" : "ConsoleMenu.exe"
},
{
"path" : "ConsoleMenu.pdb"
}
],
"backtrace" : 1,
"backtraceGraph" :
{
"commands" :
[
"add_executable"
],
"files" :
[
"CMakeLists.txt"
],
"nodes" :
[
{
"file" : 0
},
{
"command" : 0,
"file" : 0,
"line" : 6,
"parent" : 0
}
]
},
"compileGroups" :
[
{
"compileCommandFragments" :
[
{
"fragment" : "-g -fdiagnostics-color=always"
}
],
"language" : "C",
"languageStandard" :
{
"backtraces" :
[
1
],
"standard" : "17"
},
"sourceIndexes" :
[
0,
2,
3,
4,
5
]
}
],
"id" : "ConsoleMenu::@6890427a1f51a3e7e1df",
"link" :
{
"commandFragments" :
[
{
"fragment" : "-g",
"role" : "flags"
},
{
"fragment" : "",
"role" : "flags"
},
{
"fragment" : "-lkernel32 -luser32 -lgdi32 -lwinspool -lshell32 -lole32 -loleaut32 -luuid -lcomdlg32 -ladvapi32",
"role" : "libraries"
}
],
"language" : "C"
},
"name" : "ConsoleMenu",
"nameOnDisk" : "ConsoleMenu.exe",
"paths" :
{
"build" : ".",
"source" : "."
},
"sourceGroups" :
[
{
"name" : "Source Files",
"sourceIndexes" :
[
0,
2,
3,
4,
5
]
},
{
"name" : "Header Files",
"sourceIndexes" :
[
1,
6
]
}
],
"sources" :
[
{
"backtrace" : 1,
"compileGroupIndex" : 0,
"path" : "main.c",
"sourceGroupIndex" : 0
},
{
"backtrace" : 1,
"path" : "entities.h",
"sourceGroupIndex" : 1
},
{
"backtrace" : 1,
"compileGroupIndex" : 0,
"path" : "console_functions.c",
"sourceGroupIndex" : 0
},
{
"backtrace" : 1,
"compileGroupIndex" : 0,
"path" : "player_functions.c",
"sourceGroupIndex" : 0
},
{
"backtrace" : 1,
"compileGroupIndex" : 0,
"path" : "entities.c",
"sourceGroupIndex" : 0
},
{
"backtrace" : 1,
"compileGroupIndex" : 0,
"path" : "game.c",
"sourceGroupIndex" : 0
},
{
"backtrace" : 1,
"path" : "game.h",
"sourceGroupIndex" : 1
}
],
"type" : "EXECUTABLE"
}
Binary file not shown.
+76 -84
View File
@@ -1,85 +1,77 @@
# ninja log v5 # ninja log v5
3 1008 7545154734921636 CMakeFiles/ConsoleMenu.dir/main.c.obj ab8c74299a2b00ff 13 2084 7625688199439200 CMakeFiles/ConsoleMenu.dir/player_functions.c.obj d63ac7cc54d8411
18 1907 7545152137064387 CMakeFiles/ConsoleMenu.dir/player_functions.c.obj d63ac7cc54d8411 3 831 7625717514102176 CMakeFiles/ConsoleMenu.dir/main.c.obj ab8c74299a2b00ff
1009 1129 7545154736125086 ConsoleMenu.exe a452fe5c1354fa0d 1 477 7645280952986507 build.ninja 2b14472fb8f0c09a
1 227 7545247606076621 build.ninja 2b14472fb8f0c09a 831 935 7625717515114534 ConsoleMenu.exe 6ee1256a8d50e764
3 1968 7545152137663078 CMakeFiles/ConsoleMenu.dir/console_functions.c.obj c674d5c87e9aa975 4 792 7625703535624470 CMakeFiles/ConsoleMenu.dir/console_functions.c.obj c674d5c87e9aa975
3 769 7545152749969510 CMakeFiles/ConsoleMenu.dir/entities.c.obj 78b9bb0960cc62cc 3 860 7625711257855012 CMakeFiles/ConsoleMenu.dir/entities.c.obj 78b9bb0960cc62cc
12 2275 7545248945928611 CMakeFiles/ConsoleMenu.dir/game.c.obj 1a9d5bebd0f3c854 4 834 7625710297853826 CMakeFiles/ConsoleMenu.dir/game.c.obj 1a9d5bebd0f3c854
20 2282 7545248945938675 CMakeFiles/ConsoleMenu.dir/entities.c.obj 78b9bb0960cc62cc 5 162 7645413198923448 ConsoleMenu.exe 2ef535f549c67042
29 2300 7545248946081367 CMakeFiles/ConsoleMenu.dir/player_functions.c.obj d63ac7cc54d8411 5 1408 7645419558677171 CMakeFiles/ConsoleMenu.dir/main.c.obj ab8c74299a2b00ff
4 2305 7545248946267744 CMakeFiles/ConsoleMenu.dir/main.c.obj ab8c74299a2b00ff 4 418 7645419737599471 ConsoleMenu.exe 2ef535f549c67042
3 1092 7545249111168624 CMakeFiles/ConsoleMenu.dir/main.c.obj ab8c74299a2b00ff 4 1203 7645424577250045 CMakeFiles/ConsoleMenu.dir/main.c.obj ab8c74299a2b00ff
9 1095 7545249111188630 CMakeFiles/ConsoleMenu.dir/game.c.obj 1a9d5bebd0f3c854 5 1087 7645425052079821 CMakeFiles/ConsoleMenu.dir/game.c.obj 1a9d5bebd0f3c854
1095 1221 7545249112346265 ConsoleMenu.exe 6ee1256a8d50e764 1088 1233 7645425053479246 ConsoleMenu.exe 2ef535f549c67042
3 1074 7545253913741594 CMakeFiles/ConsoleMenu.dir/main.c.obj ab8c74299a2b00ff 10 1423 7645445709624114 CMakeFiles/ConsoleMenu.dir/main.c.obj ab8c74299a2b00ff
3 802 7545254130112138 CMakeFiles/ConsoleMenu.dir/game.c.obj 1a9d5bebd0f3c854 15 1474 7645445710183732 CMakeFiles/ConsoleMenu.dir/game.c.obj 1a9d5bebd0f3c854
803 929 7545254131335171 ConsoleMenu.exe 6ee1256a8d50e764 4 1480 7645445710244964 CMakeFiles/ConsoleMenu.dir/console_functions.c.obj c674d5c87e9aa975
3 1404 7545256380431651 CMakeFiles/ConsoleMenu.dir/main.c.obj ab8c74299a2b00ff 1480 2178 7645445717010738 ConsoleMenu.exe 2ef535f549c67042
19 1437 7545256380766806 CMakeFiles/ConsoleMenu.dir/player_functions.c.obj d63ac7cc54d8411 4 1284 7645447554282685 CMakeFiles/ConsoleMenu.dir/main.c.obj ab8c74299a2b00ff
11 1448 7545256380886505 CMakeFiles/ConsoleMenu.dir/game.c.obj 1a9d5bebd0f3c854 10 1298 7645447554425076 CMakeFiles/ConsoleMenu.dir/game.c.obj 1a9d5bebd0f3c854
1448 1586 7545256382222365 ConsoleMenu.exe 6ee1256a8d50e764 1299 1444 7645447555847265 ConsoleMenu.exe 2ef535f549c67042
10 1385 7545256672044816 CMakeFiles/ConsoleMenu.dir/player_functions.c.obj d63ac7cc54d8411 4 1145 7645459685170949 CMakeFiles/ConsoleMenu.dir/console_functions.c.obj c674d5c87e9aa975
16 1446 7545256672661396 CMakeFiles/ConsoleMenu.dir/game.c.obj 1a9d5bebd0f3c854 1146 1317 7645459686849620 ConsoleMenu.exe 2ef535f549c67042
3 1459 7545256672783822 CMakeFiles/ConsoleMenu.dir/main.c.obj ab8c74299a2b00ff 5 1245 7645460011642079 CMakeFiles/ConsoleMenu.dir/game.c.obj 1a9d5bebd0f3c854
1460 1585 7545256674016192 ConsoleMenu.exe 6ee1256a8d50e764 1245 1687 7645460015916005 ConsoleMenu.exe 2ef535f549c67042
3 1463 7545264030304392 CMakeFiles/ConsoleMenu.dir/main.c.obj ab8c74299a2b00ff 5 1321 7645465383731351 CMakeFiles/ConsoleMenu.dir/console_functions.c.obj c674d5c87e9aa975
18 1503 7545264030717698 CMakeFiles/ConsoleMenu.dir/player_functions.c.obj d63ac7cc54d8411 1322 1463 7645465385085236 ConsoleMenu.exe 2ef535f549c67042
10 1512 7545264030807675 CMakeFiles/ConsoleMenu.dir/game.c.obj 1a9d5bebd0f3c854 5 1278 7645465990374029 CMakeFiles/ConsoleMenu.dir/console_functions.c.obj c674d5c87e9aa975
1512 1696 7545264032195597 ConsoleMenu.exe 6ee1256a8d50e764 1279 1433 7645465991864651 ConsoleMenu.exe 2ef535f549c67042
3 843 7545265315979314 CMakeFiles/ConsoleMenu.dir/game.c.obj 1a9d5bebd0f3c854 5 1108 7645466229923873 CMakeFiles/ConsoleMenu.dir/console_functions.c.obj c674d5c87e9aa975
844 969 7545265317196961 ConsoleMenu.exe 6ee1256a8d50e764 1109 1257 7645466231378992 ConsoleMenu.exe 2ef535f549c67042
17 1779 7553835536257438 CMakeFiles/ConsoleMenu.dir/player_functions.c.obj d63ac7cc54d8411 4 1032 7645470822849306 CMakeFiles/ConsoleMenu.dir/console_functions.c.obj c674d5c87e9aa975
5 1815 7553835536786828 CMakeFiles/ConsoleMenu.dir/main.c.obj ab8c74299a2b00ff 1033 1142 7645470823897172 ConsoleMenu.exe 2ef535f549c67042
27 1896 7553835537664807 CMakeFiles/ConsoleMenu.dir/game.c.obj 1a9d5bebd0f3c854 3 828 7645471331618470 CMakeFiles/ConsoleMenu.dir/game.c.obj 1a9d5bebd0f3c854
1897 2392 7553835542553934 ConsoleMenu.exe 6ee1256a8d50e764 829 932 7645471332648107 ConsoleMenu.exe 2ef535f549c67042
21 1307 7553836227383069 CMakeFiles/ConsoleMenu.dir/player_functions.c.obj d63ac7cc54d8411 3 845 7645475383162038 CMakeFiles/ConsoleMenu.dir/game.c.obj 1a9d5bebd0f3c854
13 1348 7553836227799499 CMakeFiles/ConsoleMenu.dir/game.c.obj 1a9d5bebd0f3c854 845 954 7645475384358262 ConsoleMenu.exe 2ef535f549c67042
4 1366 7553836227979851 CMakeFiles/ConsoleMenu.dir/main.c.obj ab8c74299a2b00ff 8 1095 7645479346271740 CMakeFiles/ConsoleMenu.dir/game.c.obj 1a9d5bebd0f3c854
1366 1563 7553836229895457 ConsoleMenu.exe 6ee1256a8d50e764 3 1111 7645479346443807 CMakeFiles/ConsoleMenu.dir/console_functions.c.obj c674d5c87e9aa975
5 1099 7553837252361658 CMakeFiles/ConsoleMenu.dir/game.c.obj 1a9d5bebd0f3c854 1112 1221 7645479347497116 ConsoleMenu.exe 2ef535f549c67042
1100 1280 7553837254131198 ConsoleMenu.exe 6ee1256a8d50e764 3 816 7645480212199491 CMakeFiles/ConsoleMenu.dir/console_functions.c.obj c674d5c87e9aa975
5 1061 7553837924806424 CMakeFiles/ConsoleMenu.dir/game.c.obj 1a9d5bebd0f3c854 816 920 7645480213194607 ConsoleMenu.exe 2ef535f549c67042
1062 1222 7553837926379752 ConsoleMenu.exe 6ee1256a8d50e764 3 835 7645480905529445 CMakeFiles/ConsoleMenu.dir/console_functions.c.obj c674d5c87e9aa975
14 1395 7553838397856521 CMakeFiles/ConsoleMenu.dir/player_functions.c.obj d63ac7cc54d8411 836 947 7645480906596385 ConsoleMenu.exe 2ef535f549c67042
4 1406 7553838397948576 CMakeFiles/ConsoleMenu.dir/main.c.obj ab8c74299a2b00ff 4 812 7645481278901744 CMakeFiles/ConsoleMenu.dir/console_functions.c.obj c674d5c87e9aa975
24 1427 7553838398199242 CMakeFiles/ConsoleMenu.dir/game.c.obj 1a9d5bebd0f3c854 812 928 7645481279999306 ConsoleMenu.exe 2ef535f549c67042
1428 1594 7553838399808600 ConsoleMenu.exe 6ee1256a8d50e764 4 944 7645488504822898 CMakeFiles/ConsoleMenu.dir/main.c.obj ab8c74299a2b00ff
14 1228 7553839337171990 CMakeFiles/ConsoleMenu.dir/game.c.obj 1a9d5bebd0f3c854 8 964 7645488505016099 CMakeFiles/ConsoleMenu.dir/game.c.obj 1a9d5bebd0f3c854
5 1235 7553839337255649 CMakeFiles/ConsoleMenu.dir/main.c.obj ab8c74299a2b00ff 964 1076 7645488506076272 ConsoleMenu.exe 2ef535f549c67042
23 1266 7553839337576822 CMakeFiles/ConsoleMenu.dir/player_functions.c.obj d63ac7cc54d8411 3 865 7645512443051273 CMakeFiles/ConsoleMenu.dir/main.c.obj ab8c74299a2b00ff
1266 1440 7553839339218303 ConsoleMenu.exe 6ee1256a8d50e764 866 979 7645512444134750 ConsoleMenu.exe 2ef535f549c67042
5 1196 7553849428231366 CMakeFiles/ConsoleMenu.dir/game.c.obj 1a9d5bebd0f3c854 3 814 7645513636976167 CMakeFiles/ConsoleMenu.dir/console_functions.c.obj c674d5c87e9aa975
1197 1368 7553849429918855 ConsoleMenu.exe 6ee1256a8d50e764 815 924 7645513638034281 ConsoleMenu.exe 2ef535f549c67042
4 1118 7553854193266873 CMakeFiles/ConsoleMenu.dir/game.c.obj 1a9d5bebd0f3c854 3 994 7645627797349886 CMakeFiles/ConsoleMenu.dir/main.c.obj ab8c74299a2b00ff
1119 1315 7553854195202271 ConsoleMenu.exe 6ee1256a8d50e764 8 997 7645627797369831 CMakeFiles/ConsoleMenu.dir/game.c.obj 1a9d5bebd0f3c854
4 1089 7553854386065941 CMakeFiles/ConsoleMenu.dir/game.c.obj 1a9d5bebd0f3c854 997 1153 7645627798898135 ConsoleMenu.exe 2ef535f549c67042
1090 1272 7553854387837308 ConsoleMenu.exe 6ee1256a8d50e764 3 818 7645627982698648 CMakeFiles/ConsoleMenu.dir/game.c.obj 1a9d5bebd0f3c854
5 1203 7553855267147942 CMakeFiles/ConsoleMenu.dir/game.c.obj 1a9d5bebd0f3c854 819 926 7645627983727012 ConsoleMenu.exe 2ef535f549c67042
1203 1371 7553855268788042 ConsoleMenu.exe 6ee1256a8d50e764 2 815 7645628886753851 CMakeFiles/ConsoleMenu.dir/main.c.obj ab8c74299a2b00ff
4 1099 7553856763180841 CMakeFiles/ConsoleMenu.dir/game.c.obj 1a9d5bebd0f3c854 815 927 7645628887845902 ConsoleMenu.exe 2ef535f549c67042
1100 1273 7553856764885654 ConsoleMenu.exe 6ee1256a8d50e764 4 800 7645630881080351 CMakeFiles/ConsoleMenu.dir/main.c.obj ab8c74299a2b00ff
44 1715 7553862047538850 CMakeFiles/ConsoleMenu.dir/player_functions.c.obj d63ac7cc54d8411 801 909 7645630882140797 ConsoleMenu.exe 2ef535f549c67042
4 1739 7553862047865424 CMakeFiles/ConsoleMenu.dir/console_functions.c.obj c674d5c87e9aa975 3 1289 7645631706369138 CMakeFiles/ConsoleMenu.dir/main.c.obj ab8c74299a2b00ff
32 1771 7553862048192898 CMakeFiles/ConsoleMenu.dir/entities.c.obj 78b9bb0960cc62cc 7 1330 7645631706762994 CMakeFiles/ConsoleMenu.dir/console_functions.c.obj c674d5c87e9aa975
13 1788 7553862048376112 CMakeFiles/ConsoleMenu.dir/main.c.obj ab8c74299a2b00ff 1330 1436 7645631707813025 ConsoleMenu.exe 2ef535f549c67042
23 1800 7553862048476110 CMakeFiles/ConsoleMenu.dir/game.c.obj 1a9d5bebd0f3c854 3 801 7645632393660413 CMakeFiles/ConsoleMenu.dir/main.c.obj ab8c74299a2b00ff
14 1227 7553868722889781 CMakeFiles/ConsoleMenu.dir/main.c.obj ab8c74299a2b00ff 801 910 7645632394701062 ConsoleMenu.exe 2ef535f549c67042
5 1277 7553868723476548 CMakeFiles/ConsoleMenu.dir/console_functions.c.obj c674d5c87e9aa975 3 945 7645638235374293 CMakeFiles/ConsoleMenu.dir/main.c.obj ab8c74299a2b00ff
24 1288 7553868723600204 CMakeFiles/ConsoleMenu.dir/game.c.obj 1a9d5bebd0f3c854 946 1056 7645638236434535 ConsoleMenu.exe 2ef535f549c67042
26 1284 7553869267086750 CMakeFiles/ConsoleMenu.dir/game.c.obj 1a9d5bebd0f3c854 3 806 7645638520031763 CMakeFiles/ConsoleMenu.dir/main.c.obj ab8c74299a2b00ff
7 1286 7553869267096749 CMakeFiles/ConsoleMenu.dir/console_functions.c.obj c674d5c87e9aa975 806 915 7645638521102466 ConsoleMenu.exe 2ef535f549c67042
17 1319 7553869267456901 CMakeFiles/ConsoleMenu.dir/main.c.obj ab8c74299a2b00ff 3 828 7645638830580025 CMakeFiles/ConsoleMenu.dir/main.c.obj ab8c74299a2b00ff
20 1282 7553869689729157 CMakeFiles/ConsoleMenu.dir/console_functions.c.obj c674d5c87e9aa975 828 931 7645638831608021 ConsoleMenu.exe 2ef535f549c67042
31 1286 7553869689759446 CMakeFiles/ConsoleMenu.dir/game.c.obj 1a9d5bebd0f3c854 3 873 7645641087483204 CMakeFiles/ConsoleMenu.dir/main.c.obj ab8c74299a2b00ff
7 1299 7553869689901292 CMakeFiles/ConsoleMenu.dir/main.c.obj ab8c74299a2b00ff 874 990 7645641088596195 ConsoleMenu.exe 2ef535f549c67042
4 1245 7553870072878975 CMakeFiles/ConsoleMenu.dir/console_functions.c.obj c674d5c87e9aa975 3 852 7645641546138714 CMakeFiles/ConsoleMenu.dir/main.c.obj ab8c74299a2b00ff
14 1265 7553870073090966 CMakeFiles/ConsoleMenu.dir/main.c.obj ab8c74299a2b00ff 853 965 7645641547224906 ConsoleMenu.exe 2ef535f549c67042
22 1274 7553870073161201 CMakeFiles/ConsoleMenu.dir/game.c.obj 1a9d5bebd0f3c854
4 1273 7553870155856137 CMakeFiles/ConsoleMenu.dir/console_functions.c.obj c674d5c87e9aa975
13 1276 7553870155866613 CMakeFiles/ConsoleMenu.dir/main.c.obj ab8c74299a2b00ff
21 1298 7553870156139317 CMakeFiles/ConsoleMenu.dir/game.c.obj 1a9d5bebd0f3c854
4 1063 7553870591625851 CMakeFiles/ConsoleMenu.dir/game.c.obj 1a9d5bebd0f3c854
13 1225 7553871088321944 CMakeFiles/ConsoleMenu.dir/console_functions.c.obj c674d5c87e9aa975
4 1267 7553871088785163 CMakeFiles/ConsoleMenu.dir/main.c.obj ab8c74299a2b00ff
22 1285 7553871088955178 CMakeFiles/ConsoleMenu.dir/game.c.obj 1a9d5bebd0f3c854
+25 -9
View File
@@ -1,6 +1,6 @@
# This is the CMakeCache file. # This is the CMakeCache file.
# For build in directory: c:/Users/tony/CLionProjects/ConsoleMenu/cmake-build-debug # For build in directory: c:/Users/tony/CLionProjects/ConsoleMenu/cmake-build-debug
# It was generated by CMake: C:/Users/tony/AppData/Local/Programs/CLion/bin/cmake/win/x64/bin/cmake.exe # It was generated by CMake: C:/Program Files/CMake/bin/cmake.exe
# You can edit this file to change values found and used by cmake. # You can edit this file to change values found and used by cmake.
# If you do not want to change any of the values, simply exit the editor. # If you do not want to change any of the values, simply exit the editor.
# If you do want to change a value, simply edit, save, and exit the editor. # If you do want to change a value, simply edit, save, and exit the editor.
@@ -28,7 +28,7 @@ CMAKE_BUILD_TYPE:STRING=Debug
CMAKE_COLOR_DIAGNOSTICS:BOOL=ON CMAKE_COLOR_DIAGNOSTICS:BOOL=ON
//C compiler //C compiler
CMAKE_C_COMPILER:FILEPATH=C:/Users/tony/AppData/Local/Programs/CLion/bin/mingw/bin/gcc.exe CMAKE_C_COMPILER:STRING=C:/Users/tony/AppData/Local/Programs/CLion/bin/mingw/bin/gcc.exe
//A wrapper around 'ar' adding the appropriate '--plugin' option //A wrapper around 'ar' adding the appropriate '--plugin' option
// for the GCC compiler // for the GCC compiler
@@ -74,6 +74,9 @@ CMAKE_EXE_LINKER_FLAGS_RELEASE:STRING=
//Flags used by the linker during RELWITHDEBINFO builds. //Flags used by the linker during RELWITHDEBINFO builds.
CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO:STRING= CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO:STRING=
//Enable/Disable output of build database during the build.
CMAKE_EXPORT_BUILD_DATABASE:BOOL=
//Enable/Disable output of compile commands during generation. //Enable/Disable output of compile commands during generation.
CMAKE_EXPORT_COMPILE_COMMANDS:BOOL= CMAKE_EXPORT_COMPILE_COMMANDS:BOOL=
@@ -204,6 +207,9 @@ CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO:STRING=
//Path to a program. //Path to a program.
CMAKE_STRIP:FILEPATH=C:/Users/tony/AppData/Local/Programs/CLion/bin/mingw/bin/strip.exe CMAKE_STRIP:FILEPATH=C:/Users/tony/AppData/Local/Programs/CLion/bin/mingw/bin/strip.exe
//Path to a program.
CMAKE_TAPI:FILEPATH=CMAKE_TAPI-NOTFOUND
//If this value is on, makefiles will be generated without the //If this value is on, makefiles will be generated without the
// .SILENT directive, and all commands will be echoed to the console // .SILENT directive, and all commands will be echoed to the console
// during the make. This is useful for debugging only. With Visual // during the make. This is useful for debugging only. With Visual
@@ -231,17 +237,17 @@ CMAKE_AR-ADVANCED:INTERNAL=1
//This is the directory where this CMakeCache.txt was created //This is the directory where this CMakeCache.txt was created
CMAKE_CACHEFILE_DIR:INTERNAL=c:/Users/tony/CLionProjects/ConsoleMenu/cmake-build-debug CMAKE_CACHEFILE_DIR:INTERNAL=c:/Users/tony/CLionProjects/ConsoleMenu/cmake-build-debug
//Major version of cmake used to create the current loaded cache //Major version of cmake used to create the current loaded cache
CMAKE_CACHE_MAJOR_VERSION:INTERNAL=3 CMAKE_CACHE_MAJOR_VERSION:INTERNAL=4
//Minor version of cmake used to create the current loaded cache //Minor version of cmake used to create the current loaded cache
CMAKE_CACHE_MINOR_VERSION:INTERNAL=25 CMAKE_CACHE_MINOR_VERSION:INTERNAL=0
//Patch version of cmake used to create the current loaded cache //Patch version of cmake used to create the current loaded cache
CMAKE_CACHE_PATCH_VERSION:INTERNAL=2 CMAKE_CACHE_PATCH_VERSION:INTERNAL=0
//Path to CMake executable. //Path to CMake executable.
CMAKE_COMMAND:INTERNAL=C:/Users/tony/AppData/Local/Programs/CLion/bin/cmake/win/x64/bin/cmake.exe CMAKE_COMMAND:INTERNAL=C:/Program Files/CMake/bin/cmake.exe
//Path to cpack program executable. //Path to cpack program executable.
CMAKE_CPACK_COMMAND:INTERNAL=C:/Users/tony/AppData/Local/Programs/CLion/bin/cmake/win/x64/bin/cpack.exe CMAKE_CPACK_COMMAND:INTERNAL=C:/Program Files/CMake/bin/cpack.exe
//Path to ctest program executable. //Path to ctest program executable.
CMAKE_CTEST_COMMAND:INTERNAL=C:/Users/tony/AppData/Local/Programs/CLion/bin/cmake/win/x64/bin/ctest.exe CMAKE_CTEST_COMMAND:INTERNAL=C:/Program Files/CMake/bin/ctest.exe
//ADVANCED property for variable: CMAKE_C_COMPILER //ADVANCED property for variable: CMAKE_C_COMPILER
CMAKE_C_COMPILER-ADVANCED:INTERNAL=1 CMAKE_C_COMPILER-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_C_COMPILER_AR //ADVANCED property for variable: CMAKE_C_COMPILER_AR
@@ -262,6 +268,8 @@ CMAKE_C_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
CMAKE_C_STANDARD_LIBRARIES-ADVANCED:INTERNAL=1 CMAKE_C_STANDARD_LIBRARIES-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_DLLTOOL //ADVANCED property for variable: CMAKE_DLLTOOL
CMAKE_DLLTOOL-ADVANCED:INTERNAL=1 CMAKE_DLLTOOL-ADVANCED:INTERNAL=1
//Path to cache edit program executable.
CMAKE_EDIT_COMMAND:INTERNAL=C:/Program Files/CMake/bin/cmake-gui.exe
//Executable file format //Executable file format
CMAKE_EXECUTABLE_FORMAT:INTERNAL=Unknown CMAKE_EXECUTABLE_FORMAT:INTERNAL=Unknown
//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS //ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS
@@ -274,6 +282,8 @@ CMAKE_EXE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
CMAKE_EXE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 CMAKE_EXE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO //ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO
CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_EXPORT_BUILD_DATABASE
CMAKE_EXPORT_BUILD_DATABASE-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_EXPORT_COMPILE_COMMANDS //ADVANCED property for variable: CMAKE_EXPORT_COMPILE_COMMANDS
CMAKE_EXPORT_COMPILE_COMMANDS-ADVANCED:INTERNAL=1 CMAKE_EXPORT_COMPILE_COMMANDS-ADVANCED:INTERNAL=1
//Name of external makefile project generator. //Name of external makefile project generator.
@@ -291,6 +301,8 @@ CMAKE_GENERATOR_TOOLSET:INTERNAL=
CMAKE_HOME_DIRECTORY:INTERNAL=C:/Users/tony/CLionProjects/ConsoleMenu CMAKE_HOME_DIRECTORY:INTERNAL=C:/Users/tony/CLionProjects/ConsoleMenu
//ADVANCED property for variable: CMAKE_LINKER //ADVANCED property for variable: CMAKE_LINKER
CMAKE_LINKER-ADVANCED:INTERNAL=1 CMAKE_LINKER-ADVANCED:INTERNAL=1
//Name of CMakeLists files to read
CMAKE_LIST_FILE_NAME:INTERNAL=CMakeLists.txt
//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS //ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS
CMAKE_MODULE_LINKER_FLAGS-ADVANCED:INTERNAL=1 CMAKE_MODULE_LINKER_FLAGS-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_DEBUG //ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_DEBUG
@@ -329,7 +341,7 @@ CMAKE_RC_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_READELF //ADVANCED property for variable: CMAKE_READELF
CMAKE_READELF-ADVANCED:INTERNAL=1 CMAKE_READELF-ADVANCED:INTERNAL=1
//Path to CMake installation. //Path to CMake installation.
CMAKE_ROOT:INTERNAL=C:/Users/tony/AppData/Local/Programs/CLion/bin/cmake/win/x64/share/cmake-3.25 CMAKE_ROOT:INTERNAL=C:/Program Files/CMake/share/cmake-4.0
//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS //ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS
CMAKE_SHARED_LINKER_FLAGS-ADVANCED:INTERNAL=1 CMAKE_SHARED_LINKER_FLAGS-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_DEBUG //ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_DEBUG
@@ -356,8 +368,12 @@ CMAKE_STATIC_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1
CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_STRIP //ADVANCED property for variable: CMAKE_STRIP
CMAKE_STRIP-ADVANCED:INTERNAL=1 CMAKE_STRIP-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_TAPI
CMAKE_TAPI-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_VERBOSE_MAKEFILE //ADVANCED property for variable: CMAKE_VERBOSE_MAKEFILE
CMAKE_VERBOSE_MAKEFILE-ADVANCED:INTERNAL=1 CMAKE_VERBOSE_MAKEFILE-ADVANCED:INTERNAL=1
//linker supports push/pop state //linker supports push/pop state
_CMAKE_C_LINKER_PUSHPOP_STATE_SUPPORTED:INTERNAL=TRUE
//linker supports push/pop state
_CMAKE_LINKER_PUSHPOP_STATE_SUPPORTED:INTERNAL=TRUE _CMAKE_LINKER_PUSHPOP_STATE_SUPPORTED:INTERNAL=TRUE
@@ -1,4 +1,10 @@
C:\Users\tony\AppData\Local\Programs\CLion\bin\cmake\win\x64\bin\cmake.exe -DCMAKE_BUILD_TYPE=Debug -DCMAKE_MAKE_PROGRAM=C:/Users/tony/AppData/Local/Programs/CLion/bin/ninja/win/x64/ninja.exe -G Ninja -S C:\Users\tony\CLionProjects\ConsoleMenu -B C:\Users\tony\CLionProjects\ConsoleMenu\cmake-build-debug "C:\Program Files\CMake\bin\cmake.exe" -DCMAKE_BUILD_TYPE=Debug -DCMAKE_MAKE_PROGRAM=C:/Users/tony/AppData/Local/Programs/CLion/bin/ninja/win/x64/ninja.exe -G Ninja -S C:\Users\tony\CLionProjects\ConsoleMenu -B C:\Users\tony\CLionProjects\ConsoleMenu\cmake-build-debug
-- Configuring done -- The C compiler identification is GNU 11.2.0
-- Generating done -- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: C:/Users/tony/AppData/Local/Programs/CLion/bin/mingw/bin/gcc.exe - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Configuring done (1.9s)
-- Generating done (0.1s)
-- Build files have been written to: C:/Users/tony/CLionProjects/ConsoleMenu/cmake-build-debug -- Build files have been written to: C:/Users/tony/CLionProjects/ConsoleMenu/cmake-build-debug
+5 -5
View File
@@ -1,5 +1,5 @@
# CMAKE generated file: DO NOT EDIT! # CMAKE generated file: DO NOT EDIT!
# Generated by "Ninja" Generator, CMake Version 3.25 # Generated by "Ninja" Generator, CMake Version 4.0
# This file contains all the rules used to get the outputs files # This file contains all the rules used to get the outputs files
# built from the input files. # built from the input files.
@@ -14,10 +14,10 @@
############################################# #############################################
# Rule for compiling C files. # Rule for compiling C files.
rule C_COMPILER__ConsoleMenu_Debug rule C_COMPILER__ConsoleMenu_unscanned_Debug
depfile = $DEP_FILE depfile = $DEP_FILE
deps = gcc deps = gcc
command = C:\Users\tony\AppData\Local\Programs\CLion\bin\mingw\bin\gcc.exe $DEFINES $INCLUDES $FLAGS -MD -MT $out -MF $DEP_FILE -o $out -c $in command = ${LAUNCHER}${CODE_CHECK}C:\Users\tony\AppData\Local\Programs\CLion\bin\mingw\bin\gcc.exe $DEFINES $INCLUDES $FLAGS -MD -MT $out -MF $DEP_FILE -o $out -c $in
description = Building C object $out description = Building C object $out
@@ -25,7 +25,7 @@ rule C_COMPILER__ConsoleMenu_Debug
# Rule for linking C executable. # Rule for linking C executable.
rule C_EXECUTABLE_LINKER__ConsoleMenu_Debug rule C_EXECUTABLE_LINKER__ConsoleMenu_Debug
command = cmd.exe /C "$PRE_LINK && C:\Users\tony\AppData\Local\Programs\CLion\bin\mingw\bin\gcc.exe $FLAGS $LINK_FLAGS $in -o $TARGET_FILE -Wl,--out-implib,$TARGET_IMPLIB -Wl,--major-image-version,0,--minor-image-version,0 $LINK_PATH $LINK_LIBRARIES && $POST_BUILD" command = C:\WINDOWS\system32\cmd.exe /C "$PRE_LINK && C:\Users\tony\AppData\Local\Programs\CLion\bin\mingw\bin\gcc.exe $FLAGS $LINK_FLAGS $in -o $TARGET_FILE -Wl,--out-implib,$TARGET_IMPLIB -Wl,--major-image-version,0,--minor-image-version,0 $LINK_PATH $LINK_LIBRARIES && $POST_BUILD"
description = Linking C executable $TARGET_FILE description = Linking C executable $TARGET_FILE
restat = $RESTAT restat = $RESTAT
@@ -42,7 +42,7 @@ rule CUSTOM_COMMAND
# Rule for re-running cmake. # Rule for re-running cmake.
rule RERUN_CMAKE rule RERUN_CMAKE
command = C:\Users\tony\AppData\Local\Programs\CLion\bin\cmake\win\x64\bin\cmake.exe --regenerate-during-build -SC:\Users\tony\CLionProjects\ConsoleMenu -BC:\Users\tony\CLionProjects\ConsoleMenu\cmake-build-debug command = "C:\Program Files\CMake\bin\cmake.exe" --regenerate-during-build -SC:\Users\tony\CLionProjects\ConsoleMenu -BC:\Users\tony\CLionProjects\ConsoleMenu\cmake-build-debug
description = Re-running CMake... description = Re-running CMake...
generator = 1 generator = 1
@@ -1,3 +1,3 @@
Start testing: Dec 23 11:39 Central Standard Time Start testing: Mar 24 19:02 Central Daylight Time
---------------------------------------------------------- ----------------------------------------------------------
End testing: Dec 23 11:39 Central Standard Time End testing: Mar 24 19:02 Central Daylight Time
File diff suppressed because one or more lines are too long
+16 -4
View File
@@ -32,18 +32,30 @@ if(NOT DEFINED CMAKE_CROSSCOMPILING)
set(CMAKE_CROSSCOMPILING "FALSE") set(CMAKE_CROSSCOMPILING "FALSE")
endif() endif()
# Set default install directory permissions. # Set path to fallback-tool for dependency-resolution.
if(NOT DEFINED CMAKE_OBJDUMP) if(NOT DEFINED CMAKE_OBJDUMP)
set(CMAKE_OBJDUMP "C:/Users/tony/AppData/Local/Programs/CLion/bin/mingw/bin/objdump.exe") set(CMAKE_OBJDUMP "C:/Users/tony/AppData/Local/Programs/CLion/bin/mingw/bin/objdump.exe")
endif() endif()
string(REPLACE ";" "\n" CMAKE_INSTALL_MANIFEST_CONTENT
"${CMAKE_INSTALL_MANIFEST_FILES}")
if(CMAKE_INSTALL_LOCAL_ONLY)
file(WRITE "C:/Users/tony/CLionProjects/ConsoleMenu/cmake-build-debug/install_local_manifest.txt"
"${CMAKE_INSTALL_MANIFEST_CONTENT}")
endif()
if(CMAKE_INSTALL_COMPONENT) if(CMAKE_INSTALL_COMPONENT)
if(CMAKE_INSTALL_COMPONENT MATCHES "^[a-zA-Z0-9_.+-]+$")
set(CMAKE_INSTALL_MANIFEST "install_manifest_${CMAKE_INSTALL_COMPONENT}.txt") set(CMAKE_INSTALL_MANIFEST "install_manifest_${CMAKE_INSTALL_COMPONENT}.txt")
else()
string(MD5 CMAKE_INST_COMP_HASH "${CMAKE_INSTALL_COMPONENT}")
set(CMAKE_INSTALL_MANIFEST "install_manifest_${CMAKE_INST_COMP_HASH}.txt")
unset(CMAKE_INST_COMP_HASH)
endif()
else() else()
set(CMAKE_INSTALL_MANIFEST "install_manifest.txt") set(CMAKE_INSTALL_MANIFEST "install_manifest.txt")
endif() endif()
string(REPLACE ";" "\n" CMAKE_INSTALL_MANIFEST_CONTENT if(NOT CMAKE_INSTALL_LOCAL_ONLY)
"${CMAKE_INSTALL_MANIFEST_FILES}") file(WRITE "C:/Users/tony/CLionProjects/ConsoleMenu/cmake-build-debug/${CMAKE_INSTALL_MANIFEST}"
file(WRITE "C:/Users/tony/CLionProjects/ConsoleMenu/cmake-build-debug/${CMAKE_INSTALL_MANIFEST}"
"${CMAKE_INSTALL_MANIFEST_CONTENT}") "${CMAKE_INSTALL_MANIFEST_CONTENT}")
endif()
+32
View File
@@ -0,0 +1,32 @@
#ifndef CONSOLE_FUNCTIONS_H
#define CONSOLE_FUNCTIONS_H
#include <windows.h>
#include <stdio.h>
#include <stdbool.h>
#include "entities.h"
// Function declarations
// Function to clear the console
void clearConsole();
// Function to enable ANSI support
void enableANSI();
// Function to set cursor position
void gotoxy(int x, int y);
// Function to update the console with an entity's data
bool updateConsole(struct Entity *pEntity);
// Function to get console buffer information
void getBufferInfo(HANDLE *hHandle, CONSOLE_SCREEN_BUFFER_INFO *pCSBI);
// Function to print a list of entities to the console
void printList(HANDLE *pHConsole, DWORD *pCharsWritten, Entity *e);
// Function to print console bounds information
void printBoundsToConsole(HANDLE *pHConsole, SMALL_RECT *pScreenBounds);
#endif // CONSOLE_FUNCTIONS_H
+106 -24
View File
@@ -2,13 +2,10 @@
// Created by tony on 11/27/2024. // Created by tony on 11/27/2024.
// //
#include <windows.h> #include "console_function.h"
#include <stdio.h>
#include <stdbool.h>
#include "entities.h"
// Function to clear the console // Function to clear the console
static void clearConsole() void clearConsole()
{ {
HANDLE hConsole = GetStdHandle(STD_OUTPUT_HANDLE); HANDLE hConsole = GetStdHandle(STD_OUTPUT_HANDLE);
COORD coordScreen = {0, 0}; COORD coordScreen = {0, 0};
@@ -31,7 +28,7 @@ static void clearConsole()
SetConsoleCursorPosition(hConsole, coordScreen); SetConsoleCursorPosition(hConsole, coordScreen);
} }
static void enableANSI() void enableANSI()
{ {
HANDLE hOut = GetStdHandle(STD_OUTPUT_HANDLE); HANDLE hOut = GetStdHandle(STD_OUTPUT_HANDLE);
DWORD dwMode = 0; DWORD dwMode = 0;
@@ -45,15 +42,15 @@ static void enableANSI()
} }
// Function to set cursor position // Function to set cursor position
static void gotoxy(int x, int y) void gotoxy(int x, int y)
{ {
COORD coord; COORD coord;
coord.X = x; coord.X = (short)x;
coord.Y = y; coord.Y = (short)y;
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), coord); SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), coord);
} }
static bool updateConsole(struct Entity *pEntity) bool updateConsole(struct Entity *pEntity)
{ {
HANDLE lhConsole = GetStdHandle(STD_OUTPUT_HANDLE); HANDLE lhConsole = GetStdHandle(STD_OUTPUT_HANDLE);
DWORD pCharsWritten; DWORD pCharsWritten;
@@ -70,27 +67,112 @@ static bool updateConsole(struct Entity *pEntity)
return 1; return 1;
} }
static void getBufferInfo(HANDLE *hHandle, CONSOLE_SCREEN_BUFFER_INFO *pCSBI) void getBufferInfo(HANDLE *hHandle, CONSOLE_SCREEN_BUFFER_INFO *pCSBI)
{ {
GetConsoleScreenBufferInfo(hHandle, pCSBI); GetConsoleScreenBufferInfo(hHandle, pCSBI);
} }
void printList(HANDLE *pHConsole, DWORD **pCharsWritten, Entity *e) void printList(HANDLE *pHConsole, DWORD *pCharsWritten, Entity *pE)
{
//HANDLE hConsole = GetStdHandle(STD_OUTPUT_HANDLE);
DWORD *CharsWritten;
while (e != NULL)
{ {
if (!WriteConsoleOutputCharacter(pHConsole, HANDLE hConsole = GetStdHandle(STD_OUTPUT_HANDLE);
&e->avatar, //COORD coordScreen = {0, 0};
DWORD cCharsWritten;
CONSOLE_SCREEN_BUFFER_INFO csbi;
GetConsoleScreenBufferInfo(hConsole, &csbi);
HANDLE *bhConsole;
DWORD *bCharsWritten;
for (int counter = 0; counter < 5 ;counter++)
{
Entity bE = pE[counter];
WriteConsoleOutputCharacter(pHConsole,
(LPCSTR) pE[counter].avatar,
1, 1,
e->position, pE[counter].position,
&pCharsWritten)) { pCharsWritten);
// printf("Error: Unable to write to console. Error code: %ld\n", GetLastError()); /*if (!WriteConsoleOutputCharacter(pHConsole,
} &bE.avatar,
1,
bE.position,
pCharsWritten)) {
// // printf("Error: Unable to write to console. Error code: %ld\n", GetLastError());
}*/
// printf("Avatar :%s",&e->avatar); // printf("Avatar :%s",&e->avatar);
e = (Entity *) e->next; //e = (Entity *) e->next;
} }
} }
void printBoundsToConsole(HANDLE *pHConsole,
/*DWORD *pCharsWritten,*/
SMALL_RECT *pScreenBounds)
{
char strLeft[12]; // Buffer to hold the integer as a string
char strTop[12]; // Buffer to hold the integer as a string
char strRight[12]; // Buffer to hold the integer as a string
char strBottom[12]; // Buffer to hold the integer as a string
snprintf(strLeft, sizeof(strLeft), "%d", pScreenBounds->Left);
snprintf(strTop, sizeof(strTop), "%d", pScreenBounds->Top);
snprintf(strRight, sizeof(strRight), "%d", pScreenBounds->Right);
snprintf(strBottom, sizeof(strBottom), "%d", pScreenBounds->Bottom);
size_t lLeft = strlen(strLeft);
size_t lTop = strlen(strTop);
size_t lRight = strlen(strRight);
size_t lBottom = strlen(strBottom);
CHAR_INFO bLeft[12]; // Same size as strBuffer to avoid overflow
CHAR_INFO bTop[12]; // Same size as strBuffer to avoid overflow
CHAR_INFO bRight[12]; // Same size as strBuffer to avoid overflow
CHAR_INFO bBottom[12]; // Same size as strBuffer to avoid overflow
for (size_t i = 0; i < lLeft; i++)
{
bLeft[i].Char.AsciiChar = strLeft[i]; // Assign character
bLeft[i].Attributes = FOREGROUND_GREEN | FOREGROUND_RED | FOREGROUND_INTENSITY; // Yellow text
}
for (size_t i = 0; i < lTop; i++)
{
bTop[i].Char.AsciiChar = strTop[i]; // Assign character
bTop[i].Attributes = FOREGROUND_GREEN | FOREGROUND_RED | FOREGROUND_INTENSITY; // Yellow text
}
for (size_t i = 0; i < lRight; i++)
{
bRight[i].Char.AsciiChar = strRight[i]; // Assign character
bRight[i].Attributes = FOREGROUND_GREEN | FOREGROUND_RED | FOREGROUND_INTENSITY; // Yellow text
}
for (size_t i = 0; i < lBottom; i++)
{
bBottom[i].Char.AsciiChar = strBottom[i]; // Assign character
bBottom[i].Attributes = FOREGROUND_GREEN | FOREGROUND_RED | FOREGROUND_INTENSITY; // Yellow text
}
SMALL_RECT rLeft = {0, 0, (SHORT)(lLeft - 1), 0}; // Start at top-left corner, width of the string
SMALL_RECT rTop = {0, 1, (SHORT)(lTop - 1), 0}; // Start at top-left corner, width of the string
SMALL_RECT rRight = {0, 2, (SHORT)(lRight - 1), 0}; // Start at top-left corner, width of the string
SMALL_RECT rBottom = {0, 3, (SHORT)(lBottom - 1), 0}; // Start at top-left corner, width of the string
COORD sLeft = {(SHORT)lLeft, 1}; // Width is the length of the string, height is 1
COORD sTop = {(SHORT)lTop, 1}; // Width is the length of the string, height is 1
COORD sRight = {(SHORT)lRight, 1}; // Width is the length of the string, height is 1
COORD sBottom = {(SHORT)lBottom, 1}; // Width is the length of the string, height is 1
COORD cLeft = {0, 0}; // Starting point in the CHAR_INFO buffer
COORD cTop = {0, 1}; // Starting point in the CHAR_INFO buffer
COORD cRight = {0, 2}; // Starting point in the CHAR_INFO buffer
COORD cBottom = {0, 3}; // Starting point in the CHAR_INFO buffer
WriteConsoleOutput(pHConsole,
bLeft,
sLeft,
cLeft,
&rLeft);
WriteConsoleOutput(pHConsole,
bTop,
sTop,
cTop,
&rTop);
WriteConsoleOutput(pHConsole,
bRight,
sRight,
cRight,
&rRight);
WriteConsoleOutput(pHConsole,
bBottom,
sBottom,
cBottom,
&rBottom);
}
+19 -11
View File
@@ -4,7 +4,7 @@
#include "entities.h" #include "entities.h"
Entity* entity_INIT(int id, char avatar, char type, COORD position) { /*Entity* entity_INIT(int id, char avatar, char type, COORD position) {
Entity* e = (Entity *)malloc(sizeof(Entity)); Entity* e = (Entity *)malloc(sizeof(Entity));
e->id = id; e->id = id;
@@ -14,23 +14,30 @@ Entity* entity_INIT(int id, char avatar, char type, COORD position) {
e->next = NULL; e->next = NULL;
return e; return e;
} }*/
void append(Entity **head, int id, char avatar, char type, COORD position) void append(Entity *head, int id, char avatar, char type, COORD position)
{ {
Entity *e = entity_INIT(id, avatar, type, position); /* Entity e =
if (*head == NULL) { {
*head = e; id,
avatar,
type,
position
};
if (head == NULL) {
head = &e;
} else { } else {
Entity* temp = *head; Entity *temp = *head;
while (temp->next != NULL) { while (temp->next != NULL) {
temp = temp->next; temp = temp->next;
} }
temp->next = e; temp->next = e;
} }*/
} }
void freeList(Entity **e) /*
void freeList(Entity *e)
{ {
Entity *current = *e; Entity *current = *e;
Entity *next; Entity *next;
@@ -43,6 +50,7 @@ void freeList(Entity **e)
*e = NULL; *e = NULL;
} }
*/
void updateEntityPostition(struct Entity *pEntity, int direction) void updateEntityPostition(struct Entity *pEntity, int direction)
{ {
switch (direction) switch (direction)
@@ -64,7 +72,7 @@ void updateEntityPostition(struct Entity *pEntity, int direction)
} }
}; };
struct Entity **createEntity(int id, char avatar, char type, COORD position) /*struct Entity **createEntity(int id, char avatar, char type, COORD position)
{ {
struct Entity *e = (Entity *)malloc(sizeof(Entity)); struct Entity *e = (Entity *)malloc(sizeof(Entity));
@@ -74,7 +82,7 @@ struct Entity **createEntity(int id, char avatar, char type, COORD position)
e->position = position; e->position = position;
return (Entity **)e; return (Entity **)e;
} }*/
void freeEntities(struct Entity *pEntity) void freeEntities(struct Entity *pEntity)
{ {
+2 -2
View File
@@ -18,9 +18,9 @@ typedef struct Entity
Entity* entity_INIT(int id, char avatar, char type, COORD position); Entity* entity_INIT(int id, char avatar, char type, COORD position);
void append(Entity **head, int id, char avatar, char type, COORD position); void append(Entity *head, int id, char avatar, char type, COORD position);
void freeList(Entity **e); void freeList(Entity *e);
void updateEntityPostition(struct Entity *pPlayer, int direction); void updateEntityPostition(struct Entity *pPlayer, int direction);
+23 -19
View File
@@ -4,10 +4,12 @@
#include "game.h" #include "game.h"
void gameINIT(Game *pGame) void consoleInit(ConsoleApp *pGame)
{ {
pGame->hConsole = GetStdHandle(STD_OUTPUT_HANDLE); ConsoleApp game = *pGame;
GetConsoleScreenBufferInfo(&pGame->hConsole, &pGame->csbi); //HANDLE hConsole = &pGame->hConsole;
//CONSOLE_SCREEN_BUFFER_INFO *pCsbi = &game.csbi;
//GetConsoleScreenBufferInfo(hConsole, pCsbi);
clearConsole(); clearConsole();
SMALL_RECT region = { SMALL_RECT region = {
@@ -18,14 +20,14 @@ void gameINIT(Game *pGame)
}; };
// INIT Entities // INIT Entities
const int MAX_ENTITIES = 10; // const int MAX_ENTITIES = 10;
Entity *entities = NULL; Entity entities[10];
append(&entities, 0, 'X', 'P', (COORD) {(SHORT) 20, (SHORT) 20}); //Entity *pEntities = &entities;
append(&entities, 1, 'N', 'N', (COORD) {10, 10}); entities[0] = (Entity) {0, (char)'X', (char)'P', (COORD) {(SHORT) 20,(SHORT) 20}};
append(&entities, 2, 'N', 'N', (COORD) {11, 10}); entities[1] = (Entity) {1, (char)'N', (char)'N', (COORD) {(SHORT) 10,(SHORT) 10}};
append(&entities, 3, 'N', 'N', (COORD) {12, 10}); entities[2] = (Entity) {2, (char)'N', (char)'N', (COORD) {(SHORT) 11,(SHORT) 10}};
append(&entities, 4, 'N', 'N', (COORD) {13, 10}); entities[3] = (Entity) {3, (char)'N', (char)'N', (COORD) {(SHORT) 12,(SHORT) 10}};
struct Entity *bufferEntity; entities[4] = (Entity) {4, (char)'N', (char)'N', (COORD) {(SHORT) 13,(SHORT) 10}};
// INIT Clock targeting // INIT Clock targeting
const int targetFPS = 60; // Target frames per second const int targetFPS = 60; // Target frames per second
@@ -35,13 +37,15 @@ void gameINIT(Game *pGame)
bool run = true; bool run = true;
while (run) while (run)
{ {
GetConsoleScreenBufferInfo(&pGame->hConsole,
pGame->csbi);
printList(&pGame->hConsole,
pGame->charsWritten,
entities);
clock_t startTime = clock(); clock_t startTime = clock();
GetConsoleScreenBufferInfo(&pGame->hConsole, &pGame->csbi);
getUserInput(&entities[0], &region);
printList(&pGame->hConsole,*pGame->charsWritten,&entities);
// Calculate the elapsed time and delay if necessary // Calculate the elapsed time and delay if necessary
clock_t elapsedTime = clock() - startTime; clock_t elapsedTime = clock() - startTime;
int delayTime = frameDelay - (elapsedTime * 1000 / CLOCKS_PER_SEC); int delayTime = frameDelay - (elapsedTime * 1000 / CLOCKS_PER_SEC);
@@ -55,9 +59,9 @@ void gameINIT(Game *pGame)
if (GetAsyncKeyState(VK_ESCAPE)) if (GetAsyncKeyState(VK_ESCAPE))
{ {
run = false; run = false;
}; }
clearConsole(); clearConsole();
} }
freeList(&entities); //freeList(&entities);
} }
+6 -6
View File
@@ -9,17 +9,17 @@
#include <time.h> #include <time.h>
#include <stdbool.h> #include <stdbool.h>
#include "entities.h" #include "entities.h"
#include "console_functions.c" #include "console_function.h"
#include "player_functions.c" #include "player_functions.c"
typedef struct Game typedef struct ConsoleApp
{ {
int id; int id;
HANDLE hConsole; HANDLE *hConsole;
CONSOLE_SCREEN_BUFFER_INFO csbi; CONSOLE_SCREEN_BUFFER_INFO *csbi;
DWORD *charsWritten; DWORD *charsWritten;
} Game; } ConsoleApp;
void gameINIT(Game *pGame); void consoleInit(ConsoleApp *pGame);
#endif //CONSOLEMENU_GAME_H #endif //CONSOLEMENU_GAME_H
+64 -2
View File
@@ -12,8 +12,70 @@ int randomSeed[78] = {
int main() int main()
{ {
struct Game game; HANDLE hConsole = GetStdHandle(STD_OUTPUT_HANDLE);
gameINIT(&game); //COORD coordScreen = {0, 0};
DWORD cCharsWritten;
CONSOLE_SCREEN_BUFFER_INFO csbi;
GetConsoleScreenBufferInfo(hConsole, &csbi);
DWORD dwConSize;
//struct ConsoleApp game = {0, hConsole, &csbi, &cCharsWritten};
//ConsoleApp *pGame = &game;
//consoleInit(pGame);
Entity entities[10];
//Entity *pEntities = &entities;
entities[0] = (Entity) {0, (char)'X', (char)'P', (COORD) {(SHORT) 20,(SHORT) 20}};
entities[1] = (Entity) {1, (char)'N', (char)'N', (COORD) {(SHORT) 10,(SHORT) 10}};
entities[2] = (Entity) {2, (char)'N', (char)'N', (COORD) {(SHORT) 11,(SHORT) 10}};
entities[3] = (Entity) {3, (char)'N', (char)'N', (COORD) {(SHORT) 12,(SHORT) 10}};
entities[4] = (Entity) {4, (char)'N', (char)'N', (COORD) {(SHORT) 13,(SHORT) 10}};
// INIT Clock targeting
const int targetFPS = 60; // Target frames per second
const int frameDelay = 1000 / targetFPS; // Frame duration in milliseconds
// Main Loop
bool run = true;
while (run)
{
//GetConsoleScreenBufferInfo(hConsole, &csbi);
// printList(&hConsole,
// &cCharsWritten,
// entities);
getUserInput(&entities[0],&csbi.srWindow);
for (int counter = 0; counter < 5 ;counter++)
{
WriteConsoleOutputCharacter(hConsole,
&entities[counter].avatar,
1,
entities[counter].position,
&cCharsWritten);
}
clock_t startTime = clock();
// Calculate the elapsed time and delay if necessary
clock_t elapsedTime = clock() - startTime;
int delayTime = frameDelay - (elapsedTime * 1000 / CLOCKS_PER_SEC);
// Ensure the frame time does not exceed the target FPS
if (delayTime > 0)
{
Sleep(delayTime);
}
if (GetAsyncKeyState(VK_ESCAPE))
{
run = false;
}
clearConsole();
}
return 0; return 0;
} }