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

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

?? attack.cpp

?? 我對他如何控制準星、顯示敵友很好奇
?? CPP
字號:
// 
// 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 "stdio.h"
#include "attack.h"

#include "stringfinder.h"

#include <fstream>
#pragma optimize("gt",on)

static StringFinder findWeaponID;

using namespace std;

//========================================================================================
void initWeaponID()
{
	findWeaponID.clear();

    findWeaponID.add("usp"         , WEAPON_USP     );
    findWeaponID.add("glock18"     , WEAPON_GLOCK   );
    findWeaponID.add("deagle"      , WEAPON_DEAGLE  );
    findWeaponID.add("p228"        , WEAPON_P228    );
    findWeaponID.add("elite"       , WEAPON_ELITE   );
    findWeaponID.add("fiveseven"   , WEAPON_FIVE7   );

	findWeaponID.add("xm1014"      , WEAPON_XM      );
    findWeaponID.add("m3"          , WEAPON_M3      );
    findWeaponID.add("mp5"         , WEAPON_MP5     );
    findWeaponID.add("tmp"         , WEAPON_TMP     );
    findWeaponID.add("p90"         , WEAPON_P90     );
    findWeaponID.add("mac10"       , WEAPON_MAC     );
    findWeaponID.add("ump45"       , WEAPON_UMP     );
  
    findWeaponID.add("ak47"        , WEAPON_AK      );
    findWeaponID.add("sg552"       , WEAPON_SIG     );
    findWeaponID.add("m4a1"        , WEAPON_COLT    );
    findWeaponID.add("aug"         , WEAPON_AUG     );
    findWeaponID.add("scout"       , WEAPON_SCOUT   );
    findWeaponID.add("awp"         , WEAPON_AWP     );
    findWeaponID.add("g3sg1"       , WEAPON_G3SG1   );
    findWeaponID.add("sg550"       , WEAPON_SG550   );

    findWeaponID.add("m249"        , WEAPON_PARA    ); 
    findWeaponID.add("knife"       , WEAPON_KNIFE   ); 
    
	findWeaponID.add("flashbang"   , WEAPON_FLASH   ); 
    findWeaponID.add("hegrenade"   , WEAPON_HE      ); 
    findWeaponID.add("smokegrenade", WEAPON_SMOKE   ); 
    findWeaponID.add("c4"          , WEAPON_C4      ); 

}

//========================================================================================
BurstInfo::RangeInfo* BurstInfo::get(int weaponID, int dist)
{
	
	static RangeInfo standard = { 100, 0.2f, 0.4f, 0 };
    if(weaponID<0 || weaponID>27){ return &standard; }


	RangeInfo* p = range[weaponID];
	RangeInfo* last = p+4;
	if( !p->range ){ return &standard; }
	for(;;)
	{
		if( p->range >= dist ){ return p; }
		if( p == last        ){ return p; }
		if( !p[1].range      ){ return p; }
	    ++p;
	}
}

//========================================================================================
void BurstInfo::set(int weaponID, BurstInfo::RangeInfo* newEntry, int idx)
{
	if( weaponID<=0||weaponID>27) { return; }

	range[weaponID][idx] = *newEntry;

}

//========================================================================================
char* BurstInfo::description(const BurstInfo::RangeInfo* r)
{
	static char buf[256];
	char flags[40]="|";
	if(r->flags&BURSTFLAG_DUCK  )strcat(flags,"DUCK|");
	if(r->flags&BURSTFLAG_NOAIM )strcat(flags,"NOAIM|");
	if(r->flags&BURSTFLAG_STOP  )strcat(flags,"STOP|");
	if(r->flags&BURSTFLAG_ZOOM  )strcat(flags,"ZOOM|");
	if(r->flags&BURSTFLAG_GROUND)strcat(flags,"GROUND|");
	if(r->flags&BURSTFLAG_USE   )strcat(flags,"USE|");

	enum { BURSTFLAG_DUCK  = 1, // automatically duck while shooting (sdelay required)
		   BURSTFLAG_NOAIM = 2, // dont autoaim using this weapon (useful for grenades)
		   BURSTFLAG_STOP  = 4, // stop Movement before shooting (useful for awp) (sdelay required)
	       BURSTFLAG_ZOOM  = 8, // zoom in before shooting. use with sdelay
		   BURSTFLAG_GROUND=16, // don't shoot with this weapon if not on ground
		   BURSTFLAG_USE   =32};// press the USE-Key to stop faster (only with BURSTFLAG_STOP)


	sprintf(buf,"Range<=%d Rate: %f:%f Delay:%f Flags:%s=%d"
		         ,r->range,r->ftime,r->dtime,r->sdelay,flags,r->flags);
	return buf;
}

