首页 > 其他分享 >CS 压枪文件框架

CS 压枪文件框架

时间:2023-05-07 15:44:05浏览次数:46  
标签:end .. 框架 压枪 entities currentWeapon CS local event

==反对外挂,仅为好奇,框架提供只为学习==

local currentRecoilIndex = 1
local currentShotFired = 0
local isInScope = false

-- Recoil patterns for various weapons
local recoilPatterns = {
    ["ak47"] = { },
    ["m4a1"] = { },
    ["famas"] = { },
    ["galilar"] = { },
    ["ump45"] = { },
    ["mp7"] = { },
    ["mp9"] = { },
    ["bizon"] = { },
    ["mac10"] = { },
    ["p90"] = { },
    ["sg556"] = { },
    ["aug"] = { },
    ["ssg08"] = { },
    ["awp"] = { },
    ["g3sg1"] = { },
    ["scar20"] = { },
    ["deagle"] = { },
    ["elite"] = { },
    ["fiveseven"] = { },
    ["glock"] = { },
    ["p250"] = { },
    ["tec9"] = { },
    ["cz75a"] = { },
    ["usp_silencer"] = { },
    ["hkp2000"] = { },
    ["p2000"] = { },
    ["revolver"] = { }
}

-- Get current weapon and set its recoil pattern
local function setCurrentWeapon()
    currentWeapon = entities.GetLocalPlayer():GetWeaponName()
    currentRecoilIndex = 1
    currentShotFired = 0
    
    if recoilPatterns[currentWeapon] ~= nil then
        gui.SetValue("rbot.accuracy.weapon."..currentWeapon..".recoil.min", recoilPatterns[currentWeapon][currentRecoilIndex])
        gui.SetValue("rbot.accuracy.weapon."..currentWeapon..".recoil.max", recoilPatterns[currentWeapon][currentRecoilIndex])
    end
end

-- Callback function for player firing
local function onShotFired(event)
    if event:GetName() == "weapon_fire" and entities.GetByUserID(event:GetInt("userid")):GetIndex() == entities.GetLocalPlayer():GetIndex() then
        currentShotFired = currentShotFired + 1
        if currentShotFired == 1 and recoilPatterns[currentWeapon] ~= nil then
            currentRecoilIndex = 1
            gui.SetValue("rbot.accuracy.weapon."..currentWeapon..".recoil.min", recoilPatterns[currentWeapon][currentRecoilIndex])
            gui.SetValue("rbot.accuracy.weapon."..currentWeapon..".recoil.max", recoilPatterns[currentWeapon][currentRecoilIndex])
        end
    end
end

-- Callback function for player switching weapons
local function onWeaponSwitch(event)
    if event:GetName() == "item_equip" and entities.GetByUserID(event:GetInt("userid")):GetIndex() == entities.GetLocalPlayer():GetIndex() then
        setCurrentWeapon()
    end
end

-- Callback function for player using scope
local function onPlayerUseScope(event)
    if event:GetName() == "player_spawned" and entities.GetLocalPlayer():GetPropEntity("m_hActiveWeapon"):GetWeaponID() == 40 then
        isInScope = true
    elseif event:GetName() == "player_spawned" and entities.GetLocalPlayer():GetPropEntity("m_hActiveWeapon"):GetWeaponID() ~= 40 then
        isInScope = false
    elseif event:GetName() == "player_hurt" and entities.GetByUserID(event:GetInt("userid")):GetIndex() == entities.GetLocalPlayer():GetIndex() then
        isInScope = false
    end```
如有感兴趣的小伙伴可以深入研究~

标签:end,..,框架,压枪,entities,currentWeapon,CS,local,event
From: https://www.cnblogs.com/concealer/p/17379410.html

相关文章

  • Elasticsearch介绍
    ..参考老刘博客https://www.cnblogs.com/liuqingzheng/p/16002298.html..产生背景#1.1大规模数据如何检索如:当系统数据量上了10亿、100亿条的时候,我们在做系统架构的时候通常会从以下角度去考虑问题:1)用什么数据库好?(mysql、oracle、mongodb、hbase…)2)如何解决单点故......
  • yazi框架学习笔记
    主线程监听和建立客户端的连接接收客户端的请求数据,创建一个任务,该任务携带请求数据,并把该任务放入任务队列告诉分发线程,有请求任务过来了,叫他赶紧去处理重复上面三个步骤注意:主线程不处理具体请求分发线程查看任务队列,看是否有请求任务?没有任务则继续睡觉,否则把任务取......
  • windows安装zincsearch教程
    1.首先去github下载安装包   下载最新的ZincSearch二进制文件  选择版本 zincsearch_0.4.5_Windows_x86_64.tar.gz  然后解压压缩包,   2.添加环境变量ZINC_FIRST_ADMIN_USER=adminZINC_FIRST_ADMIN_PASSWORD=123456账号和密码可以随意设置,不过为了简单......
  • css3 flex弹性布局详解
    一、flexbox弹性盒子2009年,W3C提出了一种新的方案----Flex布局,可以简便、完整、响应式地实现各种页面布局。目前,它已经得到了所有浏览器的支持,这意味着,现在就能很安全地使用这项功能。二、基本概念Flex是FlexibleBox的缩写,意为"弹性布局",用来为盒状模型提供最大的灵活性......
  • 字符设备驱动的框架
    字符设备驱动框架编写字符驱动设备框架时,主要的工作量在入口函数,卸载函数以及其设备文件操作函数当中。现在的很多板子写驱动不会像下面的程序这样的繁琐,但是从其中基本可以看到框架大体没变,所以用chatgpt生成了找个函数并修改,搭了字符设备驱动的框架。首先我们得明白一个字符......
  • Python进阶:Day1什么django框架,怎么使用,用在哪里?
    前言:django框架大家好,我是辣条好久没有更新高能作品了,从今天开始我不定期更新系列作品,可能会偏向于中高级,没有基础的同学们可以看我往期的基础博文哦~亦或者直接通过文末底下名片直接找到辣条~废话不多说我们直接开始Django是一个开放源代码的Web应用框架,由Python写成。采用了MTV......
  • [附课程学习笔记]CS231N assignment 3#1 _ RNN 学习笔记 & 解析
    欢迎来到assignment3从现在开始,网上的博客数量就少了很多.毕竟从现在,我们开始了更具体网络的学习.这里的组织形式可能会比较怪,我会将RNN相关的课程内容和代码混在一起,这样也可以同时作为学习笔记,也是考虑到RNN之后没有官方讲义之后自己概括性的评说,感觉比较好组织.......
  • spring框架 简介
    spring实现了部分传统javaee规范,同时实现了自己的规范,成为了一种流行javaee框架,极大简化了传统ee的复杂性springboot的出现进一步简化了spring配置的复杂性,尽可能做到开箱即用。所以框架就是指非业务性代码的集成,比如身份验证,数据库处理都由spring交给专用的第三方jar处理,并返回处......
  • 若依框架简介
    其实叫若依框架不如叫若依模板,或者叫脚手架。spring支持集成第三方jar包的能力,若依框架选择最流行的多个jar提前进行了集成来完成了web初步开发工作并且提供了一个高度可定制化的可视化后台。还有一个特色功能就是代码自动生成,生成前端和后端代码。 ......
  • 11-GenericServlet
    1.我们编写一个Servlet类直接实现Servlet接口有什么缺点?我们只需要service方法,其他方法大部分情况下是不需要使用的。代码很丑陋。2.适配器设计模式Adapter适配器模式是一种结构型设计模式。适配器模式的思想是:把一个类的接口变换成客户端所期待的另一种接口,从而使......