亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? client.cpp

?? 我對他如何控制準星、顯示敵友很好奇
?? CPP
?? 第 1 頁 / 共 5 頁
字號:
// 
// Online Game Cheats Client.dll hook
// Copyright (c) system   2001-2002
// Copyright (c) bunny771 2001-2002
// 
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU General Public License for more details.
// 
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
// 
// NOTE:
// GNU license doesn't cover Engine directory.
// Content of Engine directory is copyrighted (c) 1999, 2000, by Valve LLC
// and it is licensed under Valve's proprietary license (see original HL SDK).
// 

#define  WIN32_LEAN_AND_MEAN 
#include <windows.h>
#include <mmsystem.h>
#pragma warning (disable:4786) // vc++ stl "truncated browser info"
#pragma warning (disable:4244) // float to int 
#pragma warning (disable:4731) // ebp modified
#include <map>
#include <vector>
#include <list>
#undef NDEBUG
#include <assert.h>
#include "engine/wrect.h"
#include "engine/cl_dll.h"
#include "engine/cdll_int.h"
#include "engine/const.h"
#include "engine/progdefs.h"
#include "engine/eiface.h"
#include "engine/edict.h"
#include "engine/studio_event.h"
#include "engine/entity_types.h"
#include "engine/pmtrace.h" 
#include "common/ref_params.h"
#include "common/screenfade.h"
#include "common/event_api.h"
#include "common/com_model.h"
#include "misc/parsemsg.h"
#include "misc/sprites.h" 
#include "r_studioint.h"
#include "engine/triangleapi.h"
#include "engine/pm_defs.h"
#include "engine/r_efx.h"
#include "sprites.h" 
#include "common/net_api.h"
#include <time.h>
#include <gl/gl.h>
#include "stdafx.h"

using namespace std;
#include <tlhelp32.h> 
#include <fstream>
#include "cvar.h"
#include "attack.h"
#include "calcscreen.h"
#include "timehandling.h"
#include "stringfinder.h"
#include "color.h"
#include "aimbot.h"
#include "playeritems.h"
#include "bind.h"
#include "interpreter.h"
#include "client.h"
#include "menu.h"
#include "snake.h"
#include "console.h"
#include "hookqueue.h"
#include "Winamp.h"
#include "engine/studio.h"

#include "GenericPatch.h"
extern GenericPatch commandPatch;
extern GenericPatch soundPatch;
extern GenericPatch loaderPatch;
GenericPatch chasePatch;

#include "AutoMove.h"

#pragma warning (disable:4005)
#pragma warning (disable:4800)
#pragma optimize("gt",on)

#ifndef M_PI
#define M_PI		3.14159265358979323846	// matches value in gcc v2 math.h
#endif

#define OGC_VERSION "9.01"

//#define pInitialize        f_dummy6
//#define pHUD_Redraw        f_dummy2
//#define pHUD_AddEntity     f_dummy3
//#define pHUD_PlayerMove    f_dummy5
//#define pV_CalcRefdef      f_dummy7
//#define pCL_CreateMove     f_dummy8
//#define pHUD_TempEntUpdate f_dummy10
//#define pHUD_GetStudioModelInterface f_dummy11

using namespace std;
#define LOG(str)
//ofstream logfile2("c:\\tmpaxx\\call-log-hookqueue.txt");
//#define LOG(str) logfile2<<#str<<endl;

bool bDontAutoHook=false;

// hooking stuff
dllfuncs_t*            hw_client_dllfuncs   = NULL;
r_studio_interface_s*  hw_client_studio_ptr = NULL;
cl_enginefunc_t *      client_enginefuncs   = NULL;

SCREENINFO screeninfo;

// Hostage Info Structure
struct hostage_info
{
	cl_entity_s *ent;
};

// A Global to store the engine functions
struct cl_enginefuncs_s  gEngfuncs;
struct cl_enginefuncs_s  gHookedEngfuncs;

// client.dll exports
struct dllfuncs_t  gClientExports;
struct dllfuncs_t  gHookedClientExports;

bool bIsHooked=false;

//  A Global to store the hooked engine functions
struct cl_enginefuncs_s gHookEnginefuncs;

// A Global to store the Effects API
struct efx_api_s gHookEfxApi;

