├── .clang-format ├── .github ├── ISSUE_TEMPLATE.md └── workflows │ ├── linux.yml │ └── windows.yml ├── .gitignore ├── .gitmodules ├── CMakeLists.txt ├── CONTRIBUTING.md ├── LICENSE ├── README.md ├── cmake ├── modules │ ├── ClangFormat.cmake │ ├── CurrentFunction.cmake │ ├── FindClangFormat.cmake │ ├── FindDirectX.cmake │ ├── FindFFmpeg.cmake │ ├── FindSDL2.cmake │ ├── FindWindowsSDK.cmake │ ├── ProductVersion.cmake │ ├── SetSail.cmake │ ├── SetSail.in │ ├── TargetExports.cmake │ ├── VersionInfo.in │ └── VersionResource.rc └── toolchains │ ├── i686-w64-mingw32.cmake │ └── x86_64-w64-mingw32.cmake ├── codecov.yml ├── deps ├── baseconfig │ ├── CMakeLists.txt │ ├── LICENSE │ ├── README.md │ ├── cmake │ │ ├── CheckFunctions.cmake │ │ └── CheckIntrinsics.cmake │ └── src │ │ ├── always.h │ │ ├── bittype.h │ │ ├── compiler.h │ │ ├── config.h.in │ │ ├── endiantype.h │ │ ├── gitverinfo.c.in │ │ ├── gitverinfo.h │ │ ├── intrinsics.h │ │ ├── macros.h │ │ ├── platform.h │ │ ├── sockets.h │ │ ├── stringex.c │ │ ├── stringex.h │ │ ├── strings │ │ └── strings.h │ │ ├── targetver.h │ │ ├── typeoperators.h │ │ ├── typesize.h │ │ ├── unichar.h │ │ ├── utf.h │ │ ├── win32compat.c │ │ └── win32compat.h ├── bink │ ├── CMakeLists.txt │ ├── bink.c │ ├── bink.def │ └── bink.h ├── captnlog │ ├── CMakeLists.txt │ ├── LICENSE │ ├── README.md │ ├── cmake │ │ └── FindGTK3.cmake │ └── src │ │ ├── captainslog.h │ │ ├── captnassert.c │ │ ├── captnlog.c │ │ ├── captnmessage.h │ │ ├── captnmessage_gtk.c │ │ ├── captnmessage_macos.m │ │ └── captnmessage_win32.c ├── miles │ ├── CMakeLists.txt │ ├── miles.c │ ├── miles.def │ └── miles.h ├── olddx │ ├── CMakeLists.txt │ ├── d3d8.h │ ├── d3d8.lib │ ├── d3d8caps.h │ ├── d3d8types.h │ ├── d3dx8.h │ ├── d3dx8.lib │ ├── d3dx8core.h │ ├── d3dx8effect.h │ ├── d3dx8math.h │ ├── d3dx8math.inl │ ├── d3dx8mesh.h │ ├── d3dx8shape.h │ ├── d3dx8tex.h │ ├── dinput.h │ ├── dinput8.lib │ ├── dxfile.h │ └── dxguid.lib └── stlport │ ├── BC50 │ ├── README │ ├── algorith.h │ ├── alloc.h │ ├── bak │ │ ├── stddef.h │ │ └── stdlib.h │ ├── bitset.h │ ├── cassert.h │ ├── cctype.h │ ├── cerrno.h │ ├── cfloat.h │ ├── climits.h │ ├── clocale.h │ ├── cmath.h │ ├── complex.h │ ├── csetjmp.h │ ├── csignal.h │ ├── cstdarg.h │ ├── cstddef.h │ ├── cstdio.h │ ├── cstdlib.h │ ├── cstring.h │ ├── ctime.h │ ├── cwchar.h │ ├── cwctype.h │ ├── deque.h │ ├── exceptio.h │ ├── fstream.h │ ├── function.h │ ├── hash_map.h │ ├── hash_set.h │ ├── iomanip.h │ ├── ios.h │ ├── iosfwd.h │ ├── iostream.h │ ├── istream.h │ ├── iterator.h │ ├── limits.h │ ├── list.h │ ├── locale.h │ ├── make_bc50.sh │ ├── map.h │ ├── memory.h │ ├── numeric.h │ ├── ostream.h │ ├── pthread_alloc.h │ ├── queue.h │ ├── rope.h │ ├── set.h │ ├── slist.h │ ├── sstream.h │ ├── stack.h │ ├── stdexcep.h │ ├── stl_tmpl.h │ ├── streambu.h │ ├── streambuf.h │ ├── string.h │ ├── strstrea.h │ ├── typeinfo.h │ ├── using │ │ ├── cstring.h │ │ ├── fstream.h │ │ ├── iomanip.h │ │ ├── ios.h │ │ ├── iosfwd.h │ │ ├── iostream.h │ │ ├── istream.h │ │ ├── locale.h │ │ ├── ostream.h │ │ ├── sstream.h │ │ ├── streambuf.h │ │ └── strstream.h │ ├── utility.h │ ├── valarray.h │ └── vector.h │ ├── algorithm │ ├── bitset │ ├── cassert │ ├── cctype │ ├── cerrno │ ├── cfloat │ ├── climits │ ├── clocale │ ├── cmath │ ├── complex │ ├── config │ ├── _epilog.h │ ├── _msvc_warnings_off.h │ ├── _prolog.h │ ├── new_compiler │ │ ├── README │ │ ├── configure │ │ ├── configure.in │ │ ├── stlconf.h.in │ │ └── unconfigure │ ├── stl_apcc.h │ ├── stl_apple.h │ ├── stl_as400.h │ ├── stl_bc.h │ ├── stl_como.h │ ├── stl_confix.h │ ├── stl_dec.h │ ├── stl_dec_vms.h │ ├── stl_fujitsu.h │ ├── stl_gcc.h │ ├── stl_hpacc.h │ ├── stl_ibm.h │ ├── stl_intel.h │ ├── stl_kai.h │ ├── stl_mlc.h │ ├── stl_msvc.h │ ├── stl_mwerks.h │ ├── stl_mycomp.h │ ├── stl_sco.h │ ├── stl_select_lib.h │ ├── stl_sgi.h │ ├── stl_solaris.h │ ├── stl_sunpro.h │ ├── stl_symantec.h │ ├── stl_watcom.h │ ├── stl_wince.h │ ├── stlcomp.h │ └── vc_select_lib.h │ ├── csetjmp │ ├── csignal │ ├── cstdarg │ ├── cstddef │ ├── cstdio │ ├── cstdlib │ ├── cstring │ ├── ctime │ ├── ctype.h │ ├── cwchar │ ├── cwctype │ ├── deque │ ├── exception │ ├── exception.h │ ├── export │ ├── export.sun │ ├── fstream │ ├── fstream.h │ ├── functional │ ├── hash_map │ ├── hash_set │ ├── iomanip │ ├── iomanip.h │ ├── ios │ ├── ios.h │ ├── iosfwd │ ├── iostream │ ├── iostream.h │ ├── istream │ ├── istream.h │ ├── iterator │ ├── limits │ ├── list │ ├── locale │ ├── locale.h │ ├── map │ ├── math.h │ ├── mem.h │ ├── memory │ ├── mmemory.h │ ├── new │ ├── new.h │ ├── numeric │ ├── old_hp │ ├── algo.h │ ├── algobase.h │ ├── alloc.h │ ├── bvector.h │ ├── defalloc.h │ ├── deque.h │ ├── export │ ├── function.h │ ├── hash_map.h │ ├── hash_set.h │ ├── hashtable.h │ ├── heap.h │ ├── iterator.h │ ├── list.h │ ├── map.h │ ├── multimap.h │ ├── multiset.h │ ├── numeric.h │ ├── pair.h │ ├── pthread_alloc.h │ ├── queue.h │ ├── rope.h │ ├── set.h │ ├── slist.h │ ├── stack.h │ ├── tempbuf.h │ ├── tree.h │ └── vector.h │ ├── ostream │ ├── ostream.h │ ├── pthread.h │ ├── pthread_alloc │ ├── queue │ ├── rlocks.h │ ├── rope │ ├── set │ ├── setjmp.h │ ├── signal.h │ ├── slist │ ├── sstream │ ├── stack │ ├── stdarg.h │ ├── stddef.h │ ├── stdexcept │ ├── stdio.h │ ├── stdio_streambuf │ ├── stdiostream.h │ ├── stdlib.h │ ├── stl │ ├── _abbrevs.h │ ├── _algo.c │ ├── _algo.h │ ├── _algobase.c │ ├── _algobase.h │ ├── _alloc.c │ ├── _alloc.h │ ├── _alloc_old.h │ ├── _auto_ptr.h │ ├── _bitset.c │ ├── _bitset.h │ ├── _bvector.h │ ├── _check_config.h │ ├── _cmath.h │ ├── _codecvt.h │ ├── _collate.h │ ├── _complex.c │ ├── _complex.h │ ├── _config.h │ ├── _config_compat.h │ ├── _config_compat_post.h │ ├── _construct.h │ ├── _ctraits_fns.h │ ├── _ctype.h │ ├── _cwchar.h │ ├── _deque.c │ ├── _deque.h │ ├── _epilog.h │ ├── _exception.h │ ├── _fstream.c │ ├── _fstream.h │ ├── _function.h │ ├── _function_base.h │ ├── _hash_fun.h │ ├── _hash_map.h │ ├── _hash_set.h │ ├── _hashtable.c │ ├── _hashtable.h │ ├── _heap.c │ ├── _heap.h │ ├── _ios.c │ ├── _ios.h │ ├── _ios_base.h │ ├── _iosfwd.h │ ├── _istream.c │ ├── _istream.h │ ├── _istreambuf_iterator.h │ ├── _iterator.h │ ├── _iterator_base.h │ ├── _iterator_old.h │ ├── _limits.c │ ├── _limits.h │ ├── _list.c │ ├── _list.h │ ├── _locale.h │ ├── _map.h │ ├── _messages_facets.h │ ├── _monetary.c │ ├── _monetary.h │ ├── _null_stream.h │ ├── _num_get.c │ ├── _num_get.h │ ├── _num_put.c │ ├── _num_put.h │ ├── _numeric.c │ ├── _numeric.h │ ├── _numpunct.h │ ├── _ostream.c │ ├── _ostream.h │ ├── _ostreambuf_iterator.h │ ├── _pair.h │ ├── _prolog.h │ ├── _pthread_alloc.c │ ├── _pthread_alloc.h │ ├── _ptrs_specialize.h │ ├── _queue.h │ ├── _range_errors.h │ ├── _raw_storage_iter.h │ ├── _relops.h │ ├── _relops_cont.h │ ├── _relops_template.h │ ├── _rope.c │ ├── _rope.h │ ├── _set.h │ ├── _set_operators.h │ ├── _site_config.h │ ├── _slist.c │ ├── _slist.h │ ├── _slist_base.c │ ├── _slist_base.h │ ├── _sparc_atomic.h │ ├── _sstream.c │ ├── _sstream.h │ ├── _stack.h │ ├── _stdio_file.h │ ├── _stream_iterator.h │ ├── _streambuf.c │ ├── _streambuf.h │ ├── _streambuf_iterator.h │ ├── _string.c │ ├── _string.h │ ├── _string_fwd.c │ ├── _string_fwd.h │ ├── _string_hash.h │ ├── _string_io.c │ ├── _string_io.h │ ├── _strstream.h │ ├── _tempbuf.c │ ├── _tempbuf.h │ ├── _threads.c │ ├── _threads.h │ ├── _time_facets.c │ ├── _time_facets.h │ ├── _tree.c │ ├── _tree.h │ ├── _uninitialized.h │ ├── _valarray.c │ ├── _valarray.h │ ├── _vector.c │ ├── _vector.h │ ├── c_locale.h │ ├── char_traits.h │ ├── concept_checks.h │ ├── debug │ │ ├── _debug.c │ │ ├── _debug.h │ │ ├── _deque.h │ │ ├── _hashtable.h │ │ ├── _iterator.h │ │ ├── _list.h │ │ ├── _slist.h │ │ ├── _string.h │ │ ├── _tree.h │ │ └── _vector.h │ ├── msl_string.h │ ├── type_traits.h │ └── wrappers │ │ ├── _deque.h │ │ ├── _hash_map.h │ │ ├── _hash_set.h │ │ ├── _list.h │ │ ├── _map.h │ │ ├── _mmap.h │ │ ├── _set.h │ │ ├── _slist.h │ │ └── _vector.h │ ├── stl_user_config.h │ ├── streambuf │ ├── streambuf.h │ ├── string │ ├── string.h │ ├── strstream │ ├── strstream.h │ ├── time.h │ ├── typeinfo │ ├── typeinfo.h │ ├── using │ ├── cstring │ ├── export │ ├── fstream │ ├── h │ │ ├── fstream.h │ │ ├── iomanip.h │ │ ├── iostream.h │ │ ├── ostream.h │ │ ├── streambuf.h │ │ └── strstream.h │ ├── iomanip │ ├── ios │ ├── iosfwd │ ├── iostream │ ├── istream │ ├── locale │ ├── ostream │ ├── sstream │ ├── streambuf │ └── strstream │ ├── utility │ ├── valarray │ ├── vector │ ├── wchar.h │ ├── wctype.h │ └── wrap_std │ ├── complex │ ├── export │ ├── fstream │ ├── h │ ├── fstream.h │ ├── iostream.h │ ├── streambuf.h │ └── strstream.h │ ├── iomanip │ ├── ios │ ├── iosfwd │ ├── iostream │ ├── istream │ ├── locale │ ├── ostream │ ├── sstream │ ├── streambuf │ └── strstream ├── docs ├── GameSpy SDK Help.chm └── style_guide.txt ├── patches ├── patch_104_eng.delta ├── patch_bibber.delta ├── patch_tfd.delta └── patch_tuc.delta ├── resources ├── visualstudio │ ├── stllist.natvis │ ├── stlvector.natvis │ ├── utf16string.natvis │ └── utf8string.natvis ├── w3dviewer │ ├── res │ │ ├── aggregat.ico │ │ ├── animatio.ico │ │ ├── bitmap1.bmp │ │ ├── cur00001.cur │ │ ├── cursor.tga │ │ ├── cursor1.cur │ │ ├── ffwd.bmp │ │ ├── ffwdsel.bmp │ │ ├── frame.ico │ │ ├── gamma.bmp │ │ ├── grab.tga │ │ ├── hierarch.ico │ │ ├── ico00001.ico │ │ ├── ico00002.ico │ │ ├── ico00003.ico │ │ ├── ico00004.ico │ │ ├── ico00005.ico │ │ ├── ico00006.ico │ │ ├── ico00007.ico │ │ ├── ico00008.ico │ │ ├── ico00009.ico │ │ ├── ico00010.ico │ │ ├── ico00011.ico │ │ ├── ico00012.ico │ │ ├── ico00013.ico │ │ ├── ico00014.ico │ │ ├── ico00015.ico │ │ ├── ico00016.ico │ │ ├── ico00017.ico │ │ ├── ico00018.ico │ │ ├── icon1.ico │ │ ├── icon2.ico │ │ ├── keyframe.bmp │ │ ├── light.w3d │ │ ├── line.ico │ │ ├── lineup.ico │ │ ├── marker.bmp │ │ ├── material.ico │ │ ├── openfold.ico │ │ ├── orbit.tga │ │ ├── particle.ico │ │ ├── pause.bmp │ │ ├── pausesel.bmp │ │ ├── play.bmp │ │ ├── playsel.bmp │ │ ├── reverse.bmp │ │ ├── reversesel.bmp │ │ ├── rotatez.bmp │ │ ├── rotatezsel.bmp │ │ ├── rotation.ico │ │ ├── sound.ico │ │ ├── stop.bmp │ │ ├── stopsel.bmp │ │ ├── toolbar.bmp │ │ ├── user1.ico │ │ ├── w3dview.ico │ │ ├── w3dview.rc2 │ │ ├── w3dviewdoc.ico │ │ ├── xdir.bmp │ │ ├── xdirsel.bmp │ │ ├── ydir.bmp │ │ ├── ydirsel.bmp │ │ ├── zdir.bmp │ │ ├── zdirsel.bmp │ │ └── zoom.tga │ ├── resource.h │ └── w3dview.rc └── wdump │ ├── resource.h │ ├── wdump.ico │ └── wdump.rc ├── src ├── CMakeLists.txt ├── editor │ ├── editmain.cpp │ └── editmain.h ├── game │ ├── client │ │ ├── color.cpp │ │ ├── color.h │ │ ├── crashpreferences.cpp │ │ ├── crashpreferences.h │ │ ├── credits.cpp │ │ ├── credits.h │ │ ├── display.cpp │ │ ├── display.h │ │ ├── displaystring.cpp │ │ ├── displaystring.h │ │ ├── displaystringmanager.cpp │ │ ├── displaystringmanager.h │ │ ├── draw │ │ │ ├── tintenvelope.cpp │ │ │ └── tintenvelope.h │ │ ├── drawable.cpp │ │ ├── drawable.h │ │ ├── drawable │ │ │ └── update │ │ │ │ ├── swayclientupdate.cpp │ │ │ │ └── swayclientupdate.h │ │ ├── drawgroupinfo.cpp │ │ ├── drawgroupinfo.h │ │ ├── eva.cpp │ │ ├── eva.h │ │ ├── fxlist.cpp │ │ ├── fxlist.h │ │ ├── gameclient.cpp │ │ ├── gameclient.h │ │ ├── gametext.cpp │ │ ├── gametext.h │ │ ├── globallanguage.cpp │ │ ├── globallanguage.h │ │ ├── gui │ │ │ ├── animatewindowmanager.cpp │ │ │ ├── animatewindowmanager.h │ │ │ ├── challengegenerals.cpp │ │ │ ├── challengegenerals.h │ │ │ ├── controlbar │ │ │ │ ├── controlbar.cpp │ │ │ │ ├── controlbar.h │ │ │ │ ├── controlbarbeacon.cpp │ │ │ │ ├── controlbarcommand.cpp │ │ │ │ ├── controlbarcommandprocessing.cpp │ │ │ │ ├── controlbarmultiselect.cpp │ │ │ │ ├── controlbarobserver.cpp │ │ │ │ ├── controlbarocltimer.cpp │ │ │ │ ├── controlbarresizer.cpp │ │ │ │ ├── controlbarscheme.cpp │ │ │ │ ├── controlbarscheme.h │ │ │ │ ├── controlbarstructureinventory.cpp │ │ │ │ └── controlbarunderconstruction.cpp │ │ │ ├── disconnectmenu │ │ │ │ ├── disconnectmenu.cpp │ │ │ │ └── disconnectmenu.h │ │ │ ├── gadget │ │ │ │ ├── gadgetcheckbox.cpp │ │ │ │ ├── gadgetcheckbox.h │ │ │ │ ├── gadgetcombobox.cpp │ │ │ │ ├── gadgetcombobox.h │ │ │ │ ├── gadgethorizontalslider.cpp │ │ │ │ ├── gadgetlistbox.cpp │ │ │ │ ├── gadgetlistbox.h │ │ │ │ ├── gadgetprogressbar.cpp │ │ │ │ ├── gadgetprogressbar.h │ │ │ │ ├── gadgetpushbutton.cpp │ │ │ │ ├── gadgetpushbutton.h │ │ │ │ ├── gadgetradiobutton.cpp │ │ │ │ ├── gadgetradiobutton.h │ │ │ │ ├── gadgetslider.h │ │ │ │ ├── gadgetstatictext.cpp │ │ │ │ ├── gadgetstatictext.h │ │ │ │ ├── gadgettabcontrol.cpp │ │ │ │ ├── gadgettabcontrol.h │ │ │ │ ├── gadgettextentry.cpp │ │ │ │ ├── gadgettextentry.h │ │ │ │ └── gadgetverticalslider.cpp │ │ │ ├── gamefont.cpp │ │ │ ├── gamefont.h │ │ │ ├── gamewindow.cpp │ │ │ ├── gamewindow.h │ │ │ ├── gamewindowglobal.cpp │ │ │ ├── gamewindowmanager.cpp │ │ │ ├── gamewindowmanager.h │ │ │ ├── gamewindowmanagerscript.cpp │ │ │ ├── gamewindowtransitions.cpp │ │ │ ├── gamewindowtransitions.h │ │ │ ├── gamewindowtransitionsstyles.cpp │ │ │ ├── guicallbacks │ │ │ │ ├── controlbarcallback.cpp │ │ │ │ ├── controlbarpopupdescription.cpp │ │ │ │ ├── diplomacy.cpp │ │ │ │ ├── diplomacy.h │ │ │ │ ├── generalsexppoints.cpp │ │ │ │ ├── generalsexppoints.h │ │ │ │ ├── ingamechat.cpp │ │ │ │ ├── ingamechat.h │ │ │ │ ├── menus │ │ │ │ │ ├── quitmenu.cpp │ │ │ │ │ └── quitmenu.h │ │ │ │ ├── skirmishgameoptionsmenu.cpp │ │ │ │ └── skirmishgameoptionsmenu.h │ │ │ ├── headertemplate.cpp │ │ │ ├── headertemplate.h │ │ │ ├── imemanager.cpp │ │ │ ├── imemanager.h │ │ │ ├── imemanagerinterface.cpp │ │ │ ├── imemanagerinterface.h │ │ │ ├── loadscreen.cpp │ │ │ ├── loadscreen.h │ │ │ ├── processanimatewindow.cpp │ │ │ ├── processanimatewindow.h │ │ │ ├── shell │ │ │ │ ├── shell.cpp │ │ │ │ ├── shell.h │ │ │ │ ├── shellmenuscheme.cpp │ │ │ │ └── shellmenuscheme.h │ │ │ ├── windowlayout.cpp │ │ │ ├── windowlayout.h │ │ │ ├── windowvideomanager.cpp │ │ │ ├── windowvideomanager.h │ │ │ ├── wininstancedata.cpp │ │ │ └── wininstancedata.h │ │ ├── ingameui.cpp │ │ ├── ingameui.h │ │ ├── input │ │ │ ├── keyboard.cpp │ │ │ ├── keyboard.h │ │ │ ├── mouse.cpp │ │ │ └── mouse.h │ │ ├── languagefilter.cpp │ │ ├── languagefilter.h │ │ ├── line2d.cpp │ │ ├── line2d.h │ │ ├── maputil.cpp │ │ ├── maputil.h │ │ ├── messagestream │ │ │ ├── commandxlat.cpp │ │ │ ├── commandxlat.h │ │ │ ├── guicommandtranslator.cpp │ │ │ ├── guicommandtranslator.h │ │ │ ├── hintspy.cpp │ │ │ ├── hintspy.h │ │ │ ├── hotkey.cpp │ │ │ ├── hotkey.h │ │ │ ├── lookatxlat.cpp │ │ │ ├── lookatxlat.h │ │ │ ├── metaevent.cpp │ │ │ ├── metaevent.h │ │ │ ├── placeeventtranslator.cpp │ │ │ ├── placeeventtranslator.h │ │ │ ├── selectionxlat.cpp │ │ │ ├── selectionxlat.h │ │ │ ├── windowxlat.cpp │ │ │ └── windowxlat.h │ │ ├── optionpreferences.cpp │ │ ├── optionpreferences.h │ │ ├── parabolicease.cpp │ │ ├── parabolicease.h │ │ ├── radiusdecal.cpp │ │ ├── radiusdecal.h │ │ ├── selectioninfo.cpp │ │ ├── selectioninfo.h │ │ ├── shader │ │ │ ├── bwfilter.cpp │ │ │ ├── cloudshader.cpp │ │ │ ├── crossfadefilter.cpp │ │ │ ├── defaultfilter.cpp │ │ │ ├── flatshroudshader.cpp │ │ │ ├── flatterrainshader.cpp │ │ │ ├── maskshader.cpp │ │ │ ├── motionblurfilter.cpp │ │ │ ├── roadshader.cpp │ │ │ ├── shroudshader.cpp │ │ │ └── terrainshader.cpp │ │ ├── shadermanager.cpp │ │ ├── shadermanager.h │ │ ├── snow.cpp │ │ ├── snow.h │ │ ├── system │ │ │ ├── anim2d.cpp │ │ │ ├── anim2d.h │ │ │ ├── campaignmanager.cpp │ │ │ ├── campaignmanager.h │ │ │ ├── debugdisplay.cpp │ │ │ ├── debugdisplay.h │ │ │ ├── image.cpp │ │ │ ├── image.h │ │ │ ├── particlesystem │ │ │ │ ├── particle.cpp │ │ │ │ ├── particle.h │ │ │ │ ├── particleinfo.cpp │ │ │ │ ├── particleinfo.h │ │ │ │ ├── particlesys.cpp │ │ │ │ ├── particlesys.h │ │ │ │ ├── particlesysinfo.cpp │ │ │ │ ├── particlesysinfo.h │ │ │ │ ├── particlesysmanager.cpp │ │ │ │ ├── particlesysmanager.h │ │ │ │ ├── particlesystemplate.cpp │ │ │ │ └── particlesystemplate.h │ │ │ ├── rayeffect.cpp │ │ │ ├── rayeffect.h │ │ │ ├── smudge.cpp │ │ │ └── smudge.h │ │ ├── terrain │ │ │ ├── terrainroads.cpp │ │ │ ├── terrainroads.h │ │ │ ├── terrainvisual.cpp │ │ │ └── terrainvisual.h │ │ ├── terraintex.cpp │ │ ├── terraintex.h │ │ ├── videoplayer │ │ │ ├── videobuffer.cpp │ │ │ ├── videobuffer.h │ │ │ ├── videoplayer.cpp │ │ │ ├── videoplayer.h │ │ │ ├── videostream.cpp │ │ │ └── videostream.h │ │ ├── view.cpp │ │ ├── view.h │ │ ├── w3dassetmanager.cpp │ │ ├── w3dassetmanager.h │ │ ├── water.cpp │ │ └── water.h │ ├── common │ │ ├── audio │ │ │ ├── audioeventinfo.cpp │ │ │ ├── audioeventinfo.h │ │ │ ├── audioeventrts.cpp │ │ │ ├── audioeventrts.h │ │ │ ├── audiomanager.cpp │ │ │ ├── audiomanager.h │ │ │ ├── audiomisc.cpp │ │ │ ├── audiomisc.h │ │ │ ├── audiorequest.h │ │ │ ├── audiosettings.cpp │ │ │ ├── audiosettings.h │ │ │ ├── gamemusic.cpp │ │ │ ├── gamemusic.h │ │ │ ├── gamesounds.cpp │ │ │ └── gamesounds.h │ │ ├── bezier │ │ │ ├── bezfwditerator.cpp │ │ │ ├── bezfwditerator.h │ │ │ ├── beziersegment.cpp │ │ │ └── beziersegment.h │ │ ├── bitflags.cpp │ │ ├── bitflags.h │ │ ├── commandline.cpp │ │ ├── commandline.h │ │ ├── commandlist.cpp │ │ ├── commandlist.h │ │ ├── compression │ │ │ ├── compressionmanager.cpp │ │ │ ├── compressionmanager.h │ │ │ ├── refpack.cpp │ │ │ ├── refpack.h │ │ │ ├── zlibcompr.cpp │ │ │ └── zlibcompr.h │ │ ├── coord.h │ │ ├── crc.cpp │ │ ├── crc.h │ │ ├── damagefx.cpp │ │ ├── damagefx.h │ │ ├── dict.cpp │ │ ├── dict.h │ │ ├── gameengine.cpp │ │ ├── gameengine.h │ │ ├── gamelod.cpp │ │ ├── gamelod.h │ │ ├── gamemain.cpp │ │ ├── gamemain.h │ │ ├── gamemessage.cpp │ │ ├── gamemessage.h │ │ ├── gamemessagelist.cpp │ │ ├── gamemessagelist.h │ │ ├── globaldata.cpp │ │ ├── globaldata.h │ │ ├── ini │ │ │ ├── ini.cpp │ │ │ ├── ini.h │ │ │ └── inidrawgroupinfo.cpp │ │ ├── latchrestore.h │ │ ├── mapobject.cpp │ │ ├── mapobject.h │ │ ├── messagestream.cpp │ │ ├── messagestream.h │ │ ├── multiplayersettings.cpp │ │ ├── multiplayersettings.h │ │ ├── namekeygenerator.cpp │ │ ├── namekeygenerator.h │ │ ├── overridable.h │ │ ├── randomvalue.cpp │ │ ├── randomvalue.h │ │ ├── recorder.cpp │ │ ├── recorder.h │ │ ├── rts │ │ │ ├── academystats.cpp │ │ │ ├── academystats.h │ │ │ ├── actionmanager.cpp │ │ │ ├── actionmanager.h │ │ │ ├── buildinfo.cpp │ │ │ ├── buildinfo.h │ │ │ ├── energy.cpp │ │ │ ├── energy.h │ │ │ ├── handicap.cpp │ │ │ ├── handicap.h │ │ │ ├── missionstats.cpp │ │ │ ├── missionstats.h │ │ │ ├── money.cpp │ │ │ ├── money.h │ │ │ ├── player.cpp │ │ │ ├── player.h │ │ │ ├── playerlist.cpp │ │ │ ├── playerlist.h │ │ │ ├── playertemplate.cpp │ │ │ ├── playertemplate.h │ │ │ ├── productionprerequisite.cpp │ │ │ ├── productionprerequisite.h │ │ │ ├── resourcegatheringmanager.cpp │ │ │ ├── resourcegatheringmanager.h │ │ │ ├── science.cpp │ │ │ ├── science.h │ │ │ ├── scorekeeper.cpp │ │ │ ├── scorekeeper.h │ │ │ ├── sidesinfo.cpp │ │ │ ├── sidesinfo.h │ │ │ ├── specialpower.cpp │ │ │ ├── specialpower.h │ │ │ ├── team.cpp │ │ │ ├── team.h │ │ │ ├── teamsinfo.cpp │ │ │ └── teamsinfo.h │ │ ├── rtsutils.h │ │ ├── skirmishbattlehonors.cpp │ │ ├── skirmishbattlehonors.h │ │ ├── sparsematchfinder.h │ │ ├── statemachine.cpp │ │ ├── statemachine.h │ │ ├── staticnamekey.cpp │ │ ├── staticnamekey.h │ │ ├── statscollector.cpp │ │ ├── statscollector.h │ │ ├── system │ │ │ ├── archivefile.cpp │ │ │ ├── archivefile.h │ │ │ ├── archivefilesystem.cpp │ │ │ ├── archivefilesystem.h │ │ │ ├── asciistring.cpp │ │ │ ├── asciistring.h │ │ │ ├── buildassistant.cpp │ │ │ ├── buildassistant.h │ │ │ ├── cachedfileinputstream.cpp │ │ │ ├── cachedfileinputstream.h │ │ │ ├── cdmanager.cpp │ │ │ ├── cdmanager.h │ │ │ ├── chunkinputstream.h │ │ │ ├── datachunk.cpp │ │ │ ├── datachunk.h │ │ │ ├── datachunktoc.cpp │ │ │ ├── datachunktoc.h │ │ │ ├── disabledtypes.cpp │ │ │ ├── disabledtypes.h │ │ │ ├── errorcodes.h │ │ │ ├── file.cpp │ │ │ ├── file.h │ │ │ ├── filesystem.cpp │ │ │ ├── filesystem.h │ │ │ ├── functionlexicon.cpp │ │ │ ├── functionlexicon.h │ │ │ ├── gamememory.cpp │ │ │ ├── gamememory.h │ │ │ ├── gamememoryinit.cpp │ │ │ ├── gamememoryinit.h │ │ │ ├── gametype.cpp │ │ │ ├── gametype.h │ │ │ ├── geometry.cpp │ │ │ ├── geometry.h │ │ │ ├── inputstream.h │ │ │ ├── kindof.cpp │ │ │ ├── kindof.h │ │ │ ├── localfile.cpp │ │ │ ├── localfile.h │ │ │ ├── localfilesystem.cpp │ │ │ ├── localfilesystem.h │ │ │ ├── memblob.cpp │ │ │ ├── memblob.h │ │ │ ├── memblock.h │ │ │ ├── memdynalloc.cpp │ │ │ ├── memdynalloc.h │ │ │ ├── mempool.cpp │ │ │ ├── mempool.h │ │ │ ├── mempoolfact.cpp │ │ │ ├── mempoolfact.h │ │ │ ├── mempoolobj.h │ │ │ ├── outputstream.h │ │ │ ├── quotedprintable.cpp │ │ │ ├── quotedprintable.h │ │ │ ├── radar.cpp │ │ │ ├── radar.h │ │ │ ├── ramfile.cpp │ │ │ ├── ramfile.h │ │ │ ├── rawalloc.h │ │ │ ├── registryget.cpp │ │ │ ├── registryget.h │ │ │ ├── savegame │ │ │ │ ├── gamestate.cpp │ │ │ │ ├── gamestate.h │ │ │ │ ├── gamestatemap.cpp │ │ │ │ └── gamestatemap.h │ │ │ ├── snapshot.cpp │ │ │ ├── snapshot.h │ │ │ ├── stackdump.cpp │ │ │ ├── stackdump.h │ │ │ ├── streamingarchivefile.cpp │ │ │ ├── streamingarchivefile.h │ │ │ ├── subsysteminterface.cpp │ │ │ ├── subsysteminterface.h │ │ │ ├── unicodestring.cpp │ │ │ ├── unicodestring.h │ │ │ ├── upgrade.cpp │ │ │ ├── upgrade.h │ │ │ ├── xfer.cpp │ │ │ ├── xfer.h │ │ │ ├── xfercrc.cpp │ │ │ └── xfercrc.h │ │ ├── terraintypes.cpp │ │ ├── terraintypes.h │ │ ├── thing │ │ │ ├── drawmodule.h │ │ │ ├── module.cpp │ │ │ ├── module.h │ │ │ ├── modulefactory.cpp │ │ │ ├── modulefactory.h │ │ │ ├── moduleinfo.cpp │ │ │ ├── moduleinfo.h │ │ │ ├── thing.cpp │ │ │ ├── thing.h │ │ │ ├── thingfactory.cpp │ │ │ ├── thingfactory.h │ │ │ ├── thingtemplate.cpp │ │ │ └── thingtemplate.h │ │ ├── userpreferences.cpp │ │ ├── userpreferences.h │ │ ├── version.cpp │ │ └── version.h │ ├── copyprotect.cpp │ ├── copyprotect.h │ ├── crashhandler.cpp │ ├── crashhandler.h │ ├── crashwrapper.cpp │ ├── crashwrapper.h │ ├── force_nocd.cpp │ ├── force_nocd.h │ ├── logic │ │ ├── ai │ │ │ ├── ai.cpp │ │ │ ├── ai.h │ │ │ ├── aigroup.cpp │ │ │ ├── aigroup.h │ │ │ ├── aiguard.cpp │ │ │ ├── aiguard.h │ │ │ ├── aipathfind.cpp │ │ │ ├── aipathfind.h │ │ │ ├── aiplayer.cpp │ │ │ ├── aiplayer.h │ │ │ ├── aistates.cpp │ │ │ ├── aistates.h │ │ │ ├── squad.cpp │ │ │ ├── squad.h │ │ │ ├── turretai.cpp │ │ │ └── turretai.h │ │ ├── map │ │ │ ├── polygontrigger.cpp │ │ │ ├── polygontrigger.h │ │ │ ├── sideslist.cpp │ │ │ ├── sideslist.h │ │ │ ├── terrainlogic.cpp │ │ │ └── terrainlogic.h │ │ ├── object │ │ │ ├── armor.cpp │ │ │ ├── armor.h │ │ │ ├── armortemplateset.cpp │ │ │ ├── armortemplateset.h │ │ │ ├── behavior │ │ │ │ ├── autohealbehavior.cpp │ │ │ │ ├── autohealbehavior.h │ │ │ │ ├── behaviormodule.cpp │ │ │ │ ├── behaviormodule.h │ │ │ │ ├── bridgebehavior.cpp │ │ │ │ ├── bridgebehavior.h │ │ │ │ ├── bridgetowerbehavior.cpp │ │ │ │ ├── bridgetowerbehavior.h │ │ │ │ ├── overchargebehavior.cpp │ │ │ │ ├── overchargebehavior.h │ │ │ │ ├── parkingplacebehavior.h │ │ │ │ ├── rebuildholebehavior.cpp │ │ │ │ ├── rebuildholebehavior.h │ │ │ │ └── spawnbehavior.h │ │ │ ├── body │ │ │ │ └── bodymodule.h │ │ │ ├── collide │ │ │ │ ├── collidemodule.cpp │ │ │ │ ├── collidemodule.h │ │ │ │ ├── squishcollide.cpp │ │ │ │ └── squishcollide.h │ │ │ ├── contain │ │ │ │ └── opencontain.h │ │ │ ├── create │ │ │ │ ├── createmodule.cpp │ │ │ │ ├── createmodule.h │ │ │ │ ├── veterancygaincreate.cpp │ │ │ │ └── veterancygaincreate.h │ │ │ ├── damage │ │ │ │ ├── damagemodule.cpp │ │ │ │ └── damagemodule.h │ │ │ ├── die │ │ │ │ ├── diemodule.cpp │ │ │ │ ├── diemodule.h │ │ │ │ ├── specialpowercompletiondie.cpp │ │ │ │ └── specialpowercompletiondie.h │ │ │ ├── experiencetracker.cpp │ │ │ ├── experiencetracker.h │ │ │ ├── firingtracker.cpp │ │ │ ├── firingtracker.h │ │ │ ├── ghostobject.cpp │ │ │ ├── ghostobject.h │ │ │ ├── helper │ │ │ │ ├── objectdefectionhelper.cpp │ │ │ │ ├── objectdefectionhelper.h │ │ │ │ ├── objecthelper.cpp │ │ │ │ ├── objecthelper.h │ │ │ │ ├── objectrepulsorhelper.cpp │ │ │ │ ├── objectrepulsorhelper.h │ │ │ │ ├── objectsmchelper.cpp │ │ │ │ ├── objectsmchelper.h │ │ │ │ ├── objectweaponstatushelper.cpp │ │ │ │ ├── objectweaponstatushelper.h │ │ │ │ ├── statusdamagehelper.cpp │ │ │ │ ├── statusdamagehelper.h │ │ │ │ ├── subdualdamagehelper.cpp │ │ │ │ ├── subdualdamagehelper.h │ │ │ │ ├── tempweaponbonushelper.cpp │ │ │ │ └── tempweaponbonushelper.h │ │ │ ├── locomotor.cpp │ │ │ ├── locomotor.h │ │ │ ├── object.cpp │ │ │ ├── object.h │ │ │ ├── objectcreationlist.cpp │ │ │ ├── objectcreationlist.h │ │ │ ├── objecttypes.cpp │ │ │ ├── objecttypes.h │ │ │ ├── partitionmanager.cpp │ │ │ ├── partitionmanager.h │ │ │ ├── simpleobjectiterator.cpp │ │ │ ├── simpleobjectiterator.h │ │ │ ├── update │ │ │ │ ├── aiupdate.cpp │ │ │ │ ├── aiupdate.h │ │ │ │ ├── aiupdate │ │ │ │ │ ├── dozeraiupdate.cpp │ │ │ │ │ └── dozeraiupdate.h │ │ │ │ ├── assistedtargetingupdate.cpp │ │ │ │ ├── assistedtargetingupdate.h │ │ │ │ ├── autodepositupdate.cpp │ │ │ │ ├── autodepositupdate.h │ │ │ │ ├── battleplanupdate.cpp │ │ │ │ ├── battleplanupdate.h │ │ │ │ ├── clientupdatemodule.h │ │ │ │ ├── dockupdate │ │ │ │ │ ├── dockupdate.cpp │ │ │ │ │ ├── dockupdate.h │ │ │ │ │ ├── supplywarehousedockupdate.cpp │ │ │ │ │ └── supplywarehousedockupdate.h │ │ │ │ ├── laserupdate.cpp │ │ │ │ ├── laserupdate.h │ │ │ │ ├── mobmemberslavedupdate.cpp │ │ │ │ ├── mobmemberslavedupdate.h │ │ │ │ ├── oclupdate.cpp │ │ │ │ ├── oclupdate.h │ │ │ │ ├── physicsupdate.cpp │ │ │ │ ├── physicsupdate.h │ │ │ │ ├── projectilestreamupdate.cpp │ │ │ │ ├── projectilestreamupdate.h │ │ │ │ ├── specialabilityupdate.cpp │ │ │ │ ├── specialabilityupdate.h │ │ │ │ ├── specialpowerupdatemodule.cpp │ │ │ │ ├── specialpowerupdatemodule.h │ │ │ │ ├── stealthupdate.h │ │ │ │ ├── stickybombupdate.cpp │ │ │ │ ├── stickybombupdate.h │ │ │ │ ├── toppleupdate.cpp │ │ │ │ ├── toppleupdate.h │ │ │ │ ├── updatemodule.cpp │ │ │ │ └── updatemodule.h │ │ │ ├── upgrade │ │ │ │ ├── powerplantupgrade.cpp │ │ │ │ ├── powerplantupgrade.h │ │ │ │ ├── radarupgrade.cpp │ │ │ │ ├── radarupgrade.h │ │ │ │ ├── upgrademodule.cpp │ │ │ │ └── upgrademodule.h │ │ │ ├── weapon.cpp │ │ │ ├── weapon.h │ │ │ ├── weaponset.cpp │ │ │ ├── weaponset.h │ │ │ ├── weapontemplateset.cpp │ │ │ └── weapontemplateset.h │ │ ├── scriptengine │ │ │ ├── script.cpp │ │ │ ├── script.h │ │ │ ├── scriptaction.cpp │ │ │ ├── scriptaction.h │ │ │ ├── scriptactions.cpp │ │ │ ├── scriptactions.h │ │ │ ├── scriptcondition.cpp │ │ │ ├── scriptcondition.h │ │ │ ├── scriptconditions.cpp │ │ │ ├── scriptconditions.h │ │ │ ├── scriptengine.cpp │ │ │ ├── scriptengine.h │ │ │ ├── scriptgroup.cpp │ │ │ ├── scriptgroup.h │ │ │ ├── scriptlist.cpp │ │ │ ├── scriptlist.h │ │ │ ├── scriptparam.cpp │ │ │ ├── scriptparam.h │ │ │ ├── scripttemplate.cpp │ │ │ ├── scripttemplate.h │ │ │ ├── sequentialscript.cpp │ │ │ ├── sequentialscript.h │ │ │ ├── victoryconditions.cpp │ │ │ └── victoryconditions.h │ │ └── system │ │ │ ├── cavesystem.cpp │ │ │ ├── cavesystem.h │ │ │ ├── cratesystem.cpp │ │ │ ├── cratesystem.h │ │ │ ├── damage.cpp │ │ │ ├── damage.h │ │ │ ├── gamelogic.cpp │ │ │ ├── gamelogic.h │ │ │ ├── gamelogicdispatch.cpp │ │ │ ├── rankinfo.cpp │ │ │ └── rankinfo.h │ ├── main.cpp │ ├── main.h │ └── network │ │ ├── filetransfer.cpp │ │ ├── filetransfer.h │ │ ├── framemetrics.cpp │ │ ├── framemetrics.h │ │ ├── gameinfo.cpp │ │ ├── gameinfo.h │ │ ├── gamemessageparser.cpp │ │ ├── gamemessageparser.h │ │ ├── gamespy │ │ ├── chat.cpp │ │ ├── chat.h │ │ ├── peerdefs.cpp │ │ ├── peerdefs.h │ │ ├── stagingroomgameinfo.cpp │ │ ├── stagingroomgameinfo.h │ │ └── thread │ │ │ ├── buddythread.cpp │ │ │ ├── buddythread.h │ │ │ ├── gameresultsthread.cpp │ │ │ ├── gameresultsthread.h │ │ │ ├── threadutils.cpp │ │ │ └── threadutils.h │ │ ├── ipenumeration.cpp │ │ ├── ipenumeration.h │ │ ├── lanapi.cpp │ │ ├── lanapi.h │ │ ├── lanapiinterface.cpp │ │ ├── lanapiinterface.h │ │ ├── langameinfo.h │ │ ├── network.cpp │ │ ├── network.h │ │ ├── networkutil.cpp │ │ ├── networkutil.h │ │ ├── transport.cpp │ │ ├── transport.h │ │ ├── udp.cpp │ │ └── udp.h ├── hooker │ ├── dllmain.cpp │ ├── hookcrt.h │ ├── hooker.h │ ├── mapview.cpp │ ├── mapview.h │ ├── setupglobals_zh.cpp │ ├── setuphooks.h │ ├── setuphooks_wb.cpp │ └── setuphooks_zh.cpp ├── hookproxy │ ├── CMakeLists.txt │ ├── hooker.cpp │ ├── hooker.h │ ├── mapview.cpp │ ├── mapview.h │ ├── proxydll.cpp │ ├── sha1.cpp │ └── sha1.h ├── platform │ ├── audio │ │ ├── alaudiomanager.cpp │ │ ├── alaudiomanager.h │ │ ├── alaudiostream.cpp │ │ ├── alaudiostream.h │ │ ├── ffmpegaudiofilecache.cpp │ │ ├── ffmpegaudiofilecache.h │ │ ├── milesaudiofilecache.cpp │ │ ├── milesaudiofilecache.h │ │ ├── milesaudiomanager.cpp │ │ ├── milesaudiomanager.h │ │ └── playingaudio.h │ ├── common │ │ ├── ffmpegfile.cpp │ │ └── ffmpegfile.h │ ├── fpusetting.cpp │ ├── fpusetting.h │ ├── sdl2 │ │ ├── sdl2gameengine.cpp │ │ ├── sdl2gameengine.h │ │ ├── sdl2keybd.cpp │ │ ├── sdl2keybd.h │ │ ├── sdl2mouse.cpp │ │ └── sdl2mouse.h │ ├── standardfile.cpp │ ├── standardfile.h │ ├── stdlocalfilesystem.cpp │ ├── stdlocalfilesystem.h │ ├── video │ │ ├── binkvideoplayer.cpp │ │ ├── binkvideoplayer.h │ │ ├── binkvideostream.cpp │ │ ├── binkvideostream.h │ │ ├── ffmpegvideoplayer.cpp │ │ ├── ffmpegvideoplayer.h │ │ ├── ffmpegvideostream.cpp │ │ ├── ffmpegvideostream.h │ │ ├── swvideobuffer.cpp │ │ └── swvideobuffer.h │ └── w3dengine │ │ ├── client │ │ ├── baseheightmap.cpp │ │ ├── baseheightmap.h │ │ ├── camerashakesystem.cpp │ │ ├── camerashakesystem.h │ │ ├── drawable │ │ │ └── draw │ │ │ │ ├── w3ddebrisdraw.cpp │ │ │ │ ├── w3ddebrisdraw.h │ │ │ │ ├── w3ddefaultdraw.cpp │ │ │ │ ├── w3ddefaultdraw.h │ │ │ │ ├── w3ddependencymodeldraw.cpp │ │ │ │ ├── w3ddependencymodeldraw.h │ │ │ │ ├── w3dlaserdraw.cpp │ │ │ │ ├── w3dlaserdraw.h │ │ │ │ ├── w3dmodeldraw.cpp │ │ │ │ ├── w3dmodeldraw.h │ │ │ │ ├── w3doverlordaircraftdraw.cpp │ │ │ │ ├── w3doverlordaircraftdraw.h │ │ │ │ ├── w3doverlordtankdraw.cpp │ │ │ │ ├── w3doverlordtankdraw.h │ │ │ │ ├── w3doverlordtruckdraw.cpp │ │ │ │ ├── w3doverlordtruckdraw.h │ │ │ │ ├── w3dpolicecardraw.cpp │ │ │ │ ├── w3dpolicecardraw.h │ │ │ │ ├── w3dprojectilestreamdraw.cpp │ │ │ │ ├── w3dprojectilestreamdraw.h │ │ │ │ ├── w3dpropdraw.cpp │ │ │ │ ├── w3dpropdraw.h │ │ │ │ ├── w3dropedraw.cpp │ │ │ │ ├── w3dropedraw.h │ │ │ │ ├── w3dsciencemodeldraw.cpp │ │ │ │ ├── w3dsciencemodeldraw.h │ │ │ │ ├── w3dsupplydraw.cpp │ │ │ │ ├── w3dsupplydraw.h │ │ │ │ ├── w3dtankdraw.cpp │ │ │ │ ├── w3dtankdraw.h │ │ │ │ ├── w3dtanktruckdraw.cpp │ │ │ │ ├── w3dtanktruckdraw.h │ │ │ │ ├── w3dtracerdraw.cpp │ │ │ │ ├── w3dtracerdraw.h │ │ │ │ ├── w3dtreedraw.cpp │ │ │ │ ├── w3dtreedraw.h │ │ │ │ ├── w3dtruckdraw.cpp │ │ │ │ └── w3dtruckdraw.h │ │ ├── flatheightmap.cpp │ │ ├── flatheightmap.h │ │ ├── gui │ │ │ ├── gadget │ │ │ │ ├── w3dcheckbox.cpp │ │ │ │ ├── w3dcheckbox.h │ │ │ │ ├── w3dcombobox.cpp │ │ │ │ ├── w3dcombobox.h │ │ │ │ ├── w3dhorizontalslider.cpp │ │ │ │ ├── w3dlistbox.cpp │ │ │ │ ├── w3dlistbox.h │ │ │ │ ├── w3dprogressbar.cpp │ │ │ │ ├── w3dprogressbar.h │ │ │ │ ├── w3dpushbutton.cpp │ │ │ │ ├── w3dpushbutton.h │ │ │ │ ├── w3dradiobutton.cpp │ │ │ │ ├── w3dradiobutton.h │ │ │ │ ├── w3dslider.h │ │ │ │ ├── w3dstatictext.cpp │ │ │ │ ├── w3dstatictext.h │ │ │ │ ├── w3dtabcontrol.cpp │ │ │ │ ├── w3dtabcontrol.h │ │ │ │ ├── w3dtextentry.cpp │ │ │ │ ├── w3dtextentry.h │ │ │ │ └── w3dverticalslider.cpp │ │ │ ├── guicallbacks │ │ │ │ ├── w3dcontrolbar.cpp │ │ │ │ └── w3dcontrolbar.h │ │ │ ├── w3dgamefont.cpp │ │ │ ├── w3dgamefont.h │ │ │ ├── w3dgamewindow.cpp │ │ │ ├── w3dgamewindow.h │ │ │ ├── w3dgamewindowmanager.cpp │ │ │ └── w3dgamewindowmanager.h │ │ ├── heightmap.cpp │ │ ├── heightmap.h │ │ ├── shadow │ │ │ ├── w3dbuffermanager.cpp │ │ │ ├── w3dbuffermanager.h │ │ │ ├── w3dprojectedshadow.cpp │ │ │ ├── w3dprojectedshadow.h │ │ │ ├── w3dshadow.cpp │ │ │ ├── w3dshadow.h │ │ │ ├── w3dvolumetricshadow.cpp │ │ │ └── w3dvolumetricshadow.h │ │ ├── tiledata.cpp │ │ ├── tiledata.h │ │ ├── w3dbibbuffer.cpp │ │ ├── w3dbibbuffer.h │ │ ├── w3dbridgebuffer.cpp │ │ ├── w3dbridgebuffer.h │ │ ├── w3ddebugdisplay.cpp │ │ ├── w3ddebugdisplay.h │ │ ├── w3ddebugicons.cpp │ │ ├── w3ddebugicons.h │ │ ├── w3ddisplay.cpp │ │ ├── w3ddisplay.h │ │ ├── w3ddisplaystring.cpp │ │ ├── w3ddisplaystring.h │ │ ├── w3ddisplaystringmanager.cpp │ │ ├── w3ddisplaystringmanager.h │ │ ├── w3ddynamiclight.cpp │ │ ├── w3ddynamiclight.h │ │ ├── w3dfilesystem.cpp │ │ ├── w3dfilesystem.h │ │ ├── w3dgameclient.cpp │ │ ├── w3dgameclient.h │ │ ├── w3dgamelogic.cpp │ │ ├── w3dgamelogic.h │ │ ├── w3dingameui.cpp │ │ ├── w3dingameui.h │ │ ├── w3dmouse.cpp │ │ ├── w3dmouse.h │ │ ├── w3dparticlesys.cpp │ │ ├── w3dparticlesys.h │ │ ├── w3dpoly.cpp │ │ ├── w3dpoly.h │ │ ├── w3dpropbuffer.cpp │ │ ├── w3dpropbuffer.h │ │ ├── w3droadbuffer.cpp │ │ ├── w3droadbuffer.h │ │ ├── w3dscene.cpp │ │ ├── w3dscene.h │ │ ├── w3dshroud.cpp │ │ ├── w3dshroud.h │ │ ├── w3dsmudge.cpp │ │ ├── w3dsmudge.h │ │ ├── w3dsnow.cpp │ │ ├── w3dsnow.h │ │ ├── w3dstatuscircle.cpp │ │ ├── w3dstatuscircle.h │ │ ├── w3dterrainbackground.cpp │ │ ├── w3dterrainbackground.h │ │ ├── w3dterraintracks.cpp │ │ ├── w3dterraintracks.h │ │ ├── w3dterrainvisual.cpp │ │ ├── w3dterrainvisual.h │ │ ├── w3dtreebuffer.cpp │ │ ├── w3dtreebuffer.h │ │ ├── w3dview.cpp │ │ ├── w3dview.h │ │ ├── w3dwaypointbuffer.cpp │ │ ├── w3dwaypointbuffer.h │ │ ├── water │ │ │ ├── w3dwater.cpp │ │ │ ├── w3dwater.h │ │ │ ├── w3dwatertracks.cpp │ │ │ └── w3dwatertracks.h │ │ ├── win32dikeyboard.cpp │ │ ├── win32dikeyboard.h │ │ ├── win32mouse.cpp │ │ ├── win32mouse.h │ │ ├── worldheightmap.cpp │ │ └── worldheightmap.h │ │ ├── common │ │ ├── system │ │ │ ├── w3dfunctionlexicon.cpp │ │ │ └── w3dfunctionlexicon.h │ │ ├── thing │ │ │ ├── w3dmodulefactory.cpp │ │ │ └── w3dmodulefactory.h │ │ ├── win32bigfile.cpp │ │ ├── win32bigfile.h │ │ ├── win32bigfilesystem.cpp │ │ ├── win32bigfilesystem.h │ │ ├── win32gameengine.cpp │ │ ├── win32gameengine.h │ │ ├── win32localfile.cpp │ │ ├── win32localfile.h │ │ ├── win32localfilesystem.cpp │ │ └── win32localfilesystem.h │ │ └── logic │ │ ├── w3dghostobject.cpp │ │ ├── w3dghostobject.h │ │ ├── w3dterrainlogic.cpp │ │ └── w3dterrainlogic.h ├── tools │ ├── CMakeLists.txt │ ├── compressor │ │ ├── CMakeLists.txt │ │ └── compressor.cpp │ ├── debugwindow │ │ ├── CMakeLists.txt │ │ ├── dbgwinapp.cpp │ │ ├── dbgwinapp.h │ │ ├── dbgwinframe.cpp │ │ ├── dbgwinframe.h │ │ ├── debugwindow.cpp │ │ ├── debugwindow.h │ │ ├── debugwindow_posix.cpp │ │ ├── debugwindow_win32.cpp │ │ ├── dllmain.cpp │ │ └── ui │ │ │ └── dbgwinui.xrc │ ├── w3dviewer │ │ ├── CMakeLists.txt │ │ ├── addtolineupdialog.cpp │ │ ├── addtolineupdialog.h │ │ ├── ambientlightdialog.cpp │ │ ├── ambientlightdialog.h │ │ ├── animationproppage.cpp │ │ ├── animationproppage.h │ │ ├── animationspeed.cpp │ │ ├── animationspeed.h │ │ ├── assetinfo.cpp │ │ ├── assetinfo.h │ │ ├── assetpropertysheet.cpp │ │ ├── assetpropertysheet.h │ │ ├── assettypes.h │ │ ├── backgroundbmpdialog.cpp │ │ ├── backgroundbmpdialog.h │ │ ├── backgroundcolordialog.cpp │ │ ├── backgroundcolordialog.h │ │ ├── backgroundobjectdialog.cpp │ │ ├── backgroundobjectdialog.h │ │ ├── cameradistancedialog.cpp │ │ ├── cameradistancedialog.h │ │ ├── camerasettingsdialog.cpp │ │ ├── camerasettingsdialog.h │ │ ├── colorbar.cpp │ │ ├── colorbar.h │ │ ├── colorpicker.cpp │ │ ├── colorpicker.h │ │ ├── colorpickerdialogclass.cpp │ │ ├── colorpickerdialogclass.h │ │ ├── colorutils.cpp │ │ ├── colorutils.h │ │ ├── datatreeview.cpp │ │ ├── datatreeview.h │ │ ├── deviceselectiondialog.cpp │ │ ├── deviceselectiondialog.h │ │ ├── directorydialog.cpp │ │ ├── directorydialog.h │ │ ├── emittercolorproppage.cpp │ │ ├── emittercolorproppage.h │ │ ├── emitterframeproppage.cpp │ │ ├── emitterframeproppage.h │ │ ├── emittergeneralproppage.cpp │ │ ├── emittergeneralproppage.h │ │ ├── emitterinstancelist.cpp │ │ ├── emitterinstancelist.h │ │ ├── emitterlinegroupproppage.cpp │ │ ├── emitterlinegroupproppage.h │ │ ├── emitterlineproppage.cpp │ │ ├── emitterlineproppage.h │ │ ├── emitterparticleproppage.cpp │ │ ├── emitterparticleproppage.h │ │ ├── emitterphysicsproppage.cpp │ │ ├── emitterphysicsproppage.h │ │ ├── emitterpropertysheet.cpp │ │ ├── emitterpropertysheet.h │ │ ├── emitterrotationproppage.cpp │ │ ├── emitterrotationproppage.h │ │ ├── emittersizeproppage.cpp │ │ ├── emittersizeproppage.h │ │ ├── emitteruserproppage.cpp │ │ ├── emitteruserproppage.h │ │ ├── graphicview.cpp │ │ ├── graphicview.h │ │ ├── hierarchyproppage.cpp │ │ ├── hierarchyproppage.h │ │ ├── mainfrm.cpp │ │ ├── mainfrm.h │ │ ├── meshproppage.cpp │ │ ├── meshproppage.h │ │ ├── opacitysettingsdialog.cpp │ │ ├── opacitysettingsdialog.h │ │ ├── particleblurtimekeydialog.cpp │ │ ├── particleblurtimekeydialog.h │ │ ├── particleframekeydialog.cpp │ │ ├── particleframekeydialog.h │ │ ├── particlerotationkeydialog.cpp │ │ ├── particlerotationkeydialog.h │ │ ├── particlesizedialog.cpp │ │ ├── particlesizedialog.h │ │ ├── restrictedfiledialog.cpp │ │ ├── restrictedfiledialog.h │ │ ├── scaledialog.cpp │ │ ├── scaledialog.h │ │ ├── scenelightdialog.cpp │ │ ├── scenelightdialog.h │ │ ├── texturepathdialog.cpp │ │ ├── texturepathdialog.h │ │ ├── toolbar.cpp │ │ ├── toolbar.h │ │ ├── utils.cpp │ │ ├── utils.h │ │ ├── viewerscene.cpp │ │ ├── viewerscene.h │ │ ├── volumerandomdialog.cpp │ │ ├── volumerandomdialog.h │ │ ├── w3dafx.h │ │ ├── w3dview.cpp │ │ ├── w3dview.h │ │ ├── w3dviewdoc.cpp │ │ ├── w3dviewdoc.h │ │ ├── w3dviewview.cpp │ │ └── w3dviewview.h │ ├── wdump │ │ ├── CMakeLists.txt │ │ └── wdump.cpp │ └── wndedit │ │ ├── CMakeLists.txt │ │ └── main.cpp └── w3d │ ├── lib │ ├── array.h │ ├── autopool.h │ ├── buff.cpp │ ├── buff.h │ ├── bufffile.cpp │ ├── bufffile.h │ ├── chunkio.cpp │ ├── chunkio.h │ ├── cpudetect.cpp │ ├── cpudetect.h │ ├── crcengine.cpp │ ├── crcengine.h │ ├── critsection.cpp │ ├── critsection.h │ ├── ffactory.cpp │ ├── ffactory.h │ ├── filestraw.cpp │ ├── filestraw.h │ ├── gcd_lcm.cpp │ ├── gcd_lcm.h │ ├── hash.cpp │ ├── hash.h │ ├── hashtemplate.h │ ├── index.h │ ├── iniclass.cpp │ ├── iniclass.h │ ├── listnode.h │ ├── mpu.cpp │ ├── mpu.h │ ├── multilist.cpp │ ├── multilist.h │ ├── mutex.cpp │ ├── mutex.h │ ├── nstrdup.cpp │ ├── nstrdup.h │ ├── random.cpp │ ├── random.h │ ├── rawfile.cpp │ ├── rawfile.h │ ├── rcfile.cpp │ ├── rcfile.h │ ├── readline.cpp │ ├── readline.h │ ├── realcrc.cpp │ ├── realcrc.h │ ├── refcount.cpp │ ├── refcount.h │ ├── rtsutilsw3d.h │ ├── sharebuf.h │ ├── simplevec.h │ ├── slist.h │ ├── straw.cpp │ ├── straw.h │ ├── systimer.cpp │ ├── systimer.h │ ├── targa.cpp │ ├── targa.h │ ├── thread.cpp │ ├── thread.h │ ├── threadtrack.cpp │ ├── threadtrack.h │ ├── vector.h │ ├── w3dmpo.h │ ├── wwfile.cpp │ ├── wwfile.h │ ├── wwstring.cpp │ ├── wwstring.h │ ├── xstraw.cpp │ └── xstraw.h │ ├── math │ ├── aabox.cpp │ ├── aabox.h │ ├── aaplane.h │ ├── castres.h │ ├── colmath.cpp │ ├── colmath.h │ ├── colmathaabox.cpp │ ├── colmathaabtri.cpp │ ├── colmathaaplane.cpp │ ├── colmathfrustum.cpp │ ├── colmathline.cpp │ ├── colmathobbobb.cpp │ ├── colmathobbtri.cpp │ ├── colmathplane.cpp │ ├── cullsys.cpp │ ├── cullsys.h │ ├── frustum.cpp │ ├── frustum.h │ ├── gamemath.cpp │ ├── gamemath.h │ ├── lineseg.cpp │ ├── lineseg.h │ ├── matrix3.cpp │ ├── matrix3.h │ ├── matrix3d.cpp │ ├── matrix3d.h │ ├── matrix4.cpp │ ├── matrix4.h │ ├── obbox.h │ ├── plane.h │ ├── quat.cpp │ ├── quat.h │ ├── rect.h │ ├── sphere.h │ ├── tri.cpp │ ├── tri.h │ ├── v3_rnd.cpp │ ├── v3_rnd.h │ ├── vector2.h │ ├── vector2i.h │ ├── vector3.h │ ├── vector3i.h │ ├── vector4.cpp │ ├── vector4.h │ ├── vp.cpp │ └── vp.h │ ├── renderer │ ├── aabtree.cpp │ ├── aabtree.h │ ├── aabtreebuilder.cpp │ ├── aabtreebuilder.h │ ├── animobj.cpp │ ├── animobj.h │ ├── assetmgr.cpp │ ├── assetmgr.h │ ├── bitmaphandler.cpp │ ├── bitmaphandler.h │ ├── bmp2d.cpp │ ├── bmp2d.h │ ├── boxrobj.cpp │ ├── boxrobj.h │ ├── bwrender.cpp │ ├── bwrender.h │ ├── camera.cpp │ ├── camera.h │ ├── colorspace.cpp │ ├── colorspace.h │ ├── coltest.cpp │ ├── coltest.h │ ├── coltype.h │ ├── composite.cpp │ ├── composite.h │ ├── dazzle.cpp │ ├── dazzle.h │ ├── ddsfile.cpp │ ├── ddsfile.h │ ├── decalmsh.h │ ├── dllist.h │ ├── dx8caps.cpp │ ├── dx8caps.h │ ├── dx8fvf.cpp │ ├── dx8fvf.h │ ├── dx8indexbuffer.cpp │ ├── dx8indexbuffer.h │ ├── dx8polygonrenderer.cpp │ ├── dx8polygonrenderer.h │ ├── dx8renderer.cpp │ ├── dx8renderer.h │ ├── dx8texman.cpp │ ├── dx8texman.h │ ├── dx8vertexbuffer.cpp │ ├── dx8vertexbuffer.h │ ├── dx8wrapper.cpp │ ├── dx8wrapper.h │ ├── dynamesh.cpp │ ├── dynamesh.h │ ├── hanim.h │ ├── hanimmgr.cpp │ ├── hanimmgr.h │ ├── hcanim.cpp │ ├── hcanim.h │ ├── hlod.cpp │ ├── hlod.h │ ├── hrawanim.cpp │ ├── hrawanim.h │ ├── htree.cpp │ ├── htree.h │ ├── htreemgr.cpp │ ├── htreemgr.h │ ├── intersec.cpp │ ├── intersec.h │ ├── inttest.h │ ├── light.cpp │ ├── light.h │ ├── lightenv.cpp │ ├── lightenv.h │ ├── line3d.cpp │ ├── line3d.h │ ├── linegrp.cpp │ ├── linegrp.h │ ├── loaders.cpp │ ├── loaders.h │ ├── mapper.cpp │ ├── mapper.h │ ├── matinfo.cpp │ ├── matinfo.h │ ├── matpass.cpp │ ├── matpass.h │ ├── matrixmapper.cpp │ ├── matrixmapper.h │ ├── mesh.cpp │ ├── mesh.h │ ├── meshgeometry.cpp │ ├── meshgeometry.h │ ├── meshmatdesc.cpp │ ├── meshmatdesc.h │ ├── meshmdl.cpp │ ├── meshmdl.h │ ├── missingtexture.cpp │ ├── missingtexture.h │ ├── motchan.cpp │ ├── motchan.h │ ├── nullrobj.cpp │ ├── nullrobj.h │ ├── part_buf.cpp │ ├── part_buf.h │ ├── part_emt.cpp │ ├── part_emt.h │ ├── part_ldr.cpp │ ├── part_ldr.h │ ├── pivot.cpp │ ├── pivot.h │ ├── pointgr.cpp │ ├── pointgr.h │ ├── pot.cpp │ ├── pot.h │ ├── projector.cpp │ ├── projector.h │ ├── proto.h │ ├── rddesc.h │ ├── render2d.cpp │ ├── render2d.h │ ├── render2dsentence.cpp │ ├── render2dsentence.h │ ├── rendobj.cpp │ ├── rendobj.h │ ├── rinfo.cpp │ ├── rinfo.h │ ├── scene.cpp │ ├── scene.h │ ├── segline.cpp │ ├── segline.h │ ├── seglinerenderer.cpp │ ├── seglinerenderer.h │ ├── shader.cpp │ ├── shader.h │ ├── sortingrenderer.cpp │ ├── sortingrenderer.h │ ├── streak.cpp │ ├── streak.h │ ├── streakrender.cpp │ ├── streakrender.h │ ├── surfaceclass.cpp │ ├── surfaceclass.h │ ├── synctextureloadtasklist.cpp │ ├── synctextureloadtasklist.h │ ├── texproject.cpp │ ├── texproject.h │ ├── texture.cpp │ ├── texture.h │ ├── texturebase.cpp │ ├── texturebase.h │ ├── textureloader.cpp │ ├── textureloader.h │ ├── textureloadtask.cpp │ ├── textureloadtask.h │ ├── textureloadtasklist.cpp │ ├── textureloadtasklist.h │ ├── thumbnail.cpp │ ├── thumbnail.h │ ├── thumbnailmanager.cpp │ ├── thumbnailmanager.h │ ├── vertmaterial.cpp │ ├── vertmaterial.h │ ├── w3d.cpp │ ├── w3d.h │ ├── w3d_file.h │ ├── w3d_obsolete.h │ ├── w3d_util.cpp │ ├── w3d_util.h │ ├── w3derr.h │ ├── w3dexclusionlist.cpp │ ├── w3dexclusionlist.h │ ├── w3dformat.cpp │ ├── w3dformat.h │ └── w3dtypes.h │ └── saveload │ ├── persist.h │ └── postloadable.h ├── tests ├── CMakeLists.txt ├── data │ ├── audio │ │ ├── ima44s.wav │ │ └── pcm1644m.wav │ ├── compr │ │ ├── blob1.data │ │ ├── blob10.data │ │ ├── blob11.data │ │ ├── blob3.data │ │ ├── blob4.data │ │ ├── blob5.data │ │ ├── blob6.data │ │ ├── blob7.data │ │ ├── blob8.data │ │ ├── blob9.data │ │ └── uncompr.txt │ ├── filesystem │ │ ├── test.big │ │ └── test.ini │ ├── models │ │ └── cube.w3d │ └── video │ │ └── video.bik ├── globals.cpp ├── main.cpp ├── test_audiofilecache.cpp ├── test_audiomanager.cpp ├── test_compr.cpp ├── test_crc.cpp ├── test_filesystem.cpp ├── test_text.cpp ├── test_videoplayer.cpp ├── test_w3d_load.cpp └── test_w3d_math.cpp └── tools ├── .gitignore └── build ├── win_scripts ├── get_tools.bat ├── setup_folders.bat ├── vs_build_release.bat ├── vs_create_solution.bat └── vs_open_cmake_gui.bat └── win_x86 ├── README.md ├── vs2017_build_release.bat ├── vs2017_create_solution.bat ├── vs2017_open_cmake_gui.bat ├── vs2019_build_release.bat ├── vs2019_create_solution.bat ├── vs2019_open_cmake_gui.bat ├── vs2022_create_solution.bat └── vs2022_open_cmake_gui.bat /.gitignore: -------------------------------------------------------------------------------- 1 | *.user 2 | *.ncb 3 | /build* 4 | /.solution 5 | nbproject/ 6 | project/ 7 | doxygen/ 8 | *.a 9 | *.o 10 | CMakeCache.txt 11 | CMakeFiles 12 | Makefile 13 | cmake_install.cmake 14 | install_manifest.txt 15 | compile_commands.json 16 | *.so* 17 | CPackConfig.cmake 18 | CPackSourceConfig.cmake 19 | *.spec 20 | *.ncb 21 | *.sdf 22 | *.suo 23 | *.sln 24 | *.vcxproj* 25 | *.vcproj 26 | .cproject 27 | .project 28 | *~ 29 | !*.exe 30 | *.lastbuildstate 31 | *.unsuccessfulbuild 32 | *.tlog 33 | *.idb 34 | *.cd 35 | *.tmp 36 | *.bak 37 | thumbs.db 38 | *.aps 39 | -------------------------------------------------------------------------------- /.gitmodules: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/.gitmodules -------------------------------------------------------------------------------- /codecov.yml: -------------------------------------------------------------------------------- 1 | ignore: 2 | - "deps" 3 | - "tests" 4 | -------------------------------------------------------------------------------- /deps/baseconfig/src/strings/strings.h: -------------------------------------------------------------------------------- 1 | 2 | #ifndef BASECONFIG_STRINGS_H 3 | #define BASECONFIG_STRINGS_H 4 | 5 | #include "config.h" 6 | 7 | #ifdef __cplusplus 8 | extern "C" { 9 | #endif /* __cplusplus */ 10 | 11 | #ifndef HAVE_STRCASECMP 12 | #ifdef HAVE__STRICMP 13 | #define strcasecmp(s1, s2) _stricmp(s1, s2) 14 | #else 15 | #error "strcasecmp equivalent not known for this platform." 16 | #endif 17 | #endif 18 | 19 | #ifndef HAVE_STRNCASECMP 20 | #ifdef HAVE__STRNICMP 21 | #define strncasecmp(s1, s2, n) _strnicmp(s1, s2, n) 22 | #else 23 | #error "strncasecmp equivalent not known for this platform." 24 | #endif 25 | #endif 26 | 27 | #ifdef __cplusplus 28 | } 29 | #endif /* __cplusplus */ 30 | 31 | #endif /* BASECONFIG_STRINGS_H */ 32 | -------------------------------------------------------------------------------- /deps/bink/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | cmake_minimum_required(VERSION 3.0.0) 2 | 3 | if (NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES) 4 | message(STATUS "No build type selected, default to Debug") 5 | set(CMAKE_BUILD_TYPE "Debug") 6 | endif() 7 | 8 | project(binkstub VERSION 1.0.0 LANGUAGES C) 9 | 10 | add_library(binkstub SHARED bink.c bink.def) 11 | set_target_properties(binkstub PROPERTIES OUTPUT_NAME binkw32) 12 | set_target_properties(binkstub PROPERTIES SOVERSION 1.0 VERSION 1.0.0) 13 | target_include_directories(binkstub PUBLIC 14 | $ 15 | ) 16 | -------------------------------------------------------------------------------- /deps/bink/bink.def: -------------------------------------------------------------------------------- 1 | EXPORTS 2 | _BinkOpen@8 3 | _BinkSetSoundTrack@8 4 | _BinkSetSoundSystem@8 5 | _BinkOpenDirectSound@4 6 | _BinkClose@4 7 | _BinkWait@4 8 | _BinkDoFrame@4 9 | _BinkCopyToBuffer@28 10 | _BinkSetVolume@12 11 | _BinkNextFrame@4 12 | _BinkGoto@12 -------------------------------------------------------------------------------- /deps/captnlog/README.md: -------------------------------------------------------------------------------- 1 | # CaptainsLog 2 | 3 | CaptainsLog is intended to be used as a git submodule shared between project hosted under the [Assembly Armarda](https://github.com/TheAssemblyArmada) 4 | banner to provide a consistent interface for logging and assertions. 5 | -------------------------------------------------------------------------------- /deps/miles/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | cmake_minimum_required(VERSION 3.0.0) 2 | 3 | if (NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES) 4 | message(STATUS "No build type selected, default to Debug") 5 | set(CMAKE_BUILD_TYPE "Debug") 6 | endif() 7 | 8 | project(milesstub VERSION 1.0.0 LANGUAGES C) 9 | 10 | add_library(milesstub SHARED miles.c miles.def) 11 | set_target_properties(milesstub PROPERTIES OUTPUT_NAME mss32) 12 | set_target_properties(milesstub PROPERTIES SOVERSION 1.0 VERSION 1.0.0) 13 | target_include_directories(milesstub PUBLIC 14 | $ 15 | ) 16 | -------------------------------------------------------------------------------- /deps/olddx/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | add_library(d3d8 INTERFACE) 2 | target_link_libraries(d3d8 INTERFACE d3d8 d3dx8) 3 | 4 | if(MSVC) 5 | target_link_libraries(d3d8 INTERFACE legacy_stdio_definitions) 6 | endif() 7 | 8 | target_compile_definitions(d3d8 INTERFACE -DBUILD_WITH_D3D8) 9 | 10 | if(MSVC AND ${CMAKE_VERSION} VERSION_GREATER "3.13.0") 11 | target_link_directories(d3d8 BEFORE INTERFACE .) 12 | target_include_directories(d3d8 INTERFACE .) 13 | target_link_options(d3d8 INTERFACE /SAFESEH:NO /NODEFAULTLIB:libci.lib) 14 | endif() -------------------------------------------------------------------------------- /deps/olddx/d3d8.lib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/deps/olddx/d3d8.lib -------------------------------------------------------------------------------- /deps/olddx/d3dx8.lib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/deps/olddx/d3dx8.lib -------------------------------------------------------------------------------- /deps/olddx/dinput8.lib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/deps/olddx/dinput8.lib -------------------------------------------------------------------------------- /deps/olddx/dxguid.lib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/deps/olddx/dxguid.lib -------------------------------------------------------------------------------- /deps/stlport/BC50/README: -------------------------------------------------------------------------------- 1 | 2 | This directory should be included in search path when compiling 3 | with Borland C++ 5.0x compiler (maybe later ones, too). 4 | 5 | It provides wrappers that force inclusion of STLport files without extensions. 6 | If you want to preserve old-style HP semantics, include ../old_hp BEFORE this directory 7 | to include HP-style STL headers (with "using" directives). If namespaces are disabled, 8 | this one should be enough. 9 | -------------------------------------------------------------------------------- /deps/stlport/BC50/algorith.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 Boris Fomitchev 3 | * AUTOMATICALLY GENERATED - DO NOT EDIT ! 4 | */ 5 | 6 | /* 7 | * 8 | * This wrapper is needed for Borland C++ 5.0 to get STLport 9 | * header properly included 10 | */ 11 | 12 | #ifndef __STLPORT_BC_algorithm_H 13 | # define __STLPORT_BC_algorithm_H 14 | 15 | # include <..\algorithm.> 16 | 17 | #endif 18 | 19 | // Local Variables: 20 | // mode:C++ 21 | // End: 22 | -------------------------------------------------------------------------------- /deps/stlport/BC50/alloc.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 3 | * Boris Fomitchev 4 | * 5 | * This material is provided "as is", with absolutely no warranty expressed 6 | * or implied. Any use is at your own risk. 7 | * 8 | * Permission to use or copy this software for any purpose is hereby granted 9 | * without fee, provided the above notices are retained on all copies. 10 | * Permission to modify the code and to distribute modified code is granted, 11 | * provided the above notices are retained, and a notice that the code was 12 | * modified is included with the above copyright notice. 13 | * 14 | */ 15 | 16 | /* 17 | * 18 | * This wrapper is needed for Borland C++ 5.0 to get STLport 19 | * header properly included 20 | */ 21 | 22 | #ifndef __STLPORT_BC_memory_H 23 | # define __STLPORT_BC_memory_H 24 | 25 | # include <..\memory.> 26 | 27 | #endif 28 | 29 | // Local Variables: 30 | // mode:C++ 31 | // End: 32 | -------------------------------------------------------------------------------- /deps/stlport/BC50/bak/stddef.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 Boris Fomitchev 3 | * AUTOMATICALLY GENERATED - DO NOT EDIT ! 4 | */ 5 | 6 | /* 7 | * 8 | * This wrapper is needed for Borland C++ 5.0 to get STLport 9 | * header properly included 10 | */ 11 | 12 | #ifndef __STLPORT_BC_cstddef_H 13 | # define __STLPORT_BC_cstddef_H 14 | 15 | # include <..\cstddef.> 16 | 17 | #endif 18 | 19 | // Local Variables: 20 | // mode:C++ 21 | // End: 22 | -------------------------------------------------------------------------------- /deps/stlport/BC50/bak/stdlib.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 Boris Fomitchev 3 | * AUTOMATICALLY GENERATED - DO NOT EDIT ! 4 | */ 5 | 6 | /* 7 | * 8 | * This wrapper is needed for Borland C++ 5.0 to get STLport 9 | * header properly included 10 | */ 11 | 12 | # include <..\stdlib.h> 13 | 14 | // Local Variables: 15 | // mode:C++ 16 | // End: 17 | -------------------------------------------------------------------------------- /deps/stlport/BC50/bitset.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 Boris Fomitchev 3 | * AUTOMATICALLY GENERATED - DO NOT EDIT ! 4 | */ 5 | 6 | /* 7 | * 8 | * This wrapper is needed for Borland C++ 5.0 to get STLport 9 | * header properly included 10 | */ 11 | 12 | #ifndef __STLPORT_BC_bitset_H 13 | # define __STLPORT_BC_bitset_H 14 | 15 | # include <..\bitset.> 16 | 17 | #endif 18 | 19 | // Local Variables: 20 | // mode:C++ 21 | // End: 22 | -------------------------------------------------------------------------------- /deps/stlport/BC50/cassert.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 Boris Fomitchev 3 | * AUTOMATICALLY GENERATED - DO NOT EDIT ! 4 | */ 5 | 6 | /* 7 | * 8 | * This wrapper is needed for Borland C++ 5.0 to get STLport 9 | * header properly included 10 | */ 11 | 12 | #ifndef __STLPORT_BC_cassert_H 13 | # define __STLPORT_BC_cassert_H 14 | 15 | # include <..\cassert.> 16 | 17 | #endif 18 | 19 | // Local Variables: 20 | // mode:C++ 21 | // End: 22 | -------------------------------------------------------------------------------- /deps/stlport/BC50/cctype.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 Boris Fomitchev 3 | * AUTOMATICALLY GENERATED - DO NOT EDIT ! 4 | */ 5 | 6 | /* 7 | * 8 | * This wrapper is needed for Borland C++ 5.0 to get STLport 9 | * header properly included 10 | */ 11 | 12 | #ifndef __STLPORT_BC_cctype_H 13 | # define __STLPORT_BC_cctype_H 14 | 15 | # include <..\cctype.> 16 | 17 | #endif 18 | 19 | // Local Variables: 20 | // mode:C++ 21 | // End: 22 | -------------------------------------------------------------------------------- /deps/stlport/BC50/cerrno.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 Boris Fomitchev 3 | * AUTOMATICALLY GENERATED - DO NOT EDIT ! 4 | */ 5 | 6 | /* 7 | * 8 | * This wrapper is needed for Borland C++ 5.0 to get STLport 9 | * header properly included 10 | */ 11 | 12 | #ifndef __STLPORT_BC_cerrno_H 13 | # define __STLPORT_BC_cerrno_H 14 | 15 | # include <..\cerrno.> 16 | 17 | #endif 18 | 19 | // Local Variables: 20 | // mode:C++ 21 | // End: 22 | -------------------------------------------------------------------------------- /deps/stlport/BC50/cfloat.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 Boris Fomitchev 3 | * AUTOMATICALLY GENERATED - DO NOT EDIT ! 4 | */ 5 | 6 | /* 7 | * 8 | * This wrapper is needed for Borland C++ 5.0 to get STLport 9 | * header properly included 10 | */ 11 | 12 | #ifndef __STLPORT_BC_cfloat_H 13 | # define __STLPORT_BC_cfloat_H 14 | 15 | # include <..\cfloat.> 16 | 17 | #endif 18 | 19 | // Local Variables: 20 | // mode:C++ 21 | // End: 22 | -------------------------------------------------------------------------------- /deps/stlport/BC50/climits.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 Boris Fomitchev 3 | * AUTOMATICALLY GENERATED - DO NOT EDIT ! 4 | */ 5 | 6 | /* 7 | * 8 | * This wrapper is needed for Borland C++ 5.0 to get STLport 9 | * header properly included 10 | */ 11 | 12 | #ifndef __STLPORT_BC_climits_H 13 | # define __STLPORT_BC_climits_H 14 | 15 | # include <..\climits.> 16 | 17 | #endif 18 | 19 | // Local Variables: 20 | // mode:C++ 21 | // End: 22 | -------------------------------------------------------------------------------- /deps/stlport/BC50/clocale.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 Boris Fomitchev 3 | * AUTOMATICALLY GENERATED - DO NOT EDIT ! 4 | */ 5 | 6 | /* 7 | * 8 | * This wrapper is needed for Borland C++ 5.0 to get STLport 9 | * header properly included 10 | */ 11 | 12 | #ifndef __STLPORT_BC_clocale_H 13 | # define __STLPORT_BC_clocale_H 14 | 15 | # include <..\clocale.> 16 | 17 | #endif 18 | 19 | // Local Variables: 20 | // mode:C++ 21 | // End: 22 | -------------------------------------------------------------------------------- /deps/stlport/BC50/cmath.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 Boris Fomitchev 3 | * AUTOMATICALLY GENERATED - DO NOT EDIT ! 4 | */ 5 | 6 | /* 7 | * 8 | * This wrapper is needed for Borland C++ 5.0 to get STLport 9 | * header properly included 10 | */ 11 | 12 | #ifndef __STLPORT_BC_cmath_H 13 | # define __STLPORT_BC_cmath_H 14 | 15 | # include <..\cmath.> 16 | 17 | #endif 18 | 19 | // Local Variables: 20 | // mode:C++ 21 | // End: 22 | -------------------------------------------------------------------------------- /deps/stlport/BC50/complex.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 3 | * Boris Fomitchev 4 | * 5 | * This material is provided "as is", with absolutely no warranty expressed 6 | * or implied. Any use is at your own risk. 7 | * 8 | * Permission to use or copy this software for any purpose is hereby granted 9 | * without fee, provided the above notices are retained on all copies. 10 | * Permission to modify the code and to distribute modified code is granted, 11 | * provided the above notices are retained, and a notice that the code was 12 | * modified is included with the above copyright notice. 13 | * 14 | */ 15 | 16 | /* 17 | * 18 | * This wrapper is needed for Borland C++ 5.0 to get STLport 19 | * header properly included 20 | */ 21 | 22 | #ifndef __STLPORT_BC_complex_H 23 | # define __STLPORT_BC_complex_H 24 | 25 | # include <..\complex.> 26 | 27 | #endif 28 | 29 | // Local Variables: 30 | // mode:C++ 31 | // End: 32 | -------------------------------------------------------------------------------- /deps/stlport/BC50/csetjmp.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 Boris Fomitchev 3 | * AUTOMATICALLY GENERATED - DO NOT EDIT ! 4 | */ 5 | 6 | /* 7 | * 8 | * This wrapper is needed for Borland C++ 5.0 to get STLport 9 | * header properly included 10 | */ 11 | 12 | #ifndef __STLPORT_BC_csetjmp_H 13 | # define __STLPORT_BC_csetjmp_H 14 | 15 | # include <..\csetjmp.> 16 | 17 | #endif 18 | 19 | // Local Variables: 20 | // mode:C++ 21 | // End: 22 | -------------------------------------------------------------------------------- /deps/stlport/BC50/csignal.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 Boris Fomitchev 3 | * AUTOMATICALLY GENERATED - DO NOT EDIT ! 4 | */ 5 | 6 | /* 7 | * 8 | * This wrapper is needed for Borland C++ 5.0 to get STLport 9 | * header properly included 10 | */ 11 | 12 | #ifndef __STLPORT_BC_csignal_H 13 | # define __STLPORT_BC_csignal_H 14 | 15 | # include <..\csignal.> 16 | 17 | #endif 18 | 19 | // Local Variables: 20 | // mode:C++ 21 | // End: 22 | -------------------------------------------------------------------------------- /deps/stlport/BC50/cstdarg.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 Boris Fomitchev 3 | * AUTOMATICALLY GENERATED - DO NOT EDIT ! 4 | */ 5 | 6 | /* 7 | * 8 | * This wrapper is needed for Borland C++ 5.0 to get STLport 9 | * header properly included 10 | */ 11 | 12 | #ifndef __STLPORT_BC_cstdarg_H 13 | # define __STLPORT_BC_cstdarg_H 14 | 15 | # include <..\cstdarg.> 16 | 17 | #endif 18 | 19 | // Local Variables: 20 | // mode:C++ 21 | // End: 22 | -------------------------------------------------------------------------------- /deps/stlport/BC50/cstddef.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 Boris Fomitchev 3 | * AUTOMATICALLY GENERATED - DO NOT EDIT ! 4 | */ 5 | 6 | /* 7 | * 8 | * This wrapper is needed for Borland C++ 5.0 to get STLport 9 | * header properly included 10 | */ 11 | 12 | #ifndef __STLPORT_BC_cstddef_H 13 | # define __STLPORT_BC_cstddef_H 14 | 15 | # include <..\cstddef.> 16 | 17 | #endif 18 | 19 | // Local Variables: 20 | // mode:C++ 21 | // End: 22 | -------------------------------------------------------------------------------- /deps/stlport/BC50/cstdio.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 Boris Fomitchev 3 | * AUTOMATICALLY GENERATED - DO NOT EDIT ! 4 | */ 5 | 6 | /* 7 | * 8 | * This wrapper is needed for Borland C++ 5.0 to get STLport 9 | * header properly included 10 | */ 11 | 12 | #ifndef __STLPORT_BC_cstdio_H 13 | # define __STLPORT_BC_cstdio_H 14 | 15 | # include <..\cstdio.> 16 | 17 | #endif 18 | 19 | // Local Variables: 20 | // mode:C++ 21 | // End: 22 | -------------------------------------------------------------------------------- /deps/stlport/BC50/cstdlib.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 Boris Fomitchev 3 | * AUTOMATICALLY GENERATED - DO NOT EDIT ! 4 | */ 5 | 6 | /* 7 | * 8 | * This wrapper is needed for Borland C++ 5.0 to get STLport 9 | * header properly included 10 | */ 11 | 12 | # include <..\cstdlib.> 13 | 14 | // Local Variables: 15 | // mode:C++ 16 | // End: 17 | -------------------------------------------------------------------------------- /deps/stlport/BC50/cstring.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 Boris Fomitchev 3 | * AUTOMATICALLY GENERATED - DO NOT EDIT ! 4 | */ 5 | 6 | /* 7 | * 8 | * This wrapper is needed for Borland C++ 5.0 to get STLport 9 | * header properly included 10 | */ 11 | #ifndef __STLPORT_BC_cstring_H 12 | # define __STLPORT_BC_cstring_H 13 | 14 | # include <..\cstring.> 15 | 16 | #endif 17 | // Local Variables: 18 | // mode:C++ 19 | // End: 20 | -------------------------------------------------------------------------------- /deps/stlport/BC50/ctime.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 Boris Fomitchev 3 | * AUTOMATICALLY GENERATED - DO NOT EDIT ! 4 | */ 5 | 6 | /* 7 | * 8 | * This wrapper is needed for Borland C++ 5.0 to get STLport 9 | * header properly included 10 | */ 11 | 12 | #ifndef __STLPORT_BC_ctime_H 13 | # define __STLPORT_BC_ctime_H 14 | 15 | # include <..\ctime.> 16 | 17 | #endif 18 | 19 | // Local Variables: 20 | // mode:C++ 21 | // End: 22 | -------------------------------------------------------------------------------- /deps/stlport/BC50/cwchar.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 Boris Fomitchev 3 | * AUTOMATICALLY GENERATED - DO NOT EDIT ! 4 | */ 5 | 6 | /* 7 | * 8 | * This wrapper is needed for Borland C++ 5.0 to get STLport 9 | * header properly included 10 | */ 11 | 12 | #ifndef __STLPORT_BC_cwchar_H 13 | # define __STLPORT_BC_cwchar_H 14 | 15 | # include <..\cwchar.> 16 | 17 | #endif 18 | 19 | // Local Variables: 20 | // mode:C++ 21 | // End: 22 | -------------------------------------------------------------------------------- /deps/stlport/BC50/cwctype.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 Boris Fomitchev 3 | * AUTOMATICALLY GENERATED - DO NOT EDIT ! 4 | */ 5 | 6 | /* 7 | * 8 | * This wrapper is needed for Borland C++ 5.0 to get STLport 9 | * header properly included 10 | */ 11 | 12 | #ifndef __STLPORT_BC_cwctype_H 13 | # define __STLPORT_BC_cwctype_H 14 | 15 | # include <..\cwctype.> 16 | 17 | #endif 18 | 19 | // Local Variables: 20 | // mode:C++ 21 | // End: 22 | -------------------------------------------------------------------------------- /deps/stlport/BC50/deque.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 Boris Fomitchev 3 | * AUTOMATICALLY GENERATED - DO NOT EDIT ! 4 | */ 5 | 6 | /* 7 | * 8 | * This wrapper is needed for Borland C++ 5.0 to get STLport 9 | * header properly included 10 | */ 11 | 12 | #ifndef __STLPORT_BC_deque_H 13 | # define __STLPORT_BC_deque_H 14 | 15 | # include <..\deque.> 16 | 17 | #endif 18 | 19 | // Local Variables: 20 | // mode:C++ 21 | // End: 22 | -------------------------------------------------------------------------------- /deps/stlport/BC50/exceptio.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 Boris Fomitchev 3 | * AUTOMATICALLY GENERATED - DO NOT EDIT ! 4 | */ 5 | 6 | /* 7 | * 8 | * This wrapper is needed for Borland C++ 5.0 to get STLport 9 | * header properly included 10 | */ 11 | 12 | #ifndef __STLPORT_BC_exceptio_H 13 | # define __STLPORT_BC_exceptio_H 14 | 15 | # include <..\exception.> 16 | 17 | #endif 18 | 19 | // Local Variables: 20 | // mode:C++ 21 | // End: 22 | -------------------------------------------------------------------------------- /deps/stlport/BC50/fstream.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 Boris Fomitchev 3 | * AUTOMATICALLY GENERATED - DO NOT EDIT ! 4 | */ 5 | 6 | /* 7 | * 8 | * This wrapper is needed for Borland C++ 5.0 to get STLport 9 | * header properly included 10 | */ 11 | 12 | #ifndef __STLPORT_BC_fstream_H 13 | # define __STLPORT_BC_fstream_H 14 | 15 | # include <..\fstream.> 16 | 17 | #endif 18 | 19 | // Local Variables: 20 | // mode:C++ 21 | // End: 22 | -------------------------------------------------------------------------------- /deps/stlport/BC50/function.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 Boris Fomitchev 3 | * AUTOMATICALLY GENERATED - DO NOT EDIT ! 4 | */ 5 | 6 | /* 7 | * 8 | * This wrapper is needed for Borland C++ 5.0 to get STLport 9 | * header properly included 10 | */ 11 | 12 | #ifndef __STLPORT_BC_functional_H 13 | # define __STLPORT_BC_functional_H 14 | 15 | # include <..\functional.> 16 | 17 | #endif 18 | 19 | // Local Variables: 20 | // mode:C++ 21 | // End: 22 | -------------------------------------------------------------------------------- /deps/stlport/BC50/hash_map.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 Boris Fomitchev 3 | * AUTOMATICALLY GENERATED - DO NOT EDIT ! 4 | */ 5 | 6 | /* 7 | * 8 | * This wrapper is needed for Borland C++ 5.0 to get STLport 9 | * header properly included 10 | */ 11 | 12 | #ifndef __STLPORT_BC_hash_map_H 13 | # define __STLPORT_BC_hash_map_H 14 | 15 | # include <..\hash_map.> 16 | 17 | #endif 18 | 19 | // Local Variables: 20 | // mode:C++ 21 | // End: 22 | -------------------------------------------------------------------------------- /deps/stlport/BC50/hash_set.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 Boris Fomitchev 3 | * AUTOMATICALLY GENERATED - DO NOT EDIT ! 4 | */ 5 | 6 | /* 7 | * 8 | * This wrapper is needed for Borland C++ 5.0 to get STLport 9 | * header properly included 10 | */ 11 | 12 | #ifndef __STLPORT_BC_hash_set_H 13 | # define __STLPORT_BC_hash_set_H 14 | 15 | # include <..\hash_set.> 16 | 17 | #endif 18 | 19 | // Local Variables: 20 | // mode:C++ 21 | // End: 22 | -------------------------------------------------------------------------------- /deps/stlport/BC50/iomanip.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 Boris Fomitchev 3 | * AUTOMATICALLY GENERATED - DO NOT EDIT ! 4 | */ 5 | 6 | /* 7 | * 8 | * This wrapper is needed for Borland C++ 5.0 to get STLport 9 | * header properly included 10 | */ 11 | 12 | #ifndef __STLPORT_BC_iomanip_H 13 | # define __STLPORT_BC_iomanip_H 14 | 15 | # include <..\iomanip.> 16 | 17 | #endif 18 | 19 | // Local Variables: 20 | // mode:C++ 21 | // End: 22 | -------------------------------------------------------------------------------- /deps/stlport/BC50/ios.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 Boris Fomitchev 3 | * AUTOMATICALLY GENERATED - DO NOT EDIT ! 4 | */ 5 | 6 | /* 7 | * 8 | * This wrapper is needed for Borland C++ 5.0 to get STLport 9 | * header properly included 10 | */ 11 | 12 | #ifndef __STLPORT_BC_ios_H 13 | # define __STLPORT_BC_ios_H 14 | 15 | # include <..\ios.> 16 | 17 | #endif 18 | 19 | // Local Variables: 20 | // mode:C++ 21 | // End: 22 | -------------------------------------------------------------------------------- /deps/stlport/BC50/iosfwd.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 Boris Fomitchev 3 | * AUTOMATICALLY GENERATED - DO NOT EDIT ! 4 | */ 5 | 6 | /* 7 | * 8 | * This wrapper is needed for Borland C++ 5.0 to get STLport 9 | * header properly included 10 | */ 11 | 12 | #ifndef __STLPORT_BC_iosfwd_H 13 | # define __STLPORT_BC_iosfwd_H 14 | 15 | # include <..\iosfwd.> 16 | 17 | #endif 18 | 19 | // Local Variables: 20 | // mode:C++ 21 | // End: 22 | -------------------------------------------------------------------------------- /deps/stlport/BC50/iostream.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 Boris Fomitchev 3 | * AUTOMATICALLY GENERATED - DO NOT EDIT ! 4 | */ 5 | 6 | /* 7 | * 8 | * This wrapper is needed for Borland C++ 5.0 to get STLport 9 | * header properly included 10 | */ 11 | 12 | #ifndef __STLPORT_BC_iostream_H 13 | # define __STLPORT_BC_iostream_H 14 | 15 | # include <..\iostream.> 16 | 17 | #endif 18 | 19 | // Local Variables: 20 | // mode:C++ 21 | // End: 22 | -------------------------------------------------------------------------------- /deps/stlport/BC50/istream.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 Boris Fomitchev 3 | * AUTOMATICALLY GENERATED - DO NOT EDIT ! 4 | */ 5 | 6 | /* 7 | * 8 | * This wrapper is needed for Borland C++ 5.0 to get STLport 9 | * header properly included 10 | */ 11 | 12 | #ifndef __STLPORT_BC_istream_H 13 | # define __STLPORT_BC_istream_H 14 | 15 | # include <..\istream.> 16 | 17 | #endif 18 | 19 | // Local Variables: 20 | // mode:C++ 21 | // End: 22 | -------------------------------------------------------------------------------- /deps/stlport/BC50/iterator.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 Boris Fomitchev 3 | * AUTOMATICALLY GENERATED - DO NOT EDIT ! 4 | */ 5 | 6 | /* 7 | * 8 | * This wrapper is needed for Borland C++ 5.0 to get STLport 9 | * header properly included 10 | */ 11 | 12 | #ifndef __STLPORT_BC_iterator_H 13 | # define __STLPORT_BC_iterator_H 14 | 15 | # include <..\iterator.> 16 | 17 | #endif 18 | 19 | // Local Variables: 20 | // mode:C++ 21 | // End: 22 | -------------------------------------------------------------------------------- /deps/stlport/BC50/limits.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 3 | * Boris Fomitchev 4 | * 5 | * This material is provided "as is", with absolutely no warranty expressed 6 | * or implied. Any use is at your own risk. 7 | * 8 | * Permission to use or copy this software for any purpose is hereby granted 9 | * without fee, provided the above notices are retained on all copies. 10 | * Permission to modify the code and to distribute modified code is granted, 11 | * provided the above notices are retained, and a notice that the code was 12 | * modified is included with the above copyright notice. 13 | * 14 | */ 15 | 16 | /* 17 | * 18 | * This wrapper is needed for Borland C++ 5.0 to get STLport 19 | * header properly included 20 | */ 21 | 22 | // include BC native 23 | 24 | #include <..\climits.> 25 | 26 | #ifndef __IN_STLPORT_CLIMITS 27 | # include <..\limits.> 28 | #endif 29 | 30 | // Local Variables: 31 | // mode:C++ 32 | // End: 33 | -------------------------------------------------------------------------------- /deps/stlport/BC50/list.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 Boris Fomitchev 3 | * AUTOMATICALLY GENERATED - DO NOT EDIT ! 4 | */ 5 | 6 | /* 7 | * 8 | * This wrapper is needed for Borland C++ 5.0 to get STLport 9 | * header properly included 10 | */ 11 | 12 | #ifndef __STLPORT_BC_list_H 13 | # define __STLPORT_BC_list_H 14 | 15 | # include <..\list.> 16 | 17 | #endif 18 | 19 | // Local Variables: 20 | // mode:C++ 21 | // End: 22 | -------------------------------------------------------------------------------- /deps/stlport/BC50/locale.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 3 | * Boris Fomitchev 4 | * 5 | * This material is provided "as is", with absolutely no warranty expressed 6 | * or implied. Any use is at your own risk. 7 | * 8 | * Permission to use or copy this software for any purpose is hereby granted 9 | * without fee, provided the above notices are retained on all copies. 10 | * Permission to modify the code and to distribute modified code is granted, 11 | * provided the above notices are retained, and a notice that the code was 12 | * modified is included with the above copyright notice. 13 | * 14 | */ 15 | 16 | /* 17 | * 18 | * This wrapper is needed for Borland C++ 5.0 to get STLport 19 | * header properly included 20 | */ 21 | 22 | # include <..\clocale.> 23 | 24 | # ifndef __IN_STLPORT_CLOCALE 25 | # include <..\locale.> 26 | # endif 27 | 28 | // Local Variables: 29 | // mode:C++ 30 | // End: 31 | -------------------------------------------------------------------------------- /deps/stlport/BC50/make_bc50.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | for file in `cat ../export_names` 3 | do 4 | rm -fr $file.h 5 | cat stl_tmpl.h | sed -e "s/REPLACEME/$file/g" > $file.h 6 | done 7 | 8 | mv algorithm.h algorith.h 9 | mv functional.h function.h 10 | mv stdexcept.h stdexcep.h 11 | mv streambuf.h streambu.h 12 | mv strstream.h strstrea.h 13 | -------------------------------------------------------------------------------- /deps/stlport/BC50/map.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 Boris Fomitchev 3 | * AUTOMATICALLY GENERATED - DO NOT EDIT ! 4 | */ 5 | 6 | /* 7 | * 8 | * This wrapper is needed for Borland C++ 5.0 to get STLport 9 | * header properly included 10 | */ 11 | 12 | #ifndef __STLPORT_BC_map_H 13 | # define __STLPORT_BC_map_H 14 | 15 | # include <..\map.> 16 | 17 | #endif 18 | 19 | // Local Variables: 20 | // mode:C++ 21 | // End: 22 | -------------------------------------------------------------------------------- /deps/stlport/BC50/memory.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 3 | * Boris Fomitchev 4 | * 5 | * This material is provided "as is", with absolutely no warranty expressed 6 | * or implied. Any use is at your own risk. 7 | * 8 | * Permission to use or copy this software for any purpose is hereby granted 9 | * without fee, provided the above notices are retained on all copies. 10 | * Permission to modify the code and to distribute modified code is granted, 11 | * provided the above notices are retained, and a notice that the code was 12 | * modified is included with the above copyright notice. 13 | * 14 | */ 15 | 16 | /* 17 | * 18 | * This wrapper is needed for Borland C++ 5.0 to get STLport 19 | * header properly included 20 | */ 21 | 22 | #ifndef __STLPORT_BC_memory_H 23 | # define __STLPORT_BC_memory_H 24 | 25 | # include <..\include\memory.h> 26 | 27 | # include <..\memory.> 28 | 29 | #endif 30 | 31 | // Local Variables: 32 | // mode:C++ 33 | // End: 34 | -------------------------------------------------------------------------------- /deps/stlport/BC50/numeric.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 Boris Fomitchev 3 | * AUTOMATICALLY GENERATED - DO NOT EDIT ! 4 | */ 5 | 6 | /* 7 | * 8 | * This wrapper is needed for Borland C++ 5.0 to get STLport 9 | * header properly included 10 | */ 11 | 12 | #ifndef __STLPORT_BC_numeric_H 13 | # define __STLPORT_BC_numeric_H 14 | 15 | # include <..\numeric.> 16 | 17 | #endif 18 | 19 | // Local Variables: 20 | // mode:C++ 21 | // End: 22 | -------------------------------------------------------------------------------- /deps/stlport/BC50/ostream.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 Boris Fomitchev 3 | * AUTOMATICALLY GENERATED - DO NOT EDIT ! 4 | */ 5 | 6 | /* 7 | * 8 | * This wrapper is needed for Borland C++ 5.0 to get STLport 9 | * header properly included 10 | */ 11 | 12 | #ifndef __STLPORT_BC_ostream_H 13 | # define __STLPORT_BC_ostream_H 14 | 15 | # include <..\ostream.> 16 | 17 | #endif 18 | 19 | // Local Variables: 20 | // mode:C++ 21 | // End: 22 | -------------------------------------------------------------------------------- /deps/stlport/BC50/pthread_alloc.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 Boris Fomitchev 3 | * AUTOMATICALLY GENERATED - DO NOT EDIT ! 4 | */ 5 | 6 | /* 7 | * 8 | * This wrapper is needed for Borland C++ 5.0 to get STLport 9 | * header properly included 10 | */ 11 | 12 | #ifndef __STLPORT_BC_pthread_alloc_H 13 | # define __STLPORT_BC_pthread_alloc_H 14 | 15 | # include <..\pthread_alloc.> 16 | 17 | #endif 18 | 19 | // Local Variables: 20 | // mode:C++ 21 | // End: 22 | -------------------------------------------------------------------------------- /deps/stlport/BC50/queue.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 Boris Fomitchev 3 | * AUTOMATICALLY GENERATED - DO NOT EDIT ! 4 | */ 5 | 6 | /* 7 | * 8 | * This wrapper is needed for Borland C++ 5.0 to get STLport 9 | * header properly included 10 | */ 11 | 12 | #ifndef __STLPORT_BC_queue_H 13 | # define __STLPORT_BC_queue_H 14 | 15 | # include <..\queue.> 16 | 17 | #endif 18 | 19 | // Local Variables: 20 | // mode:C++ 21 | // End: 22 | -------------------------------------------------------------------------------- /deps/stlport/BC50/rope.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 Boris Fomitchev 3 | * AUTOMATICALLY GENERATED - DO NOT EDIT ! 4 | */ 5 | 6 | /* 7 | * 8 | * This wrapper is needed for Borland C++ 5.0 to get STLport 9 | * header properly included 10 | */ 11 | 12 | #ifndef __STLPORT_BC_rope_H 13 | # define __STLPORT_BC_rope_H 14 | 15 | # include <..\rope.> 16 | 17 | #endif 18 | 19 | // Local Variables: 20 | // mode:C++ 21 | // End: 22 | -------------------------------------------------------------------------------- /deps/stlport/BC50/set.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 Boris Fomitchev 3 | * AUTOMATICALLY GENERATED - DO NOT EDIT ! 4 | */ 5 | 6 | /* 7 | * 8 | * This wrapper is needed for Borland C++ 5.0 to get STLport 9 | * header properly included 10 | */ 11 | 12 | #ifndef __STLPORT_BC_set_H 13 | # define __STLPORT_BC_set_H 14 | 15 | # include <..\set.> 16 | 17 | #endif 18 | 19 | // Local Variables: 20 | // mode:C++ 21 | // End: 22 | -------------------------------------------------------------------------------- /deps/stlport/BC50/slist.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 Boris Fomitchev 3 | * AUTOMATICALLY GENERATED - DO NOT EDIT ! 4 | */ 5 | 6 | /* 7 | * 8 | * This wrapper is needed for Borland C++ 5.0 to get STLport 9 | * header properly included 10 | */ 11 | 12 | #ifndef __STLPORT_BC_slist_H 13 | # define __STLPORT_BC_slist_H 14 | 15 | # include <..\slist.> 16 | 17 | #endif 18 | 19 | // Local Variables: 20 | // mode:C++ 21 | // End: 22 | -------------------------------------------------------------------------------- /deps/stlport/BC50/sstream.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 Boris Fomitchev 3 | * AUTOMATICALLY GENERATED - DO NOT EDIT ! 4 | */ 5 | 6 | /* 7 | * 8 | * This wrapper is needed for Borland C++ 5.0 to get STLport 9 | * header properly included 10 | */ 11 | 12 | #ifndef __STLPORT_BC_sstream_H 13 | # define __STLPORT_BC_sstream_H 14 | 15 | # include <..\sstream.> 16 | 17 | #endif 18 | 19 | // Local Variables: 20 | // mode:C++ 21 | // End: 22 | -------------------------------------------------------------------------------- /deps/stlport/BC50/stack.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 Boris Fomitchev 3 | * AUTOMATICALLY GENERATED - DO NOT EDIT ! 4 | */ 5 | 6 | /* 7 | * 8 | * This wrapper is needed for Borland C++ 5.0 to get STLport 9 | * header properly included 10 | */ 11 | 12 | #ifndef __STLPORT_BC_stack_H 13 | # define __STLPORT_BC_stack_H 14 | 15 | # include <..\stack.> 16 | 17 | #endif 18 | 19 | // Local Variables: 20 | // mode:C++ 21 | // End: 22 | -------------------------------------------------------------------------------- /deps/stlport/BC50/stdexcep.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 Boris Fomitchev 3 | * AUTOMATICALLY GENERATED - DO NOT EDIT ! 4 | */ 5 | 6 | /* 7 | * 8 | * This wrapper is needed for Borland C++ 5.0 to get STLport 9 | * header properly included 10 | */ 11 | 12 | #ifndef __STLPORT_BC_stdexcept_H 13 | # define __STLPORT_BC_stdexcept_H 14 | 15 | # include <..\stdexcept.> 16 | 17 | #endif 18 | 19 | // Local Variables: 20 | // mode:C++ 21 | // End: 22 | -------------------------------------------------------------------------------- /deps/stlport/BC50/stl_tmpl.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 Boris Fomitchev 3 | * AUTOMATICALLY GENERATED - DO NOT EDIT ! 4 | */ 5 | 6 | /* 7 | * 8 | * This wrapper is needed for Borland C++ 5.0 to get STLport 9 | * header properly included 10 | */ 11 | 12 | #ifndef __STLPORT_BC_REPLACEME_H 13 | # define __STLPORT_BC_REPLACEME_H 14 | 15 | # include <..\REPLACEME.> 16 | 17 | #endif 18 | 19 | // Local Variables: 20 | // mode:C++ 21 | // End: 22 | -------------------------------------------------------------------------------- /deps/stlport/BC50/streambu.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 Boris Fomitchev 3 | * AUTOMATICALLY GENERATED - DO NOT EDIT ! 4 | */ 5 | 6 | /* 7 | * 8 | * This wrapper is needed for Borland C++ 5.0 to get STLport 9 | * header properly included 10 | */ 11 | 12 | #ifndef __STLPORT_BC_streambuf_H 13 | # define __STLPORT_BC_streambuf_H 14 | 15 | # include <..\streambuf.> 16 | 17 | #endif 18 | 19 | // Local Variables: 20 | // mode:C++ 21 | // End: 22 | -------------------------------------------------------------------------------- /deps/stlport/BC50/streambuf.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 3 | * Boris Fomitchev 4 | * 5 | * This material is provided "as is", with absolutely no warranty expressed 6 | * or implied. Any use is at your own risk. 7 | * 8 | * Permission to use or copy this software for any purpose is hereby granted 9 | * without fee, provided the above notices are retained on all copies. 10 | * Permission to modify the code and to distribute modified code is granted, 11 | * provided the above notices are retained, and a notice that the code was 12 | * modified is included with the above copyright notice. 13 | * 14 | */ 15 | 16 | /* 17 | * 18 | * This wrapper is needed for Borland C++ 5.0 to get STLport 19 | * header properly included 20 | */ 21 | 22 | #ifndef __STLPORT_BC_streambuf_H 23 | # define __STLPORT_BC_streambuf_H 24 | 25 | # include <..\streambuf.> 26 | 27 | #endif 28 | 29 | // Local Variables: 30 | // mode:C++ 31 | // End: 32 | -------------------------------------------------------------------------------- /deps/stlport/BC50/string.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 3 | * Boris Fomitchev 4 | * 5 | * This material is provided "as is", with absolutely no warranty expressed 6 | * or implied. Any use is at your own risk. 7 | * 8 | * Permission to use or copy this software for any purpose is hereby granted 9 | * without fee, provided the above notices are retained on all copies. 10 | * Permission to modify the code and to distribute modified code is granted, 11 | * provided the above notices are retained, and a notice that the code was 12 | * modified is included with the above copyright notice. 13 | * 14 | */ 15 | 16 | /* 17 | * 18 | * This wrapper is needed for Borland C++ 5.0 to get STLport 19 | * header properly included 20 | */ 21 | 22 | 23 | # include <..\string.h> 24 | 25 | # ifndef __IN_STLPORT_CSTRING 26 | // okay, include STLPort header 27 | # include <..\string.> 28 | # endif /* __IN_STLPORT_CSTRING */ 29 | 30 | 31 | // Local Variables: 32 | // mode:C++ 33 | // End: 34 | -------------------------------------------------------------------------------- /deps/stlport/BC50/strstrea.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 Boris Fomitchev 3 | * AUTOMATICALLY GENERATED - DO NOT EDIT ! 4 | */ 5 | 6 | /* 7 | * 8 | * This wrapper is needed for Borland C++ 5.0 to get STLport 9 | * header properly included 10 | */ 11 | 12 | #ifndef __STLPORT_BC_strstream_H 13 | # define __STLPORT_BC_strstream_H 14 | 15 | # include <..\strstream.> 16 | 17 | #endif 18 | 19 | // Local Variables: 20 | // mode:C++ 21 | // End: 22 | -------------------------------------------------------------------------------- /deps/stlport/BC50/typeinfo.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 Boris Fomitchev 3 | * AUTOMATICALLY GENERATED - DO NOT EDIT ! 4 | */ 5 | 6 | /* 7 | * 8 | * This wrapper is needed for Borland C++ 5.0 to get STLport 9 | * header properly included 10 | */ 11 | 12 | #ifndef __STLPORT_BC_typeinfo_H 13 | # define __STLPORT_BC_typeinfo_H 14 | 15 | # include <..\typeinfo.> 16 | 17 | #endif 18 | 19 | // Local Variables: 20 | // mode:C++ 21 | // End: 22 | -------------------------------------------------------------------------------- /deps/stlport/BC50/using/fstream.h: -------------------------------------------------------------------------------- 1 | #ifdef _STLP_BROKEN_USING_DIRECTIVE 2 | using namespace _STLP_STD; 3 | #else 4 | using _STLP_NEW_IO_NAMESPACE::basic_filebuf; 5 | using _STLP_NEW_IO_NAMESPACE::filebuf; 6 | using _STLP_NEW_IO_NAMESPACE::basic_ifstream; 7 | using _STLP_NEW_IO_NAMESPACE::basic_ofstream; 8 | using _STLP_NEW_IO_NAMESPACE::ifstream; 9 | using _STLP_NEW_IO_NAMESPACE::ofstream; 10 | using _STLP_NEW_IO_NAMESPACE::basic_fstream; 11 | using _STLP_NEW_IO_NAMESPACE::fstream; 12 | 13 | # ifndef _STLP_NO_WIDE_STREAMS 14 | using _STLP_NEW_IO_NAMESPACE::wofstream; 15 | using _STLP_NEW_IO_NAMESPACE::wfilebuf; 16 | using _STLP_NEW_IO_NAMESPACE::wifstream; 17 | using _STLP_NEW_IO_NAMESPACE::wfstream; 18 | # endif 19 | #endif 20 | -------------------------------------------------------------------------------- /deps/stlport/BC50/using/iomanip.h: -------------------------------------------------------------------------------- 1 | using _STLP_NEW_IO_NAMESPACE::setiosflags; 2 | using _STLP_NEW_IO_NAMESPACE::resetiosflags; 3 | using _STLP_NEW_IO_NAMESPACE::setbase; 4 | using _STLP_NEW_IO_NAMESPACE::setfill; 5 | using _STLP_NEW_IO_NAMESPACE::setprecision; 6 | using _STLP_NEW_IO_NAMESPACE::setw; 7 | -------------------------------------------------------------------------------- /deps/stlport/BC50/using/iostream.h: -------------------------------------------------------------------------------- 1 | using _STLP_VENDOR_STD::cin; 2 | using _STLP_VENDOR_STD::cout; 3 | using _STLP_VENDOR_STD::cerr; 4 | using _STLP_VENDOR_STD::clog; 5 | 6 | # if ! defined (_STLP_NO_WIDE_STREAMS) 7 | using _STLP_VENDOR_STD::wcin; 8 | using _STLP_VENDOR_STD::wcout; 9 | using _STLP_VENDOR_STD::wcerr; 10 | using _STLP_VENDOR_STD::wclog; 11 | # endif 12 | -------------------------------------------------------------------------------- /deps/stlport/BC50/using/istream.h: -------------------------------------------------------------------------------- 1 | 2 | using _STLP_NEW_IO_NAMESPACE::basic_istream; 3 | using _STLP_NEW_IO_NAMESPACE::basic_iostream; 4 | 5 | using _STLP_NEW_IO_NAMESPACE::istream; 6 | using _STLP_NEW_IO_NAMESPACE::iostream; 7 | 8 | # if !defined (_STLP_NO_NATIVE_WIDE_STREAMS) 9 | using _STLP_NEW_IO_NAMESPACE::wistream; 10 | using _STLP_NEW_IO_NAMESPACE::wiostream; 11 | # endif 12 | 13 | #if !(defined (_STLP_MSVC) && (_STLP_MSVC < 1200)) 14 | using _STLP_NEW_IO_NAMESPACE::ws; 15 | #endif 16 | -------------------------------------------------------------------------------- /deps/stlport/BC50/using/ostream.h: -------------------------------------------------------------------------------- 1 | using _STLP_NEW_IO_NAMESPACE::basic_ostream; 2 | using _STLP_NEW_IO_NAMESPACE::ostream; 3 | 4 | # ifndef _STLP_NO_WIDE_STREAMS 5 | using _STLP_NEW_IO_NAMESPACE::wostream; 6 | # endif 7 | 8 | using _STLP_NEW_IO_NAMESPACE::endl; 9 | using _STLP_NEW_IO_NAMESPACE::ends; 10 | using _STLP_NEW_IO_NAMESPACE::flush; 11 | -------------------------------------------------------------------------------- /deps/stlport/BC50/using/sstream.h: -------------------------------------------------------------------------------- 1 | using _STLP_NEW_IO_NAMESPACE::basic_stringbuf; 2 | using _STLP_NEW_IO_NAMESPACE::stringbuf; 3 | 4 | using _STLP_NEW_IO_NAMESPACE::basic_istringstream; 5 | using _STLP_NEW_IO_NAMESPACE::basic_ostringstream; 6 | using _STLP_NEW_IO_NAMESPACE::basic_stringstream; 7 | using _STLP_NEW_IO_NAMESPACE::istringstream; 8 | using _STLP_NEW_IO_NAMESPACE::ostringstream; 9 | using _STLP_NEW_IO_NAMESPACE::stringstream; 10 | 11 | #ifndef _STLP_NO_WIDE_STREAMS 12 | using _STLP_NEW_IO_NAMESPACE::wstringbuf; 13 | using _STLP_NEW_IO_NAMESPACE::wistringstream; 14 | using _STLP_NEW_IO_NAMESPACE::wostringstream; 15 | using _STLP_NEW_IO_NAMESPACE::wstringstream; 16 | #endif 17 | -------------------------------------------------------------------------------- /deps/stlport/BC50/using/streambuf.h: -------------------------------------------------------------------------------- 1 | using _STLP_NEW_IO_NAMESPACE::basic_streambuf; 2 | using _STLP_NEW_IO_NAMESPACE::streambuf; 3 | #ifndef _STLP_NO_WIDE_STREAMS 4 | using _STLP_NEW_IO_NAMESPACE::wstreambuf; 5 | # endif 6 | -------------------------------------------------------------------------------- /deps/stlport/BC50/using/strstream.h: -------------------------------------------------------------------------------- 1 | using _STLP_NEW_IO_NAMESPACE::strstreambuf; 2 | using _STLP_NEW_IO_NAMESPACE::istrstream; 3 | using _STLP_NEW_IO_NAMESPACE::ostrstream; 4 | using _STLP_NEW_IO_NAMESPACE::strstream; 5 | -------------------------------------------------------------------------------- /deps/stlport/BC50/utility.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 Boris Fomitchev 3 | * AUTOMATICALLY GENERATED - DO NOT EDIT ! 4 | */ 5 | 6 | /* 7 | * 8 | * This wrapper is needed for Borland C++ 5.0 to get STLport 9 | * header properly included 10 | */ 11 | 12 | #ifndef __STLPORT_BC_utility_H 13 | # define __STLPORT_BC_utility_H 14 | 15 | # include <..\utility.> 16 | 17 | #endif 18 | 19 | // Local Variables: 20 | // mode:C++ 21 | // End: 22 | -------------------------------------------------------------------------------- /deps/stlport/BC50/valarray.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 Boris Fomitchev 3 | * AUTOMATICALLY GENERATED - DO NOT EDIT ! 4 | */ 5 | 6 | /* 7 | * 8 | * This wrapper is needed for Borland C++ 5.0 to get STLport 9 | * header properly included 10 | */ 11 | 12 | #ifndef __STLPORT_BC_valarray_H 13 | # define __STLPORT_BC_valarray_H 14 | 15 | # include <..\valarray.> 16 | 17 | #endif 18 | 19 | // Local Variables: 20 | // mode:C++ 21 | // End: 22 | -------------------------------------------------------------------------------- /deps/stlport/BC50/vector.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 Boris Fomitchev 3 | * AUTOMATICALLY GENERATED - DO NOT EDIT ! 4 | */ 5 | 6 | /* 7 | * 8 | * This wrapper is needed for Borland C++ 5.0 to get STLport 9 | * header properly included 10 | */ 11 | 12 | #ifndef __STLPORT_BC_vector_H 13 | # define __STLPORT_BC_vector_H 14 | 15 | # include <..\vector.> 16 | 17 | #endif 18 | 19 | // Local Variables: 20 | // mode:C++ 21 | // End: 22 | -------------------------------------------------------------------------------- /deps/stlport/config/_epilog.h: -------------------------------------------------------------------------------- 1 | #if defined (_STLP_MSVC) || defined (__ICL) || defined (__BORLANDC__) 2 | 3 | # if defined (__BORLANDC__) 4 | # pragma option pop 5 | # pragma option -w-8062 6 | # else 7 | # if !(defined (_STLP_MSVC) && (_STLP_MSVC < 1200)) 8 | # pragma warning (pop) 9 | # endif 10 | # pragma pack (pop) 11 | # endif 12 | 13 | 14 | #elif defined(__sgi) && !defined(__GNUC__) && (_MIPS_SIM != _MIPS_SIM_ABI32) 15 | 16 | # pragma reset woff 1174 17 | # pragma reset woff 1375 18 | # pragma reset woff 1209 19 | // from iterator_base.h 20 | # pragma reset woff 1183 21 | 22 | #elif defined(__DECCXX) 23 | 24 | # ifdef __PRAGMA_ENVIRONMENT 25 | # pragma __environment __restore 26 | # endif 27 | 28 | #elif defined(__IBMCPP__) 29 | 30 | #pragma info(restore) 31 | 32 | #endif 33 | 34 | -------------------------------------------------------------------------------- /deps/stlport/config/new_compiler/README: -------------------------------------------------------------------------------- 1 | 2 | README file for "stlport/config/new_compiler" 3 | 4 | 5 | This directory contains "configure" script which will help you to 6 | create config file for a new compiler. Please refer to HTML documentation 7 | at www.stlport.org/doc for details. 8 | NOTE : stlconf.h produced by "configure" is NOT suitable for immediate use 9 | as platform-specific configuration file as it does not set several important 10 | macros. However, it is a good starting point. 11 | 12 | Boris Fomitchev. -------------------------------------------------------------------------------- /deps/stlport/config/new_compiler/unconfigure: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | cp stlconf.h.in stlconf.h 3 | echo "STLport unconfigured." 4 | -------------------------------------------------------------------------------- /deps/stlport/config/stl_fujitsu.h: -------------------------------------------------------------------------------- 1 | /* STLport configuration for Fujitsu compiler : looks like a perfect one ! */ 2 | # define _STLP_NATIVE_INCLUDE_PATH ../std 3 | # define _STLP_UINT32_T unsigned int 4 | # define _STLP_LONG_LONG long long 5 | # define _STLP_WCHAR_SUNPRO_EXCLUDE 1 6 | -------------------------------------------------------------------------------- /deps/stlport/config/stl_intel.h: -------------------------------------------------------------------------------- 1 | // STLport configuration file 2 | // It is internal STLport header - DO NOT include it directly 3 | 4 | # if (__ICL >= 450) 5 | # define _STLP_DLLEXPORT_NEEDS_PREDECLARATION 1 6 | # endif 7 | 8 | # define _STLP_IMPORT_TEMPLATE_KEYWORD extern 9 | 10 | # include 11 | 12 | # undef _STLP_LONG_LONG 13 | # define _STLP_LONG_LONG long long 14 | 15 | -------------------------------------------------------------------------------- /deps/stlport/config/stl_mlc.h: -------------------------------------------------------------------------------- 1 | // STLport configuration file 2 | // It is internal STLport header - DO NOT include it directly 3 | 4 | #define _STLP_NO_MEMBER_TEMPLATES // Compiler does not support member templates 5 | #define _STLP_NO_MEMBER_TEMPLATE_CLASSES // Compiler does not support member template classes 6 | 7 | #define _STLP_HAS_NEW_NEW_HEADER 8 | #define _STLP_HAS_NO_NEW_IOSTREAMS // Native C++ library does not provide new-style templatized iostreams 9 | -------------------------------------------------------------------------------- /deps/stlport/config/stl_sco.h: -------------------------------------------------------------------------------- 1 | // SCO UDK 7 compiler (UnixWare 7x, OSR 5, UnixWare 2x) 2 | 3 | 4 | # define _STLP_NO_BAD_ALLOC 1 5 | 6 | // allocator::rebind used not to work properly 7 | // # define _STLP_NO_MEMBER_TEMPLATE_CLASSES 1 8 | // # define _STLP_NO_MEMBER_TEMPLATE_KEYWORD 1 9 | 10 | # define _STLP_NO_FRIEND_TEMPLATES 1 11 | # define _STLP_NO_QUALIFIED_FRIENDS 1 12 | 13 | 14 | // # define _STLP_NO_DEFAULT_NON_TYPE_PARAM 1 15 | 16 | //# define _STLP_HAS_NO_NEW_IOSTREAMS 1 17 | //# define _STLP_HAS_NO_NEW_C_HEADERS 1 18 | 19 | // ??? 20 | //# define _STLP_STATIC_CONST_INIT_BUG 1 21 | 22 | // ??? 23 | //# define _STLP_LINK_TIME_INSTANTIATION 1 24 | 25 | // ??? 26 | # define _STLP_NO_TEMPLATE_CONVERSIONS 1 27 | 28 | # define _STLP_LONG_LONG long long 29 | 30 | # if defined(_REENTRANT) 31 | # define _UITHREADS /* if UnixWare < 7.0.1 */ 32 | # define _STLP_UITHREADS 33 | # endif /* _REENTRANT */ 34 | 35 | # define _STLP_SCO_OPENSERVER 36 | -------------------------------------------------------------------------------- /deps/stlport/mmemory.h: -------------------------------------------------------------------------------- 1 | CAUUSE A SYNTAX ERROR 2 | -------------------------------------------------------------------------------- /deps/stlport/old_hp/export: -------------------------------------------------------------------------------- 1 | ./algo.h 2 | ./algobase.h 3 | ./alloc.h 4 | ./bvector.h 5 | ./defalloc.h 6 | ./deque.h 7 | ./function.h 8 | ./hash_map.h 9 | ./hash_set.h 10 | ./hashtable.h 11 | ./heap.h 12 | ./iterator.h 13 | ./list.h 14 | ./map.h 15 | ./multimap.h 16 | ./multiset.h 17 | ./numeric.h 18 | ./pair.h 19 | ./pthread_alloc.h 20 | ./queue.h 21 | ./rope.h 22 | ./set.h 23 | ./slist.h 24 | ./stack.h 25 | ./tempbuf.h 26 | ./tree.h 27 | ./vector.h 28 | -------------------------------------------------------------------------------- /deps/stlport/old_hp/numeric.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1997 3 | * Mark of the Unicorn, Inc. 4 | * 5 | * Permission to use, copy, modify, distribute and sell this software 6 | * and its documentation for any purpose is hereby granted without fee, 7 | * provided that the above copyright notice appear in all copies and 8 | * that both that copyright notice and this permission notice appear 9 | * in supporting documentation. Mark of the Unicorn, Inc. makes no 10 | * representations about the suitability of this software for any 11 | * purpose. It is provided "as is" without express or implied warranty. 12 | * 13 | */ 14 | 15 | #ifndef _STLP_NUMERIC_H 16 | # define _STLP_NUMERIC_H 17 | 18 | #ifndef __MWERKS__ 19 | # error This file should be removed from installations not using the Metrowerks Standard Library 20 | #else 21 | # include 22 | //# include 23 | #endif 24 | 25 | # endif // _STLP_NUMERIC_H 26 | -------------------------------------------------------------------------------- /deps/stlport/old_hp/queue.h: -------------------------------------------------------------------------------- 1 | /* 2 | * 3 | * Copyright (c) 1997 4 | * Moscow Center for SPARC Technology 5 | * 6 | * Copyright (c) 1999 7 | * Boris Fomitchev 8 | * 9 | * This material is provided "as is", with absolutely no warranty expressed 10 | * or implied. Any use is at your own risk. 11 | * 12 | * Permission to use or copy this software for any purpose is hereby granted 13 | * without fee, provided the above notices are retained on all copies. 14 | * Permission to modify the code and to distribute modified code is granted, 15 | * provided the above notices are retained, and a notice that the code was 16 | * modified is included with the above copyright notice. 17 | * 18 | */ 19 | 20 | #ifndef __QUEUE__ 21 | # define __QUEUE__ 22 | # include 23 | #endif 24 | -------------------------------------------------------------------------------- /deps/stlport/rlocks.h: -------------------------------------------------------------------------------- 1 | #ifndef _STLP_misc_rlocks_h 2 | # define _STLP_misc_rlocks_h 3 | # if (__SUNPRO_CC >= 0x500 ) 4 | # include <../CCios/rlocks.h> 5 | # elif defined (__SUNPRO_CC) 6 | # include <../CC/rlocks.h> 7 | # else 8 | # error "This file is for SUN CC only. Please remove it if it causes any harm for other compilers." 9 | # endif 10 | #endif 11 | 12 | -------------------------------------------------------------------------------- /deps/stlport/stdiostream.h: -------------------------------------------------------------------------------- 1 | #ifndef _STLP_misc_stdiostream_h 2 | # define _STLP_misc_stdiostream_h 3 | # if (__SUNPRO_CC >= 0x500 ) 4 | # include <../CCios/stdiostream.h> 5 | # else if defined (__SUNPRO_CC) 6 | # include <../CC/stdiostream.h> 7 | # else 8 | # error "This file is for SUN CC only. Please remove it if it causes any harm for other compilers." 9 | # endif 10 | #endif 11 | -------------------------------------------------------------------------------- /deps/stlport/stl/_cwchar.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 3 | * Boris Fomitchev 4 | * 5 | * This material is provided "as is", with absolutely no warranty expressed 6 | * or implied. Any use is at your own risk. 7 | * 8 | * Permission to use or copy this software for any purpose is hereby granted 9 | * without fee, provided the above notices are retained on all copies. 10 | * Permission to modify the code and to distribute modified code is granted, 11 | * provided the above notices are retained, and a notice that the code was 12 | * modified is included with the above copyright notice. 13 | * 14 | */ 15 | 16 | #ifndef _STLP_CWCHAR_H 17 | # define _STLP_CWCHAR_H 18 | /* This file is now obsolete */ 19 | #endif /* _STLP_CWCHAR_H */ 20 | 21 | -------------------------------------------------------------------------------- /deps/stlport/stl/_exception.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/deps/stlport/stl/_exception.h -------------------------------------------------------------------------------- /deps/stlport/stl/_prolog.h: -------------------------------------------------------------------------------- 1 | /* NOTE : this header has no guards and is MEANT for multiple inclusion ! 2 | * If you are using "header protection" option with your compiler, 3 | * please also find #pragma which disables it and put it here, to 4 | * allow reentrancy of this header. 5 | */ 6 | /* We undef "std" on entry , as STLport headers may include native ones. */ 7 | # undef std 8 | 9 | # ifndef _STLP_CONFIG_H 10 | # include 11 | # endif 12 | 13 | /* If the platform provides any specific prolog actions, 14 | * like #pragmas, do include platform-specific prolog file */ 15 | # if defined (_STLP_HAS_SPECIFIC_PROLOG_EPILOG) 16 | # include 17 | # endif 18 | -------------------------------------------------------------------------------- /deps/stlport/stl/_relops_template.h: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /deps/stlport/using/export: -------------------------------------------------------------------------------- 1 | cstring 2 | fstream 3 | iomanip 4 | ios 5 | iosfwd 6 | iostream 7 | istream 8 | locale 9 | ostream 10 | sstream 11 | streambuf 12 | strstream 13 | -------------------------------------------------------------------------------- /deps/stlport/using/fstream: -------------------------------------------------------------------------------- 1 | #ifdef _STLP_BROKEN_USING_DIRECTIVE 2 | using namespace _STLP_STD; 3 | #else 4 | using _STLP_NEW_IO_NAMESPACE::basic_filebuf; 5 | using _STLP_NEW_IO_NAMESPACE::filebuf; 6 | using _STLP_NEW_IO_NAMESPACE::basic_ifstream; 7 | using _STLP_NEW_IO_NAMESPACE::basic_ofstream; 8 | using _STLP_NEW_IO_NAMESPACE::ifstream; 9 | using _STLP_NEW_IO_NAMESPACE::ofstream; 10 | using _STLP_NEW_IO_NAMESPACE::basic_fstream; 11 | using _STLP_NEW_IO_NAMESPACE::fstream; 12 | 13 | # ifndef _STLP_NO_WIDE_STREAMS 14 | using _STLP_NEW_IO_NAMESPACE::wofstream; 15 | using _STLP_NEW_IO_NAMESPACE::wfilebuf; 16 | using _STLP_NEW_IO_NAMESPACE::wifstream; 17 | using _STLP_NEW_IO_NAMESPACE::wfstream; 18 | # endif 19 | #endif 20 | -------------------------------------------------------------------------------- /deps/stlport/using/h/fstream.h: -------------------------------------------------------------------------------- 1 | using ::streambuf; 2 | using ::ifstream; 3 | using ::ofstream; 4 | using ::fstream; 5 | -------------------------------------------------------------------------------- /deps/stlport/using/h/iomanip.h: -------------------------------------------------------------------------------- 1 | using ::setiosflags; 2 | using ::resetiosflags; 3 | // using ::setbase; 4 | using ::setfill; 5 | using ::setprecision; 6 | using ::setw; 7 | -------------------------------------------------------------------------------- /deps/stlport/using/h/iostream.h: -------------------------------------------------------------------------------- 1 | using _STLP_OLD_IO_NAMESPACE::istream; 2 | using _STLP_OLD_IO_NAMESPACE::ostream; 3 | 4 | /* HP aCC include files re-define these when THREAD_SAFE */ 5 | #if !defined(cin) 6 | using _STLP_OLD_IO_NAMESPACE::cin; 7 | #endif 8 | #if !defined(cout) 9 | using _STLP_OLD_IO_NAMESPACE::cout; 10 | #endif 11 | #if !defined(cerr) 12 | using _STLP_OLD_IO_NAMESPACE::cerr; 13 | #endif 14 | #if !defined(clog) 15 | using _STLP_OLD_IO_NAMESPACE::clog; 16 | #endif 17 | 18 | using _STLP_OLD_IO_NAMESPACE::endl; 19 | using _STLP_OLD_IO_NAMESPACE::ends; 20 | 21 | using _STLP_OLD_IO_NAMESPACE::ios; 22 | using _STLP_OLD_IO_NAMESPACE::flush; 23 | 24 | // using _STLP_OLD_IO_NAMESPACE::ws; 25 | -------------------------------------------------------------------------------- /deps/stlport/using/h/ostream.h: -------------------------------------------------------------------------------- 1 | using _STLP_OLD_IO_NAMESPACE::ostream; 2 | using _STLP_OLD_IO_NAMESPACE::endl; 3 | using _STLP_OLD_IO_NAMESPACE::ends; 4 | using _STLP_OLD_IO_NAMESPACE::flush; 5 | 6 | // using _STLP_OLD_IO_NAMESPACE::ws; 7 | -------------------------------------------------------------------------------- /deps/stlport/using/h/streambuf.h: -------------------------------------------------------------------------------- 1 | using ::streambuf; 2 | -------------------------------------------------------------------------------- /deps/stlport/using/h/strstream.h: -------------------------------------------------------------------------------- 1 | using _STLP_OLD_IO_NAMESPACE::strstreambuf; 2 | using _STLP_OLD_IO_NAMESPACE::istrstream; 3 | using _STLP_OLD_IO_NAMESPACE::ostrstream; 4 | using _STLP_OLD_IO_NAMESPACE::strstream; 5 | -------------------------------------------------------------------------------- /deps/stlport/using/iomanip: -------------------------------------------------------------------------------- 1 | using _STLP_NEW_IO_NAMESPACE::setiosflags; 2 | using _STLP_NEW_IO_NAMESPACE::resetiosflags; 3 | using _STLP_NEW_IO_NAMESPACE::setbase; 4 | using _STLP_NEW_IO_NAMESPACE::setfill; 5 | using _STLP_NEW_IO_NAMESPACE::setprecision; 6 | using _STLP_NEW_IO_NAMESPACE::setw; 7 | -------------------------------------------------------------------------------- /deps/stlport/using/iostream: -------------------------------------------------------------------------------- 1 | 2 | # include 3 | 4 | using _STLP_VENDOR_STD::cin; 5 | using _STLP_VENDOR_STD::cout; 6 | using _STLP_VENDOR_STD::cerr; 7 | using _STLP_VENDOR_STD::clog; 8 | 9 | # if ! defined (_STLP_NO_WIDE_STREAMS) 10 | using _STLP_VENDOR_STD::wcin; 11 | using _STLP_VENDOR_STD::wcout; 12 | using _STLP_VENDOR_STD::wcerr; 13 | using _STLP_VENDOR_STD::wclog; 14 | # endif 15 | -------------------------------------------------------------------------------- /deps/stlport/using/istream: -------------------------------------------------------------------------------- 1 | # include 2 | 3 | using _STLP_NEW_IO_NAMESPACE::basic_istream; 4 | using _STLP_NEW_IO_NAMESPACE::basic_iostream; 5 | 6 | using _STLP_NEW_IO_NAMESPACE::istream; 7 | using _STLP_NEW_IO_NAMESPACE::iostream; 8 | 9 | # if !defined (_STLP_NO_NATIVE_WIDE_STREAMS) 10 | using _STLP_NEW_IO_NAMESPACE::wistream; 11 | using _STLP_NEW_IO_NAMESPACE::wiostream; 12 | # endif 13 | 14 | #if !(defined (_STLP_MSVC) && (_STLP_MSVC < 1200)) 15 | using _STLP_NEW_IO_NAMESPACE::ws; 16 | #endif 17 | -------------------------------------------------------------------------------- /deps/stlport/using/ostream: -------------------------------------------------------------------------------- 1 | using _STLP_NEW_IO_NAMESPACE::basic_ostream; 2 | using _STLP_NEW_IO_NAMESPACE::ostream; 3 | 4 | # ifndef _STLP_NO_WIDE_STREAMS 5 | using _STLP_NEW_IO_NAMESPACE::wostream; 6 | # endif 7 | 8 | using _STLP_NEW_IO_NAMESPACE::endl; 9 | using _STLP_NEW_IO_NAMESPACE::ends; 10 | using _STLP_NEW_IO_NAMESPACE::flush; 11 | -------------------------------------------------------------------------------- /deps/stlport/using/sstream: -------------------------------------------------------------------------------- 1 | using _STLP_NEW_IO_NAMESPACE::basic_stringbuf; 2 | using _STLP_NEW_IO_NAMESPACE::stringbuf; 3 | 4 | using _STLP_NEW_IO_NAMESPACE::basic_istringstream; 5 | using _STLP_NEW_IO_NAMESPACE::basic_ostringstream; 6 | using _STLP_NEW_IO_NAMESPACE::basic_stringstream; 7 | using _STLP_NEW_IO_NAMESPACE::istringstream; 8 | using _STLP_NEW_IO_NAMESPACE::ostringstream; 9 | using _STLP_NEW_IO_NAMESPACE::stringstream; 10 | 11 | #ifndef _STLP_NO_WIDE_STREAMS 12 | using _STLP_NEW_IO_NAMESPACE::wstringbuf; 13 | using _STLP_NEW_IO_NAMESPACE::wistringstream; 14 | using _STLP_NEW_IO_NAMESPACE::wostringstream; 15 | using _STLP_NEW_IO_NAMESPACE::wstringstream; 16 | #endif 17 | -------------------------------------------------------------------------------- /deps/stlport/using/streambuf: -------------------------------------------------------------------------------- 1 | using _STLP_NEW_IO_NAMESPACE::basic_streambuf; 2 | using _STLP_NEW_IO_NAMESPACE::streambuf; 3 | #ifndef _STLP_NO_WIDE_STREAMS 4 | using _STLP_NEW_IO_NAMESPACE::wstreambuf; 5 | # endif 6 | -------------------------------------------------------------------------------- /deps/stlport/using/strstream: -------------------------------------------------------------------------------- 1 | using _STLP_NEW_IO_NAMESPACE::strstreambuf; 2 | using _STLP_NEW_IO_NAMESPACE::istrstream; 3 | using _STLP_NEW_IO_NAMESPACE::ostrstream; 4 | using _STLP_NEW_IO_NAMESPACE::strstream; 5 | -------------------------------------------------------------------------------- /deps/stlport/wrap_std/export: -------------------------------------------------------------------------------- 1 | ./complex 2 | ./export 3 | ./fstream 4 | ./iomanip 5 | ./ios 6 | ./iosfwd 7 | ./iostream 8 | ./istream 9 | ./locale 10 | ./ostream 11 | ./sstream 12 | ./streambuf 13 | ./strstream 14 | -------------------------------------------------------------------------------- /deps/stlport/wrap_std/fstream: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 3 | * Boris Fomitchev 4 | * 5 | * This material is provided "as is", with absolutely no warranty expressed 6 | * or implied. Any use is at your own risk. 7 | * 8 | * Permission to use or copy this software for any purpose is hereby granted 9 | * without fee, provided the above notices are retained on all copies. 10 | * Permission to modify the code and to distribute modified code is granted, 11 | * provided the above notices are retained, and a notice that the code was 12 | * modified is included with the above copyright notice. 13 | * 14 | */ 15 | 16 | # if defined (_STLP_USE_NEW_IOSTREAMS) 17 | # include _STLP_NATIVE_HEADER(fstream) 18 | # if defined (_STLP_USE_OWN_NAMESPACE) 19 | _STLP_BEGIN_NAMESPACE 20 | # include 21 | _STLP_END_NAMESPACE 22 | # endif /* _STLP_OWN_NAMESPACE */ 23 | # else 24 | # include 25 | # endif /* _STLP_USE_NEW_IOSTREAMS */ 26 | -------------------------------------------------------------------------------- /deps/stlport/wrap_std/h/fstream.h: -------------------------------------------------------------------------------- 1 | # include _STLP_NATIVE_OLD_STREAMS_HEADER(fstream.h) 2 | # if defined (_STLP_USE_NAMESPACES) && ! defined (_STLP_BROKEN_USING_DIRECTIVE) 3 | _STLP_BEGIN_NAMESPACE 4 | # include 5 | _STLP_END_NAMESPACE 6 | # endif /* _STLP_OWN_NAMESPACE */ 7 | 8 | -------------------------------------------------------------------------------- /deps/stlport/wrap_std/h/iostream.h: -------------------------------------------------------------------------------- 1 | // # ifndef _STLP_NO_WCHAR_T 2 | // # include 3 | // # endif 4 | 5 | # include _STLP_NATIVE_OLD_STREAMS_HEADER(iostream.h) 6 | 7 | # if defined (_STLP_USE_OWN_NAMESPACE) 8 | _STLP_BEGIN_NAMESPACE 9 | # include 10 | _STLP_END_NAMESPACE 11 | # endif /* _STLP_USE_OWN_NAMESPACE */ 12 | -------------------------------------------------------------------------------- /deps/stlport/wrap_std/h/streambuf.h: -------------------------------------------------------------------------------- 1 | //*TY 02/11/2000 - added missing header file 2 | 3 | # include _STLP_NATIVE_OLD_STREAMS_HEADER(iostream.h) 4 | 5 | # if defined (_STLP_USE_OWN_NAMESPACE) 6 | _STLP_BEGIN_NAMESPACE 7 | # include 8 | _STLP_END_NAMESPACE 9 | # endif /* _STLP_USE_OWN_NAMESPACE */ 10 | -------------------------------------------------------------------------------- /deps/stlport/wrap_std/ios: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 3 | * Boris Fomitchev 4 | * 5 | * This material is provided "as is", with absolutely no warranty expressed 6 | * or implied. Any use is at your own risk. 7 | * 8 | * Permission to use or copy this software for any purpose is hereby granted 9 | * without fee, provided the above notices are retained on all copies. 10 | * Permission to modify the code and to distribute modified code is granted, 11 | * provided the above notices are retained, and a notice that the code was 12 | * modified is included with the above copyright notice. 13 | * 14 | */ 15 | 16 | # if defined (_STLP_USE_NEW_IOSTREAMS) 17 | # include _STLP_NATIVE_HEADER(ios) 18 | # ifdef _STLP_USE_OWN_NAMESPACE 19 | _STLP_BEGIN_NAMESPACE 20 | # include 21 | _STLP_END_NAMESPACE 22 | #endif /* _STLP_OWN_NAMESPACE */ 23 | # else 24 | # include 25 | # endif /* USE_NEW_IOSTREAMS */ 26 | 27 | // Local Variables: 28 | // mode:C++ 29 | // End: 30 | -------------------------------------------------------------------------------- /deps/stlport/wrap_std/locale: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 3 | * Boris Fomitchev 4 | * 5 | * This material is provided "as is", with absolutely no warranty expressed 6 | * or implied. Any use is at your own risk. 7 | * 8 | * Permission to use or copy this software for any purpose is hereby granted 9 | * without fee, provided the above notices are retained on all copies. 10 | * Permission to modify the code and to distribute modified code is granted, 11 | * provided the above notices are retained, and a notice that the code was 12 | * modified is included with the above copyright notice. 13 | * 14 | */ 15 | 16 | # ifndef _STLP_CSTDLIB 17 | # include 18 | # endif 19 | 20 | # include _STLP_NATIVE_HEADER(locale) 21 | 22 | # ifdef _STLP_USE_OWN_NAMESPACE 23 | _STLP_BEGIN_NAMESPACE 24 | # include 25 | _STLP_END_NAMESPACE 26 | #endif /* _STLP_OWN_NAMESPACE */ 27 | 28 | // Local Variables: 29 | // mode:C++ 30 | // End: 31 | -------------------------------------------------------------------------------- /deps/stlport/wrap_std/sstream: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 3 | * Boris Fomitchev 4 | * 5 | * This material is provided "as is", with absolutely no warranty expressed 6 | * or implied. Any use is at your own risk. 7 | * 8 | * Permission to use or copy this software for any purpose is hereby granted 9 | * without fee, provided the above notices are retained on all copies. 10 | * Permission to modify the code and to distribute modified code is granted, 11 | * provided the above notices are retained, and a notice that the code was 12 | * modified is included with the above copyright notice. 13 | * 14 | */ 15 | 16 | # include _STLP_NATIVE_HEADER(sstream) 17 | # ifdef _STLP_USE_OWN_NAMESPACE 18 | _STLP_BEGIN_NAMESPACE 19 | # include 20 | _STLP_END_NAMESPACE 21 | #endif /* _STLP_OWN_NAMESPACE */ 22 | 23 | // Local Variables: 24 | // mode:C++ 25 | // End: 26 | -------------------------------------------------------------------------------- /deps/stlport/wrap_std/strstream: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 1999 3 | * Boris Fomitchev 4 | * 5 | * This material is provided "as is", with absolutely no warranty expressed 6 | * or implied. Any use is at your own risk. 7 | * 8 | * Permission to use or copy this software for any purpose is hereby granted 9 | * without fee, provided the above notices are retained on all copies. 10 | * Permission to modify the code and to distribute modified code is granted, 11 | * provided the above notices are retained, and a notice that the code was 12 | * modified is included with the above copyright notice. 13 | * 14 | */ 15 | 16 | # include _STLP_NATIVE_HEADER(strstream) 17 | 18 | # ifdef _STLP_USE_OWN_NAMESPACE 19 | _STLP_BEGIN_NAMESPACE 20 | # include 21 | _STLP_END_NAMESPACE 22 | #endif /* _STLP_OWN_NAMESPACE */ 23 | 24 | 25 | // Local Variables: 26 | // mode:C++ 27 | // End: 28 | -------------------------------------------------------------------------------- /docs/GameSpy SDK Help.chm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/docs/GameSpy SDK Help.chm -------------------------------------------------------------------------------- /patches/patch_104_eng.delta: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/patches/patch_104_eng.delta -------------------------------------------------------------------------------- /patches/patch_bibber.delta: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/patches/patch_bibber.delta -------------------------------------------------------------------------------- /patches/patch_tfd.delta: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/patches/patch_tfd.delta -------------------------------------------------------------------------------- /patches/patch_tuc.delta: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/patches/patch_tuc.delta -------------------------------------------------------------------------------- /resources/visualstudio/stlvector.natvis: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | {{ size={_M_finish - _M_start} }} 5 | 6 | _M_finish - _M_start 7 | _M_end_of_storage._M_data - _M_start 8 | 9 | _M_finish - _M_start 10 | _M_start 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /resources/visualstudio/utf16string.natvis: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | UTF16: {(const unichar_t *)(& m_data[1]),su} 5 | "" 6 | 7 | m_data 8 | (const unichar_t *)(& m_data[1]) 9 | 10 | 11 | -------------------------------------------------------------------------------- /resources/visualstudio/utf8string.natvis: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | UTF8: {(const char *)(& m_data[1]),s8} 5 | "" 6 | 7 | m_data 8 | (const char *)(& m_data[1]) 9 | 10 | 11 | -------------------------------------------------------------------------------- /resources/w3dviewer/res/aggregat.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/aggregat.ico -------------------------------------------------------------------------------- /resources/w3dviewer/res/animatio.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/animatio.ico -------------------------------------------------------------------------------- /resources/w3dviewer/res/bitmap1.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/bitmap1.bmp -------------------------------------------------------------------------------- /resources/w3dviewer/res/cur00001.cur: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/cur00001.cur -------------------------------------------------------------------------------- /resources/w3dviewer/res/cursor.tga: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/cursor.tga -------------------------------------------------------------------------------- /resources/w3dviewer/res/cursor1.cur: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/cursor1.cur -------------------------------------------------------------------------------- /resources/w3dviewer/res/ffwd.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/ffwd.bmp -------------------------------------------------------------------------------- /resources/w3dviewer/res/ffwdsel.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/ffwdsel.bmp -------------------------------------------------------------------------------- /resources/w3dviewer/res/frame.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/frame.ico -------------------------------------------------------------------------------- /resources/w3dviewer/res/gamma.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/gamma.bmp -------------------------------------------------------------------------------- /resources/w3dviewer/res/grab.tga: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/grab.tga -------------------------------------------------------------------------------- /resources/w3dviewer/res/hierarch.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/hierarch.ico -------------------------------------------------------------------------------- /resources/w3dviewer/res/ico00001.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/ico00001.ico -------------------------------------------------------------------------------- /resources/w3dviewer/res/ico00002.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/ico00002.ico -------------------------------------------------------------------------------- /resources/w3dviewer/res/ico00003.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/ico00003.ico -------------------------------------------------------------------------------- /resources/w3dviewer/res/ico00004.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/ico00004.ico -------------------------------------------------------------------------------- /resources/w3dviewer/res/ico00005.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/ico00005.ico -------------------------------------------------------------------------------- /resources/w3dviewer/res/ico00006.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/ico00006.ico -------------------------------------------------------------------------------- /resources/w3dviewer/res/ico00007.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/ico00007.ico -------------------------------------------------------------------------------- /resources/w3dviewer/res/ico00008.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/ico00008.ico -------------------------------------------------------------------------------- /resources/w3dviewer/res/ico00009.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/ico00009.ico -------------------------------------------------------------------------------- /resources/w3dviewer/res/ico00010.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/ico00010.ico -------------------------------------------------------------------------------- /resources/w3dviewer/res/ico00011.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/ico00011.ico -------------------------------------------------------------------------------- /resources/w3dviewer/res/ico00012.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/ico00012.ico -------------------------------------------------------------------------------- /resources/w3dviewer/res/ico00013.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/ico00013.ico -------------------------------------------------------------------------------- /resources/w3dviewer/res/ico00014.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/ico00014.ico -------------------------------------------------------------------------------- /resources/w3dviewer/res/ico00015.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/ico00015.ico -------------------------------------------------------------------------------- /resources/w3dviewer/res/ico00016.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/ico00016.ico -------------------------------------------------------------------------------- /resources/w3dviewer/res/ico00017.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/ico00017.ico -------------------------------------------------------------------------------- /resources/w3dviewer/res/ico00018.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/ico00018.ico -------------------------------------------------------------------------------- /resources/w3dviewer/res/icon1.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/icon1.ico -------------------------------------------------------------------------------- /resources/w3dviewer/res/icon2.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/icon2.ico -------------------------------------------------------------------------------- /resources/w3dviewer/res/keyframe.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/keyframe.bmp -------------------------------------------------------------------------------- /resources/w3dviewer/res/light.w3d: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/light.w3d -------------------------------------------------------------------------------- /resources/w3dviewer/res/line.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/line.ico -------------------------------------------------------------------------------- /resources/w3dviewer/res/lineup.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/lineup.ico -------------------------------------------------------------------------------- /resources/w3dviewer/res/marker.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/marker.bmp -------------------------------------------------------------------------------- /resources/w3dviewer/res/material.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/material.ico -------------------------------------------------------------------------------- /resources/w3dviewer/res/openfold.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/openfold.ico -------------------------------------------------------------------------------- /resources/w3dviewer/res/orbit.tga: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/orbit.tga -------------------------------------------------------------------------------- /resources/w3dviewer/res/particle.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/particle.ico -------------------------------------------------------------------------------- /resources/w3dviewer/res/pause.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/pause.bmp -------------------------------------------------------------------------------- /resources/w3dviewer/res/pausesel.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/pausesel.bmp -------------------------------------------------------------------------------- /resources/w3dviewer/res/play.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/play.bmp -------------------------------------------------------------------------------- /resources/w3dviewer/res/playsel.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/playsel.bmp -------------------------------------------------------------------------------- /resources/w3dviewer/res/reverse.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/reverse.bmp -------------------------------------------------------------------------------- /resources/w3dviewer/res/reversesel.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/reversesel.bmp -------------------------------------------------------------------------------- /resources/w3dviewer/res/rotatez.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/rotatez.bmp -------------------------------------------------------------------------------- /resources/w3dviewer/res/rotatezsel.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/rotatezsel.bmp -------------------------------------------------------------------------------- /resources/w3dviewer/res/rotation.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/rotation.ico -------------------------------------------------------------------------------- /resources/w3dviewer/res/sound.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/sound.ico -------------------------------------------------------------------------------- /resources/w3dviewer/res/stop.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/stop.bmp -------------------------------------------------------------------------------- /resources/w3dviewer/res/stopsel.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/stopsel.bmp -------------------------------------------------------------------------------- /resources/w3dviewer/res/toolbar.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/toolbar.bmp -------------------------------------------------------------------------------- /resources/w3dviewer/res/user1.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/user1.ico -------------------------------------------------------------------------------- /resources/w3dviewer/res/w3dview.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/w3dview.ico -------------------------------------------------------------------------------- /resources/w3dviewer/res/w3dview.rc2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/w3dview.rc2 -------------------------------------------------------------------------------- /resources/w3dviewer/res/w3dviewdoc.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/w3dviewdoc.ico -------------------------------------------------------------------------------- /resources/w3dviewer/res/xdir.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/xdir.bmp -------------------------------------------------------------------------------- /resources/w3dviewer/res/xdirsel.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/xdirsel.bmp -------------------------------------------------------------------------------- /resources/w3dviewer/res/ydir.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/ydir.bmp -------------------------------------------------------------------------------- /resources/w3dviewer/res/ydirsel.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/ydirsel.bmp -------------------------------------------------------------------------------- /resources/w3dviewer/res/zdir.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/zdir.bmp -------------------------------------------------------------------------------- /resources/w3dviewer/res/zdirsel.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/zdirsel.bmp -------------------------------------------------------------------------------- /resources/w3dviewer/res/zoom.tga: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/w3dviewer/res/zoom.tga -------------------------------------------------------------------------------- /resources/wdump/resource.h: -------------------------------------------------------------------------------- 1 | //{{NO_DEPENDENCIES}} 2 | // Microsoft Visual C++ generated include file. 3 | // Used by wdump.rc 4 | // 5 | #define IDI_MAIN 104 6 | #define IDR_MAINMENU 108 7 | #define IDR_ACCEL 109 8 | #define ID_OPEN 40025 9 | #define ID_EXIT 40026 10 | 11 | // Next default values for new objects 12 | // 13 | #ifdef APSTUDIO_INVOKED 14 | #ifndef APSTUDIO_READONLY_SYMBOLS 15 | #define _APS_NO_MFC 1 16 | #define _APS_NEXT_RESOURCE_VALUE 111 17 | #define _APS_NEXT_COMMAND_VALUE 40033 18 | #define _APS_NEXT_CONTROL_VALUE 1017 19 | #define _APS_NEXT_SYMED_VALUE 101 20 | #endif 21 | #endif 22 | -------------------------------------------------------------------------------- /resources/wdump/wdump.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/resources/wdump/wdump.ico -------------------------------------------------------------------------------- /src/editor/editmain.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author OmniBlade 5 | * 6 | * @brief Entrypoint for the GUI toolkit. 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #include "editmain.h" 16 | 17 | #if !defined GAME_DLL && defined PLATFORM_WINDOWS 18 | HWND g_applicationHWnd; 19 | #endif 20 | 21 | int main(int argc, char **argv) 22 | { 23 | return 0; // TODO allows linking as none functional standalone. 24 | } 25 | -------------------------------------------------------------------------------- /src/editor/editmain.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author OmniBlade 5 | * 6 | * @brief Entrypoint for the GUI toolkit. 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | 17 | #include "always.h" 18 | 19 | #ifdef GAME_DLL 20 | extern HWND &g_applicationHWnd; 21 | #else 22 | #ifdef PLATFORM_WINDOWS 23 | extern HWND g_applicationHWnd; 24 | #endif 25 | #endif 26 | -------------------------------------------------------------------------------- /src/game/client/gui/controlbar/controlbarresizer.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief Control Bar 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #include "controlbar.h" 16 | #include "ini.h" 17 | 18 | // ResizerWindow and ControlBarResizer classes unused 19 | -------------------------------------------------------------------------------- /src/game/client/gui/disconnectmenu/disconnectmenu.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief Disconnect Menu 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #include "disconnectmenu.h" 16 | 17 | #ifndef GAME_DLL 18 | DisconnectMenu *g_theDisconnectMenu; 19 | #endif 20 | -------------------------------------------------------------------------------- /src/game/client/gui/gamewindowtransitionsstyles.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author tomsons26 5 | * 6 | * @brief Classes for handling WND UI system transitions. 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #include "gamewindowtransitions.h" 16 | 17 | Transition::Transition() {} 18 | 19 | Transition::~Transition() {} 20 | -------------------------------------------------------------------------------- /src/game/client/gui/guicallbacks/diplomacy.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief Diplomacy 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | #include "always.h" 17 | #include "asciistring.h" 18 | #include 19 | 20 | void Toggle_Diplomacy(bool immediate); 21 | 22 | void Update_Diplomacy_Briefing_Text(Utf8String text, bool clear); 23 | 24 | std::list *Get_Briefing_Text_List(); 25 | -------------------------------------------------------------------------------- /src/game/client/gui/guicallbacks/generalsexppoints.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief Generals Exp Points 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | #include "always.h" 17 | #include "gamewindow.h" 18 | 19 | WindowMsgHandledType Generals_Exp_Points_Input( 20 | GameWindow *window, unsigned int message, unsigned int data_1, unsigned int data_2); 21 | WindowMsgHandledType Generals_Exp_Points_System( 22 | GameWindow *window, unsigned int message, unsigned int data_1, unsigned int data_2); 23 | -------------------------------------------------------------------------------- /src/game/client/gui/guicallbacks/ingamechat.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief In Game Chat 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #include "ingamechat.h" 16 | 17 | #ifdef GAME_DLL 18 | #include "hooker.h" 19 | #endif 20 | 21 | bool Is_In_Game_Chat_Active() 22 | { 23 | #ifdef GAME_DLL 24 | return Call_Function(PICK_ADDRESS(0x005AE1A0, 0x008F7E4F)); 25 | #else 26 | return false; 27 | #endif 28 | } 29 | 30 | void Reset_In_Game_Chat() 31 | { 32 | #ifdef GAME_DLL 33 | Call_Function(PICK_ADDRESS(0x005ADFC0, 0x008F7C03)); 34 | #endif 35 | } 36 | -------------------------------------------------------------------------------- /src/game/client/gui/guicallbacks/ingamechat.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief In Game Chat 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | #include "always.h" 17 | 18 | bool Is_In_Game_Chat_Active(); 19 | void Reset_In_Game_Chat(); 20 | -------------------------------------------------------------------------------- /src/game/client/gui/guicallbacks/menus/quitmenu.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief Quit Menu 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #include "quitmenu.h" 16 | 17 | #ifdef GAME_DLL 18 | #include "hooker.h" 19 | #endif 20 | 21 | void Hide_Quit_Menu() 22 | { 23 | #ifdef GAME_DLL 24 | Call_Function(PICK_ADDRESS(0x005C9B20, 0x00A0F692)); 25 | #endif 26 | } 27 | 28 | void Toggle_Quit_Menu() 29 | { 30 | #ifdef GAME_DLL 31 | Call_Function(PICK_ADDRESS(0x005C9C20, 0x00A0F784)); 32 | #endif 33 | } 34 | -------------------------------------------------------------------------------- /src/game/client/gui/guicallbacks/menus/quitmenu.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief Quit Menu 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | #include "always.h" 17 | 18 | void Hide_Quit_Menu(); 19 | void Toggle_Quit_Menu(); 20 | -------------------------------------------------------------------------------- /src/game/client/gui/imemanagerinterface.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author tomsons26 5 | * 6 | * @brief Provides an interface for the Input method editor manager. 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #include "imemanagerinterface.h" 16 | 17 | #ifndef GAME_DLL 18 | IMEManagerInterface *g_theIMEManager = nullptr; 19 | #endif -------------------------------------------------------------------------------- /src/game/client/line2d.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief Line 2D 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | #include "always.h" 17 | #include "coord.h" 18 | 19 | bool Clip_Line_2D(ICoord2D *p1, ICoord2D *p2, ICoord2D *c1, ICoord2D *c2, IRegion2D *clip_region); 20 | bool Coord_3D_Inside_Rect_2D(const Coord3D *input_point, const Coord2D *tl, const Coord2D *br); 21 | void Scale_Rect_2D(Coord2D *tl, Coord2D *br, float scale_factor); 22 | -------------------------------------------------------------------------------- /src/game/client/messagestream/commandxlat.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief Command Translate 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #include "commandxlat.h" 16 | 17 | void Pick_And_Play_Unit_Voice_Response( 18 | const std::list *list, GameMessage::MessageType type, PickAndPlayInfo *info) 19 | { 20 | #ifdef GAME_DLL 21 | Call_Function *, GameMessage::MessageType, PickAndPlayInfo *>( 22 | PICK_ADDRESS(0x005E92B0, 0x007E8AE3), list, type, info); 23 | #endif 24 | } 25 | -------------------------------------------------------------------------------- /src/game/client/messagestream/guicommandtranslator.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief GUI Command Translator 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | #include "always.h" 17 | #include "messagestream.h" 18 | 19 | class GUICommandTranslator : public GameMessageTranslator 20 | { 21 | public: 22 | GUICommandTranslator() {} 23 | virtual GameMessageDisposition Translate_Game_Message(const GameMessage *msg) override; 24 | virtual ~GUICommandTranslator() override {} 25 | }; 26 | -------------------------------------------------------------------------------- /src/game/client/messagestream/hintspy.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief Hint Spy 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #include "hintspy.h" 16 | #ifdef GAME_DLL 17 | #include "hooker.h" 18 | #endif 19 | 20 | GameMessageDisposition HintSpyTranslator::Translate_Game_Message(const GameMessage *msg) 21 | { 22 | #ifdef GAME_DLL 23 | return Call_Method( 24 | PICK_ADDRESS(0x00613BC0, 0x00A25090), this, msg); 25 | #else 26 | return KEEP_MESSAGE; 27 | #endif 28 | } 29 | -------------------------------------------------------------------------------- /src/game/client/messagestream/hintspy.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief Hint Spy 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | #include "always.h" 17 | #include "messagestream.h" 18 | 19 | class HintSpyTranslator : public GameMessageTranslator 20 | { 21 | public: 22 | HintSpyTranslator() {} 23 | virtual GameMessageDisposition Translate_Game_Message(const GameMessage *msg) override; 24 | virtual ~HintSpyTranslator() override {} 25 | }; 26 | -------------------------------------------------------------------------------- /src/game/client/messagestream/placeeventtranslator.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief Place Event Translator 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | #include "always.h" 17 | #include "messagestream.h" 18 | 19 | class PlaceEventTranslator : public GameMessageTranslator 20 | { 21 | public: 22 | PlaceEventTranslator() : m_frame(-1) {} 23 | virtual GameMessageDisposition Translate_Game_Message(const GameMessage *msg) override; 24 | virtual ~PlaceEventTranslator() override {} 25 | 26 | private: 27 | int m_frame; 28 | }; 29 | -------------------------------------------------------------------------------- /src/game/client/messagestream/windowxlat.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief Window Xlat 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #include "windowxlat.h" 16 | #ifdef GAME_DLL 17 | #include "hooker.h" 18 | #endif 19 | 20 | GameMessageDisposition WindowTranslator::Translate_Game_Message(const GameMessage *msg) 21 | { 22 | #ifdef GAME_DLL 23 | return Call_Method( 24 | PICK_ADDRESS(0x006170F0, 0x00A24A6B), this, msg); 25 | #else 26 | return KEEP_MESSAGE; 27 | #endif 28 | } 29 | -------------------------------------------------------------------------------- /src/game/client/messagestream/windowxlat.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief Window Xlat 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | #include "always.h" 17 | #include "messagestream.h" 18 | 19 | class WindowTranslator : public GameMessageTranslator 20 | { 21 | public: 22 | WindowTranslator() {} 23 | virtual GameMessageDisposition Translate_Game_Message(const GameMessage *msg) override; 24 | virtual ~WindowTranslator() override {} 25 | }; 26 | -------------------------------------------------------------------------------- /src/game/client/parabolicease.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author xezon 5 | * 6 | * @brief Parabolic Ease class 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | 17 | class ParabolicEase 18 | { 19 | public: 20 | // Valid ease range is 0..1 where [in] is smaller or equal [1-out]. 21 | 22 | ParabolicEase(float in, float out); 23 | 24 | void Set_Ease_Times(float in, float out); 25 | 26 | float operator()(float param); 27 | 28 | private: 29 | float m_easeIn; 30 | float m_easeOut; 31 | }; 32 | -------------------------------------------------------------------------------- /src/game/client/selectioninfo.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief Selection Info 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #include "selectioninfo.h" 16 | #ifdef GAME_DLL 17 | #include "hooker.h" 18 | #endif 19 | 20 | PickType Get_Pick_Types_For_Context(bool force_to_attack) 21 | { 22 | #ifdef GAME_DLL 23 | return Call_Function(PICK_ADDRESS(0x00723550, 0x0086D346), force_to_attack); 24 | #else 25 | return PICK_TYPE_UNK1; 26 | #endif 27 | } 28 | -------------------------------------------------------------------------------- /src/game/client/selectioninfo.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief Selection Info 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | #include "always.h" 17 | #include "view.h" 18 | 19 | PickType Get_Pick_Types_For_Context(bool force_to_attack); 20 | -------------------------------------------------------------------------------- /src/game/client/videoplayer/videostream.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author OmniBlade 5 | * 6 | * @brief Virtual interface for video streams. 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #include "videostream.h" 16 | #include "videoplayer.h" 17 | 18 | /** 19 | * 0x0051B1F0 20 | */ 21 | VideoStream::~VideoStream() 22 | { 23 | if (m_player != nullptr) { 24 | m_player->Remove_Stream(this); 25 | m_player = nullptr; 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /src/game/common/audio/gamemusic.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author OmniBlade 5 | * 6 | * @brief Music management class. 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | 17 | #include "always.h" 18 | #include "audioeventrts.h" 19 | 20 | class MusicManager 21 | { 22 | public: 23 | virtual ~MusicManager() {} 24 | virtual void Add_Audio_Event(AudioEventRTS *event); 25 | virtual void Remove_Audio_Event(unsigned int handle); 26 | 27 | private: 28 | void Play_Track(AudioEventRTS *event); 29 | void Stop_Track(unsigned int handle); 30 | }; -------------------------------------------------------------------------------- /src/game/common/commandline.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author OmniBlade 5 | * 6 | * @brief Command line argument parser. 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | 17 | #include "always.h" 18 | 19 | void Parse_Command_Line(int argc, char *argv[]); 20 | -------------------------------------------------------------------------------- /src/game/common/compression/refpack.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author OmniBlade 5 | * 6 | * @brief RefPack LZ compression. 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | 17 | #include "always.h" 18 | 19 | int RefPack_Uncompress(void *dst, const void *src, int *size); 20 | int RefPack_Compress(void *dst, const void *src, int size, int *opts); 21 | -------------------------------------------------------------------------------- /src/game/common/compression/zlibcompr.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author feliwir 5 | * 6 | * @brief Zlib compression. 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | 17 | #include "always.h" 18 | 19 | int Zlib_Uncompress(void *dst, int dst_size, const void *src, int src_size); 20 | int Zlib_Compress(void *dst, int dst_size, const void *src, int src_size, int level); 21 | int Zlib_MaxSize(int size); 22 | -------------------------------------------------------------------------------- /src/game/common/crc.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author OmniBlade 5 | * 6 | * @brief Class for generating Cyclic Redundancy Checks. 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #include "crc.h" 16 | 17 | void CRC::Add_CRC(uint8_t byte) 18 | { 19 | m_crc = byte + (m_crc >> 31) + 2 * m_crc; 20 | } 21 | 22 | void CRC::Compute_CRC(void const *data, int bytes) 23 | { 24 | if (data == nullptr) { 25 | return; 26 | } 27 | 28 | uint8_t const *buff = static_cast(data); 29 | 30 | for (int i = 0; i < bytes; ++i) { 31 | Add_CRC(buff[i]); 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /src/game/common/crc.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author OmniBlade 5 | * 6 | * @brief Class for generating Cyclic Redundancy Checks. 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | 17 | #include "always.h" 18 | #include "array.h" 19 | #include "bittype.h" 20 | 21 | class CRC 22 | { 23 | public: 24 | CRC() : m_crc(0) {} 25 | void Compute_CRC(void const *data, int bytes); 26 | uint32_t Get_CRC() { return m_crc; } 27 | void Clear() { m_crc = 0; } 28 | 29 | private: 30 | void Add_CRC(uint8_t byte); 31 | 32 | uint32_t m_crc; 33 | }; 34 | -------------------------------------------------------------------------------- /src/game/common/gamemain.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author OmniBlade 5 | * 6 | * @brief GameMain function which sets up and runs the game engine. 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | 17 | #include "always.h" 18 | 19 | void Game_Main(int argc, char *argv[]); 20 | 21 | #ifdef GAME_DLL 22 | #include "hooker.h" 23 | #endif -------------------------------------------------------------------------------- /src/game/common/ini/inidrawgroupinfo.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author OmniBlade 5 | * 6 | * @brief Parser for SAGE engine configuration files. 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #include "drawgroupinfo.h" 16 | #include "ini.h" 17 | 18 | // Was originally INI::parseDrawGroupNumberDefinition 19 | void INI::Parse_Draw_Group_Info(INI *ini) 20 | { 21 | captainslog_relassert(g_theDrawGroupInfo != nullptr, 0xDEAD0006, "g_theDrawGroupInfo is null when attempting parse."); 22 | ini->Init_From_INI(g_theDrawGroupInfo, DrawGroupInfo::Get_Parse_Table()); 23 | } 24 | -------------------------------------------------------------------------------- /src/game/common/latchrestore.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief Latch Restore 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | #include "always.h" 17 | 18 | template class LatchRestore 19 | { 20 | public: 21 | LatchRestore(T *pointer, T *new_pointer) : m_latchPointer(pointer) 22 | { 23 | m_latchValue = *pointer; 24 | *pointer = *new_pointer; 25 | } 26 | 27 | virtual ~LatchRestore() { *m_latchPointer = m_latchValue; } 28 | 29 | private: 30 | T m_latchValue; 31 | T *m_latchPointer; 32 | }; 33 | -------------------------------------------------------------------------------- /src/game/common/system/chunkinputstream.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author OmniBlade 5 | * 6 | * @brief Stream interface providing a seekable data stream. 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | 17 | #include "always.h" 18 | #include "inputstream.h" 19 | 20 | class ChunkInputStream : public InputStream 21 | { 22 | public: 23 | virtual unsigned int Tell() = 0; 24 | virtual bool Absolute_Seek(unsigned int pos) = 0; 25 | virtual bool Eof() = 0; 26 | }; -------------------------------------------------------------------------------- /src/game/common/system/errorcodes.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author OmniBlade 5 | * 6 | * @brief Error codes 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | 17 | enum ErrorCode 18 | { 19 | CODE_01 = 0xDEAD0001, 20 | CODE_02 = 0xDEAD0002, 21 | CODE_03 = 0xDEAD0003, 22 | CODE_05 = 0xDEAD0005, 23 | CODE_06 = 0xDEAD0006, 24 | CODE_07 = 0xDEAD0007, 25 | }; 26 | -------------------------------------------------------------------------------- /src/game/common/system/inputstream.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author OmniBlade 5 | * 6 | * @brief Stream interface providing a readable data stream. 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | 17 | #include "always.h" 18 | 19 | class InputStream 20 | { 21 | public: 22 | virtual int Read(void *dst, int size) = 0; 23 | }; -------------------------------------------------------------------------------- /src/game/common/system/localfilesystem.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author OmniBlade 5 | * 6 | * @brief Interface for local file system implementations. 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #include "localfilesystem.h" 16 | 17 | #ifndef GAME_DLL 18 | LocalFileSystem *g_theLocalFileSystem = nullptr; 19 | #endif 20 | -------------------------------------------------------------------------------- /src/game/common/system/outputstream.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author OmniBlade 5 | * 6 | * @brief Stream interface providing a writeable data stream. 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | 17 | #include "always.h" 18 | 19 | class OutputStream 20 | { 21 | public: 22 | virtual int Write(const void *src, int size) = 0; 23 | }; -------------------------------------------------------------------------------- /src/game/common/system/quotedprintable.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief Quoted Printable 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | #include "always.h" 17 | #include "asciistring.h" 18 | 19 | Utf8String Ascii_String_To_Quoted_Printable(Utf8String string); 20 | Utf8String Quoted_Printable_To_Ascii_String(Utf8String string); 21 | -------------------------------------------------------------------------------- /src/game/common/system/registryget.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author OmniBlade 5 | * 6 | * @brief Recovers configuration information. 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | 17 | #include "always.h" 18 | #include "asciistring.h" 19 | 20 | Utf8String Get_Registry_Language(); 21 | bool Get_String_From_Registry(Utf8String subkey, Utf8String value, Utf8String &destination); 22 | bool Get_String_From_Generals_Registry(Utf8String subkey, Utf8String value, Utf8String &destination); 23 | bool Get_Unsigned_Int_From_Registry(Utf8String subkey, Utf8String value, unsigned int &destination); 24 | -------------------------------------------------------------------------------- /src/game/common/system/snapshot.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author OmniBlade 5 | * 6 | * @brief Base class for objects that need to be serialised. 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #include "snapshot.h" 16 | -------------------------------------------------------------------------------- /src/game/common/system/snapshot.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author OmniBlade 5 | * 6 | * @brief Base class for objects that need to be serialised. 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | 17 | #include "always.h" 18 | 19 | class Xfer; 20 | 21 | enum SnapshotCode 22 | { 23 | SNAPSHOT_NONE = 0, 24 | SNAPSHOT_OK = 1, 25 | NUM_SNAPSHOT_CODES, 26 | }; 27 | 28 | class SnapShot 29 | { 30 | public: 31 | virtual void CRC_Snapshot(Xfer *xfer) = 0; 32 | virtual void Xfer_Snapshot(Xfer *xfer) = 0; 33 | virtual void Load_Post_Process() = 0; 34 | }; 35 | -------------------------------------------------------------------------------- /src/game/crashhandler.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author OmniBlade 5 | * 6 | * @brief Setup the crash handling functions to generate crash reports. 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | 17 | #if defined BUILD_WITH_CRASHPAD && defined _WIN32 18 | void __cdecl Crashpad_Dump_Exception_Info(unsigned int u, struct _EXCEPTION_POINTERS *e_info); 19 | #endif 20 | 21 | bool Setup_Crash_Handler(); 22 | -------------------------------------------------------------------------------- /src/game/crashwrapper.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author OmniBlade 5 | * 6 | * @brief Wrapper to mask STLPort ABI differences for config loader and crashpad init code. 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | 17 | #include "always.h" 18 | 19 | class CrashPreferences; 20 | 21 | class CrashPrefWrapper 22 | { 23 | public: 24 | CrashPrefWrapper(); 25 | ~CrashPrefWrapper(); 26 | 27 | const char *Get_Upload_URL(); 28 | bool Upload_Allowed(); 29 | 30 | private: 31 | CrashPreferences *m_prefs; 32 | }; 33 | -------------------------------------------------------------------------------- /src/game/force_nocd.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author OmniBlade 5 | * 6 | * @brief Stub function to remove cd check requirement. 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #include "force_nocd.h" 16 | 17 | bool IsFirstCDPresent() 18 | { 19 | return true; 20 | } 21 | 22 | void CheckForCDAtGameStart(void (*func)()) 23 | { 24 | func(); 25 | } 26 | -------------------------------------------------------------------------------- /src/game/force_nocd.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author OmniBlade 5 | * 6 | * @brief Stub function to remove cd check requirement. 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | 17 | bool IsFirstCDPresent(); // 0x004469C0 18 | void CheckForCDAtGameStart(void (*func)()); // 0x005F1CC0 19 | -------------------------------------------------------------------------------- /src/game/logic/ai/aiguard.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief AI guard 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #include "aiguard.h" 16 | #include "ai.h" 17 | 18 | float AIGuardMachine::Get_Std_Guard_Range(Object *obj) 19 | { 20 | return AI::Get_Adjusted_Vision_Range_For_Object(obj, 7); 21 | } 22 | -------------------------------------------------------------------------------- /src/game/logic/object/behavior/autohealbehavior.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief Auto Heal Behavior 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #include "autohealbehavior.h" 16 | 17 | void AutoHealBehavior::Undo_Upgrade() 18 | { 19 | m_healingStopped = true; 20 | m_healingFrame = UPDATE_SLEEP_TIME_MAX; 21 | Set_Wake_Frame(Get_Object(), UPDATE_SLEEP_TIME_MAX); 22 | } 23 | -------------------------------------------------------------------------------- /src/game/logic/object/behavior/overchargebehavior.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief Overcharge Behavior 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #include "overchargebehavior.h" 16 | -------------------------------------------------------------------------------- /src/game/logic/object/collide/collidemodule.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief Collide Module 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #include "collidemodule.h" 16 | -------------------------------------------------------------------------------- /src/game/logic/object/collide/squishcollide.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief Squish Module 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #include "squishcollide.h" 16 | -------------------------------------------------------------------------------- /src/game/logic/object/create/createmodule.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief Create 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #include "createmodule.h" 16 | -------------------------------------------------------------------------------- /src/game/logic/object/create/createmodule.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief Create 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | #include "always.h" 17 | #include "behaviormodule.h" 18 | 19 | class CreateModuleData : public BehaviorModuleData 20 | { 21 | public: 22 | virtual ~CreateModuleData() override; 23 | }; 24 | -------------------------------------------------------------------------------- /src/game/logic/object/create/veterancygaincreate.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief Veterancy Gain Create 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #include "veterancygaincreate.h" 16 | -------------------------------------------------------------------------------- /src/game/logic/object/create/veterancygaincreate.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief Veterancy Gain Create 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | #include "always.h" 17 | #include "createmodule.h" 18 | 19 | class VeterancyGainCreateModuleData : public CreateModuleData 20 | { 21 | public: 22 | virtual ~VeterancyGainCreateModuleData() override; 23 | 24 | private: 25 | VeterancyLevel m_startingLevel; 26 | ScienceType m_scienceRequired; 27 | friend class ControlBar; 28 | }; 29 | -------------------------------------------------------------------------------- /src/game/logic/object/damage/damagemodule.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief Damage Module 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #include "damagemodule.h" 16 | -------------------------------------------------------------------------------- /src/game/logic/object/die/diemodule.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief Die Module 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #include "diemodule.h" 16 | -------------------------------------------------------------------------------- /src/game/logic/object/update/aiupdate/dozeraiupdate.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief Dozer AI Update 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #include "dozeraiupdate.h" 16 | -------------------------------------------------------------------------------- /src/game/logic/object/update/autodepositupdate.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief Auto Deposit Update 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #include "autodepositupdate.h" 16 | #ifdef GAME_DLL 17 | #include "hooker.h" 18 | #endif 19 | 20 | void AutoDepositUpdate::Award_Initial_Capture_Bonus(Player *p) 21 | { 22 | #ifdef GAME_DLL 23 | Call_Method(PICK_ADDRESS(0x00588950, 0x00971353), this, p); 24 | #endif 25 | } 26 | -------------------------------------------------------------------------------- /src/game/logic/object/update/battleplanupdate.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief Battle Plan Update 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #include "battleplanupdate.h" 16 | 17 | BattlePlanStatus BattlePlanUpdate::Get_Active_Battle_Plan() 18 | { 19 | if (m_transitionStatus == TRANSITION_STATUS_IDLE) { 20 | return m_activeBattlePlan; 21 | } else { 22 | return BATTLE_PLAN_STATUS_NONE; 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /src/game/logic/object/update/dockupdate/dockupdate.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief Dock Update 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #include "dockupdate.h" 16 | -------------------------------------------------------------------------------- /src/game/logic/object/update/dockupdate/supplywarehousedockupdate.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief Supply Warehouse Dock Update 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #include "supplywarehousedockupdate.h" 16 | -------------------------------------------------------------------------------- /src/game/logic/object/update/mobmemberslavedupdate.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief Mob Member Slaved Update 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #include "mobmemberslavedupdate.h" 16 | -------------------------------------------------------------------------------- /src/game/logic/object/update/oclupdate.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief OCL Update 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #include "oclupdate.h" 16 | #include "gamelogic.h" 17 | 18 | float OCLUpdate::Get_Countdown_Percent() const 19 | { 20 | return 1.0f 21 | - (float)(m_creationTimerEndFrame - g_theGameLogic->Get_Frame()) 22 | / (float)(m_creationTimerEndFrame - m_creationTimerStartFrame); 23 | } 24 | 25 | unsigned int OCLUpdate::Get_Remaining_Frames() const 26 | { 27 | return m_creationTimerEndFrame - g_theGameLogic->Get_Frame(); 28 | } 29 | -------------------------------------------------------------------------------- /src/game/logic/object/update/specialabilityupdate.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief Special Ability Update 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #include "specialabilityupdate.h" 16 | 17 | SpecialPowerType SpecialAbilityUpdate::Get_Special_Power_Type() const 18 | { 19 | #ifdef GAME_DLL 20 | return Call_Method(PICK_ADDRESS(0x00605B00, 0x00986CED), this); 21 | #else 22 | return SPECIAL_INVALID; 23 | #endif 24 | } 25 | -------------------------------------------------------------------------------- /src/game/logic/object/update/specialpowerupdatemodule.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief Special Power Update Module 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #include "specialpowerupdatemodule.h" 16 | -------------------------------------------------------------------------------- /src/game/logic/object/update/stickybombupdate.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief Sticky Bomb Update 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #include "stickybombupdate.h" 16 | 17 | void StickyBombUpdate::Detonate() 18 | { 19 | #ifdef GAME_DLL 20 | Call_Method(PICK_ADDRESS(0x005DA160, 0x0098E574), this); 21 | #endif 22 | } 23 | -------------------------------------------------------------------------------- /src/game/logic/object/upgrade/powerplantupgrade.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief Power Plant Upgrade 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #include "powerplantupgrade.h" 16 | -------------------------------------------------------------------------------- /src/game/logic/object/upgrade/radarupgrade.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief Radar Upgrade 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #include "radarupgrade.h" 16 | -------------------------------------------------------------------------------- /src/game/logic/object/upgrade/upgrademodule.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief Upgrade 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #include "upgrademodule.h" 16 | -------------------------------------------------------------------------------- /src/game/network/gamespy/chat.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief Gamespy stuff 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | #include "always.h" 17 | #ifdef GAME_DLL 18 | #include "hooker.h" 19 | #endif 20 | 21 | #ifdef GAME_DLL 22 | extern ARRAY_DEC(int, g_gameSpyColor, 27); 23 | #else 24 | extern int g_gameSpyColor[27]; 25 | #endif 26 | -------------------------------------------------------------------------------- /src/game/network/gamespy/peerdefs.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief Gamespy stuff 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #include "peerdefs.h" 16 | 17 | #ifndef GAME_DLL 18 | GameSpyInfoInterface *g_theGameSpyInfo; 19 | GameSpyStagingRoom *g_theGameSpyGame; 20 | #endif 21 | -------------------------------------------------------------------------------- /src/game/network/gamespy/stagingroomgameinfo.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief Gamespy stuff 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #include "stagingroomgameinfo.h" 16 | -------------------------------------------------------------------------------- /src/game/network/gamespy/stagingroomgameinfo.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief Gamespy stuff 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | #include "always.h" 17 | #include "gameinfo.h" 18 | 19 | class GameSpyStagingRoom : public GameInfo 20 | { 21 | public: 22 | Utf16String Get_Game_Name() const { return m_gameName; } 23 | 24 | private: 25 | Utf16String m_gameName; 26 | }; 27 | -------------------------------------------------------------------------------- /src/game/network/gamespy/thread/buddythread.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief Gamespy stuff 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #include "buddythread.h" 16 | 17 | #ifndef GAME_DLL 18 | GameSpyBuddyMessageQueueInterface *g_theGameSpyBuddyMessageQueue; 19 | #endif 20 | -------------------------------------------------------------------------------- /src/game/network/gamespy/thread/threadutils.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief Thread Utils 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | #include "always.h" 17 | #include 18 | 19 | std::wstring MultiByteToWideCharSingleLine(const char *orig); 20 | std::string WideCharStringToMultiByte(const unichar_t *orig); 21 | -------------------------------------------------------------------------------- /src/game/network/lanapiinterface.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author OmniBlade 5 | * 6 | * @brief Provides an interface for networking implementations. 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #include "lanapiinterface.h" 16 | 17 | #ifndef GAME_DLL 18 | LANAPIInterface *g_theLAN = nullptr; 19 | #endif -------------------------------------------------------------------------------- /src/game/network/network.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief Network 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #include "network.h" 16 | 17 | #ifndef GAME_DLL 18 | Network *g_theNetwork; 19 | #endif 20 | -------------------------------------------------------------------------------- /src/game/network/networkutil.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author tomsons26 5 | * 6 | * @brief 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | 16 | int MAX_FRAMES_AHEAD = 128; 17 | int MIN_RUNAHEAD = 10; 18 | int FRAMES_TO_KEEP = MAX_FRAMES_AHEAD / 2 + 1; 19 | int FRAME_DATA_LENGTH = 2 * MAX_FRAMES_AHEAD + 2; 20 | -------------------------------------------------------------------------------- /src/game/network/networkutil.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author tomsons26 5 | * 6 | * @brief 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | 17 | extern int MAX_FRAMES_AHEAD; 18 | extern int MIN_RUNAHEAD; 19 | extern int FRAMES_TO_KEEP; 20 | extern int FRAME_DATA_LENGTH; 21 | -------------------------------------------------------------------------------- /src/hooker/setuphooks.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author OmniBlade 5 | * 6 | * @brief Function to hook all required functions. 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | 17 | void Setup_Hooks(); 18 | -------------------------------------------------------------------------------- /src/hookproxy/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | include(TargetExports) 2 | 3 | add_library(proxydll SHARED proxydll.cpp hooker.cpp hooker.h mapview.cpp mapview.h sha1.cpp sha1.h) 4 | target_link_libraries(proxydll PRIVATE base) 5 | set_target_properties(proxydll PROPERTIES OUTPUT_NAME avifil32 PDB_NAME proxydll) 6 | target_compile_definitions(proxydll PRIVATE $<$:GAME_DEBUG>) 7 | target_exports(proxydll SYMBOLS 8 | AVIStreamWrite=FakeAVIStreamWrite 9 | AVIFileInit=FakeAVIFileInit 10 | AVIFileOpen=FakeAVIFileOpen 11 | AVIFileOpenA=FakeAVIFileOpenA 12 | AVIFileReadData=FakeAVIFileReadData 13 | AVIFileRelease=FakeAVIFileRelease 14 | AVIFileExit=FakeAVIFileExit 15 | AVIFileCreateStreamA=FakeAVIFileCreateStreamA 16 | AVIStreamSetFormat=FakeAVIStreamSetFormat 17 | AVIStreamRelease=FakeAVIStreamRelease 18 | ) 19 | -------------------------------------------------------------------------------- /src/hookproxy/hooker.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author CCHyper 5 | * @author jonwil 6 | * @author LRFLEW 7 | * @author OmniBlade 8 | * @author Saberhawk 9 | * 10 | * @brief Hooking system to alter memory protection on binary in memory. 11 | * 12 | * @copyright Thyme is free software: you can redistribute it and/or 13 | * modify it under the terms of the GNU General Public License 14 | * as published by the Free Software Foundation, either version 15 | * 2 of the License, or (at your option) any later version. 16 | * A full copy of the GNU General Public License can be found in 17 | * LICENSE 18 | */ 19 | #pragma once 20 | 21 | /** 22 | * Unprotects the binary, run before patches are applied. 23 | */ 24 | bool StartHooks(); 25 | 26 | /** 27 | * Restores protection on the binary, run once patches have been applied. 28 | */ 29 | bool StopHooks(); 30 | -------------------------------------------------------------------------------- /src/platform/fpusetting.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author OmniBlade 5 | * 6 | * @brief Function for ensuring FPU mode is consistent. 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #include "fpusetting.h" 16 | #include 17 | 18 | void Set_FP_Mode() 19 | { 20 | #ifdef PLATFORM_WINDOWS 21 | _fpreset(); 22 | _controlfp(_statusfp() & 0xFFFCFCFF | 0x00020000, 0x00030300); 23 | #endif 24 | } 25 | -------------------------------------------------------------------------------- /src/platform/fpusetting.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author OmniBlade 5 | * 6 | * @brief Function for ensuring FPU mode is consistent. 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | 17 | #include "always.h" 18 | 19 | void Set_FP_Mode(); 20 | -------------------------------------------------------------------------------- /src/platform/w3dengine/client/gui/gadget/w3dcheckbox.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief Check Box 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | #include "always.h" 17 | #include "gamewindow.h" 18 | 19 | void W3D_Gadget_Check_Box_Draw(GameWindow *check_box, WinInstanceData *data); 20 | void W3D_Gadget_Check_Box_Image_Draw(GameWindow *check_box, WinInstanceData *data); 21 | -------------------------------------------------------------------------------- /src/platform/w3dengine/client/gui/gadget/w3dcombobox.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief Combo Box 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | #include "always.h" 17 | #include "gamewindow.h" 18 | 19 | void W3D_Gadget_Combo_Box_Draw(GameWindow *combo_box, WinInstanceData *data); 20 | void W3D_Gadget_Combo_Box_Image_Draw(GameWindow *combo_box, WinInstanceData *data); 21 | -------------------------------------------------------------------------------- /src/platform/w3dengine/client/gui/gadget/w3dlistbox.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief List Box 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | #include "always.h" 17 | #include "gamewindow.h" 18 | 19 | void W3D_Gadget_List_Box_Draw(GameWindow *list_box, WinInstanceData *data); 20 | void W3D_Gadget_List_Box_Image_Draw(GameWindow *list_box, WinInstanceData *data); 21 | -------------------------------------------------------------------------------- /src/platform/w3dengine/client/gui/gadget/w3dprogressbar.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief Progress Bar 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | #include "always.h" 17 | #include "gamewindow.h" 18 | 19 | void W3D_Gadget_Progress_Bar_Draw(GameWindow *progress_bar, WinInstanceData *data); 20 | void W3D_Gadget_Progress_Bar_Image_Draw(GameWindow *progress_bar, WinInstanceData *data); 21 | -------------------------------------------------------------------------------- /src/platform/w3dengine/client/gui/gadget/w3dradiobutton.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief Radio Button 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | #include "always.h" 17 | #include "gamewindow.h" 18 | 19 | void W3D_Gadget_Radio_Button_Draw(GameWindow *radio_button, WinInstanceData *data); 20 | void W3D_Gadget_Radio_Button_Image_Draw(GameWindow *radio_button, WinInstanceData *data); 21 | -------------------------------------------------------------------------------- /src/platform/w3dengine/client/gui/gadget/w3dslider.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief Slider 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | #include "always.h" 17 | #include "gamewindow.h" 18 | 19 | void W3D_Gadget_Horizontal_Slider_Draw(GameWindow *slider, WinInstanceData *data); 20 | void W3D_Gadget_Horizontal_Slider_Image_Draw(GameWindow *slider, WinInstanceData *data); 21 | 22 | void W3D_Gadget_Vertical_Slider_Draw(GameWindow *slider, WinInstanceData *data); 23 | void W3D_Gadget_Vertical_Slider_Image_Draw(GameWindow *slider, WinInstanceData *data); 24 | -------------------------------------------------------------------------------- /src/platform/w3dengine/client/gui/gadget/w3dstatictext.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief Static Text 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | #include "always.h" 17 | #include "gamewindow.h" 18 | 19 | void W3D_Gadget_Static_Text_Draw(GameWindow *static_text, WinInstanceData *data); 20 | void W3D_Gadget_Static_Text_Image_Draw(GameWindow *static_text, WinInstanceData *data); 21 | -------------------------------------------------------------------------------- /src/platform/w3dengine/client/gui/gadget/w3dtabcontrol.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief Tab Control 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | #include "always.h" 17 | #include "gamewindow.h" 18 | 19 | void W3D_Gadget_Tab_Control_Draw(GameWindow *tab_control, WinInstanceData *data); 20 | void W3D_Gadget_Tab_Control_Image_Draw(GameWindow *tab_control, WinInstanceData *data); 21 | -------------------------------------------------------------------------------- /src/platform/w3dengine/client/gui/gadget/w3dtextentry.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief Text Entry 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | #include "always.h" 17 | #include "gamewindow.h" 18 | 19 | void W3D_Gadget_Text_Entry_Draw(GameWindow *text_entry, WinInstanceData *data); 20 | void W3D_Gadget_Text_Entry_Image_Draw(GameWindow *text_entry, WinInstanceData *data); 21 | -------------------------------------------------------------------------------- /src/platform/w3dengine/client/gui/w3dgamefont.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author tomsons26 5 | * 6 | * @brief W3D Font information and handling class. 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | 17 | #include "always.h" 18 | #include "gamefont.h" 19 | 20 | class W3DFontLibrary : public FontLibrary 21 | { 22 | public: 23 | W3DFontLibrary() {} 24 | virtual ~W3DFontLibrary() override {} 25 | 26 | virtual bool Load_Font_Data(GameFont *font) override; 27 | virtual void Release_Font_Data(GameFont *font) override; 28 | }; 29 | -------------------------------------------------------------------------------- /src/platform/w3dengine/client/w3dgamelogic.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief W3D Game Logic 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #include "w3dgamelogic.h" 16 | #include "w3dghostobject.h" 17 | #include "w3dterrainlogic.h" 18 | 19 | TerrainLogic *W3DGameLogic::Create_Terrain_Logic() 20 | { 21 | return new W3DTerrainLogic(); 22 | } 23 | 24 | GhostObjectManager *W3DGameLogic::Create_Ghost_Object_Manager() 25 | { 26 | return new W3DGhostObjectManager(); 27 | } 28 | -------------------------------------------------------------------------------- /src/platform/w3dengine/client/w3dgamelogic.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief W3D Game Logic 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | #include "always.h" 17 | #include "gamelogic.h" 18 | 19 | class W3DGameLogic : public GameLogic 20 | { 21 | public: 22 | W3DGameLogic() {} 23 | virtual ~W3DGameLogic() override {} 24 | virtual TerrainLogic *Create_Terrain_Logic() override; 25 | virtual GhostObjectManager *Create_Ghost_Object_Manager() override; 26 | }; 27 | -------------------------------------------------------------------------------- /src/platform/w3dengine/common/system/w3dfunctionlexicon.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author OmniBlade 5 | * 6 | * @brief W3D UI function pointer manager. 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #include "w3dfunctionlexicon.h" 16 | 17 | void W3DFunctionLexicon::Init() 18 | { 19 | #ifdef GAME_DLL 20 | Call_Method(PICK_ADDRESS(0x007774E0, 0), this); 21 | #else 22 | FunctionLexicon::Init(); 23 | // TODO requires several function pointer tables, do them as functions that call them require it? 24 | #endif 25 | } 26 | -------------------------------------------------------------------------------- /src/platform/w3dengine/common/system/w3dfunctionlexicon.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author OmniBlade 5 | * 6 | * @brief W3D UI function pointer manager. 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | 17 | #include "always.h" 18 | #include "functionlexicon.h" 19 | 20 | class W3DFunctionLexicon : public FunctionLexicon 21 | { 22 | public: 23 | W3DFunctionLexicon() {} 24 | virtual ~W3DFunctionLexicon() {} 25 | 26 | virtual void Init() override; 27 | virtual void Reset() override { FunctionLexicon::Reset(); } 28 | virtual void Update() override {} 29 | }; 30 | -------------------------------------------------------------------------------- /src/platform/w3dengine/common/thing/w3dmodulefactory.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author OmniBlade 5 | * 6 | * @brief Factory class for modules extended to support w3d specific modules. 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | 17 | #include "always.h" 18 | #include "modulefactory.h" 19 | 20 | class W3DModuleFactory : public ModuleFactory 21 | { 22 | public: 23 | virtual ~W3DModuleFactory() {} 24 | virtual void Init() override; 25 | }; 26 | 27 | #ifdef GAME_DLL 28 | #include "hooker.h" 29 | #endif 30 | -------------------------------------------------------------------------------- /src/platform/w3dengine/common/win32localfile.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author OmniBlade 5 | * 6 | * @brief Implementation of LocalFile file io interface. Despite the class name, the API used is Posix even on windows. 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #include "win32localfile.h" 16 | -------------------------------------------------------------------------------- /src/tools/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | # These tool targets rely on wxwidgets being found. 2 | if(wxWidgets_FOUND) 3 | include(TargetExports) 4 | add_subdirectory(debugwindow) 5 | endif() 6 | 7 | # These tools are built against the Win32 api. 8 | if(WIN32 OR CMAKE_SYSTEM_NAME STREQUAL "Windows") 9 | add_subdirectory(w3dviewer) 10 | add_subdirectory(wdump) 11 | add_subdirectory(wndedit) 12 | endif() 13 | 14 | # These tools are generic and API independent 15 | add_subdirectory(compressor) 16 | -------------------------------------------------------------------------------- /src/tools/compressor/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | add_executable(compressor) 2 | target_sources(compressor PRIVATE 3 | compressor.cpp 4 | ) 5 | target_link_libraries(compressor PRIVATE thyme_lib cxxopts::cxxopts) 6 | -------------------------------------------------------------------------------- /src/tools/debugwindow/debugwindow_posix.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author OmniBlade 5 | * 6 | * @brief C Interface for DebugWindow developer plugin. 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #include "debugwindow.h" 16 | 17 | void CreateDebugDialog() 18 | { 19 | // TODO 20 | } 21 | 22 | void DestroyDebugDialog() 23 | { 24 | // TODO 25 | } 26 | -------------------------------------------------------------------------------- /src/tools/debugwindow/dllmain.cpp: -------------------------------------------------------------------------------- 1 | #ifdef _WIN32 2 | #include 3 | BOOL WINAPI DllMain(HMODULE hModule, DWORD ul_reason_for_call, LPVOID lpReserved) 4 | { 5 | return TRUE; 6 | } 7 | #endif 8 | -------------------------------------------------------------------------------- /src/tools/w3dviewer/animationproppage.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief W3D View animation property page 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | #include "w3dafx.h" 17 | 18 | class CAnimationPropPage : public CPropertyPage 19 | { 20 | public: 21 | CAnimationPropPage(); 22 | virtual ~CAnimationPropPage() override {} 23 | virtual BOOL OnInitDialog() override; 24 | 25 | private: 26 | DECLARE_DYNCREATE(CAnimationPropPage) 27 | DECLARE_MESSAGE_MAP() 28 | }; 29 | -------------------------------------------------------------------------------- /src/tools/w3dviewer/assetpropertysheet.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief W3D View asset property sheet 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | #include "w3dafx.h" 17 | 18 | class CAssetPropertySheet : public CPropertySheet 19 | { 20 | public: 21 | CAssetPropertySheet(UINT uID, CPropertyPage *page, CWnd *pParentWnd); 22 | virtual ~CAssetPropertySheet() override {} 23 | 24 | private: 25 | DECLARE_DYNAMIC(CAssetPropertySheet) 26 | DECLARE_MESSAGE_MAP() 27 | 28 | CPropertyPage *m_propertyPage; 29 | }; 30 | -------------------------------------------------------------------------------- /src/tools/w3dviewer/backgroundbmpdialog.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief W3D View Background Bitmap Dialog 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | #include "w3dafx.h" 17 | 18 | class CBackgroundBMPDialog : public CDialog 19 | { 20 | public: 21 | CBackgroundBMPDialog(CWnd *pParentWnd); 22 | virtual ~CBackgroundBMPDialog() override {} 23 | virtual BOOL OnInitDialog() override; 24 | virtual void OnOK() override; 25 | 26 | private: 27 | DECLARE_MESSAGE_MAP(); 28 | 29 | afx_msg void OnBrowse(); 30 | }; 31 | -------------------------------------------------------------------------------- /src/tools/w3dviewer/colorutils.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief W3D View color utils 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | 17 | #include "w3dafx.h" 18 | 19 | void DrawSunkenRect(BYTE *bits, RECT *rect, int stride); 20 | void DrawRaisedRect(BYTE *bits, RECT *rect, int stride); 21 | void DrawOutlinedRect(BYTE *bits, RECT *rect, int color, int stride); 22 | -------------------------------------------------------------------------------- /src/tools/w3dviewer/directorydialog.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief W3D View Directory Dialog 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | #include "w3dafx.h" 17 | 18 | bool ChooseDirectory(HWND parent, const char *initialdir, CString &directory); 19 | -------------------------------------------------------------------------------- /src/tools/w3dviewer/w3dviewview.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief W3D View view 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #include "w3dviewview.h" 16 | 17 | IMPLEMENT_DYNCREATE(CW3DViewView, CView) 18 | 19 | // clang-format off 20 | BEGIN_MESSAGE_MAP(CW3DViewView, CView) 21 | END_MESSAGE_MAP() 22 | // clang-format on 23 | 24 | BOOL CW3DViewView::PreCreateWindow(CREATESTRUCT &cs) 25 | { 26 | return CView::PreCreateWindow(cs); 27 | } 28 | -------------------------------------------------------------------------------- /src/tools/w3dviewer/w3dviewview.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief W3D View view 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | #include "w3dafx.h" 17 | 18 | class CW3DViewView : public CView 19 | { 20 | public: 21 | virtual ~CW3DViewView() override {} 22 | virtual BOOL PreCreateWindow(CREATESTRUCT &cs) override; 23 | virtual void OnDraw(CDC *pDC) override {} 24 | 25 | protected: 26 | CW3DViewView() {} 27 | DECLARE_DYNCREATE(CW3DViewView) 28 | DECLARE_MESSAGE_MAP() 29 | }; 30 | -------------------------------------------------------------------------------- /src/tools/wdump/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | add_executable(wdump WIN32) 2 | target_sources(wdump PRIVATE 3 | wdump.cpp 4 | ${CMAKE_SOURCE_DIR}/resources/wdump/wdump.rc 5 | ) 6 | target_include_directories(wdump PRIVATE ${CMAKE_SOURCE_DIR}/resources/wdump) 7 | target_link_libraries(wdump PRIVATE thyme_lib comctl32) 8 | -------------------------------------------------------------------------------- /src/tools/wndedit/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | add_executable(wndedit) 2 | target_sources(wndedit PRIVATE 3 | main.cpp 4 | ) 5 | target_link_libraries(wndedit PRIVATE thyme_lib) -------------------------------------------------------------------------------- /src/tools/wndedit/main.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author OmniBlade 5 | * 6 | * @brief 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | 16 | int main(int argc, char **argv) 17 | { 18 | return 0; 19 | } -------------------------------------------------------------------------------- /src/w3d/lib/crcengine.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author OmniBlade 5 | * 6 | * @brief Class for generating Cyclic Redundancy Checks. 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | 17 | #include "always.h" 18 | #include "array.h" 19 | #include "bittype.h" 20 | 21 | class CRC 22 | { 23 | public: 24 | static uint32_t Memory(void const *data, size_t bytes, uint32_t crc); 25 | static uint32_t String(const char *string, uint32_t crc); 26 | 27 | private: 28 | static const Array m_table; 29 | }; 30 | -------------------------------------------------------------------------------- /src/w3d/lib/gcd_lcm.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief Greatest Common Divisor/Lowest Common Multiple 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #include "gcd_lcm.h" 16 | 17 | unsigned int Greatest_Common_Divisor(unsigned int a, unsigned int b) 18 | { 19 | if (b) { 20 | a = Greatest_Common_Divisor(b, a % b); 21 | } 22 | return a; 23 | } 24 | 25 | unsigned int Least_Common_Multiple(unsigned int a, unsigned int b) 26 | { 27 | return b * a / Greatest_Common_Divisor(a, b); 28 | } 29 | -------------------------------------------------------------------------------- /src/w3d/lib/gcd_lcm.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief Greatest Common Divisor/Lowest Common Multiple 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | #include "always.h" 17 | 18 | unsigned int Greatest_Common_Divisor(unsigned int a, unsigned int b); 19 | unsigned int Least_Common_Multiple(unsigned int a, unsigned int b); 20 | -------------------------------------------------------------------------------- /src/w3d/lib/mpu.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief CPU clock measurement 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #include "mpu.h" 16 | #include "intrinsics.h" 17 | 18 | unsigned long Get_CPU_Clock(unsigned long &high) 19 | { 20 | uint64_t time = 0; 21 | #ifdef HAVE__RDTSC 22 | time = __rdtsc(); 23 | #endif 24 | high = time >> 32; 25 | return time & 0xFFFFFFFF; 26 | } 27 | -------------------------------------------------------------------------------- /src/w3d/lib/mpu.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief CPU clock measurement 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | #include "always.h" 17 | unsigned long Get_CPU_Clock(unsigned long &high); 18 | -------------------------------------------------------------------------------- /src/w3d/lib/nstrdup.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author OmniBlade 5 | * 6 | * @brief strdup using operator new[] rather than malloc. 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | 17 | char *nstrdup(const char *str); 18 | -------------------------------------------------------------------------------- /src/w3d/lib/readline.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author CCHyper 5 | * @author OmniBlade 6 | * 7 | * @brief Reads a line of text from a file or straw. 8 | * 9 | * @copyright Thyme is free software: you can redistribute it and/or 10 | * modify it under the terms of the GNU General Public License 11 | * as published by the Free Software Foundation, either version 12 | * 2 of the License, or (at your option) any later version. 13 | * A full copy of the GNU General Public License can be found in 14 | * LICENSE 15 | */ 16 | #pragma once 17 | 18 | #include "always.h" 19 | #include "straw.h" 20 | #include "wwfile.h" 21 | 22 | int Read_Line(FileClass &file, char *buffer, int length, bool &eof); 23 | int Read_Line(Straw &straw, char *buffer, int length, bool &eof); 24 | -------------------------------------------------------------------------------- /src/w3d/lib/realcrc.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author OmniBlade 5 | * 6 | * @brief Class for generating Cyclic Redundancy Checks. 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | 17 | #include "always.h" 18 | #include "array.h" 19 | uint32_t CRC_Memory(void const *data, size_t bytes, uint32_t crc); 20 | uint32_t CRC_String(const char *string, uint32_t crc); 21 | uint32_t CRC_Stringi(const char *string, uint32_t crc); 22 | -------------------------------------------------------------------------------- /src/w3d/lib/refcount.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author tomsons26 5 | * 6 | * @brief Base class for objects that need to be reference counted. 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #include "refcount.h" 16 | 17 | int RefCountClass::m_totalRefs = 0; 18 | -------------------------------------------------------------------------------- /src/w3d/lib/wwfile.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author CCHyper 5 | * @author OmniBlade 6 | * 7 | * @brief Interface for file IO. 8 | * 9 | * @copyright Thyme is free software: you can redistribute it and/or 10 | * modify it under the terms of the GNU General Public License 11 | * as published by the Free Software Foundation, either version 12 | * 2 of the License, or (at your option) any later version. 13 | * A full copy of the GNU General Public License can be found in 14 | * LICENSE 15 | */ 16 | #include "wwfile.h" 17 | 18 | off_t FileClass::Tell() 19 | { 20 | return Seek(0, FS_SEEK_CURRENT); 21 | } 22 | 23 | time_t FileClass::Get_Date_Time() 24 | { 25 | return 0; 26 | } 27 | 28 | bool FileClass::Set_Date_Time(time_t date_time) 29 | { 30 | return false; 31 | } 32 | -------------------------------------------------------------------------------- /src/w3d/math/colmath.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author tomsons26 5 | * 6 | * @brief 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #include "colmath.h" 16 | 17 | const float CollisionMath::COINCIDENCE_EPSILON = .000001f; 18 | -------------------------------------------------------------------------------- /src/w3d/renderer/dazzle.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief dazzle 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #include "dazzle.h" 16 | #include "captainslog.h" 17 | 18 | PrototypeClass *DazzleLoaderClass::Load_W3D(ChunkLoadClass &cload) 19 | { 20 | captainslog_assert("Dazzle not suported"); 21 | return nullptr; 22 | } 23 | -------------------------------------------------------------------------------- /src/w3d/renderer/dazzle.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief dazzle 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | #include "always.h" 17 | #include "proto.h" 18 | #include "w3d_file.h" 19 | 20 | class DazzleLoaderClass : public PrototypeLoaderClass 21 | { 22 | public: 23 | virtual int Chunk_Type() override { return W3D_CHUNK_DAZZLE; } 24 | virtual PrototypeClass *Load_W3D(ChunkLoadClass &cload) override; 25 | }; 26 | -------------------------------------------------------------------------------- /src/w3d/renderer/intersec.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author Jonathan Wilson 5 | * 6 | * @brief intersection class 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #include "intersec.h" 16 | 17 | Vector3 IntersectionClass::s_rayLocation(0, 0, 0); 18 | Vector3 IntersectionClass::s_rayDirection(0, 0, 0); 19 | Vector3 IntersectionClass::s_intersectionNormal(0, 0, 0); 20 | -------------------------------------------------------------------------------- /src/w3d/renderer/pot.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author OmniBlade 5 | * 6 | * @brief 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | #include "always.h" 17 | int Find_POT(int i); 18 | unsigned Find_POT_Log2(unsigned i); 19 | -------------------------------------------------------------------------------- /src/w3d/renderer/w3derr.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author tomsons26 5 | * 6 | * @brief W3D error codes. 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | 17 | enum W3DErrorType 18 | { 19 | W3D_ERROR_OK, 20 | W3D_ERROR_GENERIC, 21 | W3D_ERROR_LOAD_FAILED, 22 | W3D_ERROR_SAVE_FAILED, 23 | W3D_ERROR_WINDOW_NOT_OPEN, 24 | W3D_ERROR_INITIALIZATION_FAILED, 25 | }; 26 | -------------------------------------------------------------------------------- /src/w3d/saveload/postloadable.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 3 | * 4 | * @author tomsons26 5 | * 6 | * @brief Post Loadable class 7 | * 8 | * @copyright Thyme is free software: you can redistribute it and/or 9 | * modify it under the terms of the GNU General Public License 10 | * as published by the Free Software Foundation, either version 11 | * 2 of the License, or (at your option) any later version. 12 | * A full copy of the GNU General Public License can be found in 13 | * LICENSE 14 | */ 15 | #pragma once 16 | 17 | class PostLoadableClass 18 | { 19 | public: 20 | PostLoadableClass() : m_isPostLoadRegistered(false) {} 21 | virtual ~PostLoadableClass() {} 22 | virtual void On_Post_Load() {} 23 | bool Is_Post_Load_Registered() const { return m_isPostLoadRegistered; } 24 | void Set_Post_Load_Registered(bool state) { m_isPostLoadRegistered = state; } 25 | 26 | private: 27 | bool m_isPostLoadRegistered; 28 | }; 29 | -------------------------------------------------------------------------------- /tests/data/audio/ima44s.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/tests/data/audio/ima44s.wav -------------------------------------------------------------------------------- /tests/data/audio/pcm1644m.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/tests/data/audio/pcm1644m.wav -------------------------------------------------------------------------------- /tests/data/compr/blob1.data: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/tests/data/compr/blob1.data -------------------------------------------------------------------------------- /tests/data/compr/blob10.data: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/tests/data/compr/blob10.data -------------------------------------------------------------------------------- /tests/data/compr/blob11.data: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/tests/data/compr/blob11.data -------------------------------------------------------------------------------- /tests/data/compr/blob3.data: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/tests/data/compr/blob3.data -------------------------------------------------------------------------------- /tests/data/compr/blob4.data: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/tests/data/compr/blob4.data -------------------------------------------------------------------------------- /tests/data/compr/blob5.data: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/tests/data/compr/blob5.data -------------------------------------------------------------------------------- /tests/data/compr/blob6.data: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/tests/data/compr/blob6.data -------------------------------------------------------------------------------- /tests/data/compr/blob7.data: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/tests/data/compr/blob7.data -------------------------------------------------------------------------------- /tests/data/compr/blob8.data: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/tests/data/compr/blob8.data -------------------------------------------------------------------------------- /tests/data/compr/blob9.data: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/tests/data/compr/blob9.data -------------------------------------------------------------------------------- /tests/data/filesystem/test.big: -------------------------------------------------------------------------------- 1 | BIGFT34a.txtDc.txtL225This is sample AThis is sample C -------------------------------------------------------------------------------- /tests/data/filesystem/test.ini: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/tests/data/filesystem/test.ini -------------------------------------------------------------------------------- /tests/data/models/cube.w3d: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/tests/data/models/cube.w3d -------------------------------------------------------------------------------- /tests/data/video/video.bik: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TheAssemblyArmada/Thyme/ccef1e11c1355c6db577a057c06e7d790f1a0333/tests/data/video/video.bik -------------------------------------------------------------------------------- /tests/globals.cpp: -------------------------------------------------------------------------------- 1 | #include "always.h" 2 | 3 | #ifdef PLATFORM_WINDOWS 4 | #include 5 | HWND g_applicationHWnd; 6 | unsigned g_theMessageTime = 0; 7 | bool g_gameIsWindowed; 8 | bool g_gameNotFullscreen; 9 | bool g_creatingWindow; 10 | HGDIOBJ g_splashImage; 11 | HINSTANCE g_applicationHInstance; 12 | #endif 13 | -------------------------------------------------------------------------------- /tests/main.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | 5 | #include "gamememory.h" 6 | 7 | int main(int argc, char **argv) 8 | { 9 | ::testing::InitGoogleTest(&argc, argv); 10 | 11 | captains_settings_t captains_settings = { 0 }; 12 | captains_settings.level = LOGLEVEL_DEBUG; 13 | captains_settings.console = true; 14 | captainslog_init(&captains_settings); 15 | 16 | Init_Memory_Manager(); 17 | 18 | int result = RUN_ALL_TESTS(); 19 | 20 | Shutdown_Memory_Manager(); 21 | 22 | captainslog_deinit(); 23 | 24 | return result; 25 | } 26 | -------------------------------------------------------------------------------- /tools/.gitignore: -------------------------------------------------------------------------------- 1 | /.cmake -------------------------------------------------------------------------------- /tools/build/win_scripts/get_tools.bat: -------------------------------------------------------------------------------- 1 | setlocal 2 | 3 | @set CMakeUrl="https://github.com/Kitware/CMake/releases/download/v3.21.3/cmake-3.21.3-windows-x86_64.zip" 4 | @set ThisDir=%~dp0. 5 | @call "%ThisDir%\setup_folders.bat" 6 | 7 | @if not exist "%CMakeDir%\bin\cmake.exe" ( 8 | :: Create directory 9 | if not exist "%CMakeDir%" mkdir "%CMakeDir%" 10 | :: Download archive 11 | if not exist "%CMakeDir%\cmake.zip" ( 12 | curl -L %CMakeUrl% -o "%CMakeDir%\cmake.zip" 13 | ) 14 | :: Extract archive 15 | if exist "%CMakeDir%\cmake.zip" ( 16 | tar -x -k -f "%CMakeDir%\cmake.zip" -C "%CMakeDir%" --strip-components=1 17 | del /q "%CMakeDir%\cmake.zip" 18 | ) 19 | ) 20 | 21 | endlocal 22 | -------------------------------------------------------------------------------- /tools/build/win_scripts/setup_folders.bat: -------------------------------------------------------------------------------- 1 | @set ProjectDir=%~dp0..\..\.. 2 | @set SolutionVS2022Dir=%ProjectDir%\.solution\vs2022 3 | @set SolutionVS2019Dir=%ProjectDir%\.solution\vs2019 4 | @set SolutionVS2017Dir=%ProjectDir%\.solution\vs2017 5 | @set ToolsDir=%ProjectDir%\tools 6 | @set CMakeDir=%ToolsDir%\.cmake 7 | -------------------------------------------------------------------------------- /tools/build/win_scripts/vs_build_release.bat: -------------------------------------------------------------------------------- 1 | setlocal 2 | 3 | @set ThisDir=%~dp0. 4 | @set SolutionDir=%~1 5 | @set Version=%~2 6 | @set VswhereExe="%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe" 7 | 8 | @call "%ThisDir%\scripts\setup_folders.bat" 9 | 10 | :: Find MSBuild.exe for Visual Studio 2019 11 | for /f "tokens=* usebackq" %%f in (`%VswhereExe% -version %Version% -requires Microsoft.Component.MSBuild -find MSBuild\**\Bin\MSBuild.exe`) do ( 12 | set MSBuild=%%f 13 | ) 14 | 15 | :: Build Thyme in release 16 | "%MSBuild%" "%SolutionDir%\thyme.sln" -property:Configuration=Release 17 | 18 | endlocal 19 | -------------------------------------------------------------------------------- /tools/build/win_scripts/vs_create_solution.bat: -------------------------------------------------------------------------------- 1 | setlocal 2 | 3 | @set ThisDir=%~dp0. 4 | @set SolutionDir=%~1 5 | @set GeneratorName=%~2 6 | @call "%ThisDir%\setup_folders.bat" 7 | 8 | :: Get tools 9 | @call "%ThisDir%\get_tools.bat" 10 | 11 | @if not exist "%SolutionDir%" mkdir "%SolutionDir%" 12 | cd /d "%SolutionDir%" 13 | :: Generate solution files 14 | "%CMakeDir%\bin\cmake.exe" ^ 15 | -G "%GeneratorName%" ^ 16 | -A Win32 ^ 17 | -S "%ProjectDir%" ^ 18 | -DCMAKE_VS_INCLUDE_INSTALL_TO_DEFAULT_BUILD=1 19 | 20 | cd /d "%cd%" 21 | :: Open cmake gui for user customizations 22 | if not ERRORLEVEL 1 ( 23 | "%CMakeDir%\bin\cmake-gui.exe" "%SolutionDir%" 24 | ) 25 | 26 | endlocal 27 | -------------------------------------------------------------------------------- /tools/build/win_scripts/vs_open_cmake_gui.bat: -------------------------------------------------------------------------------- 1 | setlocal 2 | 3 | @set ThisDir=%~dp0. 4 | @set SolutionDir=%~1 5 | 6 | @call "%ThisDir%\setup_folders.bat" 7 | 8 | "%CMakeDir%\bin\cmake-gui.exe" "%SolutionDir%" 9 | 10 | endlocal 11 | -------------------------------------------------------------------------------- /tools/build/win_x86/vs2017_build_release.bat: -------------------------------------------------------------------------------- 1 | @setlocal 2 | 3 | @set BuildDir=%~dp0.. 4 | @call "%BuildDir%\win_scripts\setup_folders.bat" 5 | @call "%BuildDir%\win_scripts\vs_build_release.bat" "%SolutionVS2017Dir%" 14 6 | 7 | @endlocal 8 | -------------------------------------------------------------------------------- /tools/build/win_x86/vs2017_create_solution.bat: -------------------------------------------------------------------------------- 1 | @setlocal 2 | 3 | @set BuildDir=%~dp0.. 4 | @call "%BuildDir%\win_scripts\setup_folders.bat" 5 | @call "%BuildDir%\win_scripts\vs_create_solution.bat" "%SolutionVS2017Dir%" "Visual Studio 15 2017" 6 | 7 | @endlocal 8 | -------------------------------------------------------------------------------- /tools/build/win_x86/vs2017_open_cmake_gui.bat: -------------------------------------------------------------------------------- 1 | @setlocal 2 | 3 | @set BuildDir=%~dp0.. 4 | @call "%BuildDir%\win_scripts\setup_folders.bat" 5 | @call "%BuildDir%\win_scripts\vs_open_cmake_gui.bat" "%SolutionVS2017Dir%" 6 | 7 | @endlocal 8 | -------------------------------------------------------------------------------- /tools/build/win_x86/vs2019_build_release.bat: -------------------------------------------------------------------------------- 1 | @setlocal 2 | 3 | @set BuildDir=%~dp0.. 4 | @call "%BuildDir%\win_scripts\setup_folders.bat" 5 | @call "%BuildDir%\win_scripts\vs_build_release.bat" "%SolutionVS2019Dir%" 15 6 | 7 | @endlocal 8 | -------------------------------------------------------------------------------- /tools/build/win_x86/vs2019_create_solution.bat: -------------------------------------------------------------------------------- 1 | @setlocal 2 | 3 | @set BuildDir=%~dp0.. 4 | @call "%BuildDir%\win_scripts\setup_folders.bat" 5 | @call "%BuildDir%\win_scripts\vs_create_solution.bat" "%SolutionVS2019Dir%" "Visual Studio 16 2019" 6 | 7 | @endlocal 8 | -------------------------------------------------------------------------------- /tools/build/win_x86/vs2019_open_cmake_gui.bat: -------------------------------------------------------------------------------- 1 | @setlocal 2 | 3 | @set BuildDir=%~dp0.. 4 | @call "%BuildDir%\win_scripts\setup_folders.bat" 5 | @call "%BuildDir%\win_scripts\vs_open_cmake_gui.bat" "%SolutionVS2019Dir%" 6 | 7 | @endlocal 8 | -------------------------------------------------------------------------------- /tools/build/win_x86/vs2022_create_solution.bat: -------------------------------------------------------------------------------- 1 | @setlocal 2 | 3 | @set BuildDir=%~dp0.. 4 | @call "%BuildDir%\win_scripts\setup_folders.bat" 5 | @call "%BuildDir%\win_scripts\vs_create_solution.bat" "%SolutionVS2022Dir%" "Visual Studio 17 2022" 6 | 7 | @endlocal 8 | -------------------------------------------------------------------------------- /tools/build/win_x86/vs2022_open_cmake_gui.bat: -------------------------------------------------------------------------------- 1 | @setlocal 2 | 3 | @set BuildDir=%~dp0.. 4 | @call "%BuildDir%\win_scripts\setup_folders.bat" 5 | @call "%BuildDir%\win_scripts\vs_open_cmake_gui.bat" "%SolutionVS2022Dir%" 6 | 7 | @endlocal 8 | --------------------------------------------------------------------------------