//========================================================================================
char* BurstInfo::description(int weaponID, int idx)
{
	char* invalidWeapon = "Invalid Weapon";
	if( weaponID<0||weaponID>27 ) { return invalidWeapon;  }
	else { 	return description(&range[weaponID][idx]); }
}

//========================================================================================
int BurstInfo::getWeaponID(const char* weapon)
{
	if( findWeaponID.find(weapon) ){ return findWeaponID.num; }
	else                           { return 0; }
}

//========================================================================================
bool BurstInfo::copy(const char* weaponfrom, const char* weaponto)
{
	int from = getWeaponID(weaponfrom); if(!from) { return false; }
	int to   = getWeaponID(weaponto);   if(!to)   { return false; }
	
	for(int i=0;i<5;i++)
	{
		range[to][i] = range[from][i];
	}
	return true;
}

//========================================================================================
bool BurstInfo::savecfg(const char* filename, const char* prefix)
{
    ofstream ofs(filename, ios::binary);
	if(!ofs){ return false; }

	for( findWeaponID.it_start(); findWeaponID.it_running(); findWeaponID.it_next() )
	{
		const char* weaponname = findWeaponID.str;
		int id = findWeaponID.num;

		for(int i=0;i<5;i++)
		{
			RangeInfo& r = range[id][i]; 
			if(r.range)
			{
				ofs <<prefix<<"setburst "<<weaponname<<' '<<i+1<<' '<<r.range<<' '
					<<r.ftime<<' '<<r.dtime<<' '<<r.sdelay<<' '<<r.flags
					<<(char)0x0D<<(char)0x0A;
			} else{
				break;
			}
		}
	}
	ofs.close();
	
	return true;
}