// A Global to store the Studio API
engine_studio_api_t  IEngineStudio;
engine_studio_api_t* pIEngineStudio=0;

// A Global to store the local player info
local_player_info me;

// A Global for all the Players
VecPlayers vPlayers;

// A Global for all the Entities
vector<hostage_info> vEntity;

// Global for the Aiming Randomizer Class
AimingRandomizer gAimingRandomizer;

// A list of commands being blocked
StringFinder blockCommand;
// The Method of blocking used
enum { CMDBLOCK_ALL, CMDBLOCK_RELPATH };

// Rear View Mirror
// TODO: Make the name definition not be as a member
bool m_bReversed;
bool bNewFrame=false;

// should movement be stopped e.g. for shooting?
bool bStopMovement=false;

// dont draw sniper blackout if true
bool sniper=false;

// Bomb Timer Stuff
bool bBombIsPlanted=false;
float fBombPlantedTime=0;
int iC4Timer=0;

// Rounds counter
int iRounds=0;

// Blinking for Radar/Esp
StopTimer blinkTimer;
bool blinkPhase = false;

// Local Players Items
// TODO: Move into local_player_info
PlayerItems playerItems;

// Logging
ofstream commandLogFile;
bool commandLogFileOpened = false;

// HUD Message
char  gHudMessage[256]="";
StopTimer gHudTimer;

// Script Message (text ..., txt ...)
char  gHudMessage2[256]="";
StopTimer gHudTimer2;

// Scheduled Commands (later x blabla)
struct ScheduledCommand
{
	string           cmd;
	RunningStopTimer timer;
};
typedef list<ScheduledCommand> ScheduleList;
ScheduleList scheduleList;

// Nice Firing stuff
enum { FIRESEQ_INACTIVE     = 0, 
       FIRESEQ_STARTDELAY   = 1, 
	   FIRESEQ_ACTIVE       = 2,
	   FIRESEQ_RELEASEDELAY = 3 };
static bool bAttacking = false;
static bool bAttack2 = false;
static bool bPressedUse = false;
static int  nFireSequence = FIRESEQ_INACTIVE;
static bool bFireCycle  = true;

// Death Info
struct DeathInfos{
	DeathInfos():active(false) {}
	bool   active;
	float  from[3];
	float  to[3];
	string killerName;
	string weaponName;
};
DeathInfos deathInfos;
static bool bGotHeadshot=false;

// Current WeaponID  see attack.h
int   currentWeaponID=0;

// Current FOV as float and int
int    iCurrentFOV=90;
float  fCurrentFOV=90.0;

// Burst Info
BurstInfo burstInfo;

// HL.exe or CSTRIKE.exe
HANDLE hProcess=0;
// HW.dll offset
DWORD hw_dll_offset=0;
// CLIENT.dll offset
HMODULE hClientDll=0;
DWORD client_dll_offset=0;
DWORD client_dll_end=0;

// sequence info data
int Cstrike_SequenceInfo[] = {
	0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // 0..9   
	0, 1, 2, 0, 1, 2, 0, 1, 2, 0, // 10..19 
	1, 2, 0, 1, 1, 2, 0, 1, 1, 2, // 20..29 
	0, 1, 2, 0, 1, 2, 0, 1, 2, 0, // 30..39 
	1, 2, 0, 1, 2, 0, 1, 2, 0, 1, // 40..49 
	2, 0, 1, 2, 0, 0, 0, 4, 0, 4, // 50..59 
	0, 5, 0, 5, 0, 0, 1, 1, 2, 0, // 60..69 
	1, 1, 2, 0, 1, 0, 1, 0, 1, 2, // 70..79 
	0, 1, 2, 3, 3, 3, 3, 3, 3, 3, // 80..89 
	3, 3, 3, 3, 3, 3, 3, 3, 3, 3, // 90..99 
	3
};
enum { SEQUENCE_SHOOT=1, SEQUENCE_RELOAD=2, SEQUENCE_DIE=3, SEQUENCE_THROW=4, SEQUENCE_ARM_C4=5 };
char* Cstrike_infotext[] = {"", "- PENG -", "- RELOADING -", "", "*** THROWING ***", "- ARMING C4 -" };
	


