指針腳本
㈠ 航海王:夢想指針用什麼輔助腳本好
航海王:夢想指針用鳥人助手比較好,這款輔助腳本我一直用著,功能賊給力,上面還有很多好玩的手游∞
㈡ 有沒有可以控制滑鼠每幾秒點一下的工具或腳本
哎呀,滑鼠不行了?讓你馬哥來幫你!!!!!!!
不管你的桌面處於任何狀態,按win+e快捷鍵,打開windows的資源管理器。此時游標的默認位置定位於「我的電腦「上,按方向鍵移動到「控制面板「上,然後按tab鍵跳動游標,繼續按動方向鍵,選擇「輔助選項「,按enter鍵確認,這時你會發現彈出一個「輔助選項屬性「對話框。將tab和方向鍵配合,選擇對話框中的「滑鼠「標簽卡。到這一步,我們就可以著手設置「滑鼠鍵「了。按下快捷鍵alt+m,選中「使用『滑鼠鍵『「復選框,就可以使「滑鼠鍵「生效,做完這一步,可以使用小鍵盤來控制滑鼠的指針方向和點擊操作。
上面的操作僅僅令「滑鼠鍵「生效,如果想進一步設置滑鼠鍵,則按alt+s鍵,彈出「滑鼠鍵設置「對話框。
按alt+u選中「使用快捷方式「,則以後你可以按「左alt+在shift+numlock「鍵以快速打開(關閉)「滑鼠鍵「。按alt+h選中「按住ctrl鍵進行加速或按shift鍵進行減速「,則以後利用「滑鼠鍵「移動「滑鼠「時,可配合ctrl鍵和shift鍵分別加速和減速移動滑鼠指針。利用小鍵盤使用「滑鼠鍵「,numlock是切換開關。如果按「alt+n「選定「打開「,意即當numlock按鍵處於打開狀態時,小鍵盤用作「滑鼠鍵「;反之,按「alt+f「選擇「關閉「,則意味著當numlock按鍵處於關閉狀態時,小鍵盤用作「滑鼠鍵「。同理,按「alt+s「鍵,選中「在屏幕上顯示滑鼠鍵狀態「復選框,則可以看到任務欄狀態區中的「滑鼠鍵「tray標志,方便日後查看「滑鼠鍵「狀態以及設置相關參數。
而滑鼠鍵對滑鼠操作的方法是:
1、移動
1)
要水平或垂直移動滑鼠指針,請按小鍵盤上的「4「、「6「、「8「、「2「鍵,分別代表
←、→、↑、↓四個方向。
2)
要沿對角移動滑鼠指針,請按小鍵盤上的「7「、「3「、「9「、「1「鍵,分別代表這四個方向。
2、點擊
1)
如果欲單擊某個對象,請按小鍵盤上的數字鍵5。
2)
如果要雙擊某個對象,則按小鍵盤中的加號「+「鍵。
3)
如果要右鍵點擊,請先按小鍵盤中的減號「--「鍵,然後要單擊則按數字鍵
5,要雙擊則按加號「+「鍵。
4)
如果要同時用兩個滑鼠鍵單擊,請按小鍵盤上的星號「*「鍵
,然後要單擊則按
5,要雙擊則按加號「+「鍵。
5)
如果要切換到標准單擊狀態,請按小鍵盤上的斜杠「/「鍵。
3、
拖放
1)
如果要在想移動的對象上移動滑鼠指針,請按小鍵盤上的箭頭鍵。
2)
如果要按住滑鼠按鈕,請按小鍵盤上的「
ins「鍵。
3)
如果要在欲將對象移動到的區域上移動指針,請按小鍵盤上的箭頭鍵。
4)
如果要釋放滑鼠按鈕,則按下小鍵盤上的「del「鍵即可
快採用我的啊啊啊
啊
鯉魚~~
㈢ 游戲中實現腳本控制的干貨分享
游戲中實現腳本控制的干貨分享
一個游戲引擎做好了,最重要的是缺什麼?腳本。打個比方,游戲引擎是一部電腦,則腳本就是電腦的軟體。既然腳本這么重要,那該怎樣實現呢?下面我就來說說自己的做法。想了解更多相關資訊請持續關注我們應屆畢業生培訓網。
首先理解一下消息循環
一個好的游戲離不開好的消息循環。它是游戲實現很重要的一部分。
首先,我定義了一個全局變數extern int GameState;
在游戲中定義了許多當前的游戲狀態例如
#define GAME_STATE_CUSTOM 0 //這代表在戰斗中玩家可以控制游戲
#define GAME_STATE_TALKING 1
等等。
好了,下面在WinMain裡面的while(1)循環中有個UpdateScreen()函數
原型為
void UpdateScreen()
{
延時
switch(GameState)
{
case GAME_STATE_CUSTOM:
畫出地圖
畫出所有精靈
畫出天氣(如果有的話)
如果玩家選中了敵人的話(打個比方DrawFlag=DrawEnemyState)就顯示敵人的移動范圍和敵人狀態
break;
case GAME_STATE_TALKING:
GameDialogProc();
break;
case GAME_STATE_SCRIPTCONTROLLING:
ScriptControlProc();
break;
….//其他的消息在這里處理
}
將緩沖表面的圖象顯示到屏幕;
}
每個游戲狀態都需要一個獨立的函數來寫。這樣在每次切換游戲狀態時都不會出現無法處理的情況。在處理鍵盤消息的時候我也用一個個獨立的函數來寫,如處理回車鍵我用了 KeyReturnProc()來控制。在這個函數里同樣也少不了switch(GameState)這一句,為什麼?答案很簡單,比如說在精靈行走時回車鍵就沒有用,這是我沒有處理精靈行走這個狀態的鍵盤消息。而在戰斗場景里按下回車鍵,如果有精靈在選擇框里的話,就會處理相應的東西。
例如選擇了敵人則使DrawFlag=DrawEnemyState;這樣在更新屏幕時就會畫出敵人的移動范圍和狀態。
明白了嗎?好了,如果你明白了消息循環的原理,下面的東西就很容易理解了。
下面談談腳本控制
要實現這個,就必須在UpdataScreen()這個函數中攔截一個“腳本控制”的消息,並調用相應的處理函數:ScriptControlProc(); 那麼怎樣得到“腳本控制”這個消息呢?我是這樣約定的:
新游戲->調用腳本
“戰斗結束”->調用腳本
“前往下一個地點”->調用腳本
好了,就只有這幾種情況下才調用,調用腳本的函數為BeginScriptControl();
這個函數做了三個工作:
1.首先讀取舞台(場景)角色的數據(沒一關都是一個不同的舞台)
2.打開腳本文件(注意要用全局的文件指針)(雖然我在源程序中沒直接打開,但是原理是一樣的)
3.將游戲狀態設定為“腳本控制”以便在下一次UpdateScreen()中調用的.是ScriptControlProc();(怎麼樣?知道消息循環的作用了吧?)
ScriptControlProc()這個函數其實也很簡單:
讀取腳本文件中的參數直到文件結束,讀取腳本文件需要一個解釋腳本的函數LoadParam(FILE*fp);這個函數負責解釋腳本中的東西:是函數調用還是函數參數,然後找到相應的函數執行即可。
比如說腳本里有一段代碼MovePlayerTo(1,1,1);意思就是把第1個玩家移動到1,1處。怎樣做呢?
我是按照以下幾步做的
1.保存當前的游戲狀態
2.把當前游戲狀態設定為“移動精靈”
當引擎得到“移動精靈”這個函數後,在UpdataScreen()中調用的是MoveRoleProc()這個函數。
當移動結束後,MoveRoleProc()調用EndMoveRole(),這個函數的作用就是讀取先前的游戲狀態
怎麼樣?又回到讀腳本了吧?記住在移動角色的時候腳本文件的指針沒有改變,所以回到讀腳本的這個函數後不是重新讀取而是繼續讀取!同理其他的腳本指令如LoadDialog也是一樣的道理!
當文件要結束的時候,別忘了告訴引擎該停止了,這時候我們必須更新游戲狀態。腳本里的SetGameState就是負責這項工作的。
;