最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

手撕PUBG羅技LUA腳本(進(jìn)階部分)

2023-06-25 19:14 作者:camend001  | 我要投稿

????????寫(xiě)在前面,該腳本為作者本人自己開(kāi)發(fā),代碼不多,大概2000行左右,與市面上流傳的大多數(shù)鼠標(biāo)宏和腳本思路不太相同,由于同時(shí)使用了G502的鼠標(biāo)和G910的鍵盤(pán),因此功能多了好多。這個(gè)腳本的穩(wěn)定性自認(rèn)為沒(méi)多大問(wèn)題,差不多斷斷續(xù)續(xù)用了5年了;至于壓槍效果,自認(rèn)為也算是上等水平。話不多說(shuō)直接開(kāi)撕......

主程序
配置文件被激活(僅在最開(kāi)始的時(shí)候執(zhí)行一次)

EnablePrimaryMouseButtonEvents(1) 使能鼠標(biāo)左鍵

SetBacklightColor(0,0,0) 設(shè)置鼠標(biāo)燈光顏色(羅技502不支持,后面涉及RGB的我PASS)

Gun = nil? 清空槍械指針(通俗點(diǎn)的解釋就是讓他什么都不指)

Gun_Table = {}? ?初始化時(shí)建立一個(gè)槍械數(shù)據(jù)庫(kù)空表

在槍械數(shù)據(jù)庫(kù)表中插入一個(gè)off(key,鍵,索引),后面大括號(hào)內(nèi)就是插入的數(shù)據(jù)(值,value),插入的數(shù)據(jù)還是一個(gè)表(二維、多維表格,想象成數(shù)組也可以)

Gun_Code = "turn_off",? ?在Gun_Table["off"]表中插入Gun_Code(key)=?"turn_off"(value)

Function = function() Gun = nil?Fire_cycle = nil end??Function是一個(gè)參數(shù),這個(gè)參數(shù)包含function這個(gè)函數(shù)(子程序),這個(gè)函數(shù)的目的是為了:清空槍械指針開(kāi)火循環(huán)子程序(主要是連點(diǎn)用)有點(diǎn)繞嘴。

Load_Gun_Table()? 加載槍械數(shù),這個(gè)是一個(gè)函數(shù)(子程序),后面帶括號(hào)的(),不管里面寫(xiě)沒(méi)寫(xiě)字,都是一個(gè)函數(shù)(子程序)。

------? ? OnEvent還沒(méi)結(jié)束,我遇見(jiàn)哪個(gè)函數(shù)就講哪個(gè)? ? ------


這個(gè)是槍械的主數(shù)據(jù),每把槍都是一個(gè)單獨(dú)的表,放在了一個(gè)總的表Gun_Table里面,找兩把槍,單獨(dú)講一下,M762(全自動(dòng))和MK47(單發(fā))

槍械代碼:Gun_Code = "M762",????? ?Gun_Code = "MK47_S_10",

槍械模式:?????????????????????????????????????????Gun_Mode = "Single_Mode",

開(kāi)槍間隔:Interval = 11.25,????????????????Interval_S = 104,

下壓次數(shù):Press_Step = 8,????????????????Press_Step =?8,? ? (1發(fā)子彈下壓8次,平滑)

屏息倍率:Ratio_Shift = 1.327,??????????Ratio_Shift = 1.327,

下蹲倍率:Ratio_Ctrl_N = 0.84,?????????Ratio_Ctrl_N = 0.85,

??????????????????Ratio_Ctrl_S = 0.84,?????????Ratio_Ctrl_S = 0.85,

倍鏡倍率:Ratio_4X = 3.65,????????????? ?Ratio_4X = 3.85,

滿配倍率:Gun_all = 0.78,?????????????????Gun_all = 0.73,

單槍倍率:Gun_Ratio = M762_Ratio,Gun_Ratio = MK47_S_10_Ratio,

彈道數(shù)據(jù):"4.4x8",? ??? ? ?????????????????????"30x1",? ? ? ? ?(第1發(fā)子彈和第2發(fā)子彈間下壓距離)

??????????????????"3.6x8",? ???????????????????????????"12x1",?????????(第2發(fā)子彈和第3發(fā)子彈間下壓距離)

??????????????????以此類推......

全自動(dòng)槍:4.4x8代表每步下壓4.4個(gè)單位距離,一發(fā)子彈下壓8次

單點(diǎn)槍械:30x1代表8步一共下壓30個(gè)像素,每步下壓30/8=3.75個(gè)單位距離

Fire_cycle = nil????清空開(kāi)火循環(huán)子程序

Fire_key = nil????? ?清空開(kāi)火按鍵(如果用鼠標(biāo)左鍵開(kāi)火,這個(gè)就沒(méi)用)