// points system
struct PointSystemEntry { char description[16]; float points; };
PointSystemEntry pointSystem[] = {
	"shoot_at_me", +600.0  , // 0
	"aim_at_me"  , +500.0  , // 1
	"visible"    , +250.0  , // 2
	"bestplayer" , +75.0   , // 3
	"arm_c4"     , +50.0   , // 4
	"behind_me"  , -250.0  , // 5
	"dist_factor", +180000.0  , // 6  // factor/distance = addvalue
	"fov_factor" , -15.0      , // 7
	"awp_bonus"  , +100.0     , // 8
	"",0.0
};

// should current Aimbot calculated view angles be used?
bool   Aimbot_active=false;

// Lock var with in min and max
#define BOUND_VALUE(var,min,max) if((var)>(max)){(var)=(max);};if((var)<(min)){(var)=(min);}

// Find the Highest Value out of a,b and c
#define MAX_VALUE(a,b,c) ( a>b? (a>c?a:(b>c?b:c)) : (b>c?b:c) )

// ====== sound data
static ColorEntry dummycolor;
class SoundMarker
{
public:
	SoundMarker() : color(&dummycolor),priority(0) {} // "snd_default"

	float origin[3];
	char  description[16];
	StopTimer timer;
	ColorEntry* color;
	int priority; // 0/1/2
};
typedef vector<SoundMarker> SoundMarkerVector;
SoundMarkerVector vecSoundMarker(65);
int soundMarkerCurrentIndex = 0;

// ====== directories
char ogcdir [256]=""; // set in dllmain
char hldir  [256]=""; // set in dllmain

// beamindex (sprites/beam.spr)
int beamindex = 0;

// mod info
enum{ MOD_UNKNOWN=0,MOD_CSTRIKE=1,MOD_DOD=2 };
int mod=MOD_UNKNOWN; 

//========================================================================================
string getOgcDirFile(const char* basename)
{
	if(strstr(basename,"..")){ return ":*?\\/<>\""; }
	string ret = ogcdir;
	return (ret+basename);
}

//========================================================================================
void deleteMultipleFiles(const char* basedir, const char* wildcard)
{
	WIN32_FIND_DATA findData;
	HANDLE hFindFile;
	char* fileName = findData.cFileName;

	string searchPattern = basedir;
	searchPattern += wildcard;
	
	hFindFile = FindFirstFile( searchPattern.c_str(), &findData );
	if( hFindFile == INVALID_HANDLE_VALUE){ return; }
	do{
		string fullname = basedir;
		fullname += fileName;
		DeleteFile(fullname.c_str());
	} while( FindNextFile(hFindFile,&findData) );
}

//========================================================================================
void cleanupWindowsTempFiles()
{
	//bool IsNT = ((HIWORD(::GetVersion()) & 0x8000) == 0); 

	//char dir[400];
	//GetWindowsDirectory(dir,390);
	//char* pastepos = dir+strlen(dir);
	//
	//if(IsNT)
	//{
	//	strcpy(pastepos,"\\Prefetch\\");
	//	deleteMultipleFiles(dir,"ogc*.*");
	//	deleteMultipleFiles(dir,"newldr*.*");
	//}
	//else
	//{
	//	strcpy(pastepos,"\\applog\\");
	//	deleteMultipleFiles(dir,"*.*");
	//	deleteMultipleFiles(dir,"*.*");
	//}
}

//========================================================================================
inline float GetPseudoDistance(const float* const pos1, const float* const pos2)
{
	return
		fabs(pos1[0]-pos2[0])+
		fabs(pos1[1]-pos2[1])+
		fabs(pos1[2]-pos2[2]);
}

//========================================================================================
inline float GetDistanceFrom(float* pos)
{	
	register double a = pos[0] - me.pmEyePos[0];
	register double b = pos[1] - me.pmEyePos[1];
	register double c = pos[2] - me.pmEyePos[2];
	return sqrt(a*a + b*b + c*c);
}

//========================================================================================
bool __fastcall CalcScreen(float *origin,float *vecScreen)
{
	return NewCalcScreen(origin, vecScreen);
}


