當前位置:首頁 » 編程軟體 » 腳本宏定義

腳本宏定義

發布時間: 2022-08-18 21:15:28

⑴ 什麼是腳本

最簡單的一些腳本

用寫字板打開你的config.cfg(cstrike目錄下).把console""""0.000000""""

這行改為console""""1"""".

然後在cstrike快捷方式里的程序地址後面添加

-console-zone4096-dev

如:C:SierraHalf-Lifehl.exe-console-zone4096-dev

什麼是alias(宏)?

可以說腳本就是在一個個宏的基礎上組建起來的,這也是我們必須了解的第一個問題

宏的大致格式是這樣的:

alias[alias-name]""""[command1];[command2];[command#]....""""

我們可以看出,宏實際上就是一系列指令的集合,所以,任何一個宏也可以應用到其他的宏中。

腳本中最常用的一些指令

menuselect#-#為1至9的一個數字.這個指令表示選擇菜單中的第#個選項.如:

例:aliasjoinct""""chooseteam;menuselect2""""

引號中的內容即表示選擇team菜單的第2項,即CT這邊

bindKEYCOMMAND-

把某個特定的指令定義到某個鍵上.注意:'COMMAND'也可為一個宏.

如:bind""""k""""""""kill""""

把kill這個指令定義到k上,這樣你按k時就自殺了

又如:bind""""k""""""""joinct""""

則你按k就會加入CT這邊.

execname.cfg-

導入某個cfg文件.HL每次進入游戲時會自動導入config.cfg和autoexec.cfg文件.

wait-

停滯一小會.腳本中的wait是為了讓前指令執行完.使用多少wait要根據不同的電腦和網路情況而定,太多的wait就會引起lag,太少則可能使下一個指令來不及執行.

簡單的宏

讓我們先看一些最簡單的宏來熟悉一下

打開autoexec.cfg,寫入以下行:

aliashello""""sayWelcometoCsChina.net!;wait;wait;kill;wait;

wait;say_teamWelcometoCsChina.net!""""

讓我們看看這個宏的結構:

引號中為一個指令集,其中say這個指令的作用是對游戲中所有人說話,say_team則是對所有隊友說話

注意:單個指令之間用分號;隔開

這個指令集被定義為一個名為hello的宏

別急,你還必須把剛剛製作的宏定義到某個鍵位上才能使用,進入游戲,在控制面版中敲入

bind""""k""""""""hello""""

好了,現在讓我們按K看看效果吧,hoho~~

宏的類型及簡單腳本製作

腳本製作的基本概念我們已經比較清楚了,現在一起看一看宏的幾種類型並將其應該到簡單的腳本製作中

+/-aliases

其意義為當按住某個鍵時執行一個指令集,而松開此鍵時則執行另外一個指令集(注:這兩個指令集可以相同也可以好不相干)

例:

alias+sayreload""""+reload;say_teamCovermewhileIreload!""""

alias-sayreload""""-reload""""

+/-

aliases,可以使你原本簡單的動作更加多樣化,如擴展開就是更復雜但更有效的meta