遍歷整個(gè)槍械數(shù)據(jù)表,將原始?jí)簭?qiáng)數(shù)據(jù)展開(kāi),具體不用考慮這里面怎么操作的。取消綠色OutputLogMessage備注可以在軟件里看到彈道數(shù)據(jù),有點(diǎn)亂,平時(shí)不用打開(kāi)。
這個(gè)就不講了,目的為了初始化槍械
重新封裝了outputlogmessage函數(shù)
初始化單點(diǎn)槍械數(shù)據(jù),也不講了
初始化顯示信息


Key_Tab = {}????????????? ? ?新建一個(gè)鼠標(biāo)按鍵表,用來(lái)存取鼠標(biāo)按鍵信息

Keyboard_Tab = {}????? ?新建一個(gè)鍵盤(pán)按鍵表,用來(lái)存取鍵盤(pán)按鍵信息


鍵盤(pán)G按鍵按下后......

羅技鍵盤(pán)G鍵按下、抬起,按鍵信息存入鍵盤(pán)按鍵表,按下就是true,抬起就是false

鼠標(biāo)按鍵按下后......

鼠標(biāo)按鍵按下,假如按的是OFF關(guān)閉壓槍宏按鍵且OFF按鍵雙擊使能打開(kāi),則判斷雙擊時(shí)間是不是小于100毫秒,如果小于,執(zhí)行OFF按鍵雙擊子程序

雙擊OFF按鍵,自動(dòng)按下抬起吃藥按鍵

Medicine_key = "9"? ? 把吃藥按鍵綁定為9,9在游戲里設(shè)置為打繃帶,則雙擊OFF自動(dòng)打繃帶。如果不想使用此功能,可以將Off_Key_D_Click_enable = true 改為?Off_Key_D_Click_enable = false

鼠標(biāo)按鍵抬起,配合前面按下使用
錨函數(shù)
假如錨函數(shù)存在且錨函數(shù)返回true,則啥都不執(zhí)行,直接跳過(guò)后面。

說(shuō)白了就是先判斷按鍵有沒(méi)有其他額外功能,如果有,執(zhí)行完了特殊功能后,就不去執(zhí)行后面的程序了。

有鼠標(biāo)按鍵被按下,且按鍵表2號(hào)按鍵(鼠標(biāo)右鍵)抬起狀態(tài)

????????通俗點(diǎn)的講,就是右鍵沒(méi)被按下的狀態(tài),有鼠標(biāo)其他按鍵按了(左鍵,中鍵、G4、G5、G6....)

假如按下的鍵是,瞄準(zhǔn)保持按鍵且沒(méi)按ALT按鍵
按下瞄準(zhǔn)鍵P,延遲5毫秒,按下下蹲替換鍵(目的不和CTRL下蹲沖突),瞄準(zhǔn)標(biāo)記賦值為1
這些按鍵在程序最上方,可以改
精準(zhǔn)延遲,替代Sleep()延遲
假如當(dāng)前不在自動(dòng)左右傾斜(QE)狀態(tài)且自動(dòng)左右傾使能則執(zhí)行自動(dòng)左右傾
假如在自動(dòng)左傾狀,自動(dòng)按下Q,傾斜標(biāo)記賦值為1,假如在自動(dòng)右傾狀態(tài),自動(dòng)按下E,傾斜標(biāo)志賦值為1

我的QE是反向的,可以在程序最開(kāi)始處更改。

互換這兩個(gè)
或者互換這兩個(gè)

假如在自動(dòng)左傾狀,自動(dòng)抬起Q,傾斜標(biāo)記賦值為0,假如在自動(dòng)右傾狀態(tài),自動(dòng)抬起E,傾斜標(biāo)志賦值為0
G502鼠標(biāo)滾輪控制左右傾,偏移滾輪打開(kāi),再按關(guān)閉,同時(shí)鼠標(biāo)移動(dòng)指示。

G502鼠標(biāo)滾輪控制左右傾,偏移滾輪打開(kāi),再按關(guān)閉,同時(shí)鼠標(biāo)移動(dòng)指示。
按鍵不是2,也就是不是鼠標(biāo)右鍵
按鍵加修飾并賦值給局部變量key
修飾按鍵函數(shù)

按住Shift再按鼠標(biāo)G4按鍵,經(jīng)過(guò)修飾后的按鍵為"s4"

按住Alt再按鼠標(biāo)G5按鍵,經(jīng)過(guò)修飾后的按鍵為"a5"

同時(shí)按住Shift、Alt再按鼠標(biāo)G6按鍵,經(jīng)過(guò)修飾后的按鍵為"sa6"