//========================================================================================
void BurstInfo::reset()
{
	for(int w=0;w<BurstInfo::NUM_USABLE_WEAPONS;++w)
	{
		for(int i=0;i<5;i++)
		{
			range[w][i].range = 0;
			range[w][i].ftime = 0;
			range[w][i].dtime = 0;
			range[w][i].flags = 0;
		}	
	}
	initWeaponID();
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美国产成人在线| 免费成人在线观看| 蜜臀va亚洲va欧美va天堂| 国产91精品在线观看| 欧美理论电影在线| 国产精品的网站| 日本中文字幕不卡| 欧美性极品少妇| 欧美激情一区二区三区不卡| 奇米四色…亚洲| 欧美性猛交xxxxxxxx| 亚洲三级在线免费观看| 国产精品1区二区.| 久久美女高清视频| 美国毛片一区二区| 日韩一区二区三区四区 | 国产91清纯白嫩初高中在线观看 | 91一区二区三区在线观看| 国产亚洲欧美日韩日本| 美女在线观看视频一区二区| 在线看一区二区| 亚洲精选视频在线| 成人av资源在线观看| 欧美国产日韩在线观看| 国产精品1024| 久久精品一区二区三区不卡| 久久99久国产精品黄毛片色诱| 欧美美女一区二区| 午夜精品一区二区三区免费视频 | 9i在线看片成人免费| 国产日韩欧美亚洲| 韩国精品主播一区二区在线观看| 91精品国产综合久久久久久漫画| 偷窥少妇高潮呻吟av久久免费| 欧美这里有精品| 午夜精品123| 91精品国产综合久久久久久| 奇米精品一区二区三区在线观看 | 在线精品国精品国产尤物884a | 久久婷婷色综合| 国产一区二区女| 欧美激情在线看| 色哟哟在线观看一区二区三区| 亚洲欧美激情视频在线观看一区二区三区| 99免费精品视频| 亚洲免费观看高清完整版在线观看熊| 91麻豆免费看| 亚洲va韩国va欧美va| 欧美丰满少妇xxxxx高潮对白| 奇米影视一区二区三区小说| 精品乱人伦一区二区三区| 国产一区二区三区在线观看免费视频 | 日本亚洲视频在线| 精品国产一区二区三区久久久蜜月| 国产真实精品久久二三区| 国产精品天干天干在线综合| 色婷婷一区二区三区四区| 午夜天堂影视香蕉久久| 日韩精品一区二区三区在线| 风间由美中文字幕在线看视频国产欧美| 国产精品久久久久一区二区三区| 在线视频中文字幕一区二区| 美女一区二区视频| 亚洲同性同志一二三专区| 欧美日韩大陆在线| 国产成人av一区二区| 亚洲第一主播视频| 久久久不卡影院| 欧美在线你懂得| 国产91精品免费| 亚洲成av人在线观看| 国产人成一区二区三区影院| 欧美午夜精品久久久久久超碰| 久久99精品国产| 一区二区三区 在线观看视频| 日韩精品一区二区三区三区免费| 91香蕉视频mp4| 精品中文字幕一区二区小辣椒| 国产午夜精品一区二区三区四区| 91国偷自产一区二区三区成为亚洲经典 | 日韩专区一卡二卡| 国产精品第13页| 久久久噜噜噜久噜久久综合| 欧美影院一区二区三区| 成人动漫在线一区| 久久99久久精品| 视频一区欧美日韩| 亚洲人成影院在线观看| 久久久久综合网| 欧美成人精精品一区二区频| 在线看日本不卡| 色综合久久中文字幕| 国产高清在线精品| 日本aⅴ精品一区二区三区| 亚洲尤物在线视频观看| 国产精品传媒入口麻豆| 久久久影视传媒| 日韩久久久久久| 日韩一本二本av| 欧美一区二区三区的| 欧美色图激情小说| 欧美性猛交xxxx乱大交退制版| 91一区二区三区在线观看| av毛片久久久久**hd| 成人av免费在线观看| 国产a精品视频| 国产精品一线二线三线| 韩国三级电影一区二区| 精品一区二区成人精品| 麻豆成人久久精品二区三区红 | 欧美成人一区二区| 欧美巨大另类极品videosbest| 一本到不卡精品视频在线观看| 懂色av中文一区二区三区| 国产一区不卡在线| 国产风韵犹存在线视精品| 国产精品亚洲视频| 国产91精品久久久久久久网曝门| 国产黄色精品视频| 高清成人免费视频| 成人禁用看黄a在线| 成人激情校园春色| 色婷婷综合久久久| 欧美丰满高潮xxxx喷水动漫| 精品婷婷伊人一区三区三| 欧美日韩国产在线观看| 欧美一级二级在线观看| 久久综合久久综合久久综合| 久久综合给合久久狠狠狠97色69| 久久久亚洲高清| 亚洲欧美怡红院| 丝袜诱惑制服诱惑色一区在线观看 | 国产制服丝袜一区| 99这里只有久久精品视频| 日本丶国产丶欧美色综合| 欧美人动与zoxxxx乱| 精品国产乱子伦一区| 国产欧美日韩另类一区| 亚洲日本丝袜连裤袜办公室| 亚洲va国产va欧美va观看| 久久99国产乱子伦精品免费| 成人动漫视频在线| 欧美美女直播网站| 久久久久9999亚洲精品| 亚洲色图.com| 美腿丝袜亚洲综合| 99精品视频一区二区三区| 91麻豆精品国产91久久久久久 | 日韩欧美国产综合一区| 欧美激情在线观看视频免费| 亚洲电影第三页| 国产成人在线色| 欧美肥妇bbw| 亚洲日本免费电影| 黄色成人免费在线| 欧洲一区二区三区在线| 精品国精品自拍自在线| 一区二区高清在线| 国内外成人在线| 欧美日韩免费观看一区三区| 国产人妖乱国产精品人妖| 三级影片在线观看欧美日韩一区二区| 国产激情视频一区二区三区欧美| 欧美中文字幕一区| 国产精品免费视频观看| 琪琪久久久久日韩精品| 91极品美女在线| 国产精品国产三级国产aⅴ入口| 日本午夜精品视频在线观看 | 日韩亚洲欧美一区| 亚洲欧美自拍偷拍色图| 狠狠色丁香婷婷综合| 欧美午夜免费电影| 中文字幕一区二区在线播放| 久久www免费人成看片高清| 91久久国产综合久久| 国产日韩视频一区二区三区| 视频一区欧美日韩| 在线观看欧美黄色| 中文字幕在线不卡| 成人免费视频播放| 欧美精品一区二区久久久| 午夜成人免费电影| 色视频欧美一区二区三区| 国产精品拍天天在线| 国产精品综合网| 久久这里只精品最新地址| 秋霞国产午夜精品免费视频| 欧美日韩激情在线| 一区二区三区四区视频精品免费| 成人黄色国产精品网站大全在线免费观看| 日韩视频一区在线观看| 视频一区视频二区中文字幕| 欧美高清性hdvideosex| 亚洲图片欧美一区| 欧美三级电影一区| 午夜精品久久久久久久蜜桃app| 色婷婷久久久亚洲一区二区三区 | 蜜桃精品在线观看| 日韩欧美综合一区|