binds(

metabinds

metaBinds實際上就是一種+/-alias,但不同的是,meta

binds在松開定義鍵之後對該鍵重新做了定義(←Archangel注:此行用紅色字體.)一定要注意這個區別,這將非常有助於理解這兩種宏的類型。

讓我們來看一個常見的製作快速買搶腳本的例子:

Example:

aliaspreset1""""buy;menuselect4;menuselect6;buy;menuselect6;buyequip;

menuselect2""""

//購買AWM、子彈以及防彈衣

aliaspreset2""""buy;menuselect3;menuselect1;buy;menuselect6;buyequip;

menuselect1;""""

//購買MP5、子彈以及防彈衣

aliaspreset3""""buy;menuselect2;menuselect1;buy;menuselect1;

menuselect5;buy;menuselect6;buy;menuselect7;buyequip;menuselect2""""

//購買M3,beretta,子彈,帶頭盔的防彈衣

aliaspreset4""""buy;menuselect1;menuselect3;buy;menuselect7""""

//購買手雷和子彈

aliaspreset5""""developer1;echoPresetnotset!;developer0""""

//在屏幕左上角顯示該組合鍵未定義----Presetnotset!

注:echo這個指令的意義為在屏幕左上角顯示你所定義的信息

aliaspreset6""""developer1;echoPresetnotset!;developer0""""

aliaspreset7""""developer1;echoPresetnotset!;developer0""""

aliaspreset8""""developer1;echoPresetnotset!;developer0""""

aliaspreset9""""developer1;echoPresetnotset!;developer0""""

aliaspreset10""""developer1;echoPresetnotset!;developer0""""

//同上

alias+toggle""""bind1preset1;bind2preset2;bind3preset3;bind4

preset4;bind5preset5;bind6preset6;bind7preset7;bind8preset8;

bind9preset9;bind0preset10""""

alias-toggle""""bind1slot1;bind2slot2;bind3slot3;bind4slot4;bind

5slot5;bind6slot6;bind7slot7;bind8slot8;bind9slot9;bind0

slot0""""

bindalt""""+toggle""""

這個腳本子後三行是關鍵所在,其意義為,當按住alt和某數字鍵時,執行腳本前半部定義的購槍指令集,而當松開alt鍵時,數字鍵則恢復為原功能,即切換槍支,這就是meta

binds的意義所在!

其作用也是顯而易見的:可以節省不少鍵位,並可以在常用鍵位上定義更多的指令集

Toggles

Toggles(開關)最典型的例子就是開關探照燈和夜視儀。讓我們製作一個開關netgraph(狀態顯示,如FPS)的Toggle來熟悉和研究一下

Example:

aliasngon""""developer1;echoNetGraphon;developer0;net_graph3;bindn

ngoff""""

aliasngoff""""developer1;echoNetGraphoff;developer0;net_graph0;bind

nngon""""

bindn""""ngon""""

這個腳本的作用即為用n鍵來開關netgraph,注意Toggle的特點,在第一個宏的末尾將n鍵定義到下一個宏,這實際上就形成了一種循環(cycling),但這個腳本顯然並不能令人滿意,因為它不能添加到鍵盤設置菜單中以便更快捷的調整,因為:請注意!該鍵被定義(bind)了兩次。如何解決這個問題呢,稍稍改動即可。

Toggles(complex)

即為改進後的Toggles,其好處在於只需設定一個鍵位,仍然以netgraph開關為例

Example:

aliasngon""""developer1;echoNetGraphon;developer0;net_graph3;alias

ngngoff""""

aliasngoff""""developer1;echoNetGraphoff;developer0;net_graph0;

aliasngngon""""

aliasng""""ngon""""

bindn""""ng""""

大家可以看到:兩個宏的尾部都由原來的bind改為alias,在第三行把鍵單獨定義,非常巧妙,不是嗎?hoho~~

現在我們可以在鍵盤設置欄直接定義該鍵了,更重要的是:理解了這個技巧,我們就可以進入下一課-----循環

Cyclealiases

前面的toggle僅僅是兩種情況的選擇,即開和關,當我們面臨更多種選擇時怎麼辦呢?這就需要Cycle

aliases,還是看netgraph的例子,但這一次,我們要用n鍵選擇不同的netgraph顯示形式.

Example:

aliasng1""""developer1;echoNetGraphon,setting1;developer0;net_graph

1;aliasngng2""""

aliasng2""""developer1;echoNetGraphon,setting2;developer0;net_graph

2;aliasngng3""""

aliasng3""""developer1;echoNetGraphon,setting3;developer0;net_graph

3;aliasngng4""""

aliasng4""""developer1;echoNetGraphoff;developer0;net_graph0;alias

ngng1""""

aliasng""""ng1""""

bindn""""ng""""

我們可以看到,在每一行的末尾都將鍵定義到下一個宏上,這就形成了循環.

製作自己的鍵位設置菜單

在前一章中我們提到鍵位設置菜單中添加自己的選項

這就是最後一節中我們將詳細講解的內容

csnation.counter-strike.net/content/csinfo/images/scripting/controls2-small.jpg

打開你的half-lifecstrike目錄下的gfx文件夾,用寫字板打開其中的kb_act.lst文件,你可以看到這樣一些內容:

""""buyammo1""""""""BuyPrimaryAmmo(Optional)""""

""""buyammo2""""""""BuySecondaryAmmo(Optional)""""

""""buyequip""""""""BuyEquipmentMenu(Optional)""""

……………………

左邊就是宏的名稱,而右邊則是你希望玩家在菜單中所看到的對這個宏的解釋

好,現在我們有這么一個腳本

aliasfloat_t""""float_on""""

aliasfloat_on""""aliasfloat_tfloat_off;+moveup""""

aliasfloat_off""""aliasfloat_tfloat_on;-moveup""""

已經比較熟悉腳本製作的大家應該看的出來,這是一個一鍵游泳的toggle

怎樣在菜單中也加上這個toggle的一欄呢?想必你也看出來了,對,只要在kb_act.lst的下面加上這么一行""""float_t""""""""FloatingToggler""""

就一切搞定,就是這么簡單,呵呵

一樣,你還可以在菜單為你的腳本加個商標,加入下面行:

""""blank""""""""""""

進入游戲後你就可以看見你的大名也烙在了CS,帥:>

另外kb_act.lst這個文件是有大小限制的,不過估計誰也寫不了那麼多,hohoho~~
轉sina

⑵ shell腳本中怎麼定義通用的路徑宏

可以這樣用,我懷疑你的錯誤應該不是路徑變數導致的,如有疑問,請把你的報錯信息發出來!

c語言不屬於腳本語言可是能不能用來寫腳本呢

不行的,腳本是一種文本,可以用記事本編寫,是十進制,不需要編譯器編譯成計算機能識別的二進制。而c語言用編譯器來編寫,將十進制轉換為二進制。況且腳本語法和c語言不同,但腳本和vb有關聯,如果你要學腳本,先去理解下vb語法

⑷ 如何使用腳本在xcode工程中添加宏定義

iphone sdk從2.2開始就不能很方便的加入預處理宏了
2.2之後的方法是在GCC編譯選項組下面,手工添加一個欄位GCC_PREPROCESSOR_DEFINITIONS,然後對應的value填上你的預處理define即可

⑸ C++里如何使用宏定義或其它技巧使用FOR循環簡化代碼。

1. 宏定義並沒有提供這樣的功能。
2. 使用for循環是不可能的,這表示要在運行時把一個字元串轉成變數,而程序經過編譯之後已經變成了匯編語言,變數已經變成了一個個內存地址,他不可能認識這個變數名了。

建議在定義指針時使用指針數組,這樣就可以循環調用了。比如:
CA* p[100];
for ( int i = 0; i < 100; i++ )
{
p[i] = new CA();
p[i]->close();
}

⑹ 什麼情況用宏定義而不用一般定義

當一個程序由多個文件組成,特別是有多個頭文件組成時一定要用宏,目的是避免互相嵌入造成重復定義,給編譯器一個清晰的程序結構。
例如所有的MFC VC++ 的頭文件都有這個宏
#if !defined(AFX_....
#define AFX_....
...
#endif

調用動態聯結庫要用宏 #pragma....

定義替代字元要用宏,例如
#define SHUZU_DAXIAO 2000
...
float a[SHUZU_DAXIAO],b[SHUZU_DAXIAO];
編譯前編譯器會用2000替代所有字元SHUZU_DAXIAO。

如果是一般變數,就不能用宏,例如:
int i,j,k;

void main(int n, char *argv[]) { }
這是標準的C的主程序寫法。
用void 表示主程序運行終了沒有返回值送回操作系統。
如果是
int main(int n, char *argv[]) { ....
return 0;
}
主程序運行終了有返回值送回操作系統,主程序內要有return語句。

⑺ 鍵盤上的宏定義是什麼意思

嗯就是相當於組合鍵,你玩過魔獸沒有那個有宏的,其實就是偷懶的方法,如一個宏里上下左右上上下下這么幾個按鍵順序,你用宏就會這么的自己在電腦里上下左右上上下下,你錄制宏ASDASDASDASD,設定開啟為A,開啟宏,按下A觸發宏,電腦里就反復的asdasdasdasd,當然也能是組合多功能鍵復制粘貼之類的就是省的你一個一個的按了,按一個鍵就搞定了,這樣的鍵盤200以上吧,機械的就大幾百了,常見的有黑寡婦和杜蘭朵終極,因為有內存在鍵盤里所以貴,另外用軟體可以做到宏的效果

⑻ Makefile中的宏定義必須採用 和 么

八 環境變數
8.1 查看環境變數
$ env  顯示所有的環境變數設置
$ echo $ENV_VARIABLE  顯示指定環境變數的設置
例:
$ echo $PATH
/bin:/etc:/usr/bin:/tcb/bin

8.2 設定環境變數
$ ENV_VARIABLE=XXX;export ENV_VARIABLE
例:
$ PATH=$PATH:$INFORMIXDIR/bin;export PATH  將環境變數PATH設定為原PATH值+$INFORMIXDIR/bin

8.3 取消環境變數設置
$ unset $ENV_VARIABLE
例:
$ set GZJ=gzj;export GZJ  設置環境變數GZJ
$ echo $GZJ
gzj  顯示環境變數值
$ unset $GZJ  取消環境變數GZJ的設置
$ echo $GZJ
 已取消

一 makefile規則
makefile是一個make的規則描述腳本文件,包括四種類型行:目標行、命令行、宏定義行和make偽指令行(如「include」)。makefile文件中注釋以「#」開頭。當一行寫不下時,可以用續行符「\」轉入下一行。
1.1 目標行
目標行告訴make建立什麼。它由一個目標名表後面跟冒號「:」,再跟一個依賴性表組成。
例:
example: depfile deptarget
該目標行指出目標example與depfile和deptarget有依賴關系,如果depfile或deptarget有修改,則重新生成目標。
example1 example2 example3: deptarget1 deptarget2 depfile
該目標行指出目標名表中的example1、example2、example3這三個各自獨立的目標是用相同的依賴列表和規則生成的。
clean:
空的依賴列表說明目標clean沒有其他依賴關系。

目標行後續的以Tab 開始的行是指出目標的生成規則,該Tab字元不能以空格代替。例如:
example.o:example.c example.h
cc –c example.c
該例子指出目標example.o依賴於example.c和example.h。如果example.c或example.h其中之一改變了,就需要執行命令cc –c example.c重新生成目標example.o。
可以用文件名模式匹配來自動為目標生成依賴表,如:
prog: *.c

以下是一個簡單的makefile的例子:

圖 1 最簡單的makefile例
make使用makefile文件時,從第一個目標開始掃描。上例中的第一個目標為all,所以目標clean不會自動被執行,可以通過命令make clean來生成目標。

1.2 命令行
命令行用來定義生成目標的動作。
在目標行中分號「;」後面的文件都認為是一個命令,或者一行以Tab製表符開始的也是命令。
如在上面的makefile例中,第三行以Tab字元開始的cc命令即是一個命令行,說明要生成hello應執行的命令。也可以寫成:hello:hello.o;cc –c hello –L…
一般情況下,命令行的命令會在標准輸出中回顯出來,如對上面的makefile執行make時,標准輸出如下:
cc -c hello.c
cc -o hello -L/usr/X11R6/lib -L/usr/lib -lXm -lXt -lX11 hello.o
cc -c hello1.c
cc -o hello1 -L/usr/X11R6/lib -L/usr/lib -lXm -lXt -lX11 hello1.o
如果不希望命令本身回顯,可在命令前加@字元,如在上例中不希望回顯cc –c hello.c和cc –c hello1.c,可修改makefile文件如下:

圖 2 抑制回顯的makefile例
對該makefile文件執行make時,標准輸出如下:
cc -o hello -L/usr/X11R6/lib -L/usr/lib -lXm -lXt -lX11 hello.o
cc -o hello1 -L/usr/X11R6/lib -L/usr/lib -lXm -lXt -lX11 hello1.o
可以看出,命令行前有@字元的不回顯。

1.3 宏定義行
在makefile中,可以使用宏定義減少用戶的輸入,例如上例中對hello和hello1的編譯選項均為「-L/usr/X11R6/lib -L/usr/lib -lXm -lXt -lX11」,此時可以用宏來代替,如:
圖 3 使用宏定義的makefile例
宏定義的基本語法是:
name=value
在定義宏時,次序不重要。宏不需要在使用前定義。如果一個宏定義多次,則使用最後一次的定義值。
可以使用「$」字元和「()」或「{}」來引用宏,例如:
cc –o hello.o $(CCFLAGS) hello.o
也可以將一個宏賦值給另一個宏,但這樣的定義不能循環嵌套,如:
A=value1
B=value2
C=$(A) $(B)等價於C=value1 value2

1.4 偽指令
makefile大部分由宏定義行、命令行和目標行組成。第四種類型是make偽指令行。make偽指令沒有標准化,不同的make可能支持不同的偽指令集,使得makefile有一定的不兼容性。如果要考慮移植性問題,則要避免使用make偽指令。但有一些偽指令,如include,由於使用比較多,很多不同make都提供該偽指令。
1.4.1 偽指令include
該偽指令類似C語言中的#include,它允許一次編寫常用的定義並包括它。include偽指令必須在一行中,第一個元素必須是include,並且跟一個要包含的文件名,如:
include default.mk

1.4.2 偽指令「#」
「#」字元也是make的偽指令,它指出「#」後面的文件是注釋,如:
PROGNAME=test # define macro
#don't modify this

⑼ 宏設置 是什麼

關於宏
如果在 Microsoft Word 中反復執行某項任務,可以使用宏自動執行該任務。宏是一系列 Word 命令和指令,這些命令和指令組合在一起,形成了一個單獨的命令,以實現任務執行的自動化。

以下是宏的一些典型應用:

加速日常編輯和格式設置
組合多個命令,例如插入具有指定尺寸和邊框、指定行數和列數的表格
使對話框中的選項更易於訪問
自動執行一系列復雜的任務
Word 提供兩種方法來創建宏:宏記錄器和 Visual Basic 編輯器。

如果要方便快捷地運行宏,可以將其指定到工具欄、菜單或快捷鍵。這樣,運行宏就和單擊工具欄按鈕或菜單命令,或者按快捷鍵一樣簡單。

如果為一個新的宏指定與現有內置 Word 命令相同的名稱,新的宏操作將代替現有的操作。例如,如果錄制一個新的宏並將之命名為「FileClose」,它將與「關閉」命令相關聯。當選擇「關閉」命令時,Word 將執行新錄制的操作。

錄制宏

宏錄制器可以幫助您開始創建宏。Word 將宏錄制為一系列 Visual Basic for Applications 中的 Word 命令。在錄制宏的過程中可以暫停錄制,隨後從暫停時的位置繼續錄制。

錄制一個宏時,可以使用滑鼠單擊命令和選項,但是宏錄制器不能錄制滑鼠在文檔窗口中的移動。必須用鍵盤來記錄這些動作。

關於錄制宏的提示

在錄制或書寫宏之前,請計劃好需要宏執行的步驟和命令。
如果在錄制宏的過程中進行了錯誤操作,更正錯誤的操作也將被錄制。錄制結束後,您可以編輯宏並刪除錄制的不必要的操作。
盡量預測任何 Word 可能顯示的信息,在宏運行時,這些信息可能使宏操作停止或造成混淆。
如果宏包含「編輯」菜單中的「查找」或「替換」命令,請單擊「查找」或「替換」選項卡上的「高級」按鈕,然後單擊「搜索范圍」框中的「全部」選項。如果宏僅向上或向下進行搜索,Word 會在達到文檔開頭或結尾時停止運行宏,並顯示提示信息詢問是否繼續搜索。
如果要在其他文檔中使用正在錄制的宏,請確認該宏與當前文檔的內容無關。
如果經常用某個宏,可將其指定給工具欄按鈕、菜單或快捷鍵。這樣,就可以直接運行該宏而不必打開「宏」對話框。
從頭開始創建宏

可以使用「Visual Basic 編輯器」來創建非常靈活、功能強大的宏,其中包含無法錄制的 Visual Basic 指令。

使用「Visual Basic 編輯器」時,可以獲取附加的幫助,例如關於對象和屬性的參考信息。

保存宏

可以將宏保存在模板或文檔中。在默認情況下,Word 將宏保存在 Normal 模板中。這樣所有 Word 文檔都可使用宏。如果需在單獨的文檔中使用宏,可以將宏保存在該文檔中。文檔中單獨的宏保存在宏方案中,可以將該宏從文檔中復制到其他文檔。

在 Web 頁中自動執行任務

在以 Web 頁保存並發布的 Word 文檔中,使用腳本標記和「Microsoft 腳本編輯器」,而不是使用宏來自動執行任務。

腳本標記用來標記 Word 文檔中存儲腳本的位置。雙擊 Word 文檔中的腳本標記會啟動「Microsoft 腳本編輯器」,這時就可以開始編輯腳本。在 Web 瀏覽器中顯示 Web 頁時,將會運行腳本。

熱點內容
怎麼翻錄加密視頻 發布:2025-02-06 21:58:12 瀏覽:549
逃離塔科夫啟動器選什麼伺服器 發布:2025-02-06 21:44:48 瀏覽:291
我的世界手機版伺服器開服教程 發布:2025-02-06 21:43:01 瀏覽:271
微信娛樂源碼 發布:2025-02-06 21:34:53 瀏覽:529
編譯翻譯運行 發布:2025-02-06 21:05:20 瀏覽:200
安卓源碼版本 發布:2025-02-06 20:51:34 瀏覽:432
安卓系統網路播放器哪個好 發布:2025-02-06 20:42:02 瀏覽:818
頭條緩存的視頻格式 發布:2025-02-06 20:32:18 瀏覽:116
ftp不顯示文件夾 發布:2025-02-06 20:30:37 瀏覽:127
蘋果手機解壓怎麼打開 發布:2025-02-06 20:29:35 瀏覽:476