//========================================================================================
void gDrawFilledBoxAtLocation( float* origin, DWORD color, int radius)
{
	float vecScreen[2]; 
	if( !CalcScreen(origin, vecScreen) ) { return; }

	int red   = (color>>24);
	int green = (color>>16)&0xFF;
	int blue  = (color>>8)&0xFF;
	int alpha = (color)&0xFF;
	int radius2 = radius<<1;

	gEngfuncs.pfnFillRGBA(vecScreen[0]-radius,vecScreen[1]-radius,radius2,radius2,red,green,blue,alpha);
}

//========================================================================================
void SPR_Draw (int frame, int x, int y, const wrect_t *prc)
{
	if (!sniper) gEngfuncs.pfnSPR_Draw (frame, x, y, prc);
}

//========================================================================================
void SPR_DrawHoles (int frame, int x, int y, const wrect_t *prc)
{
	if (!sniper) gEngfuncs.pfnSPR_DrawHoles (frame, x, y, prc);
}


//========================================================================================
HSPRITE sprset_hsprite = 0;
int     sprset_r, sprset_g, sprset_b;
extern bool oglSubtractive;
void SPR_DrawAdditive( int frame, int x, int y, const wrect_t *prc )
{
	if(cvar.hud) gEngfuncs.pfnSPR_Set (sprset_hsprite,sprset_r,sprset_g,sprset_b);
	gEngfuncs.pfnSPR_DrawAdditive(frame,x,y,prc);

}

//========================================================================================
void FillRGBA( int x, int y, int width, int height, int r, int g, int b, int a )
{
	if(cvar.hud)
	{
		register ColorEntry* color = colorList.get(5);
		gEngfuncs.pfnFillRGBA(x,y,width,height,color->r,color->g,color->b,a);
	} else {
		gEngfuncs.pfnFillRGBA(x,y,width,height,r,g,b,a);
	}
}
	