同時(shí)按住Ctrl、Shift、Alt再按鼠標(biāo)G7按鍵,經(jīng)過(guò)修飾后的按鍵為"csa7"

假如按了一鍵拾取按鍵,則執(zhí)行自動(dòng)拾取函數(shù)
拾取按鍵綁定的是鼠標(biāo)G4按鍵
自動(dòng)拾取函數(shù),獲取鼠標(biāo)當(dāng)前坐標(biāo),然后按住鼠標(biāo)左鍵,快速右移動(dòng)6次,然后釋放鼠標(biāo)左鍵,再把鼠標(biāo)回位到最開(kāi)始的位置
鼠標(biāo)按鍵設(shè)置
假如按了標(biāo)記按鍵“a1”,alt+鼠標(biāo)左鍵,程序自動(dòng)按J按鍵標(biāo)記
自動(dòng)左右傾使能開(kāi)關(guān),同時(shí)鍵盤(pán)M燈指示
假如按了手雷按鍵ALT+G5,則執(zhí)行boom_key_button賦值arg也就是5,同時(shí)把雷拿出來(lái),讀秒計(jì)時(shí),再把雷扔出去
按鍵盤(pán)4切換到手雷,按住鼠標(biāo)左鍵,然后拉環(huán)

手雷綁定鍵盤(pán)4號(hào)按鍵,拿出來(lái)雷以后程序自動(dòng)按鼠標(biāo)右鍵,然后拉環(huán)




把讀秒計(jì)時(shí)函數(shù)賦值給Fire_cycle開(kāi)火循環(huán)


假如M1按鍵釋放(這個(gè)是自動(dòng)的),則假如按鍵boom_key_button不為空且按鍵表里5這個(gè)按鍵是被按下沒(méi)在抬起狀態(tài),則每間隔100毫秒,系統(tǒng)自動(dòng)按下M1按鍵,重復(fù)這個(gè)循環(huán),直到抬起了鼠標(biāo)G5按鍵,或者讀秒超過(guò)3秒,則自動(dòng)執(zhí)行Boom_Throw()把雷扔出去。


扔雷程序:釋放鼠標(biāo)左鍵,假如次時(shí)按了SHIFT按鍵,則自動(dòng)跳一下,扔雷扔的遠(yuǎn)些。扔完雷自動(dòng)切回第一把槍。
CTRL+鼠標(biāo)G6關(guān)閉打開(kāi)鼠標(biāo)右鍵雙擊使能,同時(shí)M指示燈指示
鼠標(biāo)滾輪按下,瞄準(zhǔn)及下蹲復(fù)位
鼠標(biāo)瞄準(zhǔn)保持鍵G5抬起且沒(méi)按鼠標(biāo)右鍵,則瞄準(zhǔn)、下蹲及左右傾復(fù)位
按住了鼠標(biāo)右鍵的同時(shí),如果按下左右傾(鼠標(biāo)滾輪偏移)或瞄準(zhǔn)保持按鍵G5,自動(dòng)下蹲,如果按了拾取鍵G4,則自動(dòng)切換左右傾方向。
鍵盤(pán)G鍵按下,且沒(méi)按鼠標(biāo)右鍵,按鍵經(jīng)過(guò)修飾賦值給key
訓(xùn)練場(chǎng)試槍按鈕,添加槍械水平右移4個(gè)單位
沒(méi)用,作廢

CTRL + 鍵盤(pán)G1 把第1把槍的宏指針存入第二個(gè)寄存器

存第1把槍械指針、倍鏡信息、滿配信息等
CTRL + 鍵盤(pán)G2 把第2把槍的宏指針存入第二個(gè)寄存器

存第2把槍械指針、倍鏡信息、滿配信息
鍵盤(pán)G4按鍵,換槍且自動(dòng)更換槍械宏指針
換槍換宏程序
Shift + 鍵盤(pán)G4清空寄存器


清除兩個(gè)寄存器的指針、倍鏡信息、滿配信息

簡(jiǎn)化了修飾按鍵,封裝成函數(shù)



未完待續(xù)


手撕PUBG羅技LUA腳本(進(jìn)階部分)的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
朝阳区| 连云港市| 巴里| 鹤山市| 方山县| 清镇市| 英吉沙县| 深泽县| 张北县| 双流县| 武隆县| 贵港市| 徐闻县| 财经| 阳江市| 资溪县| 松原市| 吉安市| 密山市| 镇雄县| 广丰县| 开鲁县| 潼南县| 抚松县| 西峡县| 明星| 象山县| 嘉黎县| 井冈山市| 罗平县| 云南省| 安达市| 阆中市| 左权县| 杂多县| 鸡西市| 滨州市| 岐山县| 连南| 大埔区| 忻城县|