├── ev0lution
├── vgui.dll
├── vgui.lib
├── detours.lib
├── ValveSDK
│ ├── VGUI
│ │ ├── VGUI.h
│ │ ├── VGUI_App.h
│ │ ├── VGUI_Dar.h
│ │ ├── VGUI_Font.h
│ │ ├── VGUI_Menu.h
│ │ ├── VGUI_Bitmap.h
│ │ ├── VGUI_Border.h
│ │ ├── VGUI_Button.h
│ │ ├── VGUI_Color.h
│ │ ├── VGUI_Cursor.h
│ │ ├── VGUI_Frame.h
│ │ ├── VGUI_Image.h
│ │ ├── VGUI_Label.h
│ │ ├── VGUI_Layout.h
│ │ ├── VGUI_Panel.h
│ │ ├── VGUI_Point.h
│ │ ├── VGUI_Scheme.h
│ │ ├── VGUI_Slider.h
│ │ ├── VGUI_String.h
│ │ ├── VGUI_BitmapTGA.h
│ │ ├── VGUI_ComboKey.h
│ │ ├── VGUI_Desktop.h
│ │ ├── VGUI_EditPanel.h
│ │ ├── VGUI_IntLabel.h
│ │ ├── VGUI_KeyCode.h
│ │ ├── VGUI_ListPanel.h
│ │ ├── VGUI_MenuItem.h
│ │ ├── VGUI_MiniApp.h
│ │ ├── VGUI_MouseCode.h
│ │ ├── VGUI_PopupMenu.h
│ │ ├── VGUI_ScrollBar.h
│ │ ├── VGUI_Surface.h
│ │ ├── VGUI_SurfaceGL.h
│ │ ├── VGUI_TabPanel.h
│ │ ├── VGUI_TaskBar.h
│ │ ├── VGUI_TextEntry.h
│ │ ├── VGUI_TextGrid.h
│ │ ├── VGUI_TextImage.h
│ │ ├── VGUI_TextPanel.h
│ │ ├── VGUI_BorderPair.h
│ │ ├── VGUI_BuildGroup.h
│ │ ├── VGUI_ButtonGroup.h
│ │ ├── VGUI_CheckButton.h
│ │ ├── VGUI_DesktopIcon.h
│ │ ├── VGUI_FlowLayout.h
│ │ ├── VGUI_FrameSignal.h
│ │ ├── VGUI_GridLayout.h
│ │ ├── VGUI_HeaderPanel.h
│ │ ├── VGUI_ImagePanel.h
│ │ ├── VGUI_InputSignal.h
│ │ ├── VGUI_InputStream.h
│ │ ├── VGUI_LayoutInfo.h
│ │ ├── VGUI_LineBorder.h
│ │ ├── VGUI_MessageBox.h
│ │ ├── VGUI_ProgressBar.h
│ │ ├── VGUI_RadioButton.h
│ │ ├── VGUI_ScrollPanel.h
│ │ ├── VGUI_StackLayout.h
│ │ ├── VGUI_SurfaceBase.h
│ │ ├── VGUI_TablePanel.h
│ │ ├── VGUI_TickSignal.h
│ │ ├── VGUI_TreeFolder.h
│ │ ├── VGUI_WizardPanel.h
│ │ ├── VGUI_ActionSignal.h
│ │ ├── VGUI_BorderLayout.h
│ │ ├── VGUI_ChangeSignal.h
│ │ ├── VGUI_ConfigWizard.h
│ │ ├── VGUI_EtchedBorder.h
│ │ ├── VGUI_FocusNavGroup.h
│ │ ├── VGUI_LoweredBorder.h
│ │ ├── VGUI_MenuSeparator.h
│ │ ├── VGUI_RaisedBorder.h
│ │ ├── VGUI_RepaintSignal.h
│ │ ├── VGUI_ToggleButton.h
│ │ ├── VGUI_ButtonController.h
│ │ ├── VGUI_DataInputStream.h
│ │ ├── VGUI_FileInputStream.h
│ │ ├── VGUI_IntChangeSignal.h
│ │ └── VGUI_FocusChangeSignal.h
│ ├── common
│ │ ├── hltv.h
│ │ ├── net_api.h
│ │ ├── nowin.h
│ │ ├── wrect.h
│ │ ├── com_model.h
│ │ ├── dll_state.h
│ │ ├── exefuncs.h
│ │ ├── interface.h
│ │ ├── ivoicetweak.h
│ │ ├── r_studioint.h
│ │ ├── screenfade.h
│ │ ├── director_cmds.h
│ │ ├── engine_launcher_api.h
│ │ ├── cl_dll.h
│ │ ├── interface.cpp
│ │ ├── studio_event.h
│ │ ├── entity_types.h
│ │ ├── demo_api.h
│ │ ├── netadr.h
│ │ ├── qfont.h
│ │ ├── con_nprint.h
│ │ ├── dlight.h
│ │ ├── event_args.h
│ │ ├── in_buttons.h
│ │ ├── weaponinfo.h
│ │ ├── usercmd.h
│ │ ├── pmtrace.h
│ │ ├── particledef.h
│ │ ├── cvardef.h
│ │ ├── event_flags.h
│ │ ├── crc.h
│ │ ├── beamdef.h
│ │ ├── ref_params.h
│ │ ├── triangleapi.h
│ │ ├── event_api.h
│ │ ├── cl_entity.h
│ │ ├── entity_state.h
│ │ └── mathlib.h
│ ├── engine
│ │ ├── edict.h
│ │ ├── keydefs.h
│ │ ├── customentity.h
│ │ ├── shake.h
│ │ ├── progs.h
│ │ ├── custom.h
│ │ ├── progdefs.h
│ │ └── anorms.h
│ ├── pm_shared
│ │ ├── pm_movevars.h
│ │ ├── pm_info.h
│ │ ├── pm_debug.h
│ │ ├── pm_materials.h
│ │ ├── pm_shared.h
│ │ └── pm_debug.c
│ ├── GameUI
│ │ ├── IVGuiModuleLoader.h
│ │ ├── IGameConsole.h
│ │ ├── IGameUI.h
│ │ └── IRunGameEngine.h
│ ├── VGUI2
│ │ ├── IEngineVGui.h
│ │ ├── IHTML.h
│ │ ├── IPanel.h
│ │ └── ISurface.h
│ ├── parsemsg.h
│ └── parsemsg.cpp
├── ev0lution.vcxproj.user
├── Hack
│ ├── Removals
│ │ ├── NoFlash
│ │ │ ├── NoFlash.h
│ │ │ └── NoFlash.cpp
│ │ ├── NoRecoil
│ │ │ ├── NoRecoil.h
│ │ │ └── NoRecoil.cpp
│ │ └── NoSpread
│ │ │ └── NoSpread.h
│ ├── Visuals
│ │ ├── Sounds
│ │ │ └── Sounds.h
│ │ ├── Visuals.h
│ │ └── Menu
│ │ │ └── Menu.h
│ ├── Misc
│ │ └── Misc.h
│ ├── Aimbot
│ │ └── Aimbot.h
│ ├── World
│ │ ├── Textures
│ │ │ ├── Textures.h
│ │ │ └── Textures.cpp
│ │ ├── World.h
│ │ └── Weapons
│ │ │ └── Weapons.h
│ ├── Hack.h
│ ├── Systems
│ │ └── Systems.h
│ ├── Drawing
│ │ └── Drawing.h
│ ├── Utils
│ │ └── Utils.h
│ └── Cvars
│ │ └── Cvars.h
├── Hook.h
├── Usermsg.h
├── Offsets.h
├── QAngle.cpp
├── Hook.cpp
├── Reflective
│ ├── ReflectiveDLLInjection.h
│ └── ReflectiveLoader.h
├── Required.h
├── keydefs.h
├── Vector.cpp
├── Usermsg.cpp
├── OpenGL.cpp
├── StudioModelRenderer.h
└── raw_inputs.h
├── .gitignore
├── README.md
└── ev0lution cs 1.6.sln
/ev0lution/vgui.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/vgui.dll
--------------------------------------------------------------------------------
/ev0lution/vgui.lib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/vgui.lib
--------------------------------------------------------------------------------
/ev0lution/detours.lib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/detours.lib
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/common/hltv.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/common/hltv.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_App.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_App.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_Dar.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_Dar.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_Font.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_Font.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_Menu.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_Menu.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/common/net_api.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/common/net_api.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/common/nowin.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/common/nowin.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/common/wrect.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/common/wrect.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/engine/edict.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/engine/edict.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/engine/keydefs.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/engine/keydefs.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_Bitmap.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_Bitmap.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_Border.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_Border.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_Button.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_Button.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_Color.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_Color.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_Cursor.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_Cursor.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_Frame.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_Frame.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_Image.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_Image.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_Label.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_Label.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_Layout.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_Layout.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_Panel.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_Panel.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_Point.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_Point.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_Scheme.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_Scheme.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_Slider.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_Slider.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_String.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_String.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/common/com_model.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/common/com_model.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/common/dll_state.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/common/dll_state.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/common/exefuncs.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/common/exefuncs.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/common/interface.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/common/interface.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_BitmapTGA.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_BitmapTGA.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_ComboKey.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_ComboKey.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_Desktop.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_Desktop.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_EditPanel.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_EditPanel.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_IntLabel.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_IntLabel.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_KeyCode.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_KeyCode.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_ListPanel.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_ListPanel.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_MenuItem.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_MenuItem.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_MiniApp.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_MiniApp.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_MouseCode.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_MouseCode.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_PopupMenu.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_PopupMenu.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_ScrollBar.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_ScrollBar.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_Surface.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_Surface.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_SurfaceGL.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_SurfaceGL.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_TabPanel.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_TabPanel.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_TaskBar.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_TaskBar.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_TextEntry.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_TextEntry.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_TextGrid.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_TextGrid.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_TextImage.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_TextImage.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_TextPanel.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_TextPanel.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/common/ivoicetweak.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/common/ivoicetweak.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/common/r_studioint.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/common/r_studioint.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/common/screenfade.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/common/screenfade.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_BorderPair.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_BorderPair.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_BuildGroup.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_BuildGroup.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_ButtonGroup.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_ButtonGroup.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_CheckButton.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_CheckButton.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_DesktopIcon.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_DesktopIcon.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_FlowLayout.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_FlowLayout.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_FrameSignal.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_FrameSignal.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_GridLayout.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_GridLayout.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_HeaderPanel.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_HeaderPanel.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_ImagePanel.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_ImagePanel.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_InputSignal.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_InputSignal.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_InputStream.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_InputStream.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_LayoutInfo.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_LayoutInfo.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_LineBorder.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_LineBorder.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_MessageBox.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_MessageBox.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_ProgressBar.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_ProgressBar.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_RadioButton.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_RadioButton.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_ScrollPanel.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_ScrollPanel.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_StackLayout.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_StackLayout.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_SurfaceBase.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_SurfaceBase.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_TablePanel.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_TablePanel.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_TickSignal.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_TickSignal.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_TreeFolder.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_TreeFolder.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_WizardPanel.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_WizardPanel.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/common/director_cmds.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/common/director_cmds.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/pm_shared/pm_movevars.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/pm_shared/pm_movevars.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/GameUI/IVGuiModuleLoader.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/GameUI/IVGuiModuleLoader.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_ActionSignal.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_ActionSignal.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_BorderLayout.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_BorderLayout.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_ChangeSignal.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_ChangeSignal.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_ConfigWizard.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_ConfigWizard.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_EtchedBorder.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_EtchedBorder.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_FocusNavGroup.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_FocusNavGroup.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_LoweredBorder.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_LoweredBorder.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_MenuSeparator.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_MenuSeparator.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_RaisedBorder.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_RaisedBorder.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_RepaintSignal.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_RepaintSignal.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_ToggleButton.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_ToggleButton.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_ButtonController.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_ButtonController.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_DataInputStream.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_DataInputStream.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_FileInputStream.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_FileInputStream.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_IntChangeSignal.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_IntChangeSignal.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/common/engine_launcher_api.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/common/engine_launcher_api.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI/VGUI_FocusChangeSignal.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Shaxzy/CS1.6-Multihack/HEAD/ev0lution/ValveSDK/VGUI/VGUI_FocusChangeSignal.h
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/common/cl_dll.h:
--------------------------------------------------------------------------------
1 | typedef unsigned char byte;
2 | typedef unsigned short word;
3 | typedef float vec_t;
4 | typedef int(*pfnUserMsgHook)(const char *pszName, int iSize, void *pbuf);
--------------------------------------------------------------------------------
/ev0lution/ev0lution.vcxproj.user:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/ev0lution/Hack/Removals/NoFlash/NoFlash.h:
--------------------------------------------------------------------------------
1 | class CNoFlash;
2 | class CNoFlash
3 | {
4 | public:
5 | float Flashed;
6 | float FadeEnd;
7 |
8 | screenfade_t* pScreenFade;
9 |
10 | void Redraw();
11 | };
12 | extern CNoFlash g_NoFlash;
--------------------------------------------------------------------------------
/ev0lution/Hack/Visuals/Sounds/Sounds.h:
--------------------------------------------------------------------------------
1 | #include
2 |
3 | extern deque mySounds;
4 |
5 | void PreS_DynamicSound(int entid, DWORD entchannel, char *szSoundFile, float *fOrigin, float fVolume, float fAttenuation, int iTimeOff, int iPitch);
--------------------------------------------------------------------------------
/ev0lution/Hack/Removals/NoRecoil/NoRecoil.h:
--------------------------------------------------------------------------------
1 | class CNoRecoil;
2 | class CNoRecoil
3 | {
4 | public:
5 | void V_CalcRefdef(struct ref_params_s *pparams);
6 | void CL_CreateMove(struct usercmd_s *cmd);
7 | void DrawRecoil();
8 | };
9 | extern CNoRecoil g_NoRecoil;
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | # Prerequisites
2 | *.d
3 |
4 | # Compiled Object files
5 | *.slo
6 | *.lo
7 | *.o
8 | *.obj
9 |
10 | # Precompiled Headers
11 | *.gch
12 | *.pch
13 |
14 | # Compiled Dynamic libraries
15 | *.so
16 | *.dylib
17 | *.dll
18 |
19 | # Fortran module files
20 | *.mod
21 | *.smod
22 |
23 | # Compiled Static libraries
24 | *.lai
25 | *.la
26 | *.a
27 | *.lib
28 |
29 | # Executables
30 | *.exe
31 | *.out
32 | *.app
33 |
--------------------------------------------------------------------------------
/ev0lution/Hack/Removals/NoSpread/NoSpread.h:
--------------------------------------------------------------------------------
1 | class CNoSpread;
2 | class CNoSpread
3 | {
4 | public:
5 | void GetSpreadXY(unsigned int seed, int future, float *vec, bool simulate = false);
6 | void GetSpreadOffset(unsigned int seed, int future, float *inangles, float *outangles);
7 | void V_CalcRefdef(struct ref_params_s *pparams);
8 | void CL_CreateMove(usercmd_s *cmd);
9 | void DrawSpread();
10 | };
11 | extern CNoSpread g_NoSpread;
--------------------------------------------------------------------------------
/ev0lution/Hack/Misc/Misc.h:
--------------------------------------------------------------------------------
1 | class CMisc;
2 | class CMisc
3 | {
4 | public:
5 | bool FakeEdge(float &angle);
6 | void FakeLag(struct usercmd_s *cmd);
7 | void AutoPistol(struct usercmd_s *cmd);
8 | void AutoReload(struct usercmd_s *cmd);
9 | void AntiAim(struct usercmd_s *cmd);
10 | void ThirdPerson(struct ref_params_s *pparams);
11 | // void CustomFov(struct ref_params_s *pparams);
12 | void FastZoom(struct usercmd_s *cmd);
13 | void NameStealer();
14 | };
15 | extern CMisc g_Misc;
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI2/IEngineVGui.h:
--------------------------------------------------------------------------------
1 | #ifndef IENGINEVGUI_H
2 | #define IENGINEVGUI_H
3 | #ifdef _WIN32
4 | #pragma once
5 | #endif
6 |
7 | namespace vgui
8 | {
9 | enum VGUIPANEL
10 | {
11 | PANEL_ROOT = 0 ,
12 | PANEL_CLIENTDLL ,
13 | PANEL_GAMEUIDLL
14 | };
15 |
16 | class IEngineVGui : public IBaseInterface
17 | {
18 | public:
19 | virtual vgui::IPanel* GetPanel( VGUIPANEL type ) = 0;
20 | };
21 | }
22 |
23 | extern vgui::IEngineVGui* g_pIEngineVGui;
24 |
25 | #define VENGINE_VGUI_VERSION "VEngineVGui001"
26 | #endif
--------------------------------------------------------------------------------
/ev0lution/Hook.h:
--------------------------------------------------------------------------------
1 | UserMsg UserMsgByName(char* szMsgName);
2 | pfnUserMsgHook HookUserMsg(char *szMsgName, pfnUserMsgHook pfn);
3 | pcmd_t CommandByName(char* szName);
4 |
5 | class VHookTable
6 | {
7 | private:
8 |
9 | DWORD dwPtrPtrTable;
10 | DWORD dwPtrNewTable;
11 | DWORD dwPtrOldTable;
12 | DWORD dwSizeTable;
13 |
14 | public:
15 |
16 | bool HookTable(DWORD dwTablePtrPtr);
17 | void HookIndex(DWORD dwIndex, PVOID pAddress);
18 |
19 | DWORD RetHookIndex(DWORD dwIndex, PVOID pAddress);
20 |
21 | void UnHook();
22 | void ReHook();
23 | };
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # CS1.6-Multihack
2 | [](https://forthebadge.com)
3 |
4 | Pasted hack for "Counter-Strike" steam version. Might work for retail version aswell.
5 | ## Screenshots:
6 | 
7 | 
8 | 
9 | 
10 | 
11 |
--------------------------------------------------------------------------------
/ev0lution/Hack/Aimbot/Aimbot.h:
--------------------------------------------------------------------------------
1 | class CAimBot;
2 | class CAimBot
3 | {
4 | public:
5 | void Trigger(struct usercmd_s *cmd);
6 | void Run(struct usercmd_s *cmd);
7 |
8 | DWORD dwReactionTime;
9 |
10 | float m_flCurrentFOV;
11 |
12 | bool TriggerKeyStatus;
13 | bool AimbotKeyStatus;
14 | private:
15 | void LegitAimbot(struct usercmd_s *cmd);
16 | void RageAimbot(struct usercmd_s *cmd);
17 | };
18 | extern CAimBot g_AimBot;
19 |
20 | void SmoothAimAngles(QAngle MyViewAngles, QAngle AimAngles, QAngle &OutAngles, float Smoothing, bool bSpiral, float SpiralX, float SpiralY);
--------------------------------------------------------------------------------
/ev0lution/Hack/World/Textures/Textures.h:
--------------------------------------------------------------------------------
1 | void PM_InitTextureTypes(struct playermove_s *ppmove);
2 | char GetTextureType(pmtrace_t *tr, float *vecSrc, float *vecEnd);
3 |
4 | #define CTEXTURESMAX 512 // max number of textures loaded
5 | #define CBTEXTURENAMEMAX 13 // only load first n chars of name
6 |
7 | #define CHAR_TEX_CONCRETE 'C' // texture types
8 | #define CHAR_TEX_METAL 'M'
9 | #define CHAR_TEX_DIRT 'D'
10 | #define CHAR_TEX_VENT 'V'
11 | #define CHAR_TEX_GRATE 'G'
12 | #define CHAR_TEX_TILE 'T'
13 | #define CHAR_TEX_SLOSH 'S'
14 | #define CHAR_TEX_WOOD 'W'
15 | #define CHAR_TEX_COMPUTER 'P'
16 | #define CHAR_TEX_GLASS 'Y'
17 | #define CHAR_TEX_FLESH 'F'
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/GameUI/IGameConsole.h:
--------------------------------------------------------------------------------
1 | #ifndef IGAMECONSOLE_H
2 | #define IGAMECONSOLE_H
3 | #ifdef _WIN32
4 | #pragma once
5 | #endif
6 |
7 | class IGameConsole : public IBaseInterface
8 | {
9 | public:
10 | virtual void Activate(void) = 0;
11 | virtual void Initialize(void) = 0;
12 | virtual void Hide(void) = 0;
13 | virtual void Clear(void) = 0;
14 | virtual bool IsConsoleVisible(void) = 0;
15 | virtual void Printf(const char *format, ...) = 0;
16 | virtual void DPrintf(const char *format, ...) = 0;
17 | virtual void SetParent(int parent) = 0;
18 | };
19 |
20 | extern IGameConsole* g_pConsole;
21 |
22 | #define GAMECONSOLE_INTERFACE_VERSION "GameConsole003"
23 | #endif
--------------------------------------------------------------------------------
/ev0lution/Usermsg.h:
--------------------------------------------------------------------------------
1 | int ResetHUD(const char *pszName, int iSize, void *pbuf);
2 | int Battery(const char *pszName, int iSize, void *pbuf);
3 | int BombDrop(const char *pszName, int iSize, void *pbuf);
4 | int Health(const char *pszName, int iSize, void *pbuf);
5 | int DeathMsg(const char *pszName, int iSize, void *pbuf);
6 | int SetFOV(const char *pszName, int iSize, void *pbuf);
7 | int TeamInfo(const char *pszName, int iSize, void *pbuf);
8 | int ScoreAttrib(const char *pszName, int iSize, void *pbuf);
9 |
10 | extern pfnUserMsgHook pResetHUD;
11 | extern pfnUserMsgHook pBombDrop;
12 | extern pfnUserMsgHook pBattery;
13 | extern pfnUserMsgHook pHealth;
14 | extern pfnUserMsgHook pDeathMsg;
15 | extern pfnUserMsgHook pSetFOV;
16 | extern pfnUserMsgHook pTeamInfo;
17 | extern pfnUserMsgHook pScoreAttrib;
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/pm_shared/pm_info.h:
--------------------------------------------------------------------------------
1 | /***
2 | *
3 | * Copyright (c) 1996-2002, Valve LLC. All rights reserved.
4 | *
5 | * This product contains software technology licensed from Id
6 | * Software, Inc. ("Id Technology"). Id Technology (c) 1996 Id Software, Inc.
7 | * All Rights Reserved.
8 | *
9 | * Use, distribution, and modification of this source code and/or resulting
10 | * object code is restricted to non-commercial enhancements to products from
11 | * Valve LLC. All other use, distribution, or modification is prohibited
12 | * without written permission from Valve LLC.
13 | *
14 | ****/
15 | // Physics info string definition
16 | #if !defined( PM_INFOH )
17 | #define PM_INFOH
18 | #ifdef _WIN32
19 | #pragma once
20 | #endif
21 |
22 | #define MAX_PHYSINFO_STRING 256
23 |
24 | #endif // PM_INFOH
25 |
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/common/interface.cpp:
--------------------------------------------------------------------------------
1 | #include "interface.h"
2 |
3 | #ifdef _WIN32
4 | #define WIN32_LEAN_AND_MEAN
5 | #include "windows.h"
6 | #endif
7 |
8 | CreateInterfaceFn CaptureFactory(char* FactoryModule)
9 | {
10 | CreateInterfaceFn Interface = 0;
11 |
12 | while (!Interface)
13 | {
14 | HMODULE hFactoryModule = GetModuleHandleA(FactoryModule);
15 |
16 | if (hFactoryModule)
17 | {
18 | Interface = (CreateInterfaceFn)(GetProcAddress(hFactoryModule, CREATEINTERFACE_PROCNAME));
19 | }
20 |
21 | Sleep(100);
22 | }
23 |
24 | return Interface;
25 | }
26 |
27 | void *CaptureInterface(CreateInterfaceFn Interface, char* InterfaceName)
28 | {
29 | PVOID dwPointer = nullptr;
30 |
31 | while (!dwPointer)
32 | {
33 | dwPointer = (PVOID)(Interface(InterfaceName, 0));
34 |
35 | Sleep(100);
36 | }
37 |
38 | return dwPointer;
39 | }
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/common/studio_event.h:
--------------------------------------------------------------------------------
1 | /***
2 | *
3 | * Copyright (c) 1996-2002, Valve LLC. All rights reserved.
4 | *
5 | * This product contains software technology licensed from Id
6 | * Software, Inc. ("Id Technology"). Id Technology (c) 1996 Id Software, Inc.
7 | * All Rights Reserved.
8 | *
9 | * Use, distribution, and modification of this source code and/or resulting
10 | * object code is restricted to non-commercial enhancements to products from
11 | * Valve LLC. All other use, distribution, or modification is prohibited
12 | * without written permission from Valve LLC.
13 | *
14 | ****/
15 | #if !defined( STUDIO_EVENTH )
16 | #define STUDIO_EVENTH
17 | #ifdef _WIN32
18 | #pragma once
19 | #endif
20 |
21 | typedef struct mstudioevent_s
22 | {
23 | int frame;
24 | int event;
25 | int type;
26 | char options[64];
27 | } mstudioevent_t;
28 |
29 | #endif // STUDIO_EVENTH
30 |
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/common/entity_types.h:
--------------------------------------------------------------------------------
1 | /***
2 | *
3 | * Copyright (c) 1996-2002, Valve LLC. All rights reserved.
4 | *
5 | * This product contains software technology licensed from Id
6 | * Software, Inc. ("Id Technology"). Id Technology (c) 1996 Id Software, Inc.
7 | * All Rights Reserved.
8 | *
9 | * Use, distribution, and modification of this source code and/or resulting
10 | * object code is restricted to non-commercial enhancements to products from
11 | * Valve LLC. All other use, distribution, or modification is prohibited
12 | * without written permission from Valve LLC.
13 | *
14 | ****/
15 | // entity_types.h
16 | #if !defined( ENTITY_TYPESH )
17 | #define ENTITY_TYPESH
18 |
19 | #define ET_NORMAL 0
20 | #define ET_PLAYER 1
21 | #define ET_TEMPENTITY 2
22 | #define ET_BEAM 3
23 | // BMODEL or SPRITE that was split across BSP nodes
24 | #define ET_FRAGMENTED 4
25 |
26 | #endif // !ENTITY_TYPESH
27 |
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/pm_shared/pm_debug.h:
--------------------------------------------------------------------------------
1 | /***
2 | *
3 | * Copyright (c) 1996-2002, Valve LLC. All rights reserved.
4 | *
5 | * This product contains software technology licensed from Id
6 | * Software, Inc. ("Id Technology"). Id Technology (c) 1996 Id Software, Inc.
7 | * All Rights Reserved.
8 | *
9 | * Use, distribution, and modification of this source code and/or resulting
10 | * object code is restricted to non-commercial enhancements to products from
11 | * Valve LLC. All other use, distribution, or modification is prohibited
12 | * without written permission from Valve LLC.
13 | *
14 | ****/
15 | #ifndef PM_DEBUG_H
16 | #define PM_DEBUG_H
17 | #pragma once
18 |
19 | void PM_ViewEntity( void );
20 | void PM_DrawBBox(vec3_t mins, vec3_t maxs, vec3_t origin, int pcolor, float life);
21 | void PM_ParticleLine(vec3_t start, vec3_t end, int pcolor, float life, float vert);
22 | void PM_ShowClipBox( void );
23 |
24 | #endif // PMOVEDBG_H
25 |
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/common/demo_api.h:
--------------------------------------------------------------------------------
1 | /***
2 | *
3 | * Copyright (c) 1996-2002, Valve LLC. All rights reserved.
4 | *
5 | * This product contains software technology licensed from Id
6 | * Software, Inc. ("Id Technology"). Id Technology (c) 1996 Id Software, Inc.
7 | * All Rights Reserved.
8 | *
9 | * Use, distribution, and modification of this source code and/or resulting
10 | * object code is restricted to non-commercial enhancements to products from
11 | * Valve LLC. All other use, distribution, or modification is prohibited
12 | * without written permission from Valve LLC.
13 | *
14 | ****/
15 | #if !defined ( DEMO_APIH )
16 | #define DEMO_APIH
17 | #ifdef _WIN32
18 | #pragma once
19 | #endif
20 |
21 | typedef struct demo_api_s
22 | {
23 | int ( *IsRecording ) ( void );
24 | int ( *IsPlayingback ) ( void );
25 | int ( *IsTimeDemo ) ( void );
26 | void ( *WriteBuffer ) ( int size, unsigned char *buffer );
27 | } demo_api_t;
28 |
29 | extern demo_api_t demoapi;
30 |
31 | #endif
32 |
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/common/netadr.h:
--------------------------------------------------------------------------------
1 | /***
2 | *
3 | * Copyright (c) 1996-2002, Valve LLC. All rights reserved.
4 | *
5 | * This product contains software technology licensed from Id
6 | * Software, Inc. ("Id Technology"). Id Technology (c) 1996 Id Software, Inc.
7 | * All Rights Reserved.
8 | *
9 | * Use, distribution, and modification of this source code and/or resulting
10 | * object code is restricted to non-commercial enhancements to products from
11 | * Valve LLC. All other use, distribution, or modification is prohibited
12 | * without written permission from Valve LLC.
13 | *
14 | ****/
15 | // netadr.h
16 | #ifndef NETADR_H
17 | #define NETADR_H
18 | #ifdef _WIN32
19 | #pragma once
20 | #endif
21 |
22 | typedef enum
23 | {
24 | NA_UNUSED,
25 | NA_LOOPBACK,
26 | NA_BROADCAST,
27 | NA_IP,
28 | NA_IPX,
29 | NA_BROADCAST_IPX,
30 | } netadrtype_t;
31 |
32 | typedef struct netadr_s
33 | {
34 | netadrtype_t type;
35 | unsigned char ip[4];
36 | unsigned char ipx[10];
37 | unsigned short port;
38 | } netadr_t;
39 |
40 | #endif // NETADR_H
41 |
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/common/qfont.h:
--------------------------------------------------------------------------------
1 | /***
2 | *
3 | * Copyright (c) 1996-2002, Valve LLC. All rights reserved.
4 | *
5 | * This product contains software technology licensed from Id
6 | * Software, Inc. ("Id Technology"). Id Technology (c) 1996 Id Software, Inc.
7 | * All Rights Reserved.
8 | *
9 | * Use, distribution, and modification of this source code and/or resulting
10 | * object code is restricted to non-commercial enhancements to products from
11 | * Valve LLC. All other use, distribution, or modification is prohibited
12 | * without written permission from Valve LLC.
13 | *
14 | ****/
15 | #if !defined( QFONTH )
16 | #define QFONTH
17 | #ifdef _WIN32
18 | #pragma once
19 | #endif
20 |
21 | // Font stuff
22 |
23 | #define NUM_GLYPHS 256
24 |
25 | typedef struct
26 | {
27 | short startoffset;
28 | short charwidth;
29 | } charinfo;
30 |
31 | typedef struct qfont_s
32 | {
33 | int width, height;
34 | int rowcount;
35 | int rowheight;
36 | charinfo fontinfo[ NUM_GLYPHS ];
37 | byte data[4];
38 | } qfont_t;
39 |
40 | #endif // qfont.h
41 |
--------------------------------------------------------------------------------
/ev0lution/Hack/Hack.h:
--------------------------------------------------------------------------------
1 | #include "World\World.h"
2 | #include "World\Weapons\Weapons.h"
3 | #include "World\Textures\Textures.h"
4 | #include "Utils\Utils.h"
5 | #include "Visuals\Visuals.h"
6 | #include "Visuals\Sounds\Sounds.h"
7 | #include "Visuals\Menu\Menu.h"
8 | #include "Cvars\Cvars.h"
9 | #include "Drawing\Drawing.h"
10 | #include "Misc\Misc.h"
11 | #include "Removals\NoSpread\NoSpread.h"
12 | #include "Removals\NoRecoil\NoRecoil.h"
13 | #include "Removals\NoFlash\NoFlash.h"
14 | #include "Aimbot\Aimbot.h"
15 | #include "Systems\Systems.h"
16 |
17 | #define HACK_FILE "settings.ini"
18 |
19 | class CGlobalsVars;
20 | class CGlobalsVars
21 | {
22 | public:
23 | char BaseDir[MAX_PATH];
24 | char IniPath[MAX_PATH];
25 | char GamePath[MAX_PATH];
26 |
27 | WNDPROC WndProcBackup;
28 | HWND hWindow;
29 |
30 | DWORD dwLoadingFinished;
31 |
32 | bool bSnapshot, bScreenshot;
33 | unsigned int ScreenTimer;
34 |
35 | bool chams;//Render chams
36 | float chams_render_r;
37 | float chams_render_g;
38 | float chams_render_b;
39 | };
40 | extern CGlobalsVars g_pGlobals;
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/common/con_nprint.h:
--------------------------------------------------------------------------------
1 | /***
2 | *
3 | * Copyright (c) 1996-2002, Valve LLC. All rights reserved.
4 | *
5 | * This product contains software technology licensed from Id
6 | * Software, Inc. ("Id Technology"). Id Technology (c) 1996 Id Software, Inc.
7 | * All Rights Reserved.
8 | *
9 | * Use, distribution, and modification of this source code and/or resulting
10 | * object code is restricted to non-commercial enhancements to products from
11 | * Valve LLC. All other use, distribution, or modification is prohibited
12 | * without written permission from Valve LLC.
13 | *
14 | ****/
15 | #if !defined( CON_NPRINTH )
16 | #define CON_NPRINTH
17 | #ifdef _WIN32
18 | #pragma once
19 | #endif
20 |
21 | typedef struct con_nprint_s
22 | {
23 | int index; // Row #
24 | float time_to_live; // # of seconds before it dissappears
25 | float color[ 3 ]; // RGB colors ( 0.0 -> 1.0 scale )
26 | } con_nprint_t;
27 |
28 | void Con_NPrintf( int idx, char *fmt, ... );
29 | void Con_NXPrintf( struct con_nprint_s *info, char *fmt, ... );
30 |
31 | #endif
32 |
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/common/dlight.h:
--------------------------------------------------------------------------------
1 | /***
2 | *
3 | * Copyright (c) 1996-2002, Valve LLC. All rights reserved.
4 | *
5 | * This product contains software technology licensed from Id
6 | * Software, Inc. ("Id Technology"). Id Technology (c) 1996 Id Software, Inc.
7 | * All Rights Reserved.
8 | *
9 | * Use, distribution, and modification of this source code and/or resulting
10 | * object code is restricted to non-commercial enhancements to products from
11 | * Valve LLC. All other use, distribution, or modification is prohibited
12 | * without written permission from Valve LLC.
13 | *
14 | ****/
15 | #if !defined ( DLIGHTH )
16 | #define DLIGHTH
17 | #ifdef _WIN32
18 | #pragma once
19 | #endif
20 |
21 | typedef struct dlight_s
22 | {
23 | vec3_t origin;
24 | float radius;
25 | color24 color;
26 | float die; // stop lighting after this time
27 | float decay; // drop this each second
28 | float minlight; // don't add when contributing less
29 | int key;
30 | qboolean dark; // subtracts light instead of adding
31 | } dlight_t;
32 |
33 | #endif
34 |
--------------------------------------------------------------------------------
/ev0lution/Hack/Removals/NoFlash/NoFlash.cpp:
--------------------------------------------------------------------------------
1 | #include "../../../Required.h"
2 |
3 | CNoFlash g_NoFlash;
4 |
5 | void CNoFlash::Redraw()
6 | {
7 | if (cvar.noflash > 0)
8 | {
9 | if (g_NoFlash.pScreenFade->fadeEnd > g_Engine.GetClientTime())
10 | {
11 | g_NoFlash.FadeEnd = g_NoFlash.pScreenFade->fadeEnd;
12 |
13 | if ((int)cvar.noflash >= 255.0f)
14 | g_NoFlash.pScreenFade->fadeEnd = 0.0f;
15 | else if (g_NoFlash.pScreenFade->fadealpha > (int)cvar.noflash)
16 | g_NoFlash.pScreenFade->fadealpha = (int)cvar.noflash;
17 | }
18 |
19 | if (g_NoFlash.FadeEnd > g_Engine.GetClientTime())
20 | g_NoFlash.Flashed = (g_NoFlash.FadeEnd - g_Engine.GetClientTime()) * g_NoFlash.pScreenFade->fadeSpeed;
21 | else
22 | g_NoFlash.Flashed = 0.0f;
23 |
24 | if (g_NoFlash.Flashed > 255.0f) g_NoFlash.Flashed = 255.0f;
25 |
26 | if (g_NoFlash.Flashed < 0.0f) g_NoFlash.Flashed = 0.0f;
27 |
28 | float Percentage = (g_NoFlash.Flashed / 255.0f) * 100.0f;
29 |
30 | if (Percentage > 0.0f)
31 | g_Drawing.DrawString(ESP, g_Screen.iWidth / 2, g_Screen.iHeight / 1.7, 255, 255, 255, 200, FONT_CENTER, "Flashed: %.0f", Percentage);
32 | }
33 | }
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/pm_shared/pm_materials.h:
--------------------------------------------------------------------------------
1 | /***
2 | *
3 | * Copyright (c) 1996-2002, Valve LLC. All rights reserved.
4 | *
5 | * This product contains software technology licensed from Id
6 | * Software, Inc. ("Id Technology"). Id Technology (c) 1996 Id Software, Inc.
7 | * All Rights Reserved.
8 | *
9 | * Use, distribution, and modification of this source code and/or resulting
10 | * object code is restricted to non-commercial enhancements to products from
11 | * Valve LLC. All other use, distribution, or modification is prohibited
12 | * without written permission from Valve LLC.
13 | *
14 | ****/
15 | #if !defined( PM_MATERIALSH )
16 | #define PM_MATERIALSH
17 | #pragma once
18 |
19 | #define CBTEXTURENAMEMAX 13 // only load first n chars of name
20 |
21 | #define CHAR_TEX_CONCRETE 'C' // texture types
22 | #define CHAR_TEX_METAL 'M'
23 | #define CHAR_TEX_DIRT 'D'
24 | #define CHAR_TEX_VENT 'V'
25 | #define CHAR_TEX_GRATE 'G'
26 | #define CHAR_TEX_TILE 'T'
27 | #define CHAR_TEX_SLOSH 'S'
28 | #define CHAR_TEX_WOOD 'W'
29 | #define CHAR_TEX_COMPUTER 'P'
30 | #define CHAR_TEX_GLASS 'Y'
31 | #define CHAR_TEX_FLESH 'F'
32 |
33 | #endif // !PM_MATERIALSH
34 |
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/engine/customentity.h:
--------------------------------------------------------------------------------
1 | /***
2 | *
3 | * Copyright (c) 1996-2002, Valve LLC. All rights reserved.
4 | *
5 | * This product contains software technology licensed from Id
6 | * Software, Inc. ("Id Technology"). Id Technology (c) 1996 Id Software, Inc.
7 | * All Rights Reserved.
8 | *
9 | * Use, distribution, and modification of this source code and/or resulting
10 | * object code is restricted to non-commercial enhancements to products from
11 | * Valve LLC. All other use, distribution, or modification is prohibited
12 | * without written permission from Valve LLC.
13 | *
14 | ****/
15 | #ifndef CUSTOMENTITY_H
16 | #define CUSTOMENTITY_H
17 |
18 | // Custom Entities
19 |
20 | // Start/End Entity is encoded as 12 bits of entity index, and 4 bits of attachment (4:12)
21 | #define BEAMENT_ENTITY(x) ((x)&0xFFF)
22 | #define BEAMENT_ATTACHMENT(x) (((x)>>12)&0xF)
23 |
24 | // Beam types, encoded as a byte
25 | enum
26 | {
27 | BEAM_POINTS = 0,
28 | BEAM_ENTPOINT,
29 | BEAM_ENTS,
30 | BEAM_HOSE,
31 | };
32 |
33 | #define BEAM_FSINE 0x10
34 | #define BEAM_FSOLID 0x20
35 | #define BEAM_FSHADEIN 0x40
36 | #define BEAM_FSHADEOUT 0x80
37 |
38 | #endif //CUSTOMENTITY_H
39 |
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/pm_shared/pm_shared.h:
--------------------------------------------------------------------------------
1 | /***
2 | *
3 | * Copyright (c) 1996-2002, Valve LLC. All rights reserved.
4 | *
5 | * This product contains software technology licensed from Id
6 | * Software, Inc. ("Id Technology"). Id Technology (c) 1996 Id Software, Inc.
7 | * All Rights Reserved.
8 | *
9 | * Use, distribution, and modification of this source code and/or resulting
10 | * object code is restricted to non-commercial enhancements to products from
11 | * Valve LLC. All other use, distribution, or modification is prohibited
12 | * without written permission from Valve LLC.
13 | *
14 | ****/
15 |
16 | //
17 | // pm_shared.h
18 | //
19 | #if !defined( PM_SHAREDH )
20 | #define PM_SHAREDH
21 | #pragma once
22 |
23 | void PM_Init( struct playermove_s *ppmove );
24 | void PM_Move ( struct playermove_s *ppmove, int server );
25 | char PM_FindTextureType( char *name );
26 |
27 | // Spectator Movement modes (stored in pev->iuser1, so the physics code can get at them)
28 | #define OBS_NONE 0
29 | #define OBS_CHASE_LOCKED 1
30 | #define OBS_CHASE_FREE 2
31 | #define OBS_ROAMING 3
32 | #define OBS_IN_EYE 4
33 | #define OBS_MAP_FREE 5
34 | #define OBS_MAP_CHASE 6
35 |
36 | #endif
--------------------------------------------------------------------------------
/ev0lution/Hack/Systems/Systems.h:
--------------------------------------------------------------------------------
1 | class CSystems;
2 | class CSystems
3 | {
4 | public:
5 | void KnifeBot(struct usercmd_s *cmd);
6 | void AutoStrafe(struct usercmd_s *cmd, float frametime);
7 | void StrafeEmulator(void);
8 | void BunnyHop(struct usercmd_s *cmd);
9 | void Scroll(struct usercmd_s *cmd);
10 | void SimulateMouse(int cyka);
11 | void GroundStrafe(struct usercmd_s *cmd, float frametime);
12 | void JumpBug(float frametime, struct usercmd_s *cmd);
13 | //void StrafeHelper(float frametime, struct usercmd_s *cmd);
14 | #define SCROLLUP 120
15 | #define SCROLLDOWN -120
16 | #define MAX_PATTERNS 12
17 | int scrollpatterns[MAX_PATTERNS][14] =
18 | {
19 | //G+{1,2,3,4,5,6,7,8,9,10,11
20 | {1,0,1,0,0,1,0,0,0,1,0,1,0,1},
21 | {0,1,0,0,0,1,0,1,0,0,0,0,0,0},
22 | {1,0,1,0,0,0,0,0,0,0,1,1,0,1},
23 | {0,1,0,1,0,0,1,0,0,0,0,0,0,0},
24 | {1,0,1,0,1,0,0,1,0,1,0,0,0,1},
25 | {0,0,1,0,1,0,1,0,0,0,1,0,1,0},
26 | {0,1,0,1,0,1,0,0,0,0,0,0,0,0},
27 | {0,0,1,0,0,1,1,0,0,1,0,0,1,1},
28 | {1,0,0,1,0,1,0,0,1,0,0,0,0,0},
29 | {0,1,0,0,1,0,0,1,0,0,0,0,1,0},
30 | {0,1,0,0,1,0,1,0,1,0,1,0,0,1},
31 | {0,0,1,0,1,0,0,0,0,0,0,0,1,0}
32 | };
33 |
34 | };
35 | extern CSystems g_Systems;
36 |
37 |
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/common/event_args.h:
--------------------------------------------------------------------------------
1 | /***
2 | *
3 | * Copyright (c) 1996-2002, Valve LLC. All rights reserved.
4 | *
5 | * This product contains software technology licensed from Id
6 | * Software, Inc. ("Id Technology"). Id Technology (c) 1996 Id Software, Inc.
7 | * All Rights Reserved.
8 | *
9 | * Use, distribution, and modification of this source code and/or resulting
10 | * object code is restricted to non-commercial enhancements to products from
11 | * Valve LLC. All other use, distribution, or modification is prohibited
12 | * without written permission from Valve LLC.
13 | *
14 | ****/
15 | #if !defined( EVENT_ARGSH )
16 | #define EVENT_ARGSH
17 | #ifdef _WIN32
18 | #pragma once
19 | #endif
20 |
21 | // Event was invoked with stated origin
22 | #define FEVENT_ORIGIN ( 1<<0 )
23 |
24 | // Event was invoked with stated angles
25 | #define FEVENT_ANGLES ( 1<<1 )
26 |
27 | typedef struct event_args_s
28 | {
29 | int flags;
30 |
31 | // Transmitted
32 | int entindex;
33 |
34 | float origin[3];
35 | float angles[3];
36 | float velocity[3];
37 |
38 | int ducking;
39 |
40 | float fparam1;
41 | float fparam2;
42 |
43 | int iparam1;
44 | int iparam2;
45 |
46 | int bparam1;
47 | int bparam2;
48 | } event_args_t;
49 |
50 | #endif
51 |
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/common/in_buttons.h:
--------------------------------------------------------------------------------
1 | /***
2 | *
3 | * Copyright (c) 1996-2002, Valve LLC. All rights reserved.
4 | *
5 | * This product contains software technology licensed from Id
6 | * Software, Inc. ("Id Technology"). Id Technology (c) 1996 Id Software, Inc.
7 | * All Rights Reserved.
8 | *
9 | * Use, distribution, and modification of this source code and/or resulting
10 | * object code is restricted to non-commercial enhancements to products from
11 | * Valve LLC. All other use, distribution, or modification is prohibited
12 | * without written permission from Valve LLC.
13 | *
14 | ****/
15 | #ifndef IN_BUTTONS_H
16 | #define IN_BUTTONS_H
17 | #ifdef _WIN32
18 | #pragma once
19 | #endif
20 |
21 | #define IN_ATTACK (1 << 0)
22 | #define IN_JUMP (1 << 1)
23 | #define IN_DUCK (1 << 2)
24 | #define IN_FORWARD (1 << 3)
25 | #define IN_BACK (1 << 4)
26 | #define IN_USE (1 << 5)
27 | #define IN_CANCEL (1 << 6)
28 | #define IN_LEFT (1 << 7)
29 | #define IN_RIGHT (1 << 8)
30 | #define IN_MOVELEFT (1 << 9)
31 | #define IN_MOVERIGHT (1 << 10)
32 | #define IN_ATTACK2 (1 << 11)
33 | #define IN_RUN (1 << 12)
34 | #define IN_RELOAD (1 << 13)
35 | #define IN_ALT1 (1 << 14)
36 | #define IN_SCORE (1 << 15) // Used by client.dll for when scoreboard is held down
37 |
38 | #endif // IN_BUTTONS_H
39 |
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/common/weaponinfo.h:
--------------------------------------------------------------------------------
1 | /***
2 | *
3 | * Copyright (c) 1996-2002, Valve LLC. All rights reserved.
4 | *
5 | * This product contains software technology licensed from Id
6 | * Software, Inc. ("Id Technology"). Id Technology (c) 1996 Id Software, Inc.
7 | * All Rights Reserved.
8 | *
9 | * Use, distribution, and modification of this source code and/or resulting
10 | * object code is restricted to non-commercial enhancements to products from
11 | * Valve LLC. All other use, distribution, or modification is prohibited
12 | * without written permission from Valve LLC.
13 | *
14 | ****/
15 | #if !defined ( WEAPONINFOH )
16 | #define WEAPONINFOH
17 | #ifdef _WIN32
18 | #pragma once
19 | #endif
20 |
21 | // Info about weapons player might have in his/her possession
22 | typedef struct weapon_data_s
23 | {
24 | int m_iId;
25 | int m_iClip;
26 |
27 | float m_flNextPrimaryAttack;
28 | float m_flNextSecondaryAttack;
29 | float m_flTimeWeaponIdle;
30 |
31 | int m_fInReload;
32 | int m_fInSpecialReload;
33 | float m_flNextReload;
34 | float m_flPumpTime;
35 | float m_fReloadTime;
36 |
37 | float m_fAimedDamage;
38 | float m_fNextAimBonus;
39 | int m_fInZoom;
40 | int m_iWeaponState;
41 |
42 | int iuser1;
43 | int iuser2;
44 | int iuser3;
45 | int iuser4;
46 | float fuser1;
47 | float fuser2;
48 | float fuser3;
49 | float fuser4;
50 | } weapon_data_t;
51 |
52 | #endif
53 |
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/common/usercmd.h:
--------------------------------------------------------------------------------
1 | /***
2 | *
3 | * Copyright (c) 1996-2002, Valve LLC. All rights reserved.
4 | *
5 | * This product contains software technology licensed from Id
6 | * Software, Inc. ("Id Technology"). Id Technology (c) 1996 Id Software, Inc.
7 | * All Rights Reserved.
8 | *
9 | * Use, distribution, and modification of this source code and/or resulting
10 | * object code is restricted to non-commercial enhancements to products from
11 | * Valve LLC. All other use, distribution, or modification is prohibited
12 | * without written permission from Valve LLC.
13 | *
14 | ****/
15 | #ifndef USERCMD_H
16 | #define USERCMD_H
17 | #ifdef _WIN32
18 | #pragma once
19 | #endif
20 |
21 | typedef struct usercmd_s
22 | {
23 | short lerp_msec; // Interpolation time on client
24 | byte msec; // Duration in ms of command
25 | vec3_t viewangles; // Command view angles.
26 |
27 | // intended velocities
28 | float forwardmove; // Forward velocity.
29 | float sidemove; // Sideways velocity.
30 | float upmove; // Upward velocity.
31 | byte lightlevel; // Light level at spot where we are standing.
32 | unsigned short buttons; // Attack buttons
33 | byte impulse; // Impulse command issued.
34 | byte weaponselect; // Current weapon id
35 |
36 | // Experimental player impact stuff.
37 | int impact_index;
38 | vec3_t impact_position;
39 | } usercmd_t;
40 |
41 | #endif // USERCMD_H
42 |
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/common/pmtrace.h:
--------------------------------------------------------------------------------
1 | /***
2 | *
3 | * Copyright (c) 1996-2002, Valve LLC. All rights reserved.
4 | *
5 | * This product contains software technology licensed from Id
6 | * Software, Inc. ("Id Technology"). Id Technology (c) 1996 Id Software, Inc.
7 | * All Rights Reserved.
8 | *
9 | * Use, distribution, and modification of this source code and/or resulting
10 | * object code is restricted to non-commercial enhancements to products from
11 | * Valve LLC. All other use, distribution, or modification is prohibited
12 | * without written permission from Valve LLC.
13 | *
14 | ****/
15 | #if !defined( PMTRACEH )
16 | #define PMTRACEH
17 | #ifdef _WIN32
18 | #pragma once
19 | #endif
20 |
21 | typedef struct
22 | {
23 | vec3_t normal;
24 | float dist;
25 | } pmplane_t;
26 |
27 | typedef struct pmtrace_s pmtrace_t;
28 |
29 | struct pmtrace_s
30 | {
31 | qboolean allsolid; // if true, plane is not valid
32 | qboolean startsolid; // if true, the initial point was in a solid area
33 | qboolean inopen, inwater; // End point is in empty space or in water
34 | float fraction; // time completed, 1.0 = didn't hit anything
35 | vec3_t endpos; // final position
36 | pmplane_t plane; // surface normal at impact
37 | int ent; // entity at impact
38 | vec3_t deltavelocity; // Change in player's velocity caused by impact.
39 | // Only run on server.
40 | int hitgroup;
41 | };
42 |
43 | #endif
44 |
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI2/IHTML.h:
--------------------------------------------------------------------------------
1 | #ifndef IHTML_H
2 | #define IHTML_H
3 | #ifdef _WIN32
4 | #pragma once
5 | #endif
6 |
7 | #include "ISurface.h"
8 |
9 | namespace vgui
10 | {
11 | class IHTML
12 | {
13 | public:
14 | enum MOUSE_STATE { UP , DOWN , MOVE };
15 |
16 | public:
17 | virtual void OpenURL( const char *url ) = 0;
18 | virtual bool StopLoading( void ) = 0;
19 | virtual bool Refresh( void ) = 0;
20 | virtual bool Show( bool shown ) = 0;
21 | virtual char *GetOpenedPage( void ) = 0;
22 | virtual void OnSize( int x , int y , int w , int h ) = 0;
23 | virtual void GetHTMLSize( int &wide , int &tall ) = 0;
24 | virtual void Clear( void ) = 0;
25 | virtual void AddText( const char *text ) = 0;
26 | virtual void OnMouse( MouseCode code , MOUSE_STATE s , int x , int y ) = 0;
27 | virtual void OnChar( wchar_t unichar ) = 0;
28 | virtual void OnKeyDown( KeyCode code ) = 0;
29 | virtual IImage *GetBitmap( void ) = 0;
30 | virtual void SetVisible( bool state ) = 0;
31 | };
32 |
33 | class IHTMLEvents
34 | {
35 | public:
36 | virtual bool OnStartURL( const char *url , const char *target , bool first ) = 0;
37 | virtual void OnFinishURL( const char *url ) = 0;
38 | virtual void OnProgressURL( long current , long maximum ) = 0;
39 | virtual void OnSetStatusText( const char *text ) = 0;
40 | virtual void OnUpdate( void ) = 0;
41 | virtual void OnLink( void ) = 0;
42 | virtual void OffLink( void ) = 0;
43 | };
44 | }
45 |
46 | #endif
--------------------------------------------------------------------------------
/ev0lution/Hack/Visuals/Visuals.h:
--------------------------------------------------------------------------------
1 | class CVisuals;
2 | class CVisuals
3 | {
4 | private:
5 | void Debug();
6 | void PlayerESP(unsigned int i);
7 | void SoundESP();
8 | void TraceGrenade();
9 | void ScreenESP(unsigned int i, byte r, byte g, byte b, byte a);
10 | void Bomb();
11 | void RemoveScope();
12 | void CustomFOV();
13 | void Crosshair();
14 | void DrawAimBotFOV();
15 | void PenetrationInfo();
16 | void DrawEntities();
17 | void DrawFake(int PlayerID, int EntityID);
18 | void DrawHistory(int i);
19 |
20 | CImageTexture wpn_p228;
21 | CImageTexture wpn_scout;
22 | CImageTexture wpn_hegrenade;
23 | CImageTexture wpn_xm1014;
24 | CImageTexture wpn_c4;
25 | CImageTexture wpn_mac10;
26 | CImageTexture wpn_aug;
27 | CImageTexture wpn_smokegrenade;
28 | CImageTexture wpn_elite;
29 | CImageTexture wpn_fiveseven;
30 | CImageTexture wpn_ump45;
31 | CImageTexture wpn_sg550;
32 | CImageTexture wpn_galil;
33 | CImageTexture wpn_famas;
34 | CImageTexture wpn_usp;
35 | CImageTexture wpn_glock18;
36 | CImageTexture wpn_awp;
37 | CImageTexture wpn_mp5n;
38 | CImageTexture wpn_m249;
39 | CImageTexture wpn_m3;
40 | CImageTexture wpn_m4a1;
41 | CImageTexture wpn_tmp;
42 | CImageTexture wpn_g3sg1;
43 | CImageTexture wpn_flashbang;
44 | CImageTexture wpn_deagle;
45 | CImageTexture wpn_sg552;
46 | CImageTexture wpn_ak47;
47 | CImageTexture wpn_knife;
48 | CImageTexture wpn_p90;
49 | public:
50 | void Run();
51 | void IconInit();
52 | void Lightmap();
53 | };
54 | extern CVisuals g_Visuals;
--------------------------------------------------------------------------------
/ev0lution/Hack/Removals/NoRecoil/NoRecoil.cpp:
--------------------------------------------------------------------------------
1 | #include "../../../Required.h"
2 |
3 | CNoRecoil g_NoRecoil;
4 |
5 | void CNoRecoil::V_CalcRefdef(struct ref_params_s *pparams)
6 | {
7 | g_Local.vNoRecoilAngle[0] = pparams->punchangle[0] * 2;
8 | g_Local.vNoRecoilAngle[1] = pparams->punchangle[1] * 2;
9 | g_Local.vNoRecoilAngle[2] = 0;
10 |
11 | if (IsCurWeaponGun() && cvar.norecoil_visual)
12 | {
13 | pparams->punchangle[0] = 0;
14 | pparams->punchangle[1] = 0;
15 | pparams->punchangle[2] = 0;
16 | }
17 |
18 | if (IsCurWeaponGun() && cvar.debug)
19 | {
20 | pparams->punchangle[0] -= g_Local.vNoRecoilAngle[0];
21 | pparams->punchangle[1] -= g_Local.vNoRecoilAngle[1];
22 | pparams->punchangle[2] -= g_Local.vNoRecoilAngle[2];
23 | }
24 | }
25 |
26 | void CNoRecoil::CL_CreateMove(struct usercmd_s *cmd)
27 | {
28 | if (cvar.aim && cvar.norecoil && IsCurWeaponGun() && cmd->buttons & IN_ATTACK && CanAttack())
29 | {
30 | cmd->viewangles -= g_Local.vNoRecoilAngle;
31 | }
32 | }
33 |
34 | void CNoRecoil::DrawRecoil()
35 | {
36 | if (cvar.recoil_overlay && g_Local.bAlive && IsCurWeaponGun() && g_Local.iFOV > 0)
37 | {
38 | unsigned int x = g_Screen.iWidth * 0.5f;
39 | unsigned int y = g_Screen.iHeight * 0.5f;
40 |
41 | x -= g_Local.vPunchangle[1] / g_Local.iFOV * g_Screen.iWidth / 1.25f;
42 | y += g_Local.vPunchangle[0] / g_Local.iFOV * g_Screen.iWidth / 1.25f;
43 |
44 | g_Drawing.DrawRect(x - 1, y - 1, 3, 3, cvar.recoil_overlay_r, cvar.recoil_overlay_g, cvar.recoil_overlay_b, 200);
45 | }
46 | }
--------------------------------------------------------------------------------
/ev0lution/Offsets.h:
--------------------------------------------------------------------------------
1 | struct Module
2 | {
3 | DWORD base;
4 | DWORD size;
5 | DWORD end;
6 | };
7 |
8 | class COffsets;
9 | class COffsets
10 | {
11 | private:
12 | DWORD dwOldPageProtection;//For EnablePageWrite & RestorePageProtection
13 | public:
14 | Module hardware, client, gameui, vgui2;
15 |
16 | BYTE HLType;
17 |
18 | DWORD dwSendPacketPointer, dwSendPacketBackup, dwSpeedPointer;//Saved offsets
19 |
20 | bool FindHardware(void);//Init
21 |
22 | //Functions
23 |
24 | PVOID FindClient(void);
25 | PVOID FindEngine(void);
26 | PVOID FindStudio(void);
27 | PVOID FindPlayerMove(void);
28 | PVOID FindStudioModelRenderer(void);
29 |
30 | DWORD PreS_DynamicSound(void);
31 | DWORD CL_Move(void);
32 | DWORD FindSpeed(void);
33 |
34 | void GlobalTime();
35 |
36 | void PatchInterpolation(void);
37 |
38 | UserMsg FindUserMsgBase(void);
39 |
40 | //Utils
41 |
42 | bool FindModuleByName(const char *moduleName, Module *module);
43 | bool RestorePageProtection(DWORD addr, DWORD size);
44 | bool EnablePageWrite(DWORD addr, DWORD size);
45 |
46 | DWORD FindPattern(PCHAR pattern, PCHAR mask, DWORD start, DWORD end, DWORD offset);
47 | DWORD FindPattern(PCHAR pattern, DWORD start, DWORD end, DWORD offset);
48 | DWORD FindReference(DWORD start, DWORD end, DWORD Address);
49 | DWORD FindPush(DWORD start, DWORD end, PCHAR Message);
50 | DWORD GetModuleSize(DWORD Address);
51 | DWORD FarProc(DWORD Address, DWORD LB, DWORD HB);
52 | DWORD Absolute(DWORD Address);
53 |
54 | void Error(PCHAR msg);
55 | };
56 | extern COffsets g_Offsets;
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/GameUI/IGameUI.h:
--------------------------------------------------------------------------------
1 | #ifndef IGAMEUI_H
2 | #define IGAMEUI_H
3 |
4 | #ifdef _WIN32
5 | #pragma once
6 | #endif
7 |
8 | class IGameUI : public IBaseInterface
9 | {
10 | public:
11 | virtual void Initialize(CreateInterfaceFn *factories, int count) = 0;
12 | virtual void Start(struct cl_enginefuncs_s *engineFuncs, int interfaceVersion, void *system) = 0;
13 | virtual void Shutdown(void) = 0;
14 | virtual int ActivateGameUI(void) = 0;
15 | virtual int ActivateDemoUI(void) = 0;
16 | virtual int HasExclusiveInput(void) = 0;
17 | virtual void RunFrame(void) = 0;
18 | virtual void ConnectToServer(const char *game, int IP, int port) = 0;
19 | virtual void DisconnectFromServer(void) = 0;
20 | virtual void HideGameUI(void) = 0;
21 | virtual bool IsGameUIActive(void) = 0;
22 | virtual void LoadingStarted(const char *resourceType, const char *resourceName) = 0;
23 | virtual void LoadingFinished(const char *resourceType, const char *resourceName) = 0;
24 | virtual void StartProgressBar(const char *progressType, int progressSteps) = 0;
25 | virtual int ContinueProgressBar(int progressPoint, float progressFraction) = 0;
26 | virtual void StopProgressBar(bool bError, const char *failureReason, const char *extendedReason = NULL) = 0;
27 | virtual int SetProgressBarStatusText(const char *statusText) = 0;
28 | virtual void SetSecondaryProgressBar(float progress) = 0;
29 | virtual void SetSecondaryProgressBarText(const char *statusText) = 0;
30 | };
31 |
32 | extern IGameUI* g_pGameUI;
33 |
34 | #define GAMEUI_INTERFACE_VERSION "GameUI007"
35 | #endif
--------------------------------------------------------------------------------
/ev0lution cs 1.6.sln:
--------------------------------------------------------------------------------
1 |
2 | Microsoft Visual Studio Solution File, Format Version 12.00
3 | # Visual Studio 15
4 | VisualStudioVersion = 15.0.27004.2009
5 | MinimumVisualStudioVersion = 10.0.40219.1
6 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ev0lution", "ev0lution\ev0lution.vcxproj", "{2C7743DB-9187-4221-995B-C0CD3C17234C}"
7 | EndProject
8 | Global
9 | GlobalSection(SolutionConfigurationPlatforms) = preSolution
10 | Debug|x64 = Debug|x64
11 | Debug|x86 = Debug|x86
12 | Release|x64 = Release|x64
13 | Release|x86 = Release|x86
14 | EndGlobalSection
15 | GlobalSection(ProjectConfigurationPlatforms) = postSolution
16 | {2C7743DB-9187-4221-995B-C0CD3C17234C}.Debug|x64.ActiveCfg = Debug|x64
17 | {2C7743DB-9187-4221-995B-C0CD3C17234C}.Debug|x64.Build.0 = Debug|x64
18 | {2C7743DB-9187-4221-995B-C0CD3C17234C}.Debug|x86.ActiveCfg = Debug|Win32
19 | {2C7743DB-9187-4221-995B-C0CD3C17234C}.Debug|x86.Build.0 = Debug|Win32
20 | {2C7743DB-9187-4221-995B-C0CD3C17234C}.Release|x64.ActiveCfg = Release|x64
21 | {2C7743DB-9187-4221-995B-C0CD3C17234C}.Release|x64.Build.0 = Release|x64
22 | {2C7743DB-9187-4221-995B-C0CD3C17234C}.Release|x86.ActiveCfg = Release|Win32
23 | {2C7743DB-9187-4221-995B-C0CD3C17234C}.Release|x86.Build.0 = Release|Win32
24 | EndGlobalSection
25 | GlobalSection(SolutionProperties) = preSolution
26 | HideSolutionNode = FALSE
27 | EndGlobalSection
28 | GlobalSection(ExtensibilityGlobals) = postSolution
29 | SolutionGuid = {768CE29E-B077-487E-8AFC-900A23E4B69C}
30 | EndGlobalSection
31 | EndGlobal
32 |
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/common/particledef.h:
--------------------------------------------------------------------------------
1 | /***
2 | *
3 | * Copyright (c) 1996-2002, Valve LLC. All rights reserved.
4 | *
5 | * This product contains software technology licensed from Id
6 | * Software, Inc. ("Id Technology"). Id Technology (c) 1996 Id Software, Inc.
7 | * All Rights Reserved.
8 | *
9 | * Use, distribution, and modification of this source code and/or resulting
10 | * object code is restricted to non-commercial enhancements to products from
11 | * Valve LLC. All other use, distribution, or modification is prohibited
12 | * without written permission from Valve LLC.
13 | *
14 | ****/
15 | #if !defined( PARTICLEDEFH )
16 | #define PARTICLEDEFH
17 | #ifdef _WIN32
18 | #pragma once
19 | #endif
20 |
21 | typedef enum {
22 | pt_static,
23 | pt_grav,
24 | pt_slowgrav,
25 | pt_fire,
26 | pt_explode,
27 | pt_explode2,
28 | pt_blob,
29 | pt_blob2,
30 | pt_vox_slowgrav,
31 | pt_vox_grav,
32 | pt_clientcustom // Must have callback function specified
33 | } ptype_t;
34 |
35 | // !!! if this is changed, it must be changed in d_ifacea.h too !!!
36 | typedef struct particle_s
37 | {
38 | // driver-usable fields
39 | vec3_t org;
40 | short color;
41 | short packedColor;
42 | // drivers never touch the following fields
43 | struct particle_s *next;
44 | vec3_t vel;
45 | float ramp;
46 | float die;
47 | ptype_t type;
48 | void (*deathfunc)( struct particle_s *particle );
49 |
50 | // for pt_clientcusttom, we'll call this function each frame
51 | void (*callback)( struct particle_s *particle, float frametime );
52 |
53 | // For deathfunc, etc.
54 | unsigned char context;
55 | } particle_t;
56 |
57 | #endif
58 |
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/common/cvardef.h:
--------------------------------------------------------------------------------
1 | /***
2 | *
3 | * Copyright (c) 1996-2002, Valve LLC. All rights reserved.
4 | *
5 | * This product contains software technology licensed from Id
6 | * Software, Inc. ("Id Technology"). Id Technology (c) 1996 Id Software, Inc.
7 | * All Rights Reserved.
8 | *
9 | * Use, distribution, and modification of this source code and/or resulting
10 | * object code is restricted to non-commercial enhancements to products from
11 | * Valve LLC. All other use, distribution, or modification is prohibited
12 | * without written permission from Valve LLC.
13 | *
14 | ****/
15 | #ifndef CVARDEF_H
16 | #define CVARDEF_H
17 |
18 | #define FCVAR_ARCHIVE (1<<0) // set to cause it to be saved to vars.rc
19 | #define FCVAR_USERINFO (1<<1) // changes the client's info string
20 | #define FCVAR_SERVER (1<<2) // notifies players when changed
21 | #define FCVAR_EXTDLL (1<<3) // defined by external DLL
22 | #define FCVAR_CLIENTDLL (1<<4) // defined by the client dll
23 | #define FCVAR_PROTECTED (1<<5) // It's a server cvar, but we don't send the data since it's a password, etc. Sends 1 if it's not bland/zero, 0 otherwise as value
24 | #define FCVAR_SPONLY (1<<6) // This cvar cannot be changed by clients connected to a multiplayer server.
25 | #define FCVAR_PRINTABLEONLY (1<<7) // This cvar's string cannot contain unprintable characters ( e.g., used for player name etc ).
26 | #define FCVAR_UNLOGGED (1<<8) // If this is a FCVAR_SERVER, don't log changes to the log file / console if we are creating a log
27 |
28 | typedef struct cvar_s
29 | {
30 | char *name;
31 | char *string;
32 | int flags;
33 | float value;
34 | struct cvar_s *next;
35 | } cvar_t;
36 | #endif
37 |
--------------------------------------------------------------------------------
/ev0lution/QAngle.cpp:
--------------------------------------------------------------------------------
1 | #include "Required.h"
2 |
3 | void QAngle::AngleVectors ( Vector* Forward, Vector* Right, Vector* Up )
4 | {
5 | float sp, sy, sr, cp, cy, cr, radx, rady, radz;
6 |
7 | radx = x * ( M_PI*2 / 360 );
8 | rady = y * ( M_PI*2 / 360 );
9 | radz = z * ( M_PI*2 / 360 );
10 |
11 | sp = sin ( radx );
12 | sy = sin ( rady );
13 | sr = sin ( radz );
14 |
15 | cp = cos ( radx );
16 | cy = cos ( rady );
17 | cr = cos ( radz );
18 |
19 | if ( Forward )
20 | {
21 | Forward->x = cp * cy;
22 | Forward->y = cp * sy;
23 | Forward->z = -sp;
24 | }
25 |
26 | if ( Right )
27 | {
28 | Right->x = -1 * sr * sp * cy + -1 * cr * -sy;
29 | Right->y = -1 * sr * sp * sy + -1 * cr * cy;
30 | Right->z = -1 * sr * cp;
31 | }
32 |
33 | if ( Up )
34 | {
35 | Up->x = cr * sp * cy + -sr * -sy;
36 | Up->y = cr * sp * sy + -sr * cy;
37 | Up->z = cr * cp;
38 | }
39 | }
40 |
41 | void QAngle::AngleVectorsTranspose ( Vector* Forward, Vector* Right, Vector* Up )
42 | {
43 | float sp, sy, sr, cp, cy, cr, radx, rady, radz;
44 |
45 | radx = x * ( M_PI*2 / 360 );
46 | rady = y * ( M_PI*2 / 360 );
47 | radz = z * ( M_PI*2 / 360 );
48 |
49 | sp = sin ( radx );
50 | sy = sin ( rady );
51 | sr = sin ( radz );
52 |
53 | cp = cos ( radx );
54 | cy = cos ( rady );
55 | cr = cos ( radz );
56 |
57 | if ( Forward )
58 | {
59 | Forward->x = cp * cy;
60 | Forward->y = sr * sp * cy + cr * -sy;
61 | Forward->z = cr * sp * cy + -sr * -sy;
62 | }
63 |
64 | if ( Right )
65 | {
66 | Right->x = cp * sy;
67 | Right->y = sr * sp * sy + cr * cy;
68 | Right->z = cr * sp * sy + -sr * cy;
69 | }
70 |
71 | if ( Up )
72 | {
73 | Up->x = -sp;
74 | Up->y = sr * cp;
75 | Up->z = cr * cp;
76 | }
77 | }
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/common/event_flags.h:
--------------------------------------------------------------------------------
1 | /***
2 | *
3 | * Copyright (c) 1996-2002, Valve LLC. All rights reserved.
4 | *
5 | * This product contains software technology licensed from Id
6 | * Software, Inc. ("Id Technology"). Id Technology (c) 1996 Id Software, Inc.
7 | * All Rights Reserved.
8 | *
9 | * Use, distribution, and modification of this source code and/or resulting
10 | * object code is restricted to non-commercial enhancements to products from
11 | * Valve LLC. All other use, distribution, or modification is prohibited
12 | * without written permission from Valve LLC.
13 | *
14 | ****/
15 | #if !defined( EVENT_FLAGSH )
16 | #define EVENT_FLAGSH
17 | #ifdef _WIN32
18 | #pragma once
19 | #endif
20 |
21 | // Skip local host for event send.
22 | #define FEV_NOTHOST (1<<0)
23 |
24 | // Send the event reliably. You must specify the origin and angles and use
25 | // PLAYBACK_EVENT_FULL for this to work correctly on the server for anything
26 | // that depends on the event origin/angles. I.e., the origin/angles are not
27 | // taken from the invoking edict for reliable events.
28 | #define FEV_RELIABLE (1<<1)
29 |
30 | // Don't restrict to PAS/PVS, send this event to _everybody_ on the server ( useful for stopping CHAN_STATIC
31 | // sounds started by client event when client is not in PVS anymore ( hwguy in TFC e.g. ).
32 | #define FEV_GLOBAL (1<<2)
33 |
34 | // If this client already has one of these events in its queue, just update the event instead of sending it as a duplicate
35 | //
36 | #define FEV_UPDATE (1<<3)
37 |
38 | // Only send to entity specified as the invoker
39 | #define FEV_HOSTONLY (1<<4)
40 |
41 | // Only send if the event was created on the server.
42 | #define FEV_SERVER (1<<5)
43 |
44 | // Only issue event client side ( from shared code )
45 | #define FEV_CLIENT (1<<6)
46 |
47 | #endif
48 |
--------------------------------------------------------------------------------
/ev0lution/Hack/Drawing/Drawing.h:
--------------------------------------------------------------------------------
1 | class CDrawing;
2 | class CDrawing
3 | {
4 | public:
5 | void DrawRect(int x, int y, int w, int h, int r, int g, int b, int a);
6 | void DrawOutlinedRect(int x, int y, int w, int h, int r, int g, int b, int a);
7 | void DrawCircle(float position[2], float points, float radius, int r, int g, int b, int a);
8 | void DrawCircle3D(Vector position, float points, float radius, int r, int g, int b, int a);
9 | void DrawLine(int x0, int y0, int x1, int y1, int r, int g, int b, int a);
10 | void DrawString(vgui::HFont font, int x, int y, int r, int g, int b, int a, DWORD alignment, const char* msg, ...);
11 | void DrawStringACP(vgui::HFont font, int x, int y, int r, int g, int b, int a, DWORD alignment, const char* msg, ...);
12 | void DrawPlayerBox(int x, int y, int w, int h, int r, int g, int b, int a);
13 | void DrawBox(int x, int y, int w, int h, int r, int g, int b, int a);
14 | void BoxOutline(float x, float y, float w, float h, float lw, BYTE r, BYTE g, BYTE b, BYTE a);
15 | void Box(int x, int y, int w, int h, int lw, int r, int g, int b, int a);
16 | void DrawTexture(int id, int x0, int y0, int x1, int y1, int r = 255, int g = 255, int b = 255, int a = 255);
17 | void DrawCoalBox(int x, int y, int w, int h, int lw, int r, int g, int b, int a);
18 | void DrawOutlineCoalBox(int x, int y, int w, int h, int lw, BYTE r, BYTE g, BYTE b, BYTE a);
19 | void SetupFonts();
20 | void DrawCrosshair(int x, int y, int r, int g, int b, int a);
21 | void DrawDot(int x, int y, int r, int g, int b, int a);
22 | void FillArea(int x, int y, int w, int h, int r, int g, int b, int a);
23 | void BoxCorner(int x, int y, int w, int h, int lw, BYTE r, BYTE g, BYTE b, BYTE a);
24 | void BoxCornerOutline(int x, int y, int w, int h, int lw, BYTE r, BYTE g, BYTE b, BYTE a);
25 | };
26 | extern CDrawing g_Drawing;
27 |
28 | extern vgui::HFont ESP;
29 | extern vgui::HFont MENU;
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/common/crc.h:
--------------------------------------------------------------------------------
1 | /***
2 | *
3 | * Copyright (c) 1996-2002, Valve LLC. All rights reserved.
4 | *
5 | * This product contains software technology licensed from Id
6 | * Software, Inc. ("Id Technology"). Id Technology (c) 1996 Id Software, Inc.
7 | * All Rights Reserved.
8 | *
9 | * Use, distribution, and modification of this source code and/or resulting
10 | * object code is restricted to non-commercial enhancements to products from
11 | * Valve LLC. All other use, distribution, or modification is prohibited
12 | * without written permission from Valve LLC.
13 | *
14 | ****/
15 | /* crc.h */
16 | #ifndef CRC_H
17 | #define CRC_H
18 | #ifdef _WIN32
19 | #pragma once
20 | #endif
21 |
22 | // MD5 Hash
23 | typedef struct
24 | {
25 | unsigned int buf[4];
26 | unsigned int bits[2];
27 | unsigned char in[64];
28 | } MD5Context_t;
29 |
30 |
31 | typedef unsigned long CRC32_t;
32 | void CRC32_Init(CRC32_t *pulCRC);
33 | CRC32_t CRC32_Final(CRC32_t pulCRC);
34 | void CRC32_ProcessBuffer(CRC32_t *pulCRC, void *p, int len);
35 | void CRC32_ProcessByte(CRC32_t *pulCRC, unsigned char ch);
36 | int CRC_File(CRC32_t *crcvalue, char *pszFileName);
37 |
38 | unsigned char COM_BlockSequenceCRCByte (unsigned char *base, int length, int sequence);
39 |
40 | void MD5Init(MD5Context_t *context);
41 | void MD5Update(MD5Context_t *context, unsigned char const *buf,
42 | unsigned int len);
43 | void MD5Final(unsigned char digest[16], MD5Context_t *context);
44 | void Transform(unsigned int buf[4], unsigned int const in[16]);
45 |
46 | int MD5_Hash_File(unsigned char digest[16], char *pszFileName, int bUsefopen, int bSeed, unsigned int seed[4]);
47 | char *MD5_Print(unsigned char hash[16]);
48 | int MD5_Hash_CachedFile(unsigned char digest[16], unsigned char *pCache, int nFileSize, int bSeed, unsigned int seed[4]);
49 |
50 | int CRC_MapFile(CRC32_t *crcvalue, char *pszFileName);
51 |
52 | #endif
53 |
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/common/beamdef.h:
--------------------------------------------------------------------------------
1 | /***
2 | *
3 | * Copyright (c) 1996-2002, Valve LLC. All rights reserved.
4 | *
5 | * This product contains software technology licensed from Id
6 | * Software, Inc. ("Id Technology"). Id Technology (c) 1996 Id Software, Inc.
7 | * All Rights Reserved.
8 | *
9 | * Use, distribution, and modification of this source code and/or resulting
10 | * object code is restricted to non-commercial enhancements to products from
11 | * Valve LLC. All other use, distribution, or modification is prohibited
12 | * without written permission from Valve LLC.
13 | *
14 | ****/
15 | #if !defined ( BEAMDEFH )
16 | #define BEAMDEFH
17 | #ifdef _WIN32
18 | #pragma once
19 | #endif
20 |
21 | #define FBEAM_STARTENTITY 0x00000001
22 | #define FBEAM_ENDENTITY 0x00000002
23 | #define FBEAM_FADEIN 0x00000004
24 | #define FBEAM_FADEOUT 0x00000008
25 | #define FBEAM_SINENOISE 0x00000010
26 | #define FBEAM_SOLID 0x00000020
27 | #define FBEAM_SHADEIN 0x00000040
28 | #define FBEAM_SHADEOUT 0x00000080
29 | #define FBEAM_STARTVISIBLE 0x10000000 // Has this client actually seen this beam's start entity yet?
30 | #define FBEAM_ENDVISIBLE 0x20000000 // Has this client actually seen this beam's end entity yet?
31 | #define FBEAM_ISACTIVE 0x40000000
32 | #define FBEAM_FOREVER 0x80000000
33 |
34 | typedef struct beam_s BEAM;
35 | struct beam_s
36 | {
37 | BEAM *next;
38 | int type;
39 | int flags;
40 | vec3_t source;
41 | vec3_t target;
42 | vec3_t delta;
43 | float t; // 0 .. 1 over lifetime of beam
44 | float freq;
45 | float die;
46 | float width;
47 | float amplitude;
48 | float r, g, b;
49 | float brightness;
50 | float speed;
51 | float frameRate;
52 | float frame;
53 | int segments;
54 | int startEntity;
55 | int endEntity;
56 | int modelIndex;
57 | int frameCount;
58 | struct model_s *pFollowModel;
59 | struct particle_s *particles;
60 | };
61 |
62 | #endif
63 |
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/common/ref_params.h:
--------------------------------------------------------------------------------
1 | /***
2 | *
3 | * Copyright (c) 1996-2002, Valve LLC. All rights reserved.
4 | *
5 | * This product contains software technology licensed from Id
6 | * Software, Inc. ("Id Technology"). Id Technology (c) 1996 Id Software, Inc.
7 | * All Rights Reserved.
8 | *
9 | * Use, distribution, and modification of this source code and/or resulting
10 | * object code is restricted to non-commercial enhancements to products from
11 | * Valve LLC. All other use, distribution, or modification is prohibited
12 | * without written permission from Valve LLC.
13 | *
14 | ****/
15 | #if !defined( REF_PARAMSH )
16 | #define REF_PARAMSH
17 |
18 | typedef struct ref_params_s
19 | {
20 | // Output
21 | float vieworg[3];
22 | float viewangles[3];
23 |
24 | float forward[3];
25 | float right[3];
26 | float up[3];
27 |
28 | // Client frametime;
29 | float frametime;
30 | // Client time
31 | float time;
32 |
33 | // Misc
34 | int intermission;
35 | int paused;
36 | int spectator;
37 | int onground;
38 | int waterlevel;
39 |
40 | float simvel[3];
41 | float simorg[3];
42 |
43 | float viewheight[3];
44 | float idealpitch;
45 |
46 | float cl_viewangles[3];
47 |
48 | int health;
49 | float crosshairangle[3];
50 | float viewsize;
51 |
52 | float punchangle[3];
53 | int maxclients;
54 | int viewentity;
55 | int playernum;
56 | int max_entities;
57 | int demoplayback;
58 | int hardware;
59 |
60 | int smoothing;
61 |
62 | // Last issued usercmd
63 | struct usercmd_s *cmd;
64 |
65 | // Movevars
66 | struct movevars_s *movevars;
67 |
68 | int viewport[4]; // the viewport coordinates x ,y , width, height
69 |
70 | int nextView; // the renderer calls ClientDLL_CalcRefdef() and Renderview
71 | // so long in cycles until this value is 0 (multiple views)
72 | int onlyClientDraw; // if !=0 nothing is drawn by the engine except clientDraw functions
73 | } ref_params_t;
74 |
75 | #endif // !REF_PARAMSH
76 |
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/common/triangleapi.h:
--------------------------------------------------------------------------------
1 | /***
2 | *
3 | * Copyright (c) 1996-2002, Valve LLC. All rights reserved.
4 | *
5 | * This product contains software technology licensed from Id
6 | * Software, Inc. ("Id Technology"). Id Technology (c) 1996 Id Software, Inc.
7 | * All Rights Reserved.
8 | *
9 | * Use, distribution, and modification of this source code and/or resulting
10 | * object code is restricted to non-commercial enhancements to products from
11 | * Valve LLC. All other use, distribution, or modification is prohibited
12 | * without written permission from Valve LLC.
13 | *
14 | ****/
15 | #if !defined( TRIANGLEAPIH )
16 | #define TRIANGLEAPIH
17 | #ifdef _WIN32
18 | #pragma once
19 | #endif
20 |
21 | typedef enum
22 | {
23 | TRI_FRONT = 0,
24 | TRI_NONE = 1,
25 | } TRICULLSTYLE;
26 |
27 | #define TRI_API_VERSION 1
28 |
29 | #define TRI_TRIANGLES 0
30 | #define TRI_TRIANGLE_FAN 1
31 | #define TRI_QUADS 2
32 | #define TRI_POLYGON 3
33 | #define TRI_LINES 4
34 | #define TRI_TRIANGLE_STRIP 5
35 | #define TRI_QUAD_STRIP 6
36 |
37 | typedef struct triangleapi_s
38 | {
39 | int version;
40 |
41 | void ( *RenderMode )( int mode );
42 | void ( *Begin )( int primitiveCode );
43 | void ( *End ) ( void );
44 |
45 | void ( *Color4f ) ( float r, float g, float b, float a );
46 | void ( *Color4ub ) ( unsigned char r, unsigned char g, unsigned char b, unsigned char a );
47 | void ( *TexCoord2f ) ( float u, float v );
48 | void ( *Vertex3fv ) ( float *worldPnt );
49 | void ( *Vertex3f ) ( float x, float y, float z );
50 | void ( *Brightness ) ( float brightness );
51 | void ( *CullFace ) ( TRICULLSTYLE style );
52 | int ( *SpriteTexture ) ( struct model_s *pSpriteModel, int frame );
53 | int ( *WorldToScreen ) ( float *world, float *screen ); // Returns 1 if it's z clipped
54 | void ( *Fog ) ( float flFogColor[3], float flStart, float flEnd, int bOn ); //Works just like GL_FOG, flFogColor is r/g/b.
55 | void ( *ScreenToWorld ) ( float *screen, float *world );
56 |
57 | } triangleapi_t;
58 |
59 | #endif // !TRIANGLEAPIH
60 |
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/parsemsg.h:
--------------------------------------------------------------------------------
1 | /***
2 | *
3 | * Copyright (c) 1999, Valve LLC. All rights reserved.
4 | *
5 | * This product contains software technology licensed from Id
6 | * Software, Inc. ("Id Technology"). Id Technology (c) 1996 Id Software, Inc.
7 | * All Rights Reserved.
8 | *
9 | * Use, distribution, and modification of this source code and/or resulting
10 | * object code is restricted to non-commercial enhancements to products from
11 | * Valve LLC. All other use, distribution, or modification is prohibited
12 | * without written permission from Valve LLC.
13 | *
14 | ****/
15 | //
16 | // parsemsg.h
17 | // MDC - copying from cstrike\cl_dll so career-mode stuff can catch messages
18 | // in this dll. (and C++ifying it)
19 | //
20 |
21 | #ifndef PARSEMSG_H
22 | #define PARSEMSG_H
23 |
24 | #define ASSERT( x )
25 | //--------------------------------------------------------------------------------------------------------------
26 | void BEGIN_READ( void *buf, int size );
27 | int READ_CHAR( void );
28 | int READ_BYTE( void );
29 | int READ_SHORT( void );
30 | int READ_WORD( void );
31 | int READ_LONG( void );
32 | float READ_FLOAT( void );
33 | char* READ_STRING( void );
34 | float READ_COORD( void );
35 | float READ_ANGLE( void );
36 | float READ_HIRESANGLE( void );
37 | int READ_OK( void );
38 |
39 | //--------------------------------------------------------------------------------------------------------------
40 | class BufferWriter
41 | {
42 | public:
43 | BufferWriter();
44 | BufferWriter( unsigned char *buffer, int bufferLen );
45 | void Init( unsigned char *buffer, int bufferLen );
46 |
47 | void WriteByte( unsigned char data );
48 | void WriteLong( int data );
49 | void WriteString( const char *str );
50 |
51 | bool HasOverflowed();
52 | int GetSpaceUsed();
53 |
54 | protected:
55 | unsigned char *m_buffer;
56 | int m_remaining;
57 | bool m_overflow;
58 | int m_overallLength;
59 | };
60 |
61 | //--------------------------------------------------------------------------------------------------------------
62 |
63 | #endif // PARSEMSG_H
64 |
65 |
66 |
67 |
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/engine/shake.h:
--------------------------------------------------------------------------------
1 | /***
2 | *
3 | * Copyright (c) 1996-2002, Valve LLC. All rights reserved.
4 | *
5 | * This product contains software technology licensed from Id
6 | * Software, Inc. ("Id Technology"). Id Technology (c) 1996 Id Software, Inc.
7 | * All Rights Reserved.
8 | *
9 | * Use, distribution, and modification of this source code and/or resulting
10 | * object code is restricted to non-commercial enhancements to products from
11 | * Valve LLC. All other use, distribution, or modification is prohibited
12 | * without written permission from Valve LLC.
13 | *
14 | ****/
15 | #ifndef SHAKE_H
16 | #define SHAKE_H
17 |
18 | // Screen / View effects
19 |
20 | // screen shake
21 | extern int gmsgShake;
22 |
23 | // This structure is sent over the net to describe a screen shake event
24 | typedef struct
25 | {
26 | unsigned short amplitude; // FIXED 4.12 amount of shake
27 | unsigned short duration; // FIXED 4.12 seconds duration
28 | unsigned short frequency; // FIXED 8.8 noise frequency (low frequency is a jerk,high frequency is a rumble)
29 | } ScreenShake;
30 |
31 | extern void V_ApplyShake( float *origin, float *angles, float factor );
32 | extern void V_CalcShake( void );
33 | extern int V_ScreenShake( const char *pszName, int iSize, void *pbuf );
34 | extern int V_ScreenFade( const char *pszName, int iSize, void *pbuf );
35 |
36 |
37 | // Fade in/out
38 | extern int gmsgFade;
39 |
40 | #define FFADE_IN 0x0000 // Just here so we don't pass 0 into the function
41 | #define FFADE_OUT 0x0001 // Fade out (not in)
42 | #define FFADE_MODULATE 0x0002 // Modulate (don't blend)
43 | #define FFADE_STAYOUT 0x0004 // ignores the duration, stays faded out until new ScreenFade message received
44 |
45 | // This structure is sent over the net to describe a screen fade event
46 | typedef struct
47 | {
48 | unsigned short duration; // FIXED 4.12 seconds duration
49 | unsigned short holdTime; // FIXED 4.12 seconds duration until reset (fade & hold)
50 | short fadeFlags; // flags
51 | byte r, g, b, a; // fade to color ( max alpha )
52 | } ScreenFade;
53 |
54 | #endif // SHAKE_H
55 |
56 |
--------------------------------------------------------------------------------
/ev0lution/Hack/Utils/Utils.h:
--------------------------------------------------------------------------------
1 | class CUtils;
2 | class CUtils
3 | {
4 | private:
5 | Vector vViewForward, vViewRight, vViewUp, vAimForward, vAimRight, vAimUp;//backup for fixmove
6 | float forwardmove, sidemove, upmove;//backup for fixmove
7 | public:
8 | bool IsBoxIntersectingRay(const Vector& boxMin, const Vector& boxMax, const Vector& origin, const Vector& delta);
9 |
10 | bool IsPlayer(struct cl_entity_s *ent);
11 | bool IsPlayerUpdated(struct cl_entity_s *ent);
12 |
13 | bool IsPlayerAlive(struct cl_entity_s *ent);
14 | bool IsLocalAlive(struct cl_entity_s *ent);
15 | bool IsEntityAlive(struct cl_entity_s *ent);
16 |
17 | void StringReplace(char* buf, const char* search, const char* replace);
18 |
19 | bool bFileExists(const char *cFileName);
20 | char *szDirFile(const char* pszName);
21 | char *cIniRead(char *cFileName, char *cSection, char *cKey, char *cDef);
22 | void cIniWrite(char *cFileName, char *cSection, char *cKey, char *cValue);
23 |
24 | bool bCalcScreen(float *pflOrigin, float *pflVecScreen);
25 | bool bPathFree(float *pflFrom, float *pflTo);
26 |
27 | void MakeAngle(bool addangle, float *angles, struct usercmd_s *cmd);
28 | void FixMoveStart(struct usercmd_s *cmd);
29 | void FixMoveEnd(struct usercmd_s *cmd);
30 | void VectorAngles(const float *forward, float *angles);
31 |
32 | //bool Intersect(Vector vHitboxMin, Vector vHitboxMax, Vector vSpreadDir, float &distance);
33 |
34 | float Armor(float flDamage, int ArmorValue);
35 |
36 | void bSendpacket(bool status);
37 |
38 | int FireBullets(Vector start, Vector end, float flDistance, int iOriginalPenetration, int iBulletType, int iDamage, float flRangeModifier);
39 |
40 | void GetFirstNonSolidPoint(const Vector& inStartPos, const Vector& inEndPos, Vector& outNonSolidPoint);
41 |
42 | bool GetTextureInfo(CImageTexture texture, unsigned int &index, unsigned int &w, unsigned int &h);
43 | };
44 | extern CUtils g_Utils;
45 |
46 | extern unsigned int Cstrike_SequenceInfo[];
47 |
48 | void NormalizeAngles(float *angles);
49 | bool IsFreezePeriod(void);
50 | int native_strlen(char *pStr);
51 | void native_memwrite(uintptr_t adr, uintptr_t ptr, int size);
--------------------------------------------------------------------------------
/ev0lution/Hack/Visuals/Menu/Menu.h:
--------------------------------------------------------------------------------
1 | #define LIMIT_LISTBOX 48
2 | #define LIMIT_PALETTE 48
3 | #define LIMIT_SAVE 16
4 |
5 | class CMenu;
6 | class CMenu
7 | {
8 | private:
9 | bool bInitialised;
10 | bool IsDragging;
11 |
12 | unsigned int iCurrentTab;
13 |
14 | unsigned int MenuX;
15 | unsigned int MenuY;
16 |
17 | int CursorX;
18 | int CursorY;
19 |
20 | CImageTexture background;
21 |
22 | /* CImageTexture icon_headshot;
23 | CImageTexture icon_headshot_not_selected;
24 |
25 | CImageTexture icon_aimbot;
26 | CImageTexture icon_aimbot_not_selected;
27 |
28 | //CImageTexture icon_systems;
29 | //CImageTexture icon_systems_not_selected;
30 |
31 | CImageTexture icon_options;
32 | CImageTexture icon_options_not_selected;
33 |
34 | CImageTexture icon_visuals;
35 | CImageTexture icon_visuals_not_selected;
36 |
37 | CImageTexture icon_members;
38 | CImageTexture icon_members_not_selected;*/
39 |
40 | bool bListBoxOpened[LIMIT_LISTBOX];
41 | bool bPaletteOpened[LIMIT_PALETTE];
42 |
43 | DWORD dwCheckboxBlockedTime;
44 | DWORD dwPaletteBlockedTime;
45 | DWORD dwListBlockedTime;
46 | DWORD dwSliderBlockedTime;
47 |
48 | bool bCursorInList;
49 | bool bCursorInPalette;
50 |
51 | int iPaletteIndex;
52 | int iListIndex;
53 |
54 | void Palette(int x, int y, float &r, float &g, float &b);
55 | void Checkbox(int x, int y, bool &value, char *text);
56 | void Slider(int x, int y, float min, float max, float &value, char *text = 0, bool ThisINT = false, char *amout = 0, bool extra = false);
57 | void SliderInPallete(int x, int y, float min, float max, float &value, char *text = 0, bool ThisINT = false, char *amout = 0, bool extra = false);
58 | void ListBox(int index, int x, int y, char *name, float &value, char **text, int size, bool default = false);
59 | bool DrawButton(int x, int y, char *text);
60 | void KeyBind(int x, int y, int &key);
61 | void KeyBind2(int x, int y, int &key);
62 |
63 | void DrawBox(int x, int y, int w, int h);
64 | void SelectTab();
65 | void DrawMenuTabs();
66 | void Tabs();
67 | void Drag();
68 | void Init();
69 | public:
70 | bool bOpened;
71 | bool keys[256];
72 |
73 | void Run();
74 | };
75 | extern CMenu g_Menu;
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/GameUI/IRunGameEngine.h:
--------------------------------------------------------------------------------
1 | #ifndef IRUNGAMEENGINE_H
2 | #define IRUNGAMEENGINE_H
3 | #ifdef _WIN32
4 | #pragma once
5 | #endif
6 |
7 | //-----------------------------------------------------------------------------
8 | // Purpose: Interface to running the game engine
9 | //-----------------------------------------------------------------------------
10 | class IRunGameEngine : public IBaseInterface
11 | {
12 | public:
13 | // Returns true if the engine is running, false otherwise.
14 | virtual bool IsRunning() = 0;
15 |
16 | // Adds text to the engine command buffer. Only works if IsRunning()
17 | // returns true on success, false on failure
18 | virtual bool AddTextCommand( const char *text ) = 0;
19 |
20 | // runs the engine with the specified command line parameters. Only works if !IsRunning()
21 | // returns true on success, false on failure
22 | virtual bool RunEngine( const char *gameDir , const char *commandLineParams ) = 0;
23 |
24 | // returns true if the player is currently connected to a game server
25 | virtual bool IsInGame() = 0;
26 |
27 | // gets information about the server the engine is currently connected to
28 | // returns true on success, false on failure
29 | virtual bool GetGameInfo( char *infoBuffer , int bufferSize ) = 0;
30 |
31 | // tells the engine our userID
32 | virtual void SetTrackerUserID( int trackerID , const char *trackerName ) = 0;
33 |
34 | // this next section could probably moved to another interface
35 | // iterates users
36 | // returns the number of user
37 | virtual int GetPlayerCount() = 0;
38 |
39 | // returns a playerID for a player
40 | // playerIndex is in the range [0, GetPlayerCount)
41 | virtual unsigned int GetPlayerFriendsID( int playerIndex ) = 0;
42 |
43 | // gets the in-game name of another user, returns NULL if that user doesn't exists
44 | virtual const char *GetPlayerName( int friendsID ) = 0;
45 |
46 | // gets the friends name of a player
47 | virtual const char *GetPlayerFriendsName( int friendsID ) = 0;
48 |
49 | // returns the engine build number and mod version string for server versioning
50 | virtual unsigned int GetEngineBuildNumber() = 0;
51 | virtual const char *GetProductVersionString() = 0;
52 | virtual unsigned int GetPlayerUserID( int friendsID ) = 0;
53 | };
54 |
55 | extern IRunGameEngine* g_pIRunGameEngine;
56 |
57 | #define RUNGAMEENGINE_INTERFACE_VERSION "RunGameEngine006"
58 | #endif
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/common/event_api.h:
--------------------------------------------------------------------------------
1 | /***
2 | *
3 | * Copyright (c) 1996-2002, Valve LLC. All rights reserved.
4 | *
5 | * This product contains software technology licensed from Id
6 | * Software, Inc. ("Id Technology"). Id Technology (c) 1996 Id Software, Inc.
7 | * All Rights Reserved.
8 | *
9 | * Use, distribution, and modification of this source code and/or resulting
10 | * object code is restricted to non-commercial enhancements to products from
11 | * Valve LLC. All other use, distribution, or modification is prohibited
12 | * without written permission from Valve LLC.
13 | *
14 | ****/
15 | #if !defined ( EVENT_APIH )
16 | #define EVENT_APIH
17 | #ifdef _WIN32
18 | #pragma once
19 | #endif
20 |
21 | #define EVENT_API_VERSION 1
22 |
23 | typedef struct event_api_s
24 | {
25 | int version;
26 | void ( *EV_PlaySound ) ( int ent, float *origin, int channel, const char *sample, float volume, float attenuation, int fFlags, int pitch );
27 | void ( *EV_StopSound ) ( int ent, int channel, const char *sample );
28 | int ( *EV_FindModelIndex )( const char *pmodel );
29 | int ( *EV_IsLocal ) ( int playernum );
30 | int ( *EV_LocalPlayerDucking ) ( void );
31 | void ( *EV_LocalPlayerViewheight ) ( float * );
32 | void ( *EV_LocalPlayerBounds ) ( int hull, float *mins, float *maxs );
33 | int ( *EV_IndexFromTrace) ( struct pmtrace_s *pTrace );
34 | struct physent_s *( *EV_GetPhysent ) ( int idx );
35 | void ( *EV_SetUpPlayerPrediction ) ( int dopred, int bIncludeLocalClient );
36 | void ( *EV_PushPMStates ) ( void );
37 | void ( *EV_PopPMStates ) ( void );
38 | void ( *EV_SetSolidPlayers ) (int playernum);
39 | void ( *EV_SetTraceHull ) ( int hull );
40 | void ( *EV_PlayerTrace ) ( float *start, float *end, int traceFlags, int ignore_pe, struct pmtrace_s *tr );
41 | void ( *EV_WeaponAnimation ) ( int sequence, int body );
42 | unsigned short ( *EV_PrecacheEvent ) ( int type, const char* psz );
43 | void ( *EV_PlaybackEvent ) ( int flags, const struct edict_s *pInvoker, unsigned short eventindex, float delay, float *origin, float *angles, float fparam1, float fparam2, int iparam1, int iparam2, int bparam1, int bparam2 );
44 | const char *( *EV_TraceTexture ) ( int ground, float *vstart, float *vend );
45 | void ( *EV_StopAllSounds ) ( int entnum, int entchannel );
46 | void ( *EV_KillEvents ) ( int entnum, const char *eventname );
47 | } event_api_t;
48 |
49 | extern event_api_t eventapi;
50 |
51 | #endif
52 |
--------------------------------------------------------------------------------
/ev0lution/Hook.cpp:
--------------------------------------------------------------------------------
1 | #include "Required.h"
2 |
3 | pcmd_t CommandByName(char* szName)
4 | {
5 | pcmd_t pCmd = nullptr;
6 | pCmd = g_Engine.pfnGetCmdList();
7 |
8 | while (pCmd)
9 | {
10 | if (!strcmp(pCmd->name, szName))
11 | return pCmd;
12 | pCmd = pCmd->next;
13 | }
14 |
15 | return NULL;
16 | }
17 |
18 | UserMsg UserMsgByName(char* szMsgName)
19 | {
20 | UserMsg Ptr = nullptr;
21 | Ptr = pUserMsgBase;
22 |
23 | while (Ptr->next)
24 | {
25 | if (!strcmp(Ptr->szName, szMsgName))
26 | return Ptr;
27 | Ptr = Ptr->next;
28 | }
29 |
30 | Ptr->pfn = 0;
31 | return Ptr;
32 | }
33 |
34 | pfnUserMsgHook HookUserMsg(char *szMsgName, pfnUserMsgHook pfn)
35 | {
36 | UserMsg Ptr = nullptr;
37 | pfnUserMsgHook Original = nullptr;
38 | Ptr = UserMsgByName(szMsgName);
39 |
40 | if (Ptr->pfn != 0) {
41 | Original = Ptr->pfn;
42 | Ptr->pfn = pfn;
43 | return Original;
44 | }
45 | else
46 | {
47 | g_Offsets.Error(szMsgName);
48 | return NULL;
49 | }
50 | }
51 |
52 | bool VHookTable::HookTable(DWORD dwTablePtrPtr)
53 | {
54 | DWORD dwIndexFunction = 0;
55 |
56 | dwPtrPtrTable = dwTablePtrPtr;
57 | dwPtrOldTable = *(PDWORD)dwPtrPtrTable;
58 |
59 | for (dwIndexFunction = 0; ((PDWORD)*(PDWORD)dwTablePtrPtr)[dwIndexFunction]; dwIndexFunction++)
60 | if (IsBadCodePtr((FARPROC)((PDWORD)*(PDWORD)dwTablePtrPtr)[dwIndexFunction]))
61 | break;
62 |
63 | dwSizeTable = sizeof(DWORD) * dwIndexFunction;
64 |
65 | if (dwIndexFunction && dwSizeTable)
66 | {
67 | dwPtrNewTable = (DWORD)HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, dwSizeTable);
68 | memcpy((PVOID)dwPtrNewTable, (PVOID)*(PDWORD)dwTablePtrPtr, dwSizeTable);
69 |
70 | *(PDWORD)dwTablePtrPtr = dwPtrNewTable;
71 |
72 | return true;
73 | }
74 |
75 | return false;
76 | }
77 |
78 | void VHookTable::HookIndex(DWORD dwIndex, PVOID pAddress)
79 | {
80 | ((PDWORD)dwPtrNewTable)[dwIndex] = (DWORD)pAddress;
81 | }
82 |
83 | DWORD VHookTable::RetHookIndex(DWORD dwIndex, PVOID pAddress)
84 | {
85 | DWORD old = ((PDWORD)dwPtrNewTable)[dwIndex];
86 | ((PDWORD)dwPtrNewTable)[dwIndex] = (DWORD)pAddress;
87 | return old;
88 | }
89 |
90 | void VHookTable::UnHook()
91 | {
92 | if (dwPtrPtrTable)
93 | *(PDWORD)dwPtrPtrTable = dwPtrOldTable;
94 | }
95 |
96 | void VHookTable::ReHook()
97 | {
98 | if (dwPtrPtrTable)
99 | *(PDWORD)dwPtrPtrTable = dwPtrNewTable;
100 | }
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/engine/progs.h:
--------------------------------------------------------------------------------
1 | /***
2 | *
3 | * Copyright (c) 1996-2002, Valve LLC. All rights reserved.
4 | *
5 | * This product contains software technology licensed from Id
6 | * Software, Inc. ("Id Technology"). Id Technology (c) 1996 Id Software, Inc.
7 | * All Rights Reserved.
8 | *
9 | * Use, distribution, and modification of this source code and/or resulting
10 | * object code is restricted to non-commercial enhancements to products from
11 | * Valve LLC. All other use, distribution, or modification is prohibited
12 | * without written permission from Valve LLC.
13 | *
14 | ****/
15 | #ifndef PROGS_H
16 | #define PROGS_H
17 |
18 | #include "progdefs.h"
19 |
20 | // 16 simultaneous events, max
21 | #define MAX_EVENT_QUEUE 64
22 |
23 | #define DEFAULT_EVENT_RESENDS 1
24 |
25 | #include "event_flags.h"
26 |
27 | typedef struct event_info_s event_info_t;
28 |
29 | #include "event_args.h"
30 |
31 | struct event_info_s
32 | {
33 | unsigned short index; // 0 implies not in use
34 |
35 | short packet_index; // Use data from state info for entity in delta_packet . -1 implies separate info based on event
36 | // parameter signature
37 | short entity_index; // The edict this event is associated with
38 |
39 | float fire_time; // if non-zero, the time when the event should be fired ( fixed up on the client )
40 |
41 | event_args_t args;
42 |
43 | // CLIENT ONLY
44 | int flags; // Reliable or not, etc.
45 |
46 | };
47 |
48 | typedef struct event_state_s event_state_t;
49 |
50 | struct event_state_s
51 | {
52 | struct event_info_s ei[ MAX_EVENT_QUEUE ];
53 | };
54 |
55 | #if !defined( ENTITY_STATEH )
56 | #include "entity_state.h"
57 | #endif
58 |
59 | #if !defined( EDICT_H )
60 | #include "edict.h"
61 | #endif
62 |
63 | #define STRUCT_FROM_LINK(l,t,m) ((t *)((byte *)l - (int)&(((t *)0)->m)))
64 | #define EDICT_FROM_AREA(l) STRUCT_FROM_LINK(l,edict_t,area)
65 |
66 | //============================================================================
67 |
68 | extern char *pr_strings;
69 | extern globalvars_t gGlobalVariables;
70 |
71 | //============================================================================
72 |
73 | edict_t *ED_Alloc (void);
74 | void ED_Free (edict_t *ed);
75 | void ED_LoadFromFile (char *data);
76 |
77 | edict_t *EDICT_NUM(int n);
78 | int NUM_FOR_EDICT(const edict_t *e);
79 |
80 | #define PROG_TO_EDICT(e) ((edict_t *)((byte *)sv.edicts + e))
81 |
82 | #endif // PROGS_H
--------------------------------------------------------------------------------
/ev0lution/Reflective/ReflectiveDLLInjection.h:
--------------------------------------------------------------------------------
1 | //===============================================================================================//
2 | // Copyright (c) 2012, Stephen Fewer of Harmony Security (www.harmonysecurity.com)
3 | // All rights reserved.
4 | //
5 | // Redistribution and use in source and binary forms, with or without modification, are permitted
6 | // provided that the following conditions are met:
7 | //
8 | // * Redistributions of source code must retain the above copyright notice, this list of
9 | // conditions and the following disclaimer.
10 | //
11 | // * Redistributions in binary form must reproduce the above copyright notice, this list of
12 | // conditions and the following disclaimer in the documentation and/or other materials provided
13 | // with the distribution.
14 | //
15 | // * Neither the name of Harmony Security nor the names of its contributors may be used to
16 | // endorse or promote products derived from this software without specific prior written permission.
17 | //
18 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
19 | // IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
20 | // FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
21 | // CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
22 | // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
23 | // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
24 | // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
25 | // OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
26 | // POSSIBILITY OF SUCH DAMAGE.
27 | //===============================================================================================//
28 | #ifndef _REFLECTIVEDLLINJECTION_REFLECTIVEDLLINJECTION_H
29 | #define _REFLECTIVEDLLINJECTION_REFLECTIVEDLLINJECTION_H
30 | //===============================================================================================//
31 | #define WIN32_LEAN_AND_MEAN
32 | #include
33 |
34 | // we declare some common stuff in here...
35 |
36 | #define DLL_QUERY_HMODULE 6
37 |
38 | #define DEREF( name )*(UINT_PTR *)(name)
39 | #define DEREF_64( name )*(DWORD64 *)(name)
40 | #define DEREF_32( name )*(DWORD *)(name)
41 | #define DEREF_16( name )*(WORD *)(name)
42 | #define DEREF_8( name )*(BYTE *)(name)
43 |
44 | typedef ULONG_PTR (WINAPI * REFLECTIVELOADER)( VOID );
45 | typedef BOOL (WINAPI * DLLMAIN)( HINSTANCE, DWORD, LPVOID );
46 |
47 | #define DLLEXPORT __declspec( dllexport )
48 |
49 | //===============================================================================================//
50 | #endif
51 | //===============================================================================================//
52 |
--------------------------------------------------------------------------------
/ev0lution/Required.h:
--------------------------------------------------------------------------------
1 | #include
2 | #include
3 | #include
4 | #include
5 | #include
6 | #include "Wininet.h"
7 | #include
8 | #include
9 | #include
10 |
11 | #pragma comment(lib, "wbemuuid.lib")
12 | #pragma comment(lib,"Wininet.lib")
13 |
14 | #define M_PI 3.14159265358979323846
15 | #include "Vector.h"
16 | #include "QAngle.h"
17 | #define vec3_t Vector
18 |
19 | #include "Structures.h"
20 | #include "Offsets.h"
21 | #include "Hook.h"
22 | #include "detours.h"
23 | #include "StudioModelRenderer.h"
24 |
25 | #define VIRTUALIZER_START \
26 | __asm _emit 0xEB \
27 | __asm _emit 0x10 \
28 | __asm _emit 0x43\
29 | __asm _emit 0x56\
30 | __asm _emit 0x20 \
31 | __asm _emit 0x20 \
32 | __asm _emit 0x0C \
33 | __asm _emit 0x00 \
34 | __asm _emit 0x00 \
35 | __asm _emit 0x00 \
36 | __asm _emit 0x00 \
37 | __asm _emit 0x00 \
38 | __asm _emit 0x00 \
39 | __asm _emit 0x00 \
40 | __asm _emit 0x43\
41 | __asm _emit 0x56\
42 | __asm _emit 0x20 \
43 | __asm _emit 0x20 \
44 |
45 | #define VIRTUALIZER_END \
46 | __asm _emit 0xEB \
47 | __asm _emit 0x10 \
48 | __asm _emit 0x43\
49 | __asm _emit 0x56\
50 | __asm _emit 0x20 \
51 | __asm _emit 0x20 \
52 | __asm _emit 0x0D \
53 | __asm _emit 0x00 \
54 | __asm _emit 0x00 \
55 | __asm _emit 0x00 \
56 | __asm _emit 0x00 \
57 | __asm _emit 0x00 \
58 | __asm _emit 0x00 \
59 | __asm _emit 0x00 \
60 | __asm _emit 0x43\
61 | __asm _emit 0x56\
62 | __asm _emit 0x20 \
63 | __asm _emit 0x20 \
64 |
65 | typedef void(*Snapshot_t)();
66 | typedef void(*Screenshot_t)();
67 | typedef void(*PreS_DynamicSound_t)(int, DWORD, char *, float *, float, float, int, int);
68 | typedef void(*CL_Move_t)();
69 |
70 | extern cl_clientfunc_t *g_pClient;
71 | extern cl_clientfunc_t g_Client;
72 | extern cl_enginefunc_t *g_pEngine;
73 | extern cl_enginefunc_t g_Engine;
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 | extern engine_studio_api_t *g_pStudio;
87 | extern engine_studio_api_t g_Studio;
88 | extern playermove_t *pmove;
89 | extern UserMsg pUserMsgBase;
90 | extern VHookTable PanelHook;
91 | extern SCREENINFO g_Screen;
92 | extern Snapshot_t Snapshot_s;
93 | extern Screenshot_t Screenshot_s;
94 | extern CL_Move_t CL_Move_s;
95 | extern PreS_DynamicSound_t PreS_DynamicSound_s;
96 | extern StudioModelRenderer_t g_StudioModelRenderer;
97 | extern StudioModelRenderer_t* g_pStudioModelRenderer;
98 |
99 | void HookClient();
100 | void WINAPI PaintTraversePanel(vgui::IPanel* vguiPanel, bool forceRepaint, bool allowForce);
101 | void AntiScreen();
102 | void HookOpenGL();
103 |
104 | std::string base64_encode(const std::string &in);
105 | std::string base64_decode(const std::string &in);
106 | std::string encryptDecrypt(std::string toEncrypt);
107 | string StringToHex(const string input);
108 |
109 | //string GetUrlData(string url);
110 |
111 | #include "Hack\Hack.h"
112 | #include "Usermsg.h"
--------------------------------------------------------------------------------
/ev0lution/keydefs.h:
--------------------------------------------------------------------------------
1 | // keydefs.h
2 | #ifndef KEYDEFS_H
3 | #define KEYDEFS_H
4 | #ifdef _WIN32
5 | #pragma once
6 | #endif
7 |
8 | //
9 | // these are the key numbers that should be passed to Key_Event
10 | //
11 | #define K_TAB 9
12 | #define K_ENTER 13
13 | #define K_ESCAPE 27
14 | #define K_SPACE 32
15 |
16 | // normal keys should be passed as lowercased ascii
17 |
18 | #define K_BACKSPACE 127
19 | #define K_UPARROW 128
20 | #define K_DOWNARROW 129
21 | #define K_LEFTARROW 130
22 | #define K_RIGHTARROW 131
23 |
24 | #define K_ALT 132
25 | #define K_CTRL 133
26 | #define K_SHIFT 134
27 | #define K_F1 135
28 | #define K_F2 136
29 | #define K_F3 137
30 | #define K_F4 138
31 | #define K_F5 139
32 | #define K_F6 140
33 | #define K_F7 141
34 | #define K_F8 142
35 | #define K_F9 143
36 | #define K_F10 144
37 | #define K_F11 145
38 | #define K_F12 146
39 | #define K_INS 147
40 | #define K_DEL 148
41 | #define K_PGDN 149
42 | #define K_PGUP 150
43 | #define K_HOME 151
44 | #define K_END 152
45 |
46 | #define K_KP_HOME 160
47 | #define K_KP_UPARROW 161
48 | #define K_KP_PGUP 162
49 | #define K_KP_LEFTARROW 163
50 | #define K_KP_5 164
51 | #define K_KP_RIGHTARROW 165
52 | #define K_KP_END 166
53 | #define K_KP_DOWNARROW 167
54 | #define K_KP_PGDN 168
55 | #define K_KP_ENTER 169
56 | #define K_KP_INS 170
57 | #define K_KP_DEL 171
58 | #define K_KP_SLASH 172
59 | #define K_KP_MINUS 173
60 | #define K_KP_PLUS 174
61 | #define K_CAPSLOCK 175
62 |
63 |
64 | //
65 | // joystick buttons
66 | //
67 | #define K_JOY1 203
68 | #define K_JOY2 204
69 | #define K_JOY3 205
70 | #define K_JOY4 206
71 |
72 | //
73 | // aux keys are for multi-buttoned joysticks to generate so they can use
74 | // the normal binding process
75 | //
76 | #define K_AUX1 207
77 | #define K_AUX2 208
78 | #define K_AUX3 209
79 | #define K_AUX4 210
80 | #define K_AUX5 211
81 | #define K_AUX6 212
82 | #define K_AUX7 213
83 | #define K_AUX8 214
84 | #define K_AUX9 215
85 | #define K_AUX10 216
86 | #define K_AUX11 217
87 | #define K_AUX12 218
88 | #define K_AUX13 219
89 | #define K_AUX14 220
90 | #define K_AUX15 221
91 | #define K_AUX16 222
92 | #define K_AUX17 223
93 | #define K_AUX18 224
94 | #define K_AUX19 225
95 | #define K_AUX20 226
96 | #define K_AUX21 227
97 | #define K_AUX22 228
98 | #define K_AUX23 229
99 | #define K_AUX24 230
100 | #define K_AUX25 231
101 | #define K_AUX26 232
102 | #define K_AUX27 233
103 | #define K_AUX28 234
104 | #define K_AUX29 235
105 | #define K_AUX30 236
106 | #define K_AUX31 237
107 | #define K_AUX32 238
108 | #define K_MWHEELDOWN 239
109 | #define K_MWHEELUP 240
110 |
111 | #define K_PAUSE 255
112 |
113 | //
114 | // mouse buttons generate virtual keys
115 | //
116 | #define K_MOUSE1 241
117 | #define K_MOUSE2 242
118 | #define K_MOUSE3 243
119 | #define K_MOUSE4 244
120 | #define K_MOUSE5 245
121 |
122 | #endif // KEYDEFS_H
123 | #pragma once
124 |
--------------------------------------------------------------------------------
/ev0lution/Hack/World/World.h:
--------------------------------------------------------------------------------
1 | class CWorld;
2 |
3 |
4 |
5 |
6 | class CWorld {
7 | public:
8 | void Reset();
9 | void UpdateVisibility(int id);
10 | void ClearLocalPlayer();
11 | void ClearPlayers();
12 | void ClearEntities();
13 | void ClearMapInfo();
14 | void Update(float frametime, struct usercmd_s *cmd);
15 | void UpdateLocalPlayer(float frametime, struct usercmd_s *cmd);
16 | void UpdatePlayers();
17 | void UpdateEntities();
18 | void GetHitboxes(struct cl_entity_s *ent);
19 | void UpdateMapInfo();
20 | };
21 | extern CWorld World;
22 |
23 | struct vars_info
24 | {
25 | DWORD SpeedPtr;
26 | DWORD dwSpeedptr;
27 |
28 | bool bWay;
29 | bool bStr;
30 | bool bTp;
31 | bool bKbGoto;
32 | bool bJb;
33 | bool bGs;
34 | };
35 |
36 | class CBaseLocal
37 | {
38 | public:
39 | int iIndex;
40 | int iTeam;
41 | int iHealth;
42 | int iArmor;
43 | int iFOV;
44 | int iMaxHitboxes;
45 |
46 | float flFrametime;
47 | float flFPS;
48 | float flVelocity;
49 | float flHeightGround;
50 | float flGroundAngle;
51 | float flHeight;
52 | float flHeightPlane;
53 |
54 | bool bAlive;
55 | bool bScoped;
56 |
57 | Vector vViewAngles;
58 | Vector vOrigin;
59 | Vector vEye;
60 | Vector vForward;
61 | Vector vRight;
62 | Vector vUp;
63 | Vector vPunchangle;
64 | Vector vNoSpreadAngle;
65 | Vector vNoRecoilAngle;
66 | CBomb Bomb;
67 | vec3_t vVelocity;
68 | float flFrameTime;
69 | int usehull;
70 | float flXYSpeed;
71 | float flMaxSpeed;
72 | int iOldButtons;
73 | bool bOnGround;
74 | bool bPlayerjb;
75 | float fAngleSpeed;
76 | bool bFps;
77 | bool bOnSurf;
78 | float Height;
79 | float flXYspeed;
80 | //float flMaxSpeed;
81 | //jumpbug
82 | int iUseHull;
83 | float fFallSpeed;
84 | int iFlags;
85 |
86 |
87 | vars_info Vars;
88 | CBasePlayerWeapon weapon;
89 |
90 | net_status_s status;
91 | };
92 | extern CBaseLocal g_Local;
93 |
94 | extern hud_player_info_t g_PlayerInfoList[MAX_CLIENTS + 1];
95 | extern player_extra_info_t g_PlayerExtraInfoList[MAX_CLIENTS + 1];
96 |
97 | class CBasePlayer
98 | {
99 | public:
100 | int iTeam;
101 | int iHealth;
102 | int iArmorType;
103 | int iShotsFired;
104 |
105 | bool bUpdated;
106 | bool bAlive;
107 | bool bAliveInScoreTab;
108 | bool bDucked;
109 | bool bVisible;
110 | bool bFriend;
111 | bool bPriority;
112 | bool bBehindTheWall;
113 |
114 | float flFrametime;
115 | float flDist;
116 |
117 | Vector vAngles;
118 | Vector vVelocity;
119 | Vector vOrigin;
120 | Vector vPrevOrigin;
121 |
122 | DWORD dwHistory;
123 | };
124 | extern CBasePlayer g_Player[MAX_CLIENTS + 1];
125 |
126 |
127 |
128 |
129 |
130 |
131 |
132 | class CBaseEntity
133 | {
134 | public:
135 | char *szModelName;
136 |
137 | unsigned int iIndex;
138 | unsigned int iResolvedIndex;
139 |
140 | bool bUpdated;
141 | bool bIsFakeEntity;
142 | bool bIsWeapon;
143 |
144 | Vector vOrigin;
145 | };
146 | extern CBaseEntity g_Entities[256];
147 |
148 | extern info_map_parameters g_MapInfo;
--------------------------------------------------------------------------------
/ev0lution/Vector.cpp:
--------------------------------------------------------------------------------
1 | #include "Required.h"
2 |
3 | void Vector::AngleMatrix ( QAngle& Rotation, float ( *matrix )[3] )
4 | {
5 | float sp, sy, sr, cp, cy, cr, radx, rady, radz;
6 |
7 | radx = Rotation.x * ( M_PI*2 / 360 );
8 | rady = Rotation.y * ( M_PI*2 / 360 );
9 | radz = Rotation.z * ( M_PI*2 / 360 );
10 |
11 | sp = sin ( radx );
12 | sy = sin ( rady );
13 | sr = sin ( radz );
14 |
15 | cp = cos ( radx );
16 | cy = cos ( rady );
17 | cr = cos ( radz );
18 |
19 | matrix[0][0] = cp * cy;
20 | matrix[0][1] = cp * sy;
21 | matrix[0][2] = -sp;
22 |
23 | matrix[1][0] = 1 * sr * sp * cy + 1 * cr * -sy;
24 | matrix[1][1] = 1 * sr * sp * sy + 1 * cr * cy;
25 | matrix[1][2] = 1 * sr * cp;
26 |
27 | matrix[2][0] = cr * sp * cy + -sr * -sy;
28 | matrix[2][1] = cr * sp * sy + -sr * cy;
29 | matrix[2][2] = cr * cp;
30 | }
31 |
32 | void Vector::VectorRotate ( Vector& In, QAngle& Rotation )
33 | {
34 | float matRotate[3][3];
35 |
36 | AngleMatrix ( Rotation, matRotate );
37 |
38 | x = In.Dot( matRotate[0] );
39 | y = In.Dot( matRotate[1] );
40 | z = In.Dot( matRotate[2] );
41 | }
42 |
43 | QAngle Vector::ToEulerAngles()
44 | {
45 | float Pitch, Yaw, Length;
46 |
47 | Length = Length2D();
48 |
49 | if ( Length > 0 )
50 | {
51 | Pitch = ( atan2 ( -z, Length ) * 180 / M_PI );
52 |
53 | if ( Pitch < 0 )
54 | {
55 | Pitch += 360;
56 | }
57 |
58 | Yaw = ( atan2 ( y, x ) * 180 / M_PI );
59 |
60 | if ( Yaw < 0 )
61 | {
62 | Yaw += 360;
63 | }
64 | }
65 | else
66 | {
67 | Pitch = ( z > 0.0f ) ? 270 : 90;
68 | Yaw = 0;
69 | }
70 |
71 | return QAngle ( Pitch, Yaw, 0 );
72 | }
73 |
74 | QAngle Vector::ToEulerAngles ( Vector* PseudoUp )
75 | {
76 | Vector Left;
77 |
78 | float Length, Yaw, Pitch, Roll;
79 |
80 | Left.CrossProduct ( *PseudoUp, *this );
81 |
82 | Left.Normalize();
83 |
84 | Length = Length2D();
85 |
86 | if ( PseudoUp )
87 | {
88 | if ( Length > 0.001 )
89 | {
90 | Pitch = ( atan2 ( -z, Length ) * 180 / M_PI );
91 |
92 | if ( Pitch < 0 )
93 | {
94 | Pitch += 360;
95 | }
96 |
97 | Yaw = ( atan2 ( y, x ) * 180 / M_PI );
98 |
99 | if ( Yaw < 0 )
100 | {
101 | Yaw += 360;
102 | }
103 |
104 | float up_z = ( Left[1] * x ) - ( Left[0] * y );
105 |
106 | Roll = ( atan2 ( Left[2], up_z ) * 180 / M_PI );
107 |
108 | if ( Roll < 0 )
109 | {
110 | Roll += 360;
111 | }
112 | }
113 | else
114 | {
115 | Yaw = ( atan2 ( y, x ) * 180 / M_PI );
116 |
117 | if ( Yaw < 0 )
118 | {
119 | Yaw += 360;
120 | }
121 |
122 | Pitch = ( atan2 ( -z, Length ) * 180 / M_PI);
123 |
124 | if ( Pitch < 0 )
125 | {
126 | Pitch += 360;
127 | }
128 |
129 | Roll = 0;
130 | }
131 | }
132 | else
133 | {
134 | if ( Length > 0 )
135 | {
136 | Pitch = ( atan2 ( -z, Length ) * 180 / M_PI );
137 |
138 | if ( Pitch < 0 )
139 | {
140 | Pitch += 360;
141 | }
142 |
143 | Yaw = ( atan2 ( y, x ) * 180 / M_PI );
144 |
145 | if ( Yaw < 0 )
146 | {
147 | Yaw += 360;
148 | }
149 | }
150 | else
151 | {
152 | Pitch = ( z > 0.0f ) ? 270 : 90;
153 | Yaw = 0;
154 | }
155 | }
156 |
157 | return QAngle ( Pitch, Yaw, Roll );
158 | }
--------------------------------------------------------------------------------
/ev0lution/Hack/World/Weapons/Weapons.h:
--------------------------------------------------------------------------------
1 | enum ClipSizeType
2 | {
3 | P228_MAX_CLIP = 13,
4 | GLOCK18_MAX_CLIP = 20,
5 | SCOUT_MAX_CLIP = 10,
6 | XM1014_MAX_CLIP = 7,
7 | MAC10_MAX_CLIP = 30,
8 | AUG_MAX_CLIP = 30,
9 | ELITE_MAX_CLIP = 30,
10 | FIVESEVEN_MAX_CLIP = 20,
11 | UMP45_MAX_CLIP = 25,
12 | SG550_MAX_CLIP = 30,
13 | GALIL_MAX_CLIP = 35,
14 | FAMAS_MAX_CLIP = 25,
15 | USP_MAX_CLIP = 12,
16 | AWP_MAX_CLIP = 10,
17 | MP5N_MAX_CLIP = 30,
18 | M249_MAX_CLIP = 100,
19 | M3_MAX_CLIP = 8,
20 | M4A1_MAX_CLIP = 30,
21 | TMP_MAX_CLIP = 30,
22 | G3SG1_MAX_CLIP = 20,
23 | DEAGLE_MAX_CLIP = 7,
24 | SG552_MAX_CLIP = 30,
25 | AK47_MAX_CLIP = 30,
26 | P90_MAX_CLIP = 50,
27 | };
28 |
29 | enum WeaponIdType
30 | {
31 | WEAPON_NONE,
32 | WEAPON_P228,
33 | WEAPON_GLOCK,
34 | WEAPON_SCOUT,
35 | WEAPON_HEGRENADE,
36 | WEAPON_XM1014,
37 | WEAPON_C4,
38 | WEAPON_MAC10,
39 | WEAPON_AUG,
40 | WEAPON_SMOKEGRENADE,
41 | WEAPON_ELITE,
42 | WEAPON_FIVESEVEN,
43 | WEAPON_UMP45,
44 | WEAPON_SG550,
45 | WEAPON_GALIL,
46 | WEAPON_FAMAS,
47 | WEAPON_USP,
48 | WEAPON_GLOCK18,
49 | WEAPON_AWP,
50 | WEAPON_MP5N,
51 | WEAPON_M249,
52 | WEAPON_M3,
53 | WEAPON_M4A1,
54 | WEAPON_TMP,
55 | WEAPON_G3SG1,
56 | WEAPON_FLASHBANG,
57 | WEAPON_DEAGLE,
58 | WEAPON_SG552,
59 | WEAPON_AK47,
60 | WEAPON_KNIFE,
61 | WEAPON_P90,
62 | WEAPON_SHIELDGUN = 99
63 | };
64 |
65 | enum WeaponState
66 | {
67 | WPNSTATE_USP_SILENCED = (1 << 0),
68 | WPNSTATE_GLOCK18_BURST_MODE = (1 << 1),
69 | WPNSTATE_M4A1_SILENCED = (1 << 2),
70 | WPNSTATE_ELITE_LEFT = (1 << 3),
71 | WPNSTATE_FAMAS_BURST_MODE = (1 << 4),
72 | WPNSTATE_SHIELD_DRAWN = (1 << 5),
73 | };
74 |
75 | enum WeaponClassType
76 | {
77 | WEAPONCLASS_NONE,
78 | WEAPONCLASS_KNIFE,
79 | WEAPONCLASS_PISTOL,
80 | WEAPONCLASS_GRENADE,
81 | WEAPONCLASS_SUBMACHINEGUN,
82 | WEAPONCLASS_SHOTGUN,
83 | WEAPONCLASS_MACHINEGUN,
84 | WEAPONCLASS_RIFLE,
85 | WEAPONCLASS_SNIPERRIFLE,
86 | };
87 |
88 | enum Bullet
89 | {
90 | BULLET_NONE,
91 | BULLET_PLAYER_9MM,
92 | BULLET_PLAYER_MP5,
93 | BULLET_PLAYER_357,
94 | BULLET_PLAYER_BUCKSHOT,
95 | BULLET_PLAYER_CROWBAR,
96 | BULLET_MONSTER_9MM,
97 | BULLET_MONSTER_MP5,
98 | BULLET_MONSTER_12MM,
99 | BULLET_PLAYER_45ACP,
100 | BULLET_PLAYER_338MAG,
101 | BULLET_PLAYER_762MM,
102 | BULLET_PLAYER_556MM,
103 | BULLET_PLAYER_50AE,
104 | BULLET_PLAYER_57MM,
105 | BULLET_PLAYER_357SIG,
106 | };
107 |
108 | enum Penerations
109 | {
110 | WALL_PEN0,
111 | WALL_PEN1,
112 | WALL_PEN2,
113 | };
114 |
115 | void ItemPreFrame(struct local_state_s *from, struct local_state_s *to, struct usercmd_s *cmd, int runfuncs, double time, unsigned int random_seed);
116 | void UpdateWeaponData();
117 | void ItemPostFrame(struct usercmd_s *cmd);
118 | void ResetAccuracy();
119 | void Simulate(float &m_flAccuracy, float &m_flSpread);
120 |
121 | bool CanAttack(void);
122 |
123 | bool IsCurWeaponSilenced(void);
124 | bool IsCurWeaponInBurst(void);
125 | bool IsLeftElite(void);
126 |
127 | bool IsCurWeaponGun(void); // Returns true if the current weapon is either a primary or secondary weapon
128 | bool IsCurWeaponKnife(void); // Returns true if the current weapon is a knife
129 | bool IsCurWeaponNonAttack(void); // Returns true if the current weapon is not a gun or a knife
130 | bool IsCurWeaponNade(void);
131 | bool IsCurWeaponC4(void);
132 | bool IsCurWeaponSniper(void);
133 | bool IsCurWeaponPistol(void);
134 | bool IsCurWeaponRifle(void);
135 | bool IsCurWeaponShotGun(void);
136 | bool IsCurWeaponMachineGun(void);
137 | bool IsCurWeaponSubMachineGun(void);
138 |
139 | int CurWeaponClassType();
140 | int CurPenetration(void);
141 | int CurBulletType(void);
142 | int CurDamage(void);
143 | float CurWallPierce(void);
144 | float CurDistance(void);
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/common/cl_entity.h:
--------------------------------------------------------------------------------
1 | /***
2 | *
3 | * Copyright (c) 1996-2002, Valve LLC. All rights reserved.
4 | *
5 | * This product contains software technology licensed from Id
6 | * Software, Inc. ("Id Technology"). Id Technology (c) 1996 Id Software, Inc.
7 | * All Rights Reserved.
8 | *
9 | * Use, distribution, and modification of this source code and/or resulting
10 | * object code is restricted to non-commercial enhancements to products from
11 | * Valve LLC. All other use, distribution, or modification is prohibited
12 | * without written permission from Valve LLC.
13 | *
14 | ****/
15 | // cl_entity.h
16 | #if !defined( CL_ENTITYH )
17 | #define CL_ENTITYH
18 | #ifdef _WIN32
19 | #pragma once
20 | #endif
21 |
22 | typedef struct efrag_s
23 | {
24 | struct mleaf_s *leaf;
25 | struct efrag_s *leafnext;
26 | struct cl_entity_s *entity;
27 | struct efrag_s *entnext;
28 | } efrag_t;
29 |
30 | typedef struct
31 | {
32 | byte mouthopen; // 0 = mouth closed, 255 = mouth agape
33 | byte sndcount; // counter for running average
34 | int sndavg; // running average
35 | } mouth_t;
36 |
37 | typedef struct
38 | {
39 | float prevanimtime;
40 | float sequencetime;
41 | byte prevseqblending[2];
42 | vec3_t prevorigin;
43 | vec3_t prevangles;
44 |
45 | int prevsequence;
46 | float prevframe;
47 |
48 | byte prevcontroller[4];
49 | byte prevblending[2];
50 | } latchedvars_t;
51 |
52 | typedef struct
53 | {
54 | // Time stamp for this movement
55 | float animtime;
56 |
57 | vec3_t origin;
58 | vec3_t angles;
59 | } position_history_t;
60 |
61 | typedef struct cl_entity_s cl_entity_t;
62 |
63 | #define HISTORY_MAX 64 // Must be power of 2
64 | #define HISTORY_MASK ( HISTORY_MAX - 1 )
65 |
66 |
67 | #if !defined( ENTITY_STATEH )
68 | #include "entity_state.h"
69 | #endif
70 |
71 | #if !defined( PROGS_H )
72 | #include "../engine/progs.h"
73 | #endif
74 |
75 | struct cl_entity_s
76 | {
77 | int index; // Index into cl_entities ( should match actual slot, but not necessarily )
78 |
79 | qboolean player; // True if this entity is a "player"
80 |
81 | entity_state_t baseline; // The original state from which to delta during an uncompressed message
82 | entity_state_t prevstate; // The state information from the penultimate message received from the server
83 | entity_state_t curstate; // The state information from the last message received from server
84 |
85 | int current_position; // Last received history update index
86 | position_history_t ph[ HISTORY_MAX ]; // History of position and angle updates for this player
87 |
88 | mouth_t mouth; // For synchronizing mouth movements.
89 |
90 | latchedvars_t latched; // Variables used by studio model rendering routines
91 |
92 | // Information based on interplocation, extrapolation, prediction, or just copied from last msg received.
93 | //
94 | float lastmove;
95 |
96 | // Actual render position and angles
97 | vec3_t origin;
98 | vec3_t angles;
99 |
100 | // Attachment points
101 | vec3_t attachment[4];
102 |
103 | // Other entity local information
104 | int trivial_accept;
105 |
106 | struct model_s *model; // cl.model_precache[ curstate.modelindes ]; all visible entities have a model
107 | struct efrag_s *efrag; // linked list of efrags
108 | struct mnode_s *topnode; // for bmodels, first world node that splits bmodel, or NULL if not split
109 |
110 | float syncbase; // for client-side animations -- used by obsolete alias animation system, remove?
111 | int visframe; // last frame this entity was found in an active leaf
112 | colorVec cvFloorColor;
113 | };
114 |
115 | #endif // !CL_ENTITYH
116 |
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/engine/custom.h:
--------------------------------------------------------------------------------
1 | /***
2 | *
3 | * Copyright (c) 1996-2002, Valve LLC. All rights reserved.
4 | *
5 | * This product contains software technology licensed from Id
6 | * Software, Inc. ("Id Technology"). Id Technology (c) 1996 Id Software, Inc.
7 | * All Rights Reserved.
8 | *
9 | * Use, distribution, and modification of this source code and/or resulting
10 | * object code is restricted to non-commercial enhancements to products from
11 | * Valve LLC. All other use, distribution, or modification is prohibited
12 | * without written permission from Valve LLC.
13 | *
14 | ****/
15 | // Customization.h
16 |
17 | #ifndef CUSTOM_H
18 | #define CUSTOM_H
19 | #ifdef _WIN32
20 | #pragma once
21 | #endif
22 |
23 | #include "const.h"
24 |
25 | #define MAX_QPATH 64 // Must match value in quakedefs.h
26 |
27 | /////////////////
28 | // Customization
29 | // passed to pfnPlayerCustomization
30 | // For automatic downloading.
31 | typedef enum
32 | {
33 | t_sound = 0,
34 | t_skin,
35 | t_model,
36 | t_decal,
37 | t_generic,
38 | t_eventscript,
39 | t_world, // Fake type for world, is really t_model
40 | } resourcetype_t;
41 |
42 |
43 | typedef struct
44 | {
45 | int size;
46 | } _resourceinfo_t;
47 |
48 | typedef struct resourceinfo_s
49 | {
50 | _resourceinfo_t info[ 8 ];
51 | } resourceinfo_t;
52 |
53 | #define RES_FATALIFMISSING (1<<0) // Disconnect if we can't get this file.
54 | #define RES_WASMISSING (1<<1) // Do we have the file locally, did we get it ok?
55 | #define RES_CUSTOM (1<<2) // Is this resource one that corresponds to another player's customization
56 | // or is it a server startup resource.
57 | #define RES_REQUESTED (1<<3) // Already requested a download of this one
58 | #define RES_PRECACHED (1<<4) // Already precached
59 |
60 | #include "crc.h"
61 |
62 | typedef struct resource_s
63 | {
64 | char szFileName[MAX_QPATH]; // File name to download/precache.
65 | resourcetype_t type; // t_sound, t_skin, t_model, t_decal.
66 | int nIndex; // For t_decals
67 | int nDownloadSize; // Size in Bytes if this must be downloaded.
68 | unsigned char ucFlags;
69 |
70 | // For handling client to client resource propagation
71 | unsigned char rgucMD5_hash[16]; // To determine if we already have it.
72 | unsigned char playernum; // Which player index this resource is associated with, if it's a custom resource.
73 |
74 | unsigned char rguc_reserved[ 32 ]; // For future expansion
75 | struct resource_s *pNext; // Next in chain.
76 | struct resource_s *pPrev;
77 | } resource_t;
78 |
79 | typedef struct customization_s
80 | {
81 | qboolean bInUse; // Is this customization in use;
82 | resource_t resource; // The resource_t for this customization
83 | qboolean bTranslated; // Has the raw data been translated into a useable format?
84 | // (e.g., raw decal .wad make into texture_t *)
85 | int nUserData1; // Customization specific data
86 | int nUserData2; // Customization specific data
87 | void *pInfo; // Buffer that holds the data structure that references the data (e.g., the cachewad_t)
88 | void *pBuffer; // Buffer that holds the data for the customization (the raw .wad data)
89 | struct customization_s *pNext; // Next in chain
90 | } customization_t;
91 |
92 | #define FCUST_FROMHPAK ( 1<<0 )
93 | #define FCUST_WIPEDATA ( 1<<1 )
94 | #define FCUST_IGNOREINIT ( 1<<2 )
95 |
96 | void COM_ClearCustomizationList( struct customization_s *pHead, qboolean bCleanDecals);
97 | qboolean COM_CreateCustomization( struct customization_s *pListHead, struct resource_s *pResource, int playernumber, int flags,
98 | struct customization_s **pCustomization, int *nLumps );
99 | int COM_SizeofResourceList ( struct resource_s *pList, struct resourceinfo_s *ri );
100 |
101 | #endif // CUSTOM_H
102 |
--------------------------------------------------------------------------------
/ev0lution/Usermsg.cpp:
--------------------------------------------------------------------------------
1 | #include "Required.h"
2 |
3 | pfnUserMsgHook pResetHUD;
4 | pfnUserMsgHook pBombDrop;
5 | pfnUserMsgHook pBattery;
6 | pfnUserMsgHook pHealth;
7 | pfnUserMsgHook pDeathMsg;
8 | pfnUserMsgHook pSetFOV;
9 | pfnUserMsgHook pTeamInfo;
10 | pfnUserMsgHook pScoreAttrib;
11 |
12 | int ScoreAttrib(const char *pszName, int iSize, void *pbuf)
13 | {
14 | BEGIN_READ(pbuf, iSize);
15 |
16 | byte PlayerID = READ_BYTE();
17 | byte Flags = READ_BYTE();
18 |
19 | g_Player[PlayerID].bAliveInScoreTab = !(Flags & (1 << 0));
20 |
21 | return pScoreAttrib(pszName, iSize, pbuf);
22 | }
23 |
24 | int TeamInfo(const char *pszName, int iSize, void *pbuf)
25 | {
26 | BEGIN_READ(pbuf, iSize);
27 |
28 | int iIndex = READ_BYTE();
29 | char *szTeam = READ_STRING();
30 |
31 | int iLocalIndex = 0;
32 | cl_entity_s *pLocal = g_Engine.GetLocalPlayer();
33 | if (pLocal) iLocalIndex = pLocal->index;
34 |
35 | if (iIndex > 0 && iIndex <= g_Engine.GetMaxClients())
36 | {
37 | if (!lstrcmpA(szTeam, "TERRORIST"))
38 | {
39 | if (iIndex == iLocalIndex)
40 | g_Local.iTeam = TERRORIST;
41 | else
42 | g_Player[iIndex].iTeam = TERRORIST;
43 | }
44 | else if (!lstrcmpA(szTeam, "CT"))
45 | {
46 | if (iIndex == iLocalIndex)
47 | g_Local.iTeam = CT;
48 | else
49 | g_Player[iIndex].iTeam = CT;
50 | }
51 | else
52 | {
53 | if (iIndex == iLocalIndex)
54 | g_Local.iTeam = UNASSIGNED;
55 | else
56 | g_Player[iIndex].iTeam = UNASSIGNED;
57 | }
58 | }
59 |
60 | return pTeamInfo(pszName, iSize, pbuf);
61 | }
62 |
63 | int SetFOV(const char *pszName, int iSize, void *pbuf)
64 | {
65 | BEGIN_READ(pbuf, iSize);
66 | int iFOV = READ_BYTE();
67 | g_Local.iFOV = iFOV;
68 | if (iFOV == CUSTOM_FOV)
69 | {
70 | g_Local.bScoped = false;
71 | }
72 | else if (iFOV > 0)
73 | {
74 | g_Local.bScoped = true;
75 | }
76 | if (cvar.remove_scope && g_Local.bScoped)
77 | {
78 | iFOV = CUSTOM_FOV;
79 |
80 | return (*pSetFOV)(pszName, iSize, &iFOV);
81 | }
82 | if (cvar.custom_fov > 0 && !g_Local.bScoped)
83 | {
84 | iFOV = cvar.custom_fov;
85 | return (*pSetFOV)(pszName, iSize, &iFOV);
86 | }
87 | else
88 | {
89 | iFOV = DEFAULT_FOV;
90 |
91 | return (*pSetFOV)(pszName, iSize, &iFOV);
92 | }
93 | return (*pSetFOV)(pszName, iSize, pbuf);
94 | }
95 |
96 | int BombDrop(const char *pszName, int iSize, void *pbuf)
97 | {
98 | BEGIN_READ(pbuf, iSize);
99 |
100 | g_Local.Bomb.vOrigin[0] = READ_COORD();
101 | g_Local.Bomb.vOrigin[1] = READ_COORD();
102 | g_Local.Bomb.vOrigin[2] = READ_COORD();
103 |
104 | g_Local.Bomb.iFlag = READ_BYTE();
105 |
106 | return pBombDrop(pszName, iSize, pbuf);
107 | }
108 |
109 | int ResetHUD(const char *pszName, int iSize, void *pbuf)
110 | {
111 | g_Local.Bomb.iFlag = BOMB_FLAG_DROPPED;
112 |
113 | for (int i = 1; i <= g_Engine.GetMaxClients(); i++)
114 | {
115 | if (i == g_Local.iIndex)
116 | continue;
117 |
118 | g_Player[i].iArmorType = ARMOR_NONE;
119 | g_Player[i].iHealth = 100;
120 | g_Player[i].iShotsFired = 0;
121 | }
122 |
123 | return pResetHUD(pszName, iSize, pbuf);
124 | }
125 |
126 | int Battery(const char *pszName, int iSize, void *pbuf)
127 | {
128 | BEGIN_READ(pbuf, iSize);
129 |
130 | g_Local.iArmor = READ_BYTE();
131 |
132 | return pBattery(pszName, iSize, pbuf);
133 | }
134 |
135 | int Health(const char *pszName, int iSize, void *pbuf)
136 | {
137 | BEGIN_READ(pbuf, iSize);
138 |
139 | g_Local.iHealth = READ_BYTE();
140 |
141 | return pHealth(pszName, iSize, pbuf);
142 | }
143 |
144 | int DeathMsg(const char *pszName, int iSize, void *pbuf)
145 | {
146 | BEGIN_READ(pbuf, iSize);
147 |
148 | int KillerID = READ_BYTE();
149 | int VictimID = READ_BYTE();
150 | int IsHeadshot = READ_BYTE();
151 | char *TruncatedWeaponName = READ_STRING();
152 |
153 | if (KillerID != VictimID && KillerID == g_Local.iIndex && VictimID > 0 && VictimID <= g_Engine.GetMaxClients())
154 | g_AimBot.dwReactionTime = GetTickCount();
155 |
156 | if (VictimID != g_Local.iIndex)
157 | {
158 | g_Player[VictimID].iHealth = 100;
159 | g_Player[VictimID].iArmorType = ARMOR_NONE;
160 | g_Player[VictimID].iShotsFired = 0;
161 | }
162 |
163 | return pDeathMsg(pszName, iSize, pbuf);
164 | }
--------------------------------------------------------------------------------
/ev0lution/Hack/World/Textures/Textures.cpp:
--------------------------------------------------------------------------------
1 | #include "../../../Required.h"
2 |
3 | static int gcTextures = 0;
4 | static char grgszTextureName[CTEXTURESMAX][CBTEXTURENAMEMAX];
5 | static char grgchTextureType[CTEXTURESMAX];
6 |
7 | char PM_FindTextureType(char *name)
8 | {
9 | int left, right, pivot;
10 | int val;
11 |
12 | left = 0;
13 | right = gcTextures - 1;
14 |
15 | while (left <= right)
16 | {
17 | pivot = (left + right) / 2;
18 |
19 | val = _strnicmp(name, grgszTextureName[pivot], CBTEXTURENAMEMAX - 1);
20 | if (val == 0)
21 | {
22 | return grgchTextureType[pivot];
23 | }
24 | else if (val > 0)
25 | {
26 | left = pivot + 1;
27 | }
28 | else if (val < 0)
29 | {
30 | right = pivot - 1;
31 | }
32 | }
33 |
34 | return CHAR_TEX_CONCRETE;
35 | }
36 |
37 | char GetTextureType(pmtrace_t *tr, float *vecSrc, float *vecEnd)
38 | {
39 | char chTextureType;
40 | const char *pTextureName;
41 | char szbuffer[64];
42 | int pEntity = g_Engine.pEventAPI->EV_IndexFromTrace(tr);
43 |
44 | if (pEntity > 0 && pEntity <= g_Engine.GetMaxClients())
45 | return CHAR_TEX_FLESH;
46 |
47 | if (pEntity == 0) {
48 | pTextureName = (char *)g_Engine.pEventAPI->EV_TraceTexture(tr->ent, vecSrc, vecEnd);
49 |
50 | if (pTextureName)
51 | {
52 | if (*pTextureName == '-' || *pTextureName == '+')
53 | pTextureName += 2;
54 |
55 | if (*pTextureName == '{' || *pTextureName == '!' || *pTextureName == '~' || *pTextureName == ' ')
56 | pTextureName++;
57 |
58 | strcpy(szbuffer, pTextureName);
59 | szbuffer[16] = '\0';
60 | chTextureType = PM_FindTextureType(szbuffer);
61 | }
62 | else
63 | chTextureType = '\0';
64 | }
65 | else
66 | chTextureType = '\0';
67 |
68 | return chTextureType;
69 | }
70 |
71 | void PM_SwapTextures(int i, int j)
72 | {
73 | char chTemp;
74 | char szTemp[CBTEXTURENAMEMAX];
75 |
76 | strcpy(szTemp, grgszTextureName[i]);
77 | chTemp = grgchTextureType[i];
78 |
79 | strcpy(grgszTextureName[i], grgszTextureName[j]);
80 | grgchTextureType[i] = grgchTextureType[j];
81 |
82 | strcpy(grgszTextureName[j], szTemp);
83 | grgchTextureType[j] = chTemp;
84 | }
85 |
86 | void PM_SortTextures(void)
87 | {
88 | // Bubble sort, yuck, but this only occurs at startup and it's only 512 elements...
89 | int i, j;
90 |
91 | for (i = 0; i < gcTextures; i++)
92 | {
93 | for (j = i + 1; j < gcTextures; j++)
94 | {
95 | if (_stricmp(grgszTextureName[i], grgszTextureName[j]) > 0)
96 | {
97 | // Swap
98 | PM_SwapTextures(i, j);
99 | }
100 | }
101 | }
102 | }
103 |
104 | void PM_InitTextureTypes(struct playermove_s *ppmove)
105 | {
106 | char buffer[512];
107 | int i, j;
108 | byte *pMemFile;
109 | int fileSize, filePos = 0;
110 | static bool bTextureTypeInit = false;
111 |
112 | if (bTextureTypeInit)
113 | return;
114 |
115 | memset(&(grgszTextureName[0][0]), 0, sizeof(grgszTextureName));
116 | memset(grgchTextureType, 0, sizeof(grgchTextureType));
117 |
118 | gcTextures = 0;
119 | memset(buffer, 0, sizeof(buffer));
120 |
121 | pMemFile = ppmove->COM_LoadFile("sound/materials.txt", 5, &fileSize);
122 | if (!pMemFile)
123 | return;
124 |
125 | // for each line in the file...
126 | while (ppmove->memfgets(pMemFile, fileSize, &filePos, buffer, sizeof(buffer) - 1) && (gcTextures < CTEXTURESMAX))
127 | {
128 | // skip whitespace
129 | i = 0;
130 | while (buffer[i] && isspace(buffer[i]))
131 | ++i;
132 |
133 | if (!buffer[i])
134 | continue;
135 |
136 | // skip comment lines
137 | if (buffer[i] == '/' || !isalpha(buffer[i]))
138 | continue;
139 |
140 | // get texture type
141 | grgchTextureType[gcTextures] = toupper(buffer[i++]);
142 |
143 | // skip whitespace
144 | while (buffer[i] && isspace(buffer[i]))
145 | ++i;
146 |
147 | if (!buffer[i])
148 | continue;
149 |
150 | // get sentence name
151 | j = i;
152 | while (buffer[j] && !isspace(buffer[j]))
153 | j++;
154 |
155 | if (!buffer[j])
156 | continue;
157 |
158 | // null-terminate name and save in sentences array
159 | j = min(j, CBTEXTURENAMEMAX - 1 + i);
160 | buffer[j] = '\0';
161 |
162 | strcpy(&(grgszTextureName[gcTextures++][0]), &(buffer[i]));
163 | }
164 |
165 | // Must use engine to free since we are in a .dll
166 | ppmove->COM_FreeFile(pMemFile);
167 |
168 | PM_SortTextures();
169 | bTextureTypeInit = true;
170 | }
--------------------------------------------------------------------------------
/ev0lution/OpenGL.cpp:
--------------------------------------------------------------------------------
1 | #include "Required.h"
2 |
3 | typedef void (APIENTRY *glBegin_t)(GLenum);
4 | typedef void (APIENTRY *glVertex3fv_t)(const GLfloat *v);
5 | typedef void (APIENTRY *glColor4f_t)(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
6 | typedef BOOL (APIENTRY *wglSwapBuffers_t)(HDC hdc);
7 | typedef void (APIENTRY *glClear_t)(GLbitfield mask);
8 | typedef void (APIENTRY *glViewport_t)(GLint x, GLint y, GLsizei width, GLsizei height);
9 |
10 | glBegin_t pglBegin = NULL;
11 | glVertex3fv_t pglVertex3fv = NULL;
12 | glColor4f_t pglColor4f = NULL;
13 | wglSwapBuffers_t pwglSwapBuffers = NULL;
14 | glClear_t pglClear = NULL;
15 | glViewport_t pglViewport = NULL;
16 |
17 | bool bSmoke = false;
18 |
19 | GLint viewport[4];
20 |
21 | void APIENTRY Hooked_glBegin(GLenum mode)
22 | {
23 | if (g_pIRunGameEngine->IsInGame() && !cvar.hide_from_obs)
24 | {
25 | if (cvar.nosmoke && mode == GL_QUADS)
26 | {
27 | GLfloat smokecol[4];
28 |
29 | glGetFloatv(GL_CURRENT_COLOR, smokecol);
30 |
31 | if ((smokecol[0] == smokecol[1]) && (smokecol[0] == smokecol[2]) && smokecol[0] != 0.0 && smokecol[0] != 1.0)
32 | bSmoke = true;
33 | else
34 | bSmoke = false;
35 | }
36 | }
37 |
38 | (*pglBegin)(mode);
39 | }
40 |
41 | void APIENTRY Hooked_glVertex3fv(GLfloat *v)
42 | {
43 | if (g_pIRunGameEngine->IsInGame() && g_Local.bAlive && !g_pGlobals.bSnapshot && !g_pGlobals.bScreenshot && !cvar.hide_from_obs)
44 | {
45 | if (cvar.nosmoke && bSmoke && !g_Menu.bOpened) return;
46 | }
47 |
48 | (*pglVertex3fv)(v);
49 | }
50 |
51 | void APIENTRY Hooked_glColor4f(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
52 | {
53 | if (g_pGlobals.chams)
54 | {
55 | if (cvar.chams_type == 2)
56 | {
57 | red = (g_pGlobals.chams_render_r / 255) * red;
58 | green = (g_pGlobals.chams_render_g / 255) * green;
59 | blue = (g_pGlobals.chams_render_b / 255) * blue;
60 | }
61 | else
62 | {
63 | red = g_pGlobals.chams_render_r / 255;
64 | green = g_pGlobals.chams_render_g / 255;
65 | blue = g_pGlobals.chams_render_b / 255;
66 | }
67 | }
68 |
69 | (*pglColor4f)(red, green, blue, alpha);
70 | }
71 |
72 | BOOL APIENTRY Hooked_wglSwapBuffers(HDC hdc)
73 | {
74 | if (cvar.hide_from_obs && GetTickCount() - g_pGlobals.dwLoadingFinished > 1000 && g_Engine.pfnGetCvarFloat("r_norefresh") == 0)
75 | {
76 | glMatrixMode(GL_PROJECTION);
77 | glLoadIdentity();
78 |
79 | glOrtho(0, viewport[2], viewport[3], 0, 0, 1);
80 | glDisable(GL_DEPTH_TEST);
81 | glMatrixMode(GL_MODELVIEW);
82 |
83 | glPushMatrix();
84 | glLoadIdentity();
85 | glDisable(GL_TEXTURE_2D);
86 |
87 | glEnable(GL_BLEND);
88 | glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
89 |
90 | g_Visuals.Run();
91 | g_Menu.Run();
92 |
93 | g_pISurface->DrawSetTextFont(ESP);
94 | g_pISurface->DrawSetTextColor(0, 0, 0, 0);
95 | g_pISurface->DrawSetTextPos(1, 1);
96 | g_pISurface->DrawPrintText((wchar_t*)__func__, wcslen((wchar_t*)__func__));//Fix rendering
97 |
98 | g_pISurface->DrawFlushText();
99 |
100 | AntiScreen();
101 |
102 | glDisable(GL_BLEND);
103 |
104 | glPopMatrix();
105 |
106 | glEnable(GL_TEXTURE_2D);
107 | glEnable(GL_DEPTH_TEST);
108 | }
109 |
110 | return(*pwglSwapBuffers)(hdc);
111 | }
112 |
113 | void APIENTRY Hooked_glClear(GLbitfield mask)
114 | {
115 | if (mask == GL_DEPTH_BUFFER_BIT)
116 | {
117 | (*pglClear)(GL_COLOR_BUFFER_BIT);
118 | glClearColor(0.0f, 0.0f, 0.0f, 0.0f);
119 | }
120 |
121 | (*pglClear)(mask);
122 | }
123 |
124 | void APIENTRY Hooked_glViewport(GLint x, GLint y, GLsizei width, GLsizei height)
125 | {
126 | viewport[0] = x;
127 | viewport[1] = y;
128 | viewport[2] = width;
129 | viewport[3] = height;
130 | (*pglViewport)(x, y, width, height);
131 | }
132 |
133 | void HookOpenGL()
134 | {
135 | HMODULE hmOpenGL = GetModuleHandle("opengl32.dll");
136 | pglBegin = (glBegin_t)DetourFunction((LPBYTE)GetProcAddress(hmOpenGL, "glBegin"), (LPBYTE)&Hooked_glBegin);
137 | pglColor4f = (glColor4f_t)DetourFunction((LPBYTE)GetProcAddress(hmOpenGL, "glColor4f"), (LPBYTE)&Hooked_glColor4f);
138 | pglVertex3fv = (glVertex3fv_t)DetourFunction((LPBYTE)GetProcAddress(hmOpenGL, "glVertex3fv"), (LPBYTE)&Hooked_glVertex3fv);
139 | pglClear = (glClear_t)DetourFunction((LPBYTE)GetProcAddress(hmOpenGL, "glClear"), (LPBYTE)&Hooked_glClear);
140 | pwglSwapBuffers = (wglSwapBuffers_t)DetourFunction((LPBYTE)GetProcAddress(hmOpenGL, "wglSwapBuffers"), (LPBYTE)&Hooked_wglSwapBuffers);
141 | pglViewport = (glViewport_t)DetourFunction((LPBYTE)GetProcAddress(hmOpenGL, "glViewport"), (LPBYTE)&Hooked_glViewport);
142 | }
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI2/IPanel.h:
--------------------------------------------------------------------------------
1 | #ifndef IPANEL_H
2 | #define IPANEL_H
3 | #ifdef _WIN32
4 | #pragma once
5 | #endif
6 |
7 | #ifdef SendMessage
8 | #undef GetClassName
9 | #endif
10 | #ifdef SendMessage
11 | #undef SendMessage
12 | #endif
13 |
14 | class KeyValues;
15 |
16 | namespace vgui
17 | {
18 | class SurfacePlat;
19 | class IClientPanel;
20 |
21 | class IPanel : public IBaseInterface
22 | {
23 | public:
24 | virtual void Init( IPanel* vguiPanel , IClientPanel *panel ) = 0;
25 | virtual void SetPos( IPanel* vguiPanel , int x , int y ) = 0;
26 | virtual void GetPos( IPanel* vguiPanel , int &x , int &y ) = 0;
27 | virtual void SetSize( IPanel* vguiPanel , int wide , int tall ) = 0;
28 | virtual void GetSize( IPanel* vguiPanel , int &wide , int &tall ) = 0;
29 | virtual void SetMinimumSize( IPanel* vguiPanel , int wide , int tall ) = 0;
30 | virtual void GetMinimumSize( IPanel* vguiPanel , int &wide , int &tall ) = 0;
31 | virtual void SetZPos( IPanel* vguiPanel , int z ) = 0;
32 | virtual int GetZPos( IPanel* vguiPanel ) = 0;
33 | virtual void GetAbsPos( IPanel* vguiPanel , int &x , int &y ) = 0;
34 | virtual void GetClipRect( IPanel* vguiPanel , int &x0 , int &y0 , int &x1 , int &y1 ) = 0;
35 | virtual void SetInset( IPanel* vguiPanel , int left , int top , int right , int bottom ) = 0;
36 | virtual void GetInset( IPanel* vguiPanel , int &left , int &top , int &right , int &bottom ) = 0;
37 | virtual void SetVisible( IPanel* vguiPanel , bool state ) = 0;
38 | virtual bool IsVisible( IPanel* vguiPanel ) = 0;
39 | virtual void SetParent( IPanel* vguiPanel , IPanel* newParent ) = 0;
40 | virtual int GetChildCount( IPanel* vguiPanel ) = 0;
41 | virtual IPanel* GetChild( IPanel* vguiPanel , int index ) = 0;
42 | virtual IPanel* GetParent( IPanel* vguiPanel ) = 0;
43 | virtual void MoveToFront( IPanel* vguiPanel ) = 0;
44 | virtual void MoveToBack( IPanel* vguiPanel ) = 0;
45 | virtual bool HasParent( IPanel* vguiPanel , IPanel* potentialParent ) = 0;
46 | virtual bool IsPopup( IPanel* vguiPanel ) = 0;
47 | virtual void SetPopup( IPanel* vguiPanel , bool state ) = 0;
48 | virtual bool Render_GetPopupVisible( IPanel* vguiPanel ) = 0;
49 | virtual void Render_SetPopupVisible( IPanel* vguiPanel , bool state ) = 0;
50 | virtual vgui::Scheme GetScheme( IPanel* vguiPanel ) = 0;
51 | virtual bool IsProportional( IPanel* vguiPanel ) = 0;
52 | virtual bool IsAutoDeleteSet( IPanel* vguiPanel ) = 0;
53 | virtual void DeletePanel( IPanel* vguiPanel ) = 0;
54 | virtual void SetKeyBoardInputEnabled( IPanel* vguiPanel , bool state ) = 0;
55 | virtual void SetMouseInputEnabled( IPanel* vguiPanel , bool state ) = 0;
56 | virtual bool IsKeyBoardInputEnabled( IPanel* vguiPanel ) = 0;
57 | virtual bool IsMouseInputEnabled( IPanel* vguiPanel ) = 0;
58 | virtual void Solve( IPanel* vguiPanel ) = 0;
59 | virtual const char *GetName( IPanel* vguiPanel ) = 0;
60 | virtual const char *GetClassName( IPanel* vguiPanel ) = 0;
61 | virtual void SendMessage( IPanel* vguiPanel , KeyValues *params , IPanel* ifromPanel ) = 0;
62 | virtual void Think( IPanel* vguiPanel ) = 0;
63 | virtual void PerformApplySchemeSettings( IPanel* vguiPanel ) = 0;
64 | virtual void PaintTraverse( IPanel* vguiPanel , bool forceRepaint , bool allowForce = true ) = 0;
65 | virtual void Repaint( IPanel* vguiPanel ) = 0;
66 | virtual IPanel* IsWithinTraverse( IPanel* vguiPanel , int x , int y , bool traversePopups ) = 0;
67 | virtual void OnChildAdded( IPanel* vguiPanel , IPanel* child ) = 0;
68 | virtual void OnSizeChanged( IPanel* vguiPanel , int newWide , int newTall ) = 0;
69 | virtual void InternalFocusChanged( IPanel* vguiPanel , bool lost ) = 0;
70 | virtual bool RequestInfo( IPanel* vguiPanel , KeyValues *outputData ) = 0;
71 | virtual void RequestFocus( IPanel* vguiPanel , int direction = 0 ) = 0;
72 | virtual bool RequestFocusPrev( IPanel* vguiPanel , IPanel* existingPanel ) = 0;
73 | virtual bool RequestFocusNext( IPanel* vguiPanel , IPanel* existingPanel ) = 0;
74 | virtual IPanel* GetCurrentKeyFocus( IPanel* vguiPanel ) = 0;
75 | virtual int GetTabPosition( IPanel* vguiPanel ) = 0;
76 | virtual SurfacePlat *Plat( IPanel* vguiPanel ) = 0;
77 | virtual void SetPlat( IPanel* vguiPanel , SurfacePlat *Plat ) = 0;
78 | virtual IPanel *GetPanel( IPanel* vguiPanel , const char *destinationModule ) = 0;
79 | virtual bool IsEnabled( IPanel* vguiPanel ) = 0;
80 | virtual void SetEnabled( IPanel* vguiPanel , bool state ) = 0;
81 | virtual void *Client( IPanel* vguiPanel ) = 0;
82 | virtual const char *GetModuleName( IPanel* vguiPanel ) = 0;
83 | };
84 | }
85 |
86 | extern vgui::IPanel* g_pIPanel;
87 |
88 | #define VGUI_PANEL_INTERFACE_VERSION "VGUI_Panel007"
89 | #endif
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/common/entity_state.h:
--------------------------------------------------------------------------------
1 | /***
2 | *
3 | * Copyright (c) 1996-2002, Valve LLC. All rights reserved.
4 | *
5 | * This product contains software technology licensed from Id
6 | * Software, Inc. ("Id Technology"). Id Technology (c) 1996 Id Software, Inc.
7 | * All Rights Reserved.
8 | *
9 | * Use, distribution, and modification of this source code and/or resulting
10 | * object code is restricted to non-commercial enhancements to products from
11 | * Valve LLC. All other use, distribution, or modification is prohibited
12 | * without written permission from Valve LLC.
13 | *
14 | ****/
15 | #if !defined( ENTITY_STATEH )
16 | #define ENTITY_STATEH
17 | #ifdef _WIN32
18 | #pragma once
19 | #endif
20 |
21 | // For entityType below
22 | #define ENTITY_NORMAL (1<<0)
23 | #define ENTITY_BEAM (1<<1)
24 |
25 | // Entity state is used for the baseline and for delta compression of a packet of
26 | // entities that is sent to a client.
27 | typedef struct entity_state_s entity_state_t;
28 |
29 | struct entity_state_s
30 | {
31 | // Fields which are filled in by routines outside of delta compression
32 | int entityType;
33 | // Index into cl_entities array for this entity.
34 | int number;
35 | float msg_time;
36 |
37 | // Message number last time the player/entity state was updated.
38 | int messagenum;
39 |
40 | // Fields which can be transitted and reconstructed over the network stream
41 | vec3_t origin;
42 | vec3_t angles;
43 |
44 | int modelindex;
45 | int sequence;
46 | float frame;
47 | int colormap;
48 | short skin;
49 | short solid;
50 | int effects;
51 | float scale;
52 |
53 | byte eflags;
54 |
55 | // Render information
56 | int rendermode;
57 | int renderamt;
58 | color24 rendercolor;
59 | int renderfx;
60 |
61 | int movetype;
62 | float animtime;
63 | float framerate;
64 | int body;
65 | byte controller[4];
66 | byte blending[4];
67 | vec3_t velocity;
68 |
69 | // Send bbox down to client for use during prediction.
70 | vec3_t mins;
71 | vec3_t maxs;
72 |
73 | int aiment;
74 | // If owned by a player, the index of that player ( for projectiles ).
75 | int owner;
76 |
77 | // Friction, for prediction.
78 | float friction;
79 | // Gravity multiplier
80 | float gravity;
81 |
82 | // PLAYER SPECIFIC
83 | int team;
84 | int playerclass;
85 | int health;
86 | qboolean spectator;
87 | int weaponmodel;
88 | int gaitsequence;
89 | // If standing on conveyor, e.g.
90 | vec3_t basevelocity;
91 | // Use the crouched hull, or the regular player hull.
92 | int usehull;
93 | // Latched buttons last time state updated.
94 | int oldbuttons;
95 | // -1 = in air, else pmove entity number
96 | int onground;
97 | int iStepLeft;
98 | // How fast we are falling
99 | float flFallVelocity;
100 |
101 | float fov;
102 | int weaponanim;
103 |
104 | // Parametric movement overrides
105 | vec3_t startpos;
106 | vec3_t endpos;
107 | float impacttime;
108 | float starttime;
109 |
110 | // For mods
111 | int iuser1;
112 | int iuser2;
113 | int iuser3;
114 | int iuser4;
115 | float fuser1;
116 | float fuser2;
117 | float fuser3;
118 | float fuser4;
119 | vec3_t vuser1;
120 | vec3_t vuser2;
121 | vec3_t vuser3;
122 | vec3_t vuser4;
123 | };
124 |
125 | #include "../pm_shared/pm_info.h"
126 |
127 | typedef struct clientdata_s
128 | {
129 | vec3_t origin;
130 | vec3_t velocity;
131 |
132 | int viewmodel;
133 | vec3_t punchangle;
134 | int flags;
135 | int waterlevel;
136 | int watertype;
137 | vec3_t view_ofs;
138 | float health;
139 |
140 | int bInDuck;
141 |
142 | int weapons; // remove?
143 |
144 | int flTimeStepSound;
145 | int flDuckTime;
146 | int flSwimTime;
147 | int waterjumptime;
148 |
149 | float maxspeed;
150 |
151 | float fov;
152 | int weaponanim;
153 |
154 | int m_iId;
155 | int ammo_shells;
156 | int ammo_nails;
157 | int ammo_cells;
158 | int ammo_rockets;
159 | float m_flNextAttack;
160 |
161 | int tfstate;
162 |
163 | int pushmsec;
164 |
165 | int deadflag;
166 |
167 | char physinfo[ MAX_PHYSINFO_STRING ];
168 |
169 | // For mods
170 | int iuser1;
171 | int iuser2;
172 | int iuser3;
173 | int iuser4;
174 | float fuser1;
175 | float fuser2;
176 | float fuser3;
177 | float fuser4;
178 | vec3_t vuser1;
179 | vec3_t vuser2;
180 | vec3_t vuser3;
181 | vec3_t vuser4;
182 | } clientdata_t;
183 |
184 | #include "weaponinfo.h"
185 |
186 | typedef struct local_state_s
187 | {
188 | entity_state_t playerstate;
189 | clientdata_t client;
190 | weapon_data_t weapondata[ 32 ];
191 | } local_state_t;
192 |
193 | #endif // !ENTITY_STATEH
194 |
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/common/mathlib.h:
--------------------------------------------------------------------------------
1 | /***
2 | *
3 | * Copyright (c) 1996-2002, Valve LLC. All rights reserved.
4 | *
5 | * This product contains software technology licensed from Id
6 | * Software, Inc. ("Id Technology"). Id Technology (c) 1996 Id Software, Inc.
7 | * All Rights Reserved.
8 | *
9 | * Use, distribution, and modification of this source code and/or resulting
10 | * object code is restricted to non-commercial enhancements to products from
11 | * Valve LLC. All other use, distribution, or modification is prohibited
12 | * without written permission from Valve LLC.
13 | *
14 | ****/
15 | // mathlib.h
16 |
17 | typedef float vec_t;
18 | typedef vec_t vec3_t[3];
19 | typedef vec_t vec4_t[4]; // x,y,z,w
20 | typedef vec_t vec5_t[5];
21 |
22 | typedef short vec_s_t;
23 | typedef vec_s_t vec3s_t[3];
24 | typedef vec_s_t vec4s_t[4]; // x,y,z,w
25 | typedef vec_s_t vec5s_t[5];
26 |
27 | typedef int fixed4_t;
28 | typedef int fixed8_t;
29 | typedef int fixed16_t;
30 |
31 | #ifndef M_PI
32 | #define M_PI 3.14159265358979323846 // matches value in gcc v2 math.h
33 | #endif
34 |
35 | struct mplane_s;
36 |
37 | extern vec3_t vec3_origin;
38 | extern int nanmask;
39 |
40 | #define IS_NAN(x) (((*(int *)&x)&nanmask)==nanmask)
41 |
42 | #ifndef VECTOR_H
43 | #define DotProduct(x,y) ((x)[0]*(y)[0]+(x)[1]*(y)[1]+(x)[2]*(y)[2])
44 | #endif
45 |
46 | #define VectorSubtract(a,b,c) {(c)[0]=(a)[0]-(b)[0];(c)[1]=(a)[1]-(b)[1];(c)[2]=(a)[2]-(b)[2];}
47 | #define VectorAdd(a,b,c) {(c)[0]=(a)[0]+(b)[0];(c)[1]=(a)[1]+(b)[1];(c)[2]=(a)[2]+(b)[2];}
48 | #define VectorCopy(a,b) {(b)[0]=(a)[0];(b)[1]=(a)[1];(b)[2]=(a)[2];}
49 | #define VectorClear(a) {(a)[0]=0.0;(a)[1]=0.0;(a)[2]=0.0;}
50 |
51 | void VectorMA (const vec3_t veca, float scale, const vec3_t vecb, vec3_t vecc);
52 |
53 | vec_t _DotProduct (vec3_t v1, vec3_t v2);
54 | void _VectorSubtract (vec3_t veca, vec3_t vecb, vec3_t out);
55 | void _VectorAdd (vec3_t veca, vec3_t vecb, vec3_t out);
56 | void _VectorCopy (vec3_t in, vec3_t out);
57 |
58 | int VectorCompare (const vec3_t v1, const vec3_t v2);
59 | float Length (const vec3_t v);
60 | void CrossProduct (const vec3_t v1, const vec3_t v2, vec3_t cross);
61 | float VectorNormalize (vec3_t v); // returns vector length
62 | void VectorInverse (vec3_t v);
63 | void VectorScale (const vec3_t in, vec_t scale, vec3_t out);
64 | int Q_log2(int val);
65 |
66 | void R_ConcatRotations (float in1[3][3], float in2[3][3], float out[3][3]);
67 | void R_ConcatTransforms (float in1[3][4], float in2[3][4], float out[3][4]);
68 |
69 | // Here are some "manual" INLINE routines for doing floating point to integer conversions
70 | extern short new_cw, old_cw;
71 |
72 | typedef union DLONG {
73 | int i[2];
74 | double d;
75 | float f;
76 | } DLONG;
77 |
78 | extern DLONG dlong;
79 |
80 | #ifdef _WIN32
81 | void __inline set_fpu_cw(void)
82 | {
83 | _asm
84 | { wait
85 | fnstcw old_cw
86 | wait
87 | mov ax, word ptr old_cw
88 | or ah, 0xc
89 | mov word ptr new_cw,ax
90 | fldcw new_cw
91 | }
92 | }
93 |
94 | int __inline quick_ftol(float f)
95 | {
96 | _asm {
97 | // Assumes that we are already in chop mode, and only need a 32-bit int
98 | fld DWORD PTR f
99 | fistp DWORD PTR dlong
100 | }
101 | return dlong.i[0];
102 | }
103 |
104 | void __inline restore_fpu_cw(void)
105 | {
106 | _asm fldcw old_cw
107 | }
108 | #else
109 | #define set_fpu_cw() /* */
110 | #define quick_ftol(f) ftol(f)
111 | #define restore_fpu_cw() /* */
112 | #endif
113 |
114 | void FloorDivMod (double numer, double denom, int *quotient,
115 | int *rem);
116 | fixed16_t Invert24To16(fixed16_t val);
117 | int GreatestCommonDivisor (int i1, int i2);
118 |
119 | void AngleVectors (const vec3_t angles, vec3_t forward, vec3_t right, vec3_t up);
120 | void AngleVectorsTranspose (const vec3_t angles, vec3_t forward, vec3_t right, vec3_t up);
121 | #define AngleIVectors AngleVectorsTranspose
122 |
123 | void AngleMatrix (const vec3_t angles, float (*matrix)[4] );
124 | void AngleIMatrix (const vec3_t angles, float (*matrix)[4] );
125 | void VectorTransform (const vec3_t in1, float in2[3][4], vec3_t out);
126 |
127 | void NormalizeAngles( vec3_t angles );
128 | void InterpolateAngles( vec3_t start, vec3_t end, vec3_t output, float frac );
129 | float AngleBetweenVectors( const vec3_t v1, const vec3_t v2 );
130 |
131 |
132 | void VectorMatrix( vec3_t forward, vec3_t right, vec3_t up);
133 | void VectorAngles( const vec3_t forward, vec3_t angles );
134 |
135 | int InvertMatrix( const float * m, float *out );
136 |
137 | int BoxOnPlaneSide (vec3_t emins, vec3_t emaxs, struct mplane_s *plane);
138 | float anglemod(float a);
139 |
140 |
141 |
142 | #define BOX_ON_PLANE_SIDE(emins, emaxs, p) \
143 | (((p)->type < 3)? \
144 | ( \
145 | ((p)->dist <= (emins)[(p)->type])? \
146 | 1 \
147 | : \
148 | ( \
149 | ((p)->dist >= (emaxs)[(p)->type])?\
150 | 2 \
151 | : \
152 | 3 \
153 | ) \
154 | ) \
155 | : \
156 | BoxOnPlaneSide( (emins), (emaxs), (p)))
157 |
--------------------------------------------------------------------------------
/ev0lution/StudioModelRenderer.h:
--------------------------------------------------------------------------------
1 | #ifndef __STUDIO_MODEL_RENDERER__
2 | #define __STUDIO_MODEL_RENDERER__
3 |
4 | // Prototypes for original calls
5 | void oInit(void);
6 | int oStudioDrawModel(int flags);
7 | int oStudioDrawPlayer(int flags, struct entity_state_s *pplayer);
8 | mstudioanim_t oStudioGetAnim(model_t *m_pSubModel, mstudioseqdesc_t *pseqdesc);
9 | void oStudioSetUpTransform(int trivial_accept);
10 | void oStudioSetupBones(void);
11 | void oStudioCalcAttachments(void);
12 | void oStudioSaveBones(void);
13 | void oStudioMergeBones(model_t *m_pSubModel);
14 | float oStudioEstimateInterpolant(void);
15 | float oStudioEstimateFrame(mstudioseqdesc_t *pseqdesc);
16 | void oStudioFxTransform(cl_entity_t *ent, float transform[3][4]);
17 | void oStudioSlerpBones(vec4_t q1[], float pos1[][3], vec4_t q2[], float pos2[][3], float s);
18 | void oStudioCalcBoneAdj(float dadt, float *adj, const byte *pcontroller1, const byte *pcontroller2, byte mouthopen);
19 | void oStudioCalcBoneQuaterion(int frame, float s, mstudiobone_t *pbone, mstudioanim_t *panim, float *adj, float *q);
20 | void oStudioCalcBonePosition(int frame, float s, mstudiobone_t *pbone, mstudioanim_t *panim, float *adj, float *pos);
21 | void oStudioCalcRotations(float pos[][3], vec4_t *q, mstudioseqdesc_t *pseqdesc, mstudioanim_t *panim, float f);
22 | void oStudioRenderModel(void);
23 | void oStudioRenderFinal(void);
24 | void oStudioRenderFinal_Software(void);
25 | void oStudioRenderFinal_Hardware(void);
26 | void oStudioPlayerBlend(mstudioseqdesc_t *pseqdesc, int *pBlend, float *pPitch);
27 | void oStudioEstimateGait(entity_state_t *pplayer);
28 | void oStudioProcessGait(entity_state_t *pplayer);
29 |
30 | // Prototypes for patch gates
31 | void Init_Gate(void);
32 | void StudioDrawModel_Gate(void);
33 | void StudioDrawPlayer_Gate(void);
34 | void StudioGetAnim_Gate(void);
35 | void StudioSetUpTransform_Gate(void);
36 | void StudioSetupBones_Gate(void);
37 | void StudioCalcAttachments_Gate(void);
38 | void StudioSaveBones_Gate(void);
39 | void StudioMergeBones_Gate(void);
40 | void StudioEstimateInterpolant_Gate(void);
41 | void StudioEstimateFrame_Gate(void);
42 | void StudioFxTransform_Gate(void);
43 | void StudioSlerpBones_Gate(void);
44 | void StudioCalcBoneAdj_Gate(void);
45 | void StudioCalcBoneQuaterion_Gate(void);
46 | void StudioCalcBonePosition_Gate(void);
47 | void StudioCalcRotations_Gate(void);
48 | void StudioRenderModel_Gate(void);
49 | void StudioRenderFinal_Gate(void);
50 | void StudioRenderFinal_Software_Gate(void);
51 | void StudioRenderFinal_Hardware_Gate(void);
52 | void StudioPlayerBlend_Gate(void);
53 | void StudioEstimateGait_Gate(void);
54 | void StudioProcessGait_Gate(void);
55 |
56 | // Data definition of pThis
57 | typedef struct
58 | {
59 | double dummy;
60 | double m_clTime;
61 | double m_clOldTime;
62 | int m_fDoInterp;
63 | int m_fGaitEstimation;
64 | int m_nFrameCount;
65 | cvar_t *m_pCvarHiModels;
66 | cvar_t *m_pCvarDeveloper;
67 | cvar_t *m_pCvarDrawEntities;
68 | cl_entity_t *m_pCurrentEntity;
69 | model_t *m_pRenderModel;
70 | player_info_t *m_pPlayerInfo;
71 | int m_nPlayerIndex;
72 | float m_flGaitMovement;
73 | studiohdr_t *m_pStudioHeader;
74 | mstudiobodyparts_t *m_pBodyPart;
75 | mstudiomodel_t *m_pSubModel;
76 | int m_nTopColor;
77 | int m_nBottomColor;
78 | model_t *m_pChromeSprite;
79 | int m_nCachedBones;
80 | char m_nCachedBoneNames[MAXSTUDIOBONES][32];
81 | float m_rgCachedBoneTransform[MAXSTUDIOBONES][3][4];
82 | float m_rgCachedLightTransform[MAXSTUDIOBONES][3][4];
83 | float m_fSoftwareXScale, m_fSoftwareYScale;
84 | float m_vUp[3];
85 | float m_vRight[3];
86 | float m_vNormal[3];
87 | float m_vRenderOrigin[3];
88 | int *m_pStudioModelCount;
89 | int *m_pModelsDrawn;
90 | float(*m_protationmatrix)[3][4];
91 | float(*m_paliastransform)[3][4];
92 | float(*m_pbonetransform)[MAXSTUDIOBONES][3][4];
93 | float(*m_plighttransform)[MAXSTUDIOBONES][3][4];
94 | } *StudioModelRenderer_d;
95 |
96 | typedef struct StudioModelRenderer_s
97 | {
98 | void(*CStudioModelRenderer)(void);
99 | void(*Init)(void);
100 | int(*StudioDrawModel) (int flags);
101 | int(*StudioDrawPlayer)(int flags, struct entity_state_s *pplayer);
102 | mstudioanim_t(*StudioGetAnim)(model_t *m_pSubModel, mstudioseqdesc_t *pseqdesc);
103 | void(*StudioSetUpTransform) (int trivial_accept);
104 | void(*StudioSetupBones) (void);
105 | void(*StudioCalcAttachments) (void);
106 | void(*StudioSaveBones)(void);
107 | void(*StudioMergeBones)(model_t *m_pSubModel);
108 | float(*StudioEstimateInterpolant)(void);
109 | float(*StudioEstimateFrame)(mstudioseqdesc_t *pseqdesc);
110 | void(*StudioFxTransform)(cl_entity_t *ent, float transform[3][4]);
111 | void(*StudioSlerpBones)(vec4_t q1[], float pos1[][3], vec4_t q2[], float pos2[][3], float s);
112 | void(*StudioCalcBoneAdj) (float dadt, float *adj, const byte *pcontroller1, const byte *pcontroller2, byte mouthopen);
113 | void(*StudioCalcBoneQuaterion)(int frame, float s, mstudiobone_t *pbone, mstudioanim_t *panim, float *adj, float *q);
114 | void(*StudioCalcBonePosition)(int frame, float s, mstudiobone_t *pbone, mstudioanim_t *panim, float *adj, float *pos);
115 | void(*StudioCalcRotations)(float pos[][3], vec4_t *q, mstudioseqdesc_t *pseqdesc, mstudioanim_t *panim, float f);
116 | void(*StudioRenderModel) (void);
117 | void(*StudioRenderFinal) (void);
118 | void(*StudioRenderFinal_Software) (void);
119 | void(*StudioRenderFinal_Hardware) (void);
120 | void(*StudioPlayerBlend) (mstudioseqdesc_t *pseqdesc, int *pBlend, float *pPitch);
121 | void(*StudioEstimateGait) (entity_state_t *pplayer);
122 | void(*StudioProcessGait) (entity_state_t *pplayer);
123 | } StudioModelRenderer_t, *pStudioModelRenderer_t;
124 |
125 | extern StudioModelRenderer_t g_StudioModelRenderer;
126 |
127 | #endif
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/engine/progdefs.h:
--------------------------------------------------------------------------------
1 | /***
2 | *
3 | * Copyright (c) 1996-2002, Valve LLC. All rights reserved.
4 | *
5 | * This product contains software technology licensed from Id
6 | * Software, Inc. ("Id Technology"). Id Technology (c) 1996 Id Software, Inc.
7 | * All Rights Reserved.
8 | *
9 | * Use, distribution, and modification of this source code and/or resulting
10 | * object code is restricted to non-commercial enhancements to products from
11 | * Valve LLC. All other use, distribution, or modification is prohibited
12 | * without written permission from Valve LLC.
13 | *
14 | ****/
15 | #ifndef PROGDEFS_H
16 | #define PROGDEFS_H
17 | #ifdef _WIN32
18 | #pragma once
19 | #endif
20 |
21 | typedef struct
22 | {
23 | float time;
24 | float frametime;
25 | float force_retouch;
26 | string_t mapname;
27 | string_t startspot;
28 | float deathmatch;
29 | float coop;
30 | float teamplay;
31 | float serverflags;
32 | float found_secrets;
33 | vec3_t v_forward;
34 | vec3_t v_up;
35 | vec3_t v_right;
36 | float trace_allsolid;
37 | float trace_startsolid;
38 | float trace_fraction;
39 | vec3_t trace_endpos;
40 | vec3_t trace_plane_normal;
41 | float trace_plane_dist;
42 | edict_t *trace_ent;
43 | float trace_inopen;
44 | float trace_inwater;
45 | int trace_hitgroup;
46 | int trace_flags;
47 | int msg_entity;
48 | int cdAudioTrack;
49 | int maxClients;
50 | int maxEntities;
51 | const char *pStringBase;
52 |
53 | void *pSaveData;
54 | vec3_t vecLandmarkOffset;
55 | } globalvars_t;
56 |
57 |
58 | typedef struct entvars_s
59 | {
60 | string_t classname;
61 | string_t globalname;
62 |
63 | vec3_t origin;
64 | vec3_t oldorigin;
65 | vec3_t velocity;
66 | vec3_t basevelocity;
67 | vec3_t clbasevelocity; // Base velocity that was passed in to server physics so
68 | // client can predict conveyors correctly. Server zeroes it, so we need to store here, too.
69 | vec3_t movedir;
70 |
71 | vec3_t angles; // Model angles
72 | vec3_t avelocity; // angle velocity (degrees per second)
73 | vec3_t punchangle; // auto-decaying view angle adjustment
74 | vec3_t v_angle; // Viewing angle (player only)
75 |
76 | // For parametric entities
77 | vec3_t endpos;
78 | vec3_t startpos;
79 | float impacttime;
80 | float starttime;
81 |
82 | int fixangle; // 0:nothing, 1:force view angles, 2:add avelocity
83 | float idealpitch;
84 | float pitch_speed;
85 | float ideal_yaw;
86 | float yaw_speed;
87 |
88 | int modelindex;
89 | string_t model;
90 |
91 | int viewmodel; // player's viewmodel
92 | int weaponmodel; // what other players see
93 |
94 | vec3_t absmin; // BB max translated to world coord
95 | vec3_t absmax; // BB max translated to world coord
96 | vec3_t mins; // local BB min
97 | vec3_t maxs; // local BB max
98 | vec3_t size; // maxs - mins
99 |
100 | float ltime;
101 | float nextthink;
102 |
103 | int movetype;
104 | int solid;
105 |
106 | int skin;
107 | int body; // sub-model selection for studiomodels
108 | int effects;
109 |
110 | float gravity; // % of "normal" gravity
111 | float friction; // inverse elasticity of MOVETYPE_BOUNCE
112 |
113 | int light_level;
114 |
115 | int sequence; // animation sequence
116 | int gaitsequence; // movement animation sequence for player (0 for none)
117 | float frame; // % playback position in animation sequences (0..255)
118 | float animtime; // world time when frame was set
119 | float framerate; // animation playback rate (-8x to 8x)
120 | byte controller[4]; // bone controller setting (0..255)
121 | byte blending[2]; // blending amount between sub-sequences (0..255)
122 |
123 | float scale; // sprite rendering scale (0..255)
124 |
125 | int rendermode;
126 | float renderamt;
127 | vec3_t rendercolor;
128 | int renderfx;
129 |
130 | float health;
131 | float frags;
132 | int weapons; // bit mask for available weapons
133 | float takedamage;
134 |
135 | int deadflag;
136 | vec3_t view_ofs; // eye position
137 |
138 | int button;
139 | int impulse;
140 |
141 | edict_t *chain; // Entity pointer when linked into a linked list
142 | edict_t *dmg_inflictor;
143 | edict_t *enemy;
144 | edict_t *aiment; // entity pointer when MOVETYPE_FOLLOW
145 | edict_t *owner;
146 | edict_t *groundentity;
147 |
148 | int spawnflags;
149 | int flags;
150 |
151 | int colormap; // lowbyte topcolor, highbyte bottomcolor
152 | int team;
153 |
154 | float max_health;
155 | float teleport_time;
156 | float armortype;
157 | float armorvalue;
158 | int waterlevel;
159 | int watertype;
160 |
161 | string_t target;
162 | string_t targetname;
163 | string_t netname;
164 | string_t message;
165 |
166 | float dmg_take;
167 | float dmg_save;
168 | float dmg;
169 | float dmgtime;
170 |
171 | string_t noise;
172 | string_t noise1;
173 | string_t noise2;
174 | string_t noise3;
175 |
176 | float speed;
177 | float air_finished;
178 | float pain_finished;
179 | float radsuit_finished;
180 |
181 | edict_t *pContainingEntity;
182 |
183 | int playerclass;
184 | float maxspeed;
185 |
186 | float fov;
187 | int weaponanim;
188 |
189 | int pushmsec;
190 |
191 | int bInDuck;
192 | int flTimeStepSound;
193 | int flSwimTime;
194 | int flDuckTime;
195 | int iStepLeft;
196 | float flFallVelocity;
197 |
198 | int gamestate;
199 |
200 | int oldbuttons;
201 |
202 | int groupinfo;
203 |
204 | // For mods
205 | int iuser1;
206 | int iuser2;
207 | int iuser3;
208 | int iuser4;
209 | float fuser1;
210 | float fuser2;
211 | float fuser3;
212 | float fuser4;
213 | vec3_t vuser1;
214 | vec3_t vuser2;
215 | vec3_t vuser3;
216 | vec3_t vuser4;
217 | edict_t *euser1;
218 | edict_t *euser2;
219 | edict_t *euser3;
220 | edict_t *euser4;
221 | } entvars_t;
222 |
223 |
224 | #endif // PROGDEFS_H
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/parsemsg.cpp:
--------------------------------------------------------------------------------
1 | /***
2 | *
3 | * Copyright (c) 1999, Valve LLC. All rights reserved.
4 | *
5 | * This product contains software technology licensed from Id
6 | * Software, Inc. ("Id Technology"). Id Technology (c) 1996 Id Software, Inc.
7 | * All Rights Reserved.
8 | *
9 | * Use, distribution, and modification of this source code and/or resulting
10 | * object code is restricted to non-commercial enhancements to products from
11 | * Valve LLC. All other use, distribution, or modification is prohibited
12 | * without written permission from Valve LLC.
13 | *
14 | ****/
15 | //
16 | // parsemsg.cpp
17 | //
18 | //--------------------------------------------------------------------------------------------------------------
19 | #include "parsemsg.h"
20 | #include
21 |
22 | typedef unsigned char byte;
23 | #define true 1
24 |
25 | static byte *gpBuf;
26 | static int giSize;
27 | static int giRead;
28 | static int giBadRead;
29 |
30 | int READ_OK( void )
31 | {
32 | return !giBadRead;
33 | }
34 |
35 | void BEGIN_READ( void *buf, int size )
36 | {
37 | giRead = 0;
38 | giBadRead = 0;
39 | giSize = size;
40 | gpBuf = (byte*)buf;
41 | }
42 |
43 | int READ_CHAR( void )
44 | {
45 | int c;
46 |
47 | if (giRead + 1 > giSize)
48 | {
49 | giBadRead = true;
50 | return -1;
51 | }
52 |
53 | c = (signed char)gpBuf[giRead];
54 | giRead++;
55 |
56 | return c;
57 | }
58 |
59 | int READ_BYTE( void )
60 | {
61 | int c;
62 |
63 | if (giRead+1 > giSize)
64 | {
65 | giBadRead = true;
66 | return -1;
67 | }
68 |
69 | c = (unsigned char)gpBuf[giRead];
70 | giRead++;
71 |
72 | return c;
73 | }
74 |
75 | int READ_SHORT( void )
76 | {
77 | int c;
78 |
79 | if (giRead+2 > giSize)
80 | {
81 | giBadRead = true;
82 | return -1;
83 | }
84 |
85 | c = (short)( gpBuf[giRead] + ( gpBuf[giRead+1] << 8 ) );
86 |
87 | giRead += 2;
88 |
89 | return c;
90 | }
91 |
92 | int READ_WORD( void )
93 | {
94 | return READ_SHORT();
95 | }
96 |
97 |
98 | int READ_LONG( void )
99 | {
100 | int c;
101 |
102 | if (giRead+4 > giSize)
103 | {
104 | giBadRead = true;
105 | return -1;
106 | }
107 |
108 | c = gpBuf[giRead] + (gpBuf[giRead + 1] << 8) + (gpBuf[giRead + 2] << 16) + (gpBuf[giRead + 3] << 24);
109 |
110 | giRead += 4;
111 |
112 | return c;
113 | }
114 |
115 | float READ_FLOAT( void )
116 | {
117 | union
118 | {
119 | byte b[4];
120 | float f;
121 | int l;
122 | } dat;
123 |
124 | dat.b[0] = gpBuf[giRead];
125 | dat.b[1] = gpBuf[giRead+1];
126 | dat.b[2] = gpBuf[giRead+2];
127 | dat.b[3] = gpBuf[giRead+3];
128 | giRead += 4;
129 |
130 | // dat.l = LittleLong (dat.l);
131 |
132 | return dat.f;
133 | }
134 |
135 | char* READ_STRING( void )
136 | {
137 | static char string[2048];
138 | int l,c;
139 |
140 | string[0] = 0;
141 |
142 | l = 0;
143 | do
144 | {
145 | if ( giRead+1 > giSize )
146 | break; // no more characters
147 |
148 | c = READ_CHAR();
149 | if (c == -1 || c == 0)
150 | break;
151 | string[l] = c;
152 | l++;
153 | } while (l < sizeof(string)-1);
154 |
155 | string[l] = 0;
156 |
157 | return string;
158 | }
159 |
160 | float READ_COORD( void )
161 | {
162 | return (float)(READ_SHORT() * (1.0/8));
163 | }
164 |
165 | float READ_ANGLE( void )
166 | {
167 | return (float)(READ_CHAR() * (360.0/256));
168 | }
169 |
170 | float READ_HIRESANGLE( void )
171 | {
172 | return (float)(READ_SHORT() * (360.0/65536));
173 | }
174 |
175 | //--------------------------------------------------------------------------------------------------------------
176 | BufferWriter::BufferWriter()
177 | {
178 | Init( NULL, 0 );
179 | }
180 |
181 | //--------------------------------------------------------------------------------------------------------------
182 | BufferWriter::BufferWriter( unsigned char *buffer, int bufferLen )
183 | {
184 | Init( buffer, bufferLen );
185 | }
186 |
187 | //--------------------------------------------------------------------------------------------------------------
188 | void BufferWriter::Init( unsigned char *buffer, int bufferLen )
189 | {
190 | m_overflow = false;
191 | m_buffer = buffer;
192 | m_remaining = bufferLen;
193 | m_overallLength = bufferLen;
194 | }
195 |
196 | //--------------------------------------------------------------------------------------------------------------
197 | void BufferWriter::WriteByte( unsigned char data )
198 | {
199 | if (!m_buffer || !m_remaining)
200 | {
201 | m_overflow = true;
202 | return;
203 | }
204 |
205 | *m_buffer = data;
206 | ++m_buffer;
207 | --m_remaining;
208 | }
209 |
210 | //--------------------------------------------------------------------------------------------------------------
211 | void BufferWriter::WriteLong( int data )
212 | {
213 | if (!m_buffer || m_remaining < 4)
214 | {
215 | m_overflow = true;
216 | return;
217 | }
218 |
219 | m_buffer[0] = data&0xff;
220 | m_buffer[1] = (data>>8)&0xff;
221 | m_buffer[2] = (data>>16)&0xff;
222 | m_buffer[3] = data>>24;
223 | m_buffer += 4;
224 | m_remaining -= 4;
225 | }
226 |
227 | //--------------------------------------------------------------------------------------------------------------
228 | void BufferWriter::WriteString( const char *str )
229 | {
230 | if (!m_buffer || !m_remaining)
231 | {
232 | m_overflow = true;
233 | return;
234 | }
235 |
236 | if (!str)
237 | str = "";
238 |
239 | int len = strlen(str)+1;
240 | if ( len > m_remaining )
241 | {
242 | m_overflow = true;
243 | str = "";
244 | len = 1;
245 | }
246 |
247 | strcpy((char *)m_buffer, str);
248 | m_remaining -= len;
249 | m_buffer += len;
250 | }
251 |
252 | //--------------------------------------------------------------------------------------------------------------
253 | int BufferWriter::GetSpaceUsed()
254 | {
255 | return m_overallLength - m_remaining;
256 | }
257 |
258 | //--------------------------------------------------------------------------------------------------------------
259 |
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/engine/anorms.h:
--------------------------------------------------------------------------------
1 | /***
2 | *
3 | * Copyright (c) 1996-2002, Valve LLC. All rights reserved.
4 | *
5 | * This product contains software technology licensed from Id
6 | * Software, Inc. ("Id Technology"). Id Technology (c) 1996 Id Software, Inc.
7 | * All Rights Reserved.
8 | *
9 | * Use, distribution, and modification of this source code and/or resulting
10 | * object code is restricted to non-commercial enhancements to products from
11 | * Valve LLC. All other use, distribution, or modification is prohibited
12 | * without written permission from Valve LLC.
13 | *
14 | ****/
15 |
16 | {-0.525731, 0.000000, 0.850651},
17 | {-0.442863, 0.238856, 0.864188},
18 | {-0.295242, 0.000000, 0.955423},
19 | {-0.309017, 0.500000, 0.809017},
20 | {-0.162460, 0.262866, 0.951056},
21 | {0.000000, 0.000000, 1.000000},
22 | {0.000000, 0.850651, 0.525731},
23 | {-0.147621, 0.716567, 0.681718},
24 | {0.147621, 0.716567, 0.681718},
25 | {0.000000, 0.525731, 0.850651},
26 | {0.309017, 0.500000, 0.809017},
27 | {0.525731, 0.000000, 0.850651},
28 | {0.295242, 0.000000, 0.955423},
29 | {0.442863, 0.238856, 0.864188},
30 | {0.162460, 0.262866, 0.951056},
31 | {-0.681718, 0.147621, 0.716567},
32 | {-0.809017, 0.309017, 0.500000},
33 | {-0.587785, 0.425325, 0.688191},
34 | {-0.850651, 0.525731, 0.000000},
35 | {-0.864188, 0.442863, 0.238856},
36 | {-0.716567, 0.681718, 0.147621},
37 | {-0.688191, 0.587785, 0.425325},
38 | {-0.500000, 0.809017, 0.309017},
39 | {-0.238856, 0.864188, 0.442863},
40 | {-0.425325, 0.688191, 0.587785},
41 | {-0.716567, 0.681718, -0.147621},
42 | {-0.500000, 0.809017, -0.309017},
43 | {-0.525731, 0.850651, 0.000000},
44 | {0.000000, 0.850651, -0.525731},
45 | {-0.238856, 0.864188, -0.442863},
46 | {0.000000, 0.955423, -0.295242},
47 | {-0.262866, 0.951056, -0.162460},
48 | {0.000000, 1.000000, 0.000000},
49 | {0.000000, 0.955423, 0.295242},
50 | {-0.262866, 0.951056, 0.162460},
51 | {0.238856, 0.864188, 0.442863},
52 | {0.262866, 0.951056, 0.162460},
53 | {0.500000, 0.809017, 0.309017},
54 | {0.238856, 0.864188, -0.442863},
55 | {0.262866, 0.951056, -0.162460},
56 | {0.500000, 0.809017, -0.309017},
57 | {0.850651, 0.525731, 0.000000},
58 | {0.716567, 0.681718, 0.147621},
59 | {0.716567, 0.681718, -0.147621},
60 | {0.525731, 0.850651, 0.000000},
61 | {0.425325, 0.688191, 0.587785},
62 | {0.864188, 0.442863, 0.238856},
63 | {0.688191, 0.587785, 0.425325},
64 | {0.809017, 0.309017, 0.500000},
65 | {0.681718, 0.147621, 0.716567},
66 | {0.587785, 0.425325, 0.688191},
67 | {0.955423, 0.295242, 0.000000},
68 | {1.000000, 0.000000, 0.000000},
69 | {0.951056, 0.162460, 0.262866},
70 | {0.850651, -0.525731, 0.000000},
71 | {0.955423, -0.295242, 0.000000},
72 | {0.864188, -0.442863, 0.238856},
73 | {0.951056, -0.162460, 0.262866},
74 | {0.809017, -0.309017, 0.500000},
75 | {0.681718, -0.147621, 0.716567},
76 | {0.850651, 0.000000, 0.525731},
77 | {0.864188, 0.442863, -0.238856},
78 | {0.809017, 0.309017, -0.500000},
79 | {0.951056, 0.162460, -0.262866},
80 | {0.525731, 0.000000, -0.850651},
81 | {0.681718, 0.147621, -0.716567},
82 | {0.681718, -0.147621, -0.716567},
83 | {0.850651, 0.000000, -0.525731},
84 | {0.809017, -0.309017, -0.500000},
85 | {0.864188, -0.442863, -0.238856},
86 | {0.951056, -0.162460, -0.262866},
87 | {0.147621, 0.716567, -0.681718},
88 | {0.309017, 0.500000, -0.809017},
89 | {0.425325, 0.688191, -0.587785},
90 | {0.442863, 0.238856, -0.864188},
91 | {0.587785, 0.425325, -0.688191},
92 | {0.688191, 0.587785, -0.425325},
93 | {-0.147621, 0.716567, -0.681718},
94 | {-0.309017, 0.500000, -0.809017},
95 | {0.000000, 0.525731, -0.850651},
96 | {-0.525731, 0.000000, -0.850651},
97 | {-0.442863, 0.238856, -0.864188},
98 | {-0.295242, 0.000000, -0.955423},
99 | {-0.162460, 0.262866, -0.951056},
100 | {0.000000, 0.000000, -1.000000},
101 | {0.295242, 0.000000, -0.955423},
102 | {0.162460, 0.262866, -0.951056},
103 | {-0.442863, -0.238856, -0.864188},
104 | {-0.309017, -0.500000, -0.809017},
105 | {-0.162460, -0.262866, -0.951056},
106 | {0.000000, -0.850651, -0.525731},
107 | {-0.147621, -0.716567, -0.681718},
108 | {0.147621, -0.716567, -0.681718},
109 | {0.000000, -0.525731, -0.850651},
110 | {0.309017, -0.500000, -0.809017},
111 | {0.442863, -0.238856, -0.864188},
112 | {0.162460, -0.262866, -0.951056},
113 | {0.238856, -0.864188, -0.442863},
114 | {0.500000, -0.809017, -0.309017},
115 | {0.425325, -0.688191, -0.587785},
116 | {0.716567, -0.681718, -0.147621},
117 | {0.688191, -0.587785, -0.425325},
118 | {0.587785, -0.425325, -0.688191},
119 | {0.000000, -0.955423, -0.295242},
120 | {0.000000, -1.000000, 0.000000},
121 | {0.262866, -0.951056, -0.162460},
122 | {0.000000, -0.850651, 0.525731},
123 | {0.000000, -0.955423, 0.295242},
124 | {0.238856, -0.864188, 0.442863},
125 | {0.262866, -0.951056, 0.162460},
126 | {0.500000, -0.809017, 0.309017},
127 | {0.716567, -0.681718, 0.147621},
128 | {0.525731, -0.850651, 0.000000},
129 | {-0.238856, -0.864188, -0.442863},
130 | {-0.500000, -0.809017, -0.309017},
131 | {-0.262866, -0.951056, -0.162460},
132 | {-0.850651, -0.525731, 0.000000},
133 | {-0.716567, -0.681718, -0.147621},
134 | {-0.716567, -0.681718, 0.147621},
135 | {-0.525731, -0.850651, 0.000000},
136 | {-0.500000, -0.809017, 0.309017},
137 | {-0.238856, -0.864188, 0.442863},
138 | {-0.262866, -0.951056, 0.162460},
139 | {-0.864188, -0.442863, 0.238856},
140 | {-0.809017, -0.309017, 0.500000},
141 | {-0.688191, -0.587785, 0.425325},
142 | {-0.681718, -0.147621, 0.716567},
143 | {-0.442863, -0.238856, 0.864188},
144 | {-0.587785, -0.425325, 0.688191},
145 | {-0.309017, -0.500000, 0.809017},
146 | {-0.147621, -0.716567, 0.681718},
147 | {-0.425325, -0.688191, 0.587785},
148 | {-0.162460, -0.262866, 0.951056},
149 | {0.442863, -0.238856, 0.864188},
150 | {0.162460, -0.262866, 0.951056},
151 | {0.309017, -0.500000, 0.809017},
152 | {0.147621, -0.716567, 0.681718},
153 | {0.000000, -0.525731, 0.850651},
154 | {0.425325, -0.688191, 0.587785},
155 | {0.587785, -0.425325, 0.688191},
156 | {0.688191, -0.587785, 0.425325},
157 | {-0.955423, 0.295242, 0.000000},
158 | {-0.951056, 0.162460, 0.262866},
159 | {-1.000000, 0.000000, 0.000000},
160 | {-0.850651, 0.000000, 0.525731},
161 | {-0.955423, -0.295242, 0.000000},
162 | {-0.951056, -0.162460, 0.262866},
163 | {-0.864188, 0.442863, -0.238856},
164 | {-0.951056, 0.162460, -0.262866},
165 | {-0.809017, 0.309017, -0.500000},
166 | {-0.864188, -0.442863, -0.238856},
167 | {-0.951056, -0.162460, -0.262866},
168 | {-0.809017, -0.309017, -0.500000},
169 | {-0.681718, 0.147621, -0.716567},
170 | {-0.681718, -0.147621, -0.716567},
171 | {-0.850651, 0.000000, -0.525731},
172 | {-0.688191, 0.587785, -0.425325},
173 | {-0.587785, 0.425325, -0.688191},
174 | {-0.425325, 0.688191, -0.587785},
175 | {-0.425325, -0.688191, -0.587785},
176 | {-0.587785, -0.425325, -0.688191},
177 | {-0.688191, -0.587785, -0.425325},
178 |
--------------------------------------------------------------------------------
/ev0lution/Hack/Cvars/Cvars.h:
--------------------------------------------------------------------------------
1 | #define nc(c) cvar_s *c;
2 | //CFunc cfunc;
3 | class CCvars;
4 | class CCvars
5 | {
6 | public:
7 | void Init();
8 |
9 | bool hide_from_obs;
10 |
11 | bool aim;
12 | bool aim_teammates;
13 | bool aim_delay_shot;
14 | float aim_target_selection;
15 | float aim_hitbox;
16 | float aim_multi_point;
17 | bool aim_penetration;
18 | bool aim_silent;
19 | bool aim_perfect_silent;
20 | bool aim_autoscope;
21 |
22 | bool quick_stop;
23 | bool quick_stop_duck;
24 |
25 | bool fakelag;
26 | bool fakelag_while_shooting;
27 | float fakelag_type;
28 | float fakelag_move;
29 | float fakelag_variance;
30 | float fakelag_limit;
31 |
32 | float brightness;
33 | float brightness_r;
34 | float brightness_g;
35 | float brightness_b;
36 |
37 | bool autopistol;
38 | bool autoreload;
39 | bool fastzoom;
40 |
41 | bool nosmoke;
42 | bool remove_scope;
43 | float custom_fov; //x3
44 | float fov_zoom;//
45 | bool crosshair;
46 |
47 | float crosshair_r;
48 | float crosshair_g;
49 | float crosshair_b;
50 |
51 | float thirdperson;
52 |
53 | bool disable_render_teammates;
54 |
55 | bool bullets_trace;
56 |
57 | float noflash;
58 |
59 | bool esp;
60 | bool esp_behind;
61 | bool esp_teammates;
62 | bool esp_drawhistory;
63 | float esp_box;
64 | float esp_box_ct_vis_r;
65 | float esp_box_ct_vis_g;
66 | float esp_box_ct_vis_b;
67 | float esp_box_t_vis_r;
68 | float esp_box_t_vis_g;
69 | float esp_box_t_vis_b;
70 | float esp_box_ct_invis_r;
71 | float esp_box_ct_invis_g;
72 | float esp_box_ct_invis_b;
73 | float esp_box_t_invis_r;
74 | float esp_box_t_invis_g;
75 | float esp_box_t_invis_b;
76 | float esp_box_friends_r;
77 | float esp_box_friends_g;
78 | float esp_box_friends_b;
79 |
80 | float esp_boxfill;
81 |
82 | bool esp_box_outline;
83 | bool esp_name;
84 |
85 | bool esp_fake;
86 | bool bypass_trace_blockers;
87 | bool bypass_valid_blockers;
88 | float esp_sound_minimum_volume;
89 |
90 | bool esp_weapon;
91 | float esp_weapon_r;
92 | float esp_weapon_g;
93 | float esp_weapon_b;
94 |
95 | bool crosshair_Active;
96 | float crosshair_Size;
97 | float crosshair_Gap;
98 | float crosshair_Thickness;
99 | float crosshair_Dynamic;
100 | float crosshair_DynamicScale;
101 | float crosshair_Snipers;
102 | bool crosshair_Outline;
103 | bool crosshair_Dot;
104 | float crosshair_color_r;
105 | float crosshair_color_g;
106 | float crosshair_color_b;
107 |
108 | float bhop_mode;
109 |
110 | bool esp_world_weapon;
111 | float esp_world_weapon_r;
112 | float esp_world_weapon_g;
113 | float esp_world_weapon_b;
114 |
115 | bool esp_flags;
116 | bool esp_distance;
117 | bool esp_hitboxes;
118 | bool esp_sound;
119 | bool esp_health;
120 |
121 | float esp_alpha;
122 |
123 | bool esp_line_of_sight;
124 | float esp_line_of_sight_r;
125 | float esp_line_of_sight_g;
126 | float esp_line_of_sight_b;
127 |
128 | bool esp_screen;
129 |
130 | bool esp_shots_fired;
131 |
132 | bool esp_bomb;
133 | float esp_bomb_r;
134 | float esp_bomb_g;
135 | float esp_bomb_b;
136 |
137 | bool hud_clear;
138 |
139 | bool penetration_info;
140 |
141 | float recoil_overlay_r;
142 | float recoil_overlay_g;
143 | float recoil_overlay_b;
144 |
145 | float spread_overlay_r;
146 | float spread_overlay_g;
147 | float spread_overlay_b;
148 |
149 | bool grenade_trajectory;
150 |
151 | bool chams;
152 | bool chams_behind_wall;
153 | float chams_type;
154 |
155 | float chams_t_vis_r;
156 | float chams_t_vis_g;
157 | float chams_t_vis_b;
158 |
159 | float chams_t_invis_r;
160 | float chams_t_invis_g;
161 | float chams_t_invis_b;
162 |
163 | float chams_ct_vis_r;
164 | float chams_ct_vis_g;
165 | float chams_ct_vis_b;
166 |
167 | float chams_ct_invis_r;
168 | float chams_ct_invis_g;
169 | float chams_ct_invis_b;
170 |
171 | bool glow_players;
172 |
173 | float glow_players_ct_r;
174 | float glow_players_ct_g;
175 | float glow_players_ct_b;
176 |
177 | float glow_players_t_r;
178 | float glow_players_t_g;
179 | float glow_players_t_b;
180 |
181 | bool spread_overlay;
182 | bool spread_overlay_old;
183 | bool recoil_overlay;
184 |
185 | bool draw_aim_fov;
186 | float draw_aim_fov_r;
187 | float draw_aim_fov_g;
188 | float draw_aim_fov_b;
189 |
190 | bool norecoil;
191 | bool norecoil_visual;
192 |
193 | bool nospread;
194 | float nospread_method;
195 |
196 | float aa_yaw_while_running;
197 | float aa_yaw;
198 | float aa_yaw_static;
199 | float aa_pitch;
200 | float aa_edge;
201 |
202 | bool legit_teammates;
203 | bool trigger_only_zoomed;
204 | float block_attack_after_kill;
205 | int trigger_key;
206 | int aimbot_key;
207 |
208 | float menu_legit_global_section;
209 | float menu_legit_sub_section;
210 |
211 | int menu_key;
212 |
213 | float menu_color_r;
214 | float menu_color_g;
215 | float menu_color_b;
216 |
217 | bool bunnyhop;
218 | bool ddrun;
219 | bool autostrafe;
220 | bool knifebot;
221 | bool use_all_undetected;
222 | bool isStrafe;
223 | bool aimbot_on_key;
224 | bool strafeemulator;
225 | bool jumpbug;
226 | bool fastrun;
227 |
228 |
229 |
230 | float name_stealer;
231 |
232 | bool debug;
233 |
234 |
235 | short ideal_jumps;
236 | bool inGstrafe;
237 | bool inSGstrafe;
238 | int Gstrafe;
239 | int gStrafeGroundDD;
240 | int afterGstrafeFrame;
241 | bool inBhop;
242 | bool inPubstomp;
243 | //bool JumpBug_active;
244 | //bool inSosobhop;
245 | bool inScroll;
246 | int afterJumpFrames;
247 | int afterJumpPattern;
248 | int beforeJumpPattern;
249 | int beforeJumpFrames;
250 | int groundframes;
251 | float playerSpeed;
252 | float bhopSpeedCap;
253 | bool bFail;
254 | bool bScrollDone[4];
255 | cvar_t *bwhack;
256 | cvar_t *showkeys;
257 | bool deathMsg;
258 | bool FOV = TRUE;
259 | bool bScrollJumpUp;
260 | bool bGSType;
261 | bool bBHType;
262 | bool OnlyFastBhop;
263 | bool bDuck;
264 | bool inDuckRoll;
265 | bool bWallBug;
266 | bool bRemFlash;
267 | cvar_t *wallbug_angle;
268 |
269 | //cvar_t *rem_flash;
270 | /*cvar_s *kb;
271 | cvar_s *kb_attack;
272 | cvar_s *kb_dist1;
273 | cvar_s *kb_dist2;
274 | cvar_s *kb_dm;
275 | cvar_s *kb_aim;
276 | cvar_s *kb_aim_silent;*/
277 |
278 |
279 |
280 | struct legit_weapons
281 | {
282 | bool aim;
283 | bool aim_head;
284 | bool aim_chest;
285 | bool aim_stomach;
286 | bool aim_quick_stop;
287 | bool aim_humanize;
288 | bool aim_spread_compenstation;
289 | float aim_accuracy;
290 | float aim_psilent;
291 | float aim_fov;
292 | float aim_speed;
293 | float aim_speed_in_attack;
294 | float aim_speed_scale_fov;
295 | float aim_recoil_compensation_pitch;
296 | float aim_recoil_compensation_yaw;
297 | float aim_recoil_compensation_after_shots_fired;
298 | float aim_reaction_time;
299 |
300 | bool trigger;
301 | bool trigger_head;
302 | bool trigger_chest;
303 | bool trigger_stomach;
304 | bool trigger_penetration;
305 | float trigger_accuracy;
306 | } legit[31];
307 | };
308 | extern CCvars cvar;
309 |
310 | class CFunctions
311 | {
312 | public:
313 | void Init();
314 |
315 | void LoadCvars();
316 | void SaveCvars();
317 |
318 | void AdjustSpeed(double speed);
319 | };
320 | extern CFunctions func;
321 |
322 |
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/VGUI2/ISurface.h:
--------------------------------------------------------------------------------
1 | #ifndef ISURFACE_H
2 | #define ISURFACE_H
3 | #ifdef _WIN32
4 | #pragma once
5 | #endif
6 |
7 | #ifdef CreateFont
8 | #undef CreateFont
9 | #endif
10 |
11 | #ifdef PlaySound
12 | #undef PlaySound
13 | #endif
14 |
15 | #include "IPanel.h"
16 | #include "IHTML.h"
17 |
18 | class Color;
19 |
20 | template< typename Function > Function call_func( PVOID Base , DWORD Index )
21 | {
22 | PDWORD* VTablePointer = (PDWORD*)Base;
23 | PDWORD VTableFunctionBase = *VTablePointer;
24 | DWORD dwAddress = VTableFunctionBase[Index];
25 | return (Function)( dwAddress );
26 | }
27 |
28 | namespace vgui
29 | {
30 | class IImage;
31 | class Image;
32 | class Point;
33 | class IHTML;
34 | class IHTMLEvents;
35 |
36 | typedef unsigned long HCursor;
37 | typedef unsigned long HTexture;
38 | typedef unsigned long HFont;
39 |
40 | class ISurface : public IBaseInterface
41 | {
42 | public:
43 | enum EFontFlags
44 | {
45 | FONTFLAG_NONE ,
46 | FONTFLAG_ITALIC = 0x001 ,
47 | FONTFLAG_UNDERLINE = 0x002 ,
48 | FONTFLAG_STRIKEOUT = 0x004 ,
49 | FONTFLAG_SYMBOL = 0x008 ,
50 | FONTFLAG_ANTIALIAS = 0x010 ,
51 | FONTFLAG_GAUSSIANBLUR = 0x020 ,
52 | FONTFLAG_ROTARY = 0x040 ,
53 | FONTFLAG_DROPSHADOW = 0x080 ,
54 | FONTFLAG_ADDITIVE = 0x100 ,
55 | FONTFLAG_OUTLINE = 0x200 ,
56 | };
57 |
58 | enum SurfaceFeature_e
59 | {
60 | ANTIALIASED_FONTS = 1 ,
61 | DROPSHADOW_FONTS = 2 ,
62 | ESCAPE_KEY = 3 ,
63 | OPENING_NEW_HTML_WINDOWS = 4 ,
64 | FRAME_MINIMIZE_MAXIMIZE = 5 ,
65 | DIRECT_HWND_RENDER = 6 ,
66 | };
67 |
68 | public:
69 | virtual void Shutdown( void ) = 0;
70 | virtual void RunFrame( void ) = 0;
71 | virtual IPanel* GetEmbeddedPanel( void ) = 0;
72 | virtual void SetEmbeddedPanel( IPanel* pPanel ) = 0;
73 | virtual void PushMakeCurrent( IPanel* panel , bool useInsets ) = 0;
74 | virtual void PopMakeCurrent( IPanel* panel ) = 0;
75 | virtual void DrawSetColor( int r , int g , int b , int a ) = 0;
76 | virtual void DrawSetColor( Color col ) = 0;
77 | virtual void DrawFilledRect( int x0 , int y0 , int x1 , int y1 ) = 0;
78 | virtual void DrawOutlinedRect( int x0 , int y0 , int x1 , int y1 ) = 0;
79 | virtual void DrawLine( int x0 , int y0 , int x1 , int y1 ) = 0;
80 | virtual void DrawPolyLine( int *px , int *py , int numPoints ) = 0;
81 | virtual void DrawSetTextFont( HFont font ) = 0;
82 | virtual void DrawSetTextColor( int r , int g , int b , int a ) = 0;
83 | virtual void DrawSetTextColor( Color col ) = 0;
84 | virtual void DrawSetTextPos( int x , int y ) = 0;
85 | virtual void DrawGetTextPos( int &x , int &y ) = 0;
86 | virtual void DrawPrintText( const wchar_t *text , int textLen ) = 0;
87 | virtual void DrawUnicodeChar( wchar_t wch ) = 0;
88 | virtual void DrawUnicodeCharAdd( wchar_t wch ) = 0;
89 | virtual void DrawFlushText( void ) = 0;
90 | virtual IHTML* CreateHTMLWindow( IHTMLEvents *events , IPanel* context ) = 0;
91 | virtual void PaintHTMLWindow( IHTML *htmlwin ) = 0;
92 | virtual void DeleteHTMLWindow( IHTML *htmlwin ) = 0;
93 | virtual void DrawSetTextureFile( int id , const char *filename , int hardwareFilter , bool forceReload ) = 0;
94 | virtual void DrawSetTextureRGBA( int id , const unsigned char *rgba , int wide , int tall , int hardwareFilter , bool forceReload ) = 0;
95 | virtual void DrawSetTexture( int id ) = 0;
96 | virtual void DrawGetTextureSize( int id , int &wide , int &tall ) = 0;
97 | virtual void DrawTexturedRect( int x0 , int y0 , int x1 , int y1 ) = 0;
98 | virtual bool IsTextureIDValid( int id ) = 0;
99 | virtual int CreateNewTextureID( bool procedural = false ) = 0;
100 | virtual void GetScreenSize( int &wide , int &tall ) = 0;
101 | virtual void SetAsTopMost( IPanel* panel , bool state ) = 0;
102 | virtual void BringToFront( IPanel* panel ) = 0;
103 | virtual void SetForegroundWindow( IPanel* panel ) = 0;
104 | virtual void SetPanelVisible( IPanel* panel , bool state ) = 0;
105 | virtual void SetMinimized( IPanel* panel , bool state ) = 0;
106 | virtual bool IsMinimized( IPanel* panel ) = 0;
107 | virtual void FlashWindow( IPanel* panel , bool state ) = 0;
108 | virtual void SetTitle( IPanel* panel , const wchar_t *title ) = 0;
109 | virtual void SetAsToolBar( IPanel* panel , bool state ) = 0;
110 | virtual void CreatePopup( IPanel* panel , bool minimised , bool showTaskbarIcon = true , bool disabled = false , bool mouseInput = true , bool kbInput = true ) = 0;
111 | virtual void SwapBuffers( IPanel* panel ) = 0;
112 | virtual void Invalidate( IPanel* panel ) = 0;
113 | virtual void SetCursor( HCursor cursor ) = 0;
114 | virtual bool IsCursorVisible( void ) = 0;
115 | virtual void ApplyChanges( void ) = 0;
116 | virtual bool IsWithin( int x , int y ) = 0;
117 | virtual bool HasFocus( void ) = 0;
118 | virtual bool SupportsFeature( SurfaceFeature_e feature ) = 0;
119 | virtual void RestrictPaintToSinglePanel( IPanel* panel ) = 0;
120 | virtual void SetModalPanel( IPanel* panel ) = 0;
121 | virtual IPanel* GetModalPanel( void ) = 0;
122 | virtual void UnlockCursor( void ) = 0;
123 | virtual void LockCursor( void ) = 0;
124 | virtual void SetTranslateExtendedKeys( bool state ) = 0;
125 | virtual IPanel* GetTopmostPopup( void ) = 0;
126 | virtual void SetTopLevelFocus( IPanel* panel ) = 0;
127 | virtual HFont CreateFont( void ) = 0;
128 | virtual bool AddGlyphSetToFont( HFont font , const char *windowsFontName , int tall , int weight , int blur , int scanlines , int flags , int lowRange , int highRange ) = 0;
129 | virtual bool AddCustomFontFile( const char *fontFileName ) = 0;
130 | virtual int GetFontTall( HFont font ) = 0;
131 | virtual void GetCharABCwide( HFont font , int ch , int &a , int &b , int &c ) = 0;
132 | virtual int GetCharacterWidth( HFont font , int ch ) = 0;
133 | virtual void GetTextSize( HFont font , const wchar_t *text , int &wide , int &tall ) = 0;
134 | virtual IPanel* GetNotifyPanel( void ) = 0;
135 | virtual void SetNotifyIcon( IPanel* context , HTexture icon , IPanel* panelToReceiveMessages , const char *text ) = 0;
136 | virtual void PlaySound( const char *fileName ) = 0;
137 | virtual int GetPopupCount( void ) = 0;
138 | virtual IPanel* GetPopup( int index ) = 0;
139 | virtual bool ShouldPaintChildPanel( IPanel* childPanel ) = 0;
140 | virtual bool RecreateContext( IPanel* panel ) = 0;
141 | virtual void AddPanel( IPanel* panel ) = 0;
142 | virtual void ReleasePanel( IPanel* panel ) = 0;
143 | virtual void MovePopupToFront( IPanel* panel ) = 0;
144 | virtual void MovePopupToBack( IPanel* panel ) = 0;
145 | virtual void SolveTraverse( IPanel* panel , bool forceApplySchemeSettings = false ) = 0;
146 | virtual void PaintTraverse( IPanel* panel ) = 0;
147 | virtual void EnableMouseCapture( IPanel* panel , bool state ) = 0;
148 | virtual void GetWorkspaceBounds( int &x , int &y , int &wide , int &tall ) = 0;
149 | virtual void GetAbsoluteWindowBounds( int &x , int &y , int &wide , int &tall ) = 0;
150 | virtual void GetProportionalBase( int &width , int &height ) = 0;
151 | virtual void CalculateMouseVisible( void ) = 0;
152 | virtual bool NeedKBInput( void ) = 0;
153 | virtual bool HasCursorPosFunctions( void ) = 0;
154 | virtual void SurfaceGetCursorPos( int &x , int &y ) = 0;
155 | virtual void SurfaceSetCursorPos( int x , int y ) = 0;
156 | virtual void DrawTexturedPolygon( int *p , int n ) = 0;
157 | virtual int GetFontAscent( HFont font , wchar_t wch ) = 0;
158 | virtual void SetAllowHTMLJavaScript( bool state ) = 0;
159 | };
160 | }
161 |
162 | extern vgui::ISurface* g_pISurface;
163 |
164 | #define VGUI_SURFACE_INTERFACE_VERSION "VGUI_Surface026"
165 | #endif
--------------------------------------------------------------------------------
/ev0lution/raw_inputs.h:
--------------------------------------------------------------------------------
1 | #include
2 | #ifndef DIRECT_X_KEYS_HPP_DEFINED
3 | #define DIRECT_X_KEYS_HPP_DEFINED
4 |
5 | #define DIKEYBOARD_ESCAPE 0x0401 //
6 | #define DIKEYBOARD_1 0x0402 //
7 | #define DIKEYBOARD_2 0x0403 //
8 | #define DIKEYBOARD_3 0x0404 //
9 | #define DIKEYBOARD_4 0x0405 //
10 | #define DIKEYBOARD_5 0x0406 //
11 | #define DIKEYBOARD_6 0x0407 //
12 | #define DIKEYBOARD_7 0x0408 //
13 | #define DIKEYBOARD_8 0x0409 //
14 | #define DIKEYBOARD_9 0x040A //
15 | #define DIKEYBOARD_0 0x040B //
16 | #define DIKEYBOARD_MINUS 0x040C // (* - on main keyboard *)
17 | #define DIKEYBOARD_EQUALS 0x040D //
18 | #define DIKEYBOARD_BACK 0x040E // (* backspace *)
19 | #define DIKEYBOARD_TAB 0x040F //
20 | #define DIKEYBOARD_Q 0x0410 //
21 | #define DIKEYBOARD_W 0x0411 //
22 | #define DIKEYBOARD_E 0x0412 //
23 | #define DIKEYBOARD_R 0x0413 //
24 | #define DIKEYBOARD_T 0x0414 //
25 | #define DIKEYBOARD_Y 0x0415 //
26 | #define DIKEYBOARD_U 0x0416 //
27 | #define DIKEYBOARD_I 0x0417 //
28 | #define DIKEYBOARD_O 0x0418 //
29 | #define DIKEYBOARD_P 0x0419 //
30 | #define DIKEYBOARD_LBRACKET 0x041A //
31 | #define DIKEYBOARD_RBRACKET 0x041B //
32 | #define DIKEYBOARD_RETURN 0x041C // (* Enter on main keyboard *)
33 | #define DIKEYBOARD_LCONTROL 0x041D //
34 | #define DIKEYBOARD_A 0x041E //
35 | #define DIKEYBOARD_S 0x041F //
36 | #define DIKEYBOARD_D 0x0420 //
37 | #define DIKEYBOARD_F 0x0421 //
38 | #define DIKEYBOARD_G 0x0422 //
39 | #define DIKEYBOARD_H 0x0423 //
40 | #define DIKEYBOARD_J 0x0424 //
41 | #define DIKEYBOARD_K 0x0425 //
42 | #define DIKEYBOARD_L 0x0426 //
43 | #define DIKEYBOARD_SEMICOLON 0x0427 //
44 | #define DIKEYBOARD_APOSTROPHE 0x0428 //
45 | #define DIKEYBOARD_GRAVE 0x0429 // (* accent grave *)
46 | #define DIKEYBOARD_LSHIFT 0x042A //
47 | #define DIKEYBOARD_BACKSLASH 0x042B //
48 | #define DIKEYBOARD_Z 0x042C //
49 | #define DIKEYBOARD_X 0x042D //
50 | #define DIKEYBOARD_C 0x042E //
51 | #define DIKEYBOARD_V 0x042F //
52 | #define DIKEYBOARD_B 0x0430 //
53 | #define DIKEYBOARD_N 0x0431 //
54 | #define DIKEYBOARD_M 0x0432 //
55 | #define DIKEYBOARD_COMMA 0x0433 //
56 | #define DIKEYBOARD_PERIOD 0x0434 // (* . on main keyboard *)
57 | #define DIKEYBOARD_SLASH 0x0435 // (* / on main keyboard *)
58 | #define DIKEYBOARD_RSHIFT 0x0436 //
59 | #define DIKEYBOARD_MULTIPLY 0x0437 // (* * on numeric keypad *)
60 | #define DIKEYBOARD_LMENU 0x0438 // (* left Alt *)
61 | #define DIKEYBOARD_SPACE 0x0439 //
62 | #define DIKEYBOARD_CAPITAL 0x043A //
63 | #define DIKEYBOARD_F1 0x043B //
64 | #define DIKEYBOARD_F2 0x043C //
65 | #define DIKEYBOARD_F3 0x043D //
66 | #define DIKEYBOARD_F4 0x043E //
67 | #define DIKEYBOARD_F5 0x043F //
68 | #define DIKEYBOARD_F6 0x0440 //
69 | #define DIKEYBOARD_F7 0x0441 //
70 | #define DIKEYBOARD_F8 0x0442 //
71 | #define DIKEYBOARD_F9 0x0443 //
72 | #define DIKEYBOARD_F10 0x0444 //
73 | #define DIKEYBOARD_NUMLOCK 0x0445 //
74 | #define DIKEYBOARD_SCROLL 0x0446 // (* Scroll Lock *)
75 | #define DIKEYBOARD_NUMPAD7 0x0447 //
76 | #define DIKEYBOARD_NUMPAD8 0x0448 //
77 | #define DIKEYBOARD_NUMPAD9 0x0449 //
78 | #define DIKEYBOARD_SUBTRACT 0x044A // (* - on numeric keypad *)
79 | #define DIKEYBOARD_NUMPAD4 0x044B //
80 | #define DIKEYBOARD_NUMPAD5 0x044C //
81 | #define DIKEYBOARD_NUMPAD6 0x044D //
82 | #define DIKEYBOARD_ADD 0x044E // (* + on numeric keypad *)
83 | #define DIKEYBOARD_NUMPAD1 0x044F //
84 | #define DIKEYBOARD_NUMPAD2 0x0450 //
85 | #define DIKEYBOARD_NUMPAD3 0x0451 //
86 | #define DIKEYBOARD_NUMPAD0 0x0452 //
87 | #define DIKEYBOARD_DECIMAL 0x0453 // (* . on numeric keypad *)
88 | #define DIKEYBOARD_OEM_102 0x0456 // (* < > | on UK/Germany keyboards *)
89 | #define DIKEYBOARD_F11 0x0457 //
90 | #define DIKEYBOARD_F12 0x0458 //
91 | #define DIKEYBOARD_F13 0x0464 // (* (NEC PC98) *)
92 | #define DIKEYBOARD_F14 0x0465 // (* (NEC PC98) *)
93 | #define DIKEYBOARD_F15 0x0466 // (* (NEC PC98) *)
94 | #define DIKEYBOARD_KANA 0x0470 // (* (Japanese keyboard) *)
95 | #define DIKEYBOARD_ABNT_C1 0x0473 // (* / ? on Portugese (Brazilian) keyboards *)
96 | #define DIKEYBOARD_CONVERT 0x0479 // (* (Japanese keyboard) *)
97 | #define DIKEYBOARD_NOCONVERT 0x047B // (* (Japanese keyboard) *)
98 | #define DIKEYBOARD_YEN 0x047D // (* (Japanese keyboard) *)
99 | #define DIKEYBOARD_ABNT_C2 0x047E // (* Numpad . on Portugese (Brazilian) keyboards *)
100 | #define DIKEYBOARD_NUMPADEQUALS 0x048D // (* = on numeric keypad (NEC PC98) *)
101 | #define DIKEYBOARD_PREVTRACK 0x0490 // (* Previous Track (DIK_CIRCUMFLEX on Japanese keyboard) *)
102 | #define DIKEYBOARD_AT 0x0491 // (* (NEC PC98) *)
103 | #define DIKEYBOARD_COLON 0x0492 // (* (NEC PC98) *)
104 | #define DIKEYBOARD_UNDERLINE 0x0493 // (* (NEC PC98) *)
105 | #define DIKEYBOARD_KANJI 0x0494 // (* (Japanese keyboard) *)
106 | #define DIKEYBOARD_STOP 0x0495 // (* (NEC PC98) *)
107 | #define DIKEYBOARD_AX 0x0496 // (* (Japan AX) *)
108 | #define DIKEYBOARD_UNLABELED 0x0497 // (* (J3100) *)
109 | #define DIKEYBOARD_NEXTTRACK 0x0499 // (* Next Track *)
110 | #define DIKEYBOARD_NUMPADENTER 0x049C // (* Enter on numeric keypad *)
111 | #define DIKEYBOARD_RCONTROL 0x049D //
112 | #define DIKEYBOARD_MUTE 0x04A0 // (* Mute *)
113 | #define DIKEYBOARD_CALCULATOR 0x04A1 // (* Calculator *)
114 | #define DIKEYBOARD_PLAYPAUSE 0x04A2 // (* Play / Pause *)
115 | #define DIKEYBOARD_MEDIASTOP 0x04A4 // (* Media Stop *)
116 | #define DIKEYBOARD_VOLUMEDOWN 0x04AE // (* Volume - *)
117 | #define DIKEYBOARD_VOLUMEUP 0x04B0 // (* Volume + *)
118 | #define DIKEYBOARD_WEBHOME 0x04B2 // (* Web home *)
119 | #define DIKEYBOARD_NUMPADCOMMA 0x04B3 // (* , on numeric keypad (NEC PC98) *)
120 | #define DIKEYBOARD_DIVIDE 0x04B5 // (* / on numeric keypad *)
121 | #define DIKEYBOARD_SYSRQ 0x04B7 //
122 | #define DIKEYBOARD_RMENU 0x04B8 // (* right Alt *)
123 | #define DIKEYBOARD_PAUSE 0x04C5 // (* Pause *)
124 | #define DIKEYBOARD_HOME 0x04C7 // (* Home on arrow keypad *)
125 | #define DIKEYBOARD_UP 0x04C8 // (* UpArrow on arrow keypad *)
126 | #define DIKEYBOARD_PRIOR 0x04C9 // (* PgUp on arrow keypad *)
127 | #define DIKEYBOARD_LEFT 0x04CB // (* LeftArrow on arrow keypad *)
128 | #define DIKEYBOARD_RIGHT 0x04CD // (* RightArrow on arrow keypad *)
129 | #define DIKEYBOARD_END 0x04CF // (* End on arrow keypad *)
130 | #define DIKEYBOARD_DOWN 0x04D0 // (* DownArrow on arrow keypad *)
131 | #define DIKEYBOARD_NEXT 0x04D1 // (* PgDn on arrow keypad *)
132 | #define DIKEYBOARD_INSERT 0x04D2 // (* Insert on arrow keypad *)
133 | #define DIKEYBOARD_DELETE 0x04D3 // (* Delete on arrow keypad *)
134 | #define DIKEYBOARD_LWIN 0x04DB // (* Left Windows key *)
135 | #define DIKEYBOARD_RWIN 0x04DC // (* Right Windows key *)
136 | #define DIKEYBOARD_APPS 0x04DD // (* AppMenu key *)
137 | #define DIKEYBOARD_POWER 0x04DE // (* System Power *)
138 | #define DIKEYBOARD_SLEEP 0x04DF // (* System Sleep *)
139 | #define DIKEYBOARD_WAKE 0x04E3 // (* System Wake *)
140 | #define DIKEYBOARD_WEBSEARCH 0x04E5 // (* Web Search *)
141 | #define DIKEYBOARD_WEBFAVORITES 0x04E6 // (* Web Favorites *)
142 | #define DIKEYBOARD_WEBREFRESH 0x04E7 // (* Web Refresh *)
143 | #define DIKEYBOARD_WEBSTOP 0x04E8 // (* Web Stop *)
144 | #define DIKEYBOARD_WEBFORWARD 0x04E9 // (* Web Forward *)
145 | #define DIKEYBOARD_WEBBACK 0x04EA // (* Web Back *)
146 | #define DIKEYBOARD_MYCOMPUTER 0x04EB // (* My Computer *)
147 | #define DIKEYBOARD_MAIL 0x04EC // (* Mail *)
148 | #define DIKEYBOARD_MEDIASELECT 0x04ED // (* Media Select *)
149 |
150 |
151 |
152 | #endif
153 |
154 | inline void SimulateKey(unsigned short wKey, int iPressKey)
155 | {
156 | INPUT input;
157 |
158 | input.type = INPUT_KEYBOARD;
159 | input.ki.dwFlags = iPressKey ? 0x0008 : (0x0008 | 0x0002);
160 | input.ki.wScan = wKey;
161 |
162 | SendInput(1, &input, sizeof(input));
163 | }
--------------------------------------------------------------------------------
/ev0lution/Reflective/ReflectiveLoader.h:
--------------------------------------------------------------------------------
1 | //===============================================================================================//
2 | // Copyright (c) 2012, Stephen Fewer of Harmony Security (www.harmonysecurity.com)
3 | // All rights reserved.
4 | //
5 | // Redistribution and use in source and binary forms, with or without modification, are permitted
6 | // provided that the following conditions are met:
7 | //
8 | // * Redistributions of source code must retain the above copyright notice, this list of
9 | // conditions and the following disclaimer.
10 | //
11 | // * Redistributions in binary form must reproduce the above copyright notice, this list of
12 | // conditions and the following disclaimer in the documentation and/or other materials provided
13 | // with the distribution.
14 | //
15 | // * Neither the name of Harmony Security nor the names of its contributors may be used to
16 | // endorse or promote products derived from this software without specific prior written permission.
17 | //
18 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
19 | // IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
20 | // FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
21 | // CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
22 | // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
23 | // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
24 | // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
25 | // OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
26 | // POSSIBILITY OF SUCH DAMAGE.
27 | //===============================================================================================//
28 | #ifndef _REFLECTIVEDLLINJECTION_REFLECTIVELOADER_H
29 | #define _REFLECTIVEDLLINJECTION_REFLECTIVELOADER_H
30 | //===============================================================================================//
31 | #define WIN32_LEAN_AND_MEAN
32 | #include
33 | //#include
34 | #include
35 |
36 | #include "ReflectiveDLLInjection.h"
37 |
38 | typedef HMODULE (WINAPI * LOADLIBRARYA)( LPCSTR );
39 | typedef FARPROC (WINAPI * GETPROCADDRESS)( HMODULE, LPCSTR );
40 | typedef LPVOID (WINAPI * VIRTUALALLOC)( LPVOID, SIZE_T, DWORD, DWORD );
41 | typedef DWORD (NTAPI * NTFLUSHINSTRUCTIONCACHE)( HANDLE, PVOID, ULONG );
42 |
43 | #define KERNEL32DLL_HASH 0x6A4ABC5B
44 | #define NTDLLDLL_HASH 0x3CFA685D
45 |
46 | #define LOADLIBRARYA_HASH 0xEC0E4E8E
47 | #define GETPROCADDRESS_HASH 0x7C0DFCAA
48 | #define VIRTUALALLOC_HASH 0x91AFCA54
49 | #define NTFLUSHINSTRUCTIONCACHE_HASH 0x534C0AB8
50 |
51 | #define IMAGE_REL_BASED_ARM_MOV32A 5
52 | #define IMAGE_REL_BASED_ARM_MOV32T 7
53 |
54 | #define ARM_MOV_MASK (DWORD)(0xFBF08000)
55 | #define ARM_MOV_MASK2 (DWORD)(0xFBF08F00)
56 | #define ARM_MOVW 0xF2400000
57 | #define ARM_MOVT 0xF2C00000
58 |
59 | #define HASH_KEY 13
60 | //===============================================================================================//
61 | #pragma intrinsic( _rotr )
62 |
63 | __forceinline DWORD ror( DWORD d )
64 | {
65 | return _rotr( d, HASH_KEY );
66 | }
67 |
68 | __forceinline DWORD hash( char * c )
69 | {
70 | register DWORD h = 0;
71 | do
72 | {
73 | h = ror( h );
74 | h += *c;
75 | } while( *++c );
76 |
77 | return h;
78 | }
79 | //===============================================================================================//
80 | typedef struct _UNICODE_STR
81 | {
82 | USHORT Length;
83 | USHORT MaximumLength;
84 | PWSTR pBuffer;
85 | } UNICODE_STR, *PUNICODE_STR;
86 |
87 | // WinDbg> dt -v ntdll!_LDR_DATA_TABLE_ENTRY
88 | //__declspec( align(8) )
89 | typedef struct _LDR_DATA_TABLE_ENTRY
90 | {
91 | //LIST_ENTRY InLoadOrderLinks; // As we search from PPEB_LDR_DATA->InMemoryOrderModuleList we dont use the first entry.
92 | LIST_ENTRY InMemoryOrderModuleList;
93 | LIST_ENTRY InInitializationOrderModuleList;
94 | PVOID DllBase;
95 | PVOID EntryPoint;
96 | ULONG SizeOfImage;
97 | UNICODE_STR FullDllName;
98 | UNICODE_STR BaseDllName;
99 | ULONG Flags;
100 | SHORT LoadCount;
101 | SHORT TlsIndex;
102 | LIST_ENTRY HashTableEntry;
103 | ULONG TimeDateStamp;
104 | } LDR_DATA_TABLE_ENTRY, *PLDR_DATA_TABLE_ENTRY;
105 |
106 | // WinDbg> dt -v ntdll!_PEB_LDR_DATA
107 | typedef struct _PEB_LDR_DATA //, 7 elements, 0x28 bytes
108 | {
109 | DWORD dwLength;
110 | DWORD dwInitialized;
111 | LPVOID lpSsHandle;
112 | LIST_ENTRY InLoadOrderModuleList;
113 | LIST_ENTRY InMemoryOrderModuleList;
114 | LIST_ENTRY InInitializationOrderModuleList;
115 | LPVOID lpEntryInProgress;
116 | } PEB_LDR_DATA, * PPEB_LDR_DATA;
117 |
118 | // WinDbg> dt -v ntdll!_PEB_FREE_BLOCK
119 | typedef struct _PEB_FREE_BLOCK // 2 elements, 0x8 bytes
120 | {
121 | struct _PEB_FREE_BLOCK * pNext;
122 | DWORD dwSize;
123 | } PEB_FREE_BLOCK, * PPEB_FREE_BLOCK;
124 |
125 | // struct _PEB is defined in Winternl.h but it is incomplete
126 | // WinDbg> dt -v ntdll!_PEB
127 | typedef struct __PEB // 65 elements, 0x210 bytes
128 | {
129 | BYTE bInheritedAddressSpace;
130 | BYTE bReadImageFileExecOptions;
131 | BYTE bBeingDebugged;
132 | BYTE bSpareBool;
133 | LPVOID lpMutant;
134 | LPVOID lpImageBaseAddress;
135 | PPEB_LDR_DATA pLdr;
136 | LPVOID lpProcessParameters;
137 | LPVOID lpSubSystemData;
138 | LPVOID lpProcessHeap;
139 | PRTL_CRITICAL_SECTION pFastPebLock;
140 | LPVOID lpFastPebLockRoutine;
141 | LPVOID lpFastPebUnlockRoutine;
142 | DWORD dwEnvironmentUpdateCount;
143 | LPVOID lpKernelCallbackTable;
144 | DWORD dwSystemReserved;
145 | DWORD dwAtlThunkSListPtr32;
146 | PPEB_FREE_BLOCK pFreeList;
147 | DWORD dwTlsExpansionCounter;
148 | LPVOID lpTlsBitmap;
149 | DWORD dwTlsBitmapBits[2];
150 | LPVOID lpReadOnlySharedMemoryBase;
151 | LPVOID lpReadOnlySharedMemoryHeap;
152 | LPVOID lpReadOnlyStaticServerData;
153 | LPVOID lpAnsiCodePageData;
154 | LPVOID lpOemCodePageData;
155 | LPVOID lpUnicodeCaseTableData;
156 | DWORD dwNumberOfProcessors;
157 | DWORD dwNtGlobalFlag;
158 | LARGE_INTEGER liCriticalSectionTimeout;
159 | DWORD dwHeapSegmentReserve;
160 | DWORD dwHeapSegmentCommit;
161 | DWORD dwHeapDeCommitTotalFreeThreshold;
162 | DWORD dwHeapDeCommitFreeBlockThreshold;
163 | DWORD dwNumberOfHeaps;
164 | DWORD dwMaximumNumberOfHeaps;
165 | LPVOID lpProcessHeaps;
166 | LPVOID lpGdiSharedHandleTable;
167 | LPVOID lpProcessStarterHelper;
168 | DWORD dwGdiDCAttributeList;
169 | LPVOID lpLoaderLock;
170 | DWORD dwOSMajorVersion;
171 | DWORD dwOSMinorVersion;
172 | WORD wOSBuildNumber;
173 | WORD wOSCSDVersion;
174 | DWORD dwOSPlatformId;
175 | DWORD dwImageSubsystem;
176 | DWORD dwImageSubsystemMajorVersion;
177 | DWORD dwImageSubsystemMinorVersion;
178 | DWORD dwImageProcessAffinityMask;
179 | DWORD dwGdiHandleBuffer[34];
180 | LPVOID lpPostProcessInitRoutine;
181 | LPVOID lpTlsExpansionBitmap;
182 | DWORD dwTlsExpansionBitmapBits[32];
183 | DWORD dwSessionId;
184 | ULARGE_INTEGER liAppCompatFlags;
185 | ULARGE_INTEGER liAppCompatFlagsUser;
186 | LPVOID lppShimData;
187 | LPVOID lpAppCompatInfo;
188 | UNICODE_STR usCSDVersion;
189 | LPVOID lpActivationContextData;
190 | LPVOID lpProcessAssemblyStorageMap;
191 | LPVOID lpSystemDefaultActivationContextData;
192 | LPVOID lpSystemAssemblyStorageMap;
193 | DWORD dwMinimumStackCommit;
194 | } _PEB, * _PPEB;
195 |
196 | typedef struct
197 | {
198 | WORD offset:12;
199 | WORD type:4;
200 | } IMAGE_RELOC, *PIMAGE_RELOC;
201 | //===============================================================================================//
202 | #endif
203 | //===============================================================================================//
204 |
205 | HINSTANCE hAppInstance;
--------------------------------------------------------------------------------
/ev0lution/ValveSDK/pm_shared/pm_debug.c:
--------------------------------------------------------------------------------
1 | /***
2 | *
3 | * Copyright (c) 1996-2002, Valve LLC. All rights reserved.
4 | *
5 | * This product contains software technology licensed from Id
6 | * Software, Inc. ("Id Technology"). Id Technology (c) 1996 Id Software, Inc.
7 | * All Rights Reserved.
8 | *
9 | * Use, distribution, and modification of this source code and/or resulting
10 | * object code is restricted to non-commercial enhancements to products from
11 | * Valve LLC. All other use, distribution, or modification is prohibited
12 | * without written permission from Valve LLC.
13 | *
14 | ****/
15 |
16 | #include "mathlib.h"
17 | #include "const.h"
18 | #include "usercmd.h"
19 | #include "pm_defs.h"
20 | #include "pm_shared.h"
21 | #include "pm_movevars.h"
22 | #include "pm_debug.h"
23 |
24 | #include
25 |
26 | #pragma warning(disable : 4244)
27 | #pragma warning(disable : 4305)
28 |
29 | extern playermove_t *pmove;
30 |
31 | // Expand debugging BBOX particle hulls by this many units.
32 | #define BOX_GAP 0.0f
33 |
34 | static int PM_boxpnt[6][4] =
35 | {
36 | { 0, 4, 6, 2 }, // +X
37 | { 0, 1, 5, 4 }, // +Y
38 | { 0, 2, 3, 1 }, // +Z
39 | { 7, 5, 1, 3 }, // -X
40 | { 7, 3, 2, 6 }, // -Y
41 | { 7, 6, 4, 5 }, // -Z
42 | };
43 |
44 | void PM_ShowClipBox( void )
45 | {
46 | #if defined( _DEBUG )
47 | vec3_t org;
48 | vec3_t offset = { 0, 0, 0 };
49 |
50 | if ( !pmove->runfuncs )
51 | return;
52 |
53 | // More debugging, draw the particle bbox for player and for the entity we are looking directly at.
54 | // aslo prints entity info to the console overlay.
55 | //if ( !pmove->server )
56 | // return;
57 |
58 | // Draw entity in center of view
59 | // Also draws the normal to the clip plane that intersects our movement ray. Leaves a particle
60 | // trail at the intersection point.
61 | PM_ViewEntity();
62 |
63 | VectorCopy( pmove->origin, org );
64 |
65 | if ( pmove->server )
66 | {
67 | VectorAdd( org, offset, org );
68 | }
69 | else
70 | {
71 | VectorSubtract( org, offset, org );
72 | }
73 |
74 | // Show our BBOX in particles.
75 | PM_DrawBBox( pmove->player_mins[pmove->usehull], pmove->player_maxs[pmove->usehull], org, pmove->server ? 132 : 0, 0.1 );
76 |
77 | PM_ParticleLine( org, org, pmove->server ? 132 : 0, 0.1, 5.0 );
78 | /*
79 | {
80 | int i;
81 | for ( i = 0; i < pmove->numphysent; i++ )
82 | {
83 | if ( pmove->physents[ i ].info >= 1 && pmove->physents[ i ].info <= 4 )
84 | {
85 | PM_DrawBBox( pmove->player_mins[pmove->usehull], pmove->player_maxs[pmove->usehull], pmove->physents[i].origin, 132, 0.1 );
86 | }
87 | }
88 | }
89 | */
90 | #endif
91 | }
92 |
93 | /*
94 | ===============
95 | PM_ParticleLine(vec3_t start, vec3_t end, int color, float life)
96 |
97 | ================
98 | */
99 | void PM_ParticleLine(vec3_t start, vec3_t end, int pcolor, float life, float vert)
100 | {
101 | float linestep = 2.0f;
102 | float curdist;
103 | float len;
104 | vec3_t curpos;
105 | vec3_t diff;
106 | int i;
107 | // Determine distance;
108 |
109 | VectorSubtract(end, start, diff);
110 |
111 | len = VectorNormalize(diff);
112 |
113 | curdist = 0;
114 | while (curdist <= len)
115 | {
116 | for (i = 0; i < 3; i++)
117 | curpos[i] = start[i] + curdist * diff[i];
118 |
119 | pmove->PM_Particle( curpos, pcolor, life, 0, vert);
120 | curdist += linestep;
121 | }
122 |
123 | }
124 |
125 | /*
126 | ================
127 | PM_DrawRectangle(vec3_t tl, vec3_t br)
128 |
129 | ================
130 | */
131 | void PM_DrawRectangle(vec3_t tl, vec3_t bl, vec3_t tr, vec3_t br, int pcolor, float life)
132 | {
133 | PM_ParticleLine(tl, bl, pcolor, life, 0);
134 | PM_ParticleLine(bl, br, pcolor, life, 0);
135 | PM_ParticleLine(br, tr, pcolor, life, 0);
136 | PM_ParticleLine(tr, tl, pcolor, life, 0);
137 | }
138 |
139 | /*
140 | ================
141 | PM_DrawPhysEntBBox(int num)
142 |
143 | ================
144 | */
145 | void PM_DrawPhysEntBBox(int num, int pcolor, float life)
146 | {
147 | physent_t *pe;
148 | vec3_t org;
149 | int j;
150 | vec3_t tmp;
151 | vec3_t p[8];
152 | float gap = BOX_GAP;
153 | vec3_t modelmins, modelmaxs;
154 |
155 | if (num >= pmove->numphysent ||
156 | num <= 0)
157 | return;
158 |
159 | pe = &pmove->physents[num];
160 |
161 | if (pe->model)
162 | {
163 | VectorCopy(pe->origin, org);
164 |
165 | pmove->PM_GetModelBounds( pe->model, modelmins, modelmaxs );
166 | for (j = 0; j < 8; j++)
167 | {
168 | tmp[0] = (j & 1) ? modelmins[0] - gap : modelmaxs[0] + gap;
169 | tmp[1] = (j & 2) ? modelmins[1] - gap : modelmaxs[1] + gap;
170 | tmp[2] = (j & 4) ? modelmins[2] - gap : modelmaxs[2] + gap;
171 |
172 | VectorCopy(tmp, p[j]);
173 | }
174 |
175 | // If the bbox should be rotated, do that
176 | if (pe->angles[0] || pe->angles[1] || pe->angles[2])
177 | {
178 | vec3_t forward, right, up;
179 |
180 | AngleVectorsTranspose(pe->angles, forward, right, up);
181 | for (j = 0; j < 8; j++)
182 | {
183 | VectorCopy(p[j], tmp);
184 | p[j][0] = DotProduct ( tmp, forward );
185 | p[j][1] = DotProduct ( tmp, right );
186 | p[j][2] = DotProduct ( tmp, up );
187 | }
188 | }
189 |
190 | // Offset by entity origin, if any.
191 | for (j = 0; j < 8; j++)
192 | VectorAdd(p[j], org, p[j]);
193 |
194 | for (j = 0; j < 6; j++)
195 | {
196 | PM_DrawRectangle(
197 | p[PM_boxpnt[j][1]],
198 | p[PM_boxpnt[j][0]],
199 | p[PM_boxpnt[j][2]],
200 | p[PM_boxpnt[j][3]],
201 | pcolor, life);
202 | }
203 | }
204 | else
205 | {
206 | for (j = 0; j < 8; j++)
207 | {
208 | tmp[0] = (j & 1) ? pe->mins[0] : pe->maxs[0];
209 | tmp[1] = (j & 2) ? pe->mins[1] : pe->maxs[1];
210 | tmp[2] = (j & 4) ? pe->mins[2] : pe->maxs[2];
211 |
212 | VectorAdd(tmp, pe->origin, tmp);
213 | VectorCopy(tmp, p[j]);
214 | }
215 |
216 | for (j = 0; j < 6; j++)
217 | {
218 | PM_DrawRectangle(
219 | p[PM_boxpnt[j][1]],
220 | p[PM_boxpnt[j][0]],
221 | p[PM_boxpnt[j][2]],
222 | p[PM_boxpnt[j][3]],
223 | pcolor, life);
224 | }
225 |
226 | }
227 | }
228 |
229 | /*
230 | ================
231 | PM_DrawBBox(vec3_t mins, vec3_t maxs, vec3_t origin, int pcolor, float life)
232 |
233 | ================
234 | */
235 | void PM_DrawBBox(vec3_t mins, vec3_t maxs, vec3_t origin, int pcolor, float life)
236 | {
237 | int j;
238 |
239 | vec3_t tmp;
240 | vec3_t p[8];
241 | float gap = BOX_GAP;
242 |
243 | for (j = 0; j < 8; j++)
244 | {
245 | tmp[0] = (j & 1) ? mins[0] - gap : maxs[0] + gap;
246 | tmp[1] = (j & 2) ? mins[1] - gap : maxs[1] + gap ;
247 | tmp[2] = (j & 4) ? mins[2] - gap : maxs[2] + gap ;
248 |
249 | VectorAdd(tmp, origin, tmp);
250 | VectorCopy(tmp, p[j]);
251 | }
252 |
253 | for (j = 0; j < 6; j++)
254 | {
255 | PM_DrawRectangle(
256 | p[PM_boxpnt[j][1]],
257 | p[PM_boxpnt[j][0]],
258 | p[PM_boxpnt[j][2]],
259 | p[PM_boxpnt[j][3]],
260 | pcolor, life);
261 | }
262 | }
263 |
264 |
265 | #ifndef DEDICATED
266 |
267 | /*
268 | ================
269 | PM_ViewEntity
270 |
271 | Shows a particle trail from player to entity in crosshair.
272 | Shows particles at that entities bbox
273 |
274 | Tries to shoot a ray out by about 128 units.
275 | ================
276 | */
277 | void PM_ViewEntity( void )
278 | {
279 | vec3_t forward, right, up;
280 | float raydist = 256.0f;
281 | vec3_t origin;
282 | vec3_t end;
283 | int i;
284 | pmtrace_t trace;
285 | int pcolor = 77;
286 | float fup;
287 |
288 | #if 0
289 | if ( !pm_showclip.value )
290 | return;
291 | #endif
292 |
293 | AngleVectors (pmove->angles, forward, right, up); // Determine movement angles
294 |
295 | VectorCopy( pmove->origin, origin);
296 |
297 | fup = 0.5*( pmove->player_mins[pmove->usehull][2] + pmove->player_maxs[pmove->usehull][2] );
298 | fup += pmove->view_ofs[2];
299 | fup -= 4;
300 |
301 | for (i = 0; i < 3; i++)
302 | {
303 | end[i] = origin[i] + raydist * forward[i];
304 | }
305 |
306 | trace = pmove->PM_PlayerTrace( origin, end, PM_STUDIO_BOX, -1 );
307 |
308 | if (trace.ent > 0) // Not the world
309 | {
310 | pcolor = 111;
311 | }
312 |
313 | // Draw the hull or bbox.
314 | if (trace.ent > 0)
315 | {
316 | PM_DrawPhysEntBBox(trace.ent, pcolor, 0.3f);
317 | }
318 | }
319 |
320 | #endif
321 |
--------------------------------------------------------------------------------