//========================================================================================
int	DrawCharacter( int x, int y, int number, int r, int g, int b )
{

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩三级电影网址| 国产精品国产自产拍高清av王其| 精品一二三四在线| 亚洲人妖av一区二区| 顶级嫩模精品视频在线看| 1024成人网| 欧美色国产精品| 久久成人免费电影| 欧美经典一区二区| 色婷婷av一区| 日本麻豆一区二区三区视频| 2017欧美狠狠色| av亚洲精华国产精华精| 亚洲一区二区在线免费观看视频| 制服丝袜亚洲播放| 国产一区二区三区av电影| 亚洲人成电影网站色mp4| 在线不卡免费欧美| 国产乱人伦精品一区二区在线观看| 自拍偷自拍亚洲精品播放| 欧美无人高清视频在线观看| 久久国产夜色精品鲁鲁99| 国产精品第五页| 欧美日韩在线播| 国内外成人在线视频| 国产精品国产三级国产普通话蜜臀 | 亚洲一区二区av在线| 日韩一级免费一区| 成人在线视频首页| 亚洲国产视频一区二区| 午夜免费欧美电影| 中文字幕精品一区| 91.xcao| 成人午夜私人影院| 亚洲成年人网站在线观看| 久久亚洲春色中文字幕久久久| 91视频国产观看| 麻豆精品国产传媒mv男同| 国产精品久久久久一区二区三区| 欧美日韩高清一区二区| 国产v日产∨综合v精品视频| 亚洲国产一区二区在线播放| 国产午夜精品美女毛片视频| 欧美亚洲丝袜传媒另类| 国产超碰在线一区| 婷婷夜色潮精品综合在线| 国产精品乱码人人做人人爱| 91.麻豆视频| 91网站在线播放| 精品一区二区影视| 亚洲综合精品自拍| 亚洲国产电影在线观看| 欧美一区二区精品| 日本丶国产丶欧美色综合| 亚洲视频一区在线| 精品久久久久99| 欧美性极品少妇| 成人av电影在线网| 狠狠v欧美v日韩v亚洲ⅴ| 亚洲福利国产精品| 中文字幕亚洲在| 久久美女高清视频| 制服丝袜中文字幕亚洲| 久久亚洲精精品中文字幕早川悠里 | 日本一区二区免费在线观看视频 | 国产精品动漫网站| 欧美tickling挠脚心丨vk| 欧美性大战xxxxx久久久| 国产成人免费视频| 精品一区二区三区影院在线午夜| 亚洲超碰精品一区二区| 中文字幕色av一区二区三区| 久久免费午夜影院| 日韩欧美一级在线播放| 欧美日韩一区二区三区四区| av在线不卡网| 国产成人av电影在线| 亚洲美女精品一区| 国产人妖乱国产精品人妖| 日韩久久久精品| 欧美福利电影网| 欧美色图第一页| 色综合久久天天| 91丨九色丨蝌蚪富婆spa| 国产v综合v亚洲欧| 国产精品 日产精品 欧美精品| 久久国产成人午夜av影院| 99久久精品国产网站| 国产aⅴ综合色| 国产精品1024久久| 国产成人免费视频网站| 国产精品99久久久久久宅男| 久久国产麻豆精品| 久久99深爱久久99精品| 美国欧美日韩国产在线播放| 日韩国产在线一| 午夜免费久久看| 视频一区二区中文字幕| 丝袜美腿亚洲色图| 天天色综合天天| 视频一区二区不卡| 午夜精品久久一牛影视| 无吗不卡中文字幕| 丝袜国产日韩另类美女| 男男成人高潮片免费网站| 日本欧美在线观看| 毛片不卡一区二区| 久久激五月天综合精品| 美国一区二区三区在线播放| 精品一区二区三区在线播放视频| 九九精品视频在线看| 亚洲精品欧美专区| 99在线热播精品免费| 亚洲国产cao| 同产精品九九九| 美腿丝袜一区二区三区| 精品一区二区在线免费观看| 国产精品一线二线三线精华| 国产jizzjizz一区二区| 成人app网站| 欧洲中文字幕精品| 亚洲成人一区二区在线观看| 亚洲人成网站色在线观看| 一区二区三区欧美激情| 日韩经典中文字幕一区| 极品少妇xxxx精品少妇| 国产suv精品一区二区6| 91免费视频网| 欧美视频一区二区三区在线观看| 欧美女孩性生活视频| 日韩精品一区二区三区在线播放 | 精品在线免费视频| 国产精品一区二区视频| eeuss影院一区二区三区| 在线观看亚洲专区| 日韩午夜激情av| 国产拍欧美日韩视频二区| 亚洲天堂福利av| 亚洲第一综合色| 久久精品99国产国产精| 北条麻妃一区二区三区| 欧美日韩视频不卡| 精品国产乱码久久久久久免费 | 中文字幕在线不卡视频| 夜夜嗨av一区二区三区网页| 日本aⅴ免费视频一区二区三区| 国产一区二区免费看| 色综合久久天天综合网| 日韩欧美亚洲国产另类| 国产视频在线观看一区二区三区 | 国产精品国产三级国产aⅴ入口| 亚洲精品久久嫩草网站秘色| 天堂av在线一区| 成人做爰69片免费看网站| 欧美性色黄大片| 久久综合九色综合97婷婷| 最好看的中文字幕久久| 轻轻草成人在线| 99视频国产精品| 欧美一区二区三区电影| 中文字幕色av一区二区三区| 日韩国产一区二| 不卡高清视频专区| 91精品国产aⅴ一区二区| 中文av字幕一区| 婷婷国产v国产偷v亚洲高清| 高清不卡在线观看| 欧美喷水一区二区| 国产精品色眯眯| 日韩精品五月天| 99精品在线免费| 日韩精品综合一本久道在线视频| 国产精品理论片| 日本少妇一区二区| 99国产精品视频免费观看| 欧美本精品男人aⅴ天堂| 亚洲啪啪综合av一区二区三区| 另类人妖一区二区av| 老司机免费视频一区二区| 一本色道久久综合狠狠躁的推荐| 日韩精品中文字幕一区二区三区 | 一区二区三区在线观看欧美| 激情五月婷婷综合| 欧美日韩国产中文| 中文字幕一区在线观看| 国产中文字幕精品| 欧美日韩一区二区在线观看视频| 日本一区二区免费在线观看视频| 91在线国内视频| 久久日韩粉嫩一区二区三区| 亚洲午夜激情网站| 成人看片黄a免费看在线| 日韩欧美卡一卡二| 亚洲一区二区三区四区五区中文 | 欧美美女直播网站| 国产精品久久久久精k8| 国产乱码一区二区三区| 51精品视频一区二区三区| 亚洲精品视频免费观看| 成人av网站大全|