魔劍工舖

關於部落格
RPG製作大師XP腳本為主要更新

RPG製作大師VX腳本為其次更新

RPG製作大師VX_Ace目前不考慮

RPG製作大師MV腳本完全沒打算

留言完建議重新整理看看是否顯示

目前不處理本舖外腳本的相關問題

其他相關事項請觀看規定注意事項

本舖未來的經營計畫與VA的支援




var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-37462754-1']);
_gaq.push(['_trackPageview']);

(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();

  • 296198

    累積人氣

  • 10

    今日人氣

    0

    訂閱人氣

【腳本】腳本事件指令


使用方法
打開腳本編輯器,對腳本「Main」按下右鍵,選擇插入,會出現1個空白腳本
在空白腳本內貼上以下腳本:
RPG Maker XP 適用 

點選框框內的腳本按右鍵打開選單,選擇 [全選] 後在選擇 [複製] ,在指定的位置中貼上腳本即可
 
 
設置方法 
生成魔劍工舖事件解釋器
變量 = Sword_Interpreter.new
@sword_interpreter = Sword_Interpreter.new
和產生窗口一樣,先將事件解釋器的類儲存在指定的變量之中
然後要執行事件的時候,只需要使用這個變量來執行即可
此外儲存的資料也會固定,產生2次事件解釋器,圖片的控制也不會互通
 
解釋魔劍工舖事件指令
變量.update(字符串)
@sword_interpreter.update(<<-Sword_END
執行內容字串內容
Sword_END
)

@sword_interpreter = Sword_Interpreter.new
@sword_interpreter.update(<<-Sword_END
◆變數操作:[10]= 999
◆查看:10

Sword_END
)

# 執行後會跑出一個小窗口寫著10
將指定的字符串當做是魔劍工舖的事件指令進行解釋
建議使用以上那種字符串的定義寫法,比較方便看清楚
至於有什麼執行內容,下面會有詳細的介紹
變量:變量必須為儲存了 魔劍工舖事件解釋器 的變量才行
 
釋放事件解釋器所生成的內容
變量.dispose
@sword_interpreter = Sword_Interpreter.new
@sword_interpreter.update(<<-Sword_END
◆變數操作:[10]= 999
◆查看:10

Sword_END
)
@sword_interpreter.dispose
將這個事件解釋器中所有生成的東西(如圖片或是地圖)給快速的移除
通常是在切換畫面時使用,防止切換畫面時,那些圖片...什麼的還傻傻的顯示在上面不消失
順便一題:如果儲存事件解釋器的變量消失,過一段時間系統也會自動釋放(GC垃圾回收)
變量:變量必須為儲存了 魔劍工舖事件解釋器 的變量才行

 


 
控制碼
事件的寫法就是單純用文字表示,然後解釋器在嘗試去解讀那行文字的意思
竟然是文字表示,當然也能在任意處指定會變化的內容的控制碼...
這些控制碼通常放置在哪都行,所以某些數值想指定變數的時候就可善用這個控制碼
附註:如果使用以上說的字符串或雙引號定義方式,控制碼的 要兩個,單引號只需  1個
此外用雙引號或是單引號的字符串寫事件指令時,n表示換行(依照換行分別代表不同事件指令)
以下控制碼的介紹是以兩個 / 來進行介紹
 
\V[變數編號]
這個控制碼視同指定變數編號的變數所儲存的值
當某些事件指令想要指定變數的時候(例如:X座標)
這時就可以輸入這個控制碼,即可採用指定的變數
 
\M[算式]
有時只是想暫時性的增加或減少數值,不想要用一堆變數代來代去的話
可以用這個控制碼來立即計算簡單的算式,省下使用變數操作的機會
這個控制碼視同算式計算完的結果的數值,裡面可放\V控制碼
算式:可以用數值或是+ - * / ( ) 這些來寫簡單的既算式,例如寫『\M[100 + 150]』
   則這個控制碼將視為250這個數字
 
\S[開關編號]
當指定的開關編號的開關為開時,這個控制碼視同ON
當指定的開關編號的開關為關時,這個控制碼視同OFF

 
 
魔劍工舖事件指令說明
簡單來說字符串每行的內容都可以用以下這些來表示事件指令
目前能使用的事件指令只有以下介紹的這些,會陸續在新增!!
事件指令其實除了 [腳本] 事件的執行內容以外,其他的內容的全半型空白和◆會清除
所以基本上最左邊加不加◆都一樣不會影響,只是加了看起來比較方便看而已
 
◆顯示圖片:圖片編號, 圖片檔案名稱
產生在 Graphics/Pictures 資料夾中名為 圖片檔案名稱 的圖片
如果 Graphics/Pictures 資料夾中找不到 圖片檔案名稱 該圖片之時
會將 圖片檔案名稱 當成完整的路徑來找尋圖片(以該遊戲資料夾做為路徑的起點)
在沒找到就會觸發異常,有找到圖片的話,會在座標0, 0的位置顯示圖片
此外,如果在已有圖片的編號在使用一次相同的編號來顯示圖片的話
則舊的圖片將會自動清除,然後用新的圖片來取代,所有圖片的資料將變為起始
圖片編號:可以識別用的編號,要修改這圖片的資料時必須指名編號才行
     此外這個編號也代表預設的優先度數值
此事件不能放置註釋,不然會判定為 圖片檔案名稱 之中  
 
◆刪除圖片:圖片編號
◆清除圖片:圖片編號
將指定編號的圖片刪除,如果該編號不存在圖片的話,就什麼事情也不做
 
◆移動圖片:圖片編號, X座標, Y座標
變更指定編號的圖片在畫面中顯示的位置,最左上角為0, 0
 
◆圖片矩形:圖片編號, 圖片X座標, 圖片Y座標, 顯示寬度, 顯示高度
可以說是設定該編號的整張圖片之中顯示的範圍,依圖片左上角為原點(0, 0)
指定要顯示的座標(也就是指定新的原點,原點左上方的圖都會看不到)
然後在設定顯示的大小,就是這樣來指定該圖片該顯示哪些地方的
就如行走圖說,一張圖片分別有16個圖案,就可以用這個來指定要哪個部分
 
◆圖片切割:圖片編號, 寬度切割, 高度切割, X區塊, Y區塊
這個和 [圖片矩形] 效果一樣,不同在於這個是自動幫你均分切割
依照圖片的寬度或高度進行整除,則為矩形顯示寬度與高度
然後再指定第幾個區塊代表矩形的座標(分割之後的第幾個圖片這樣...)
就如行走圖來說吧,那就是1個4x4的切割!!
X區塊:切割圖片後,指定從左往右數來第幾個切割後的圖塊
Y區塊:切割圖片後,指定從上往下數來第幾個切割後的圖塊
 
◆圖不透明:圖片編號, 不透明度
變更圖片的不透明度,可以設為0~255,超出範圍會自動修正
數值越低越透明,所以不透明度為0為完全的透明,255則是完全不透明
 
◆圖優先度:圖片編號, 優先度
變更圖片的優先度,優先度越高可以覆蓋住優先度低的圖片
在剛產生圖片時優先度同圖片編號,如修要調整
可以用此事件進行修改,不會影響到圖片編號的使用
 
◆地圖顯示:開關
◆地圖顯示:ON # 打開地圖
◆地圖顯示:OFF # 關閉地圖
產生地圖或是清除地圖用的事件,想要做背景是透明的選單可利用這事件
開關:ON顯示地圖;OFF隱藏地圖
 
◆變數操作:[變數編號]= 常數
◆變量操作:[變數編號]= 常數
◆變數:[變數編號]= 常數
◆變量:[變數編號]= 常數
◆變數操作:[變數編號]= 常數 # 代入
◆變數操作:[變數編號]+= 常數 # 加法
◆變數操作:[變數編號]-= 常數 # 減法
◆變數操作:[變數編號]*= 常數 # 乘法
◆變數操作:[變數編號]/= 常數 # 除法
◆變數操作:[變數編號]%= 常數 # 餘數

★以下是常數的介紹☆

◆變數操作:[1]= 數值 # 直接指定數值
# 代表第幾個隊員的角色編號
◆變數操作:[1]= 已方隊員隊伍順序
◆變數操作:[1]= 我方隊員隊伍順序
◆變數操作:[1]= 金錢 # 代表目前持有的金錢
# 代表隨機代表數範圍中的任一個數值
◆變數操作:[1]= 最低值..最高值
◆變數操作:[1]= 隨機數(最低值..最高值)
同預設事件 [變數操作] 差不多效果,將變更或計算指定編號的數值並儲存在該編號變數中
可用此在腳本中計算,用來作循環次數(動畫)較方便
 
◆條件分歧:常數 == 常數 # 相等
◆條件分歧:常數 >= 常數 # 以上(大於或相等)
◆條件分歧:常數 <= 常數 # 以下(小於或相等)
◆條件分歧:常數 > 常數 # 超過(大於)
◆條件分歧:常數 < 常數 # 未滿(小於)
◆條件分歧:常數 != 常數 # 不相等
★以下是常數的介紹☆

◆條件分歧:數值 == 數值 # 數值的比較,比較合理就執行
◆條件分歧:開關 == 開關 # 開關類型都一樣就執行(只可用 ==)
★以下是不須比較的條件分歧☆

◆條件分歧:開關 # 只要開關為ON就執行
# 按下按鍵執行(按下之後必須放開後才按才會再次有效,按鍵名稱可參考預設的條件分歧)

◆條件分歧:按鍵 按鍵名稱 被按下時
◆條件分歧:按鈕 按鍵名稱 被按下時
# 按住按鍵執行(按下之後不斷判斷有效,直到放開為止,按鍵名稱可參考預設的條件分歧)
◆條件分歧:按鍵 按鍵名稱 被按住時
◆條件分歧:按鈕 按鍵名稱 被按住時
同預設事件 [條件分歧] 效果差不多,執行到此事件的時候
會判斷是否達到執行的條件,有達到就執行以下內容,沒達到則以下事件將不會有效果
條件請多多善用控制碼,那開關或是數值代表某個變量的值進行比對是可行的
但不包含 [除此以外的場合] 或 [分歧結束] ,這兩個依然能夠發揮效果
 
:除此以外
:除此以外的場合

◆條件分歧:\V[1] == 10 # 1號變數的數值 和 10 相等時
#---------------------------------------------------------------------

# 符合條件的話這裡的事件指令會執行,不符合條件的話則就不執行
#---------------------------------------------------------------------

:除此以外的場合
#---------------------------------------------------------------------

# 符合條件的話這裡的事件指令不會執行,不符合條件的話則就執行
#---------------------------------------------------------------------
和預設事件的差不多效果,一部分執行符合條件的部份,一部分則是不符合條件的部分
 
:分歧結束
◆條件分歧:9 == 10 # 因條件不符合不執行
◆查看:10
# 執行後啥也不會發生,因為條件不符合不執行
◆條件分歧:9 == 10 # 因條件不符合不執行
:分歧結束
◆查看:10
# 跑出小窗口顯示10號變數的數值,[查看] 事件不需要任何條件即可執行
當你使用 [條件分歧] 時,則下面的內容都是都該條件分歧的範圍(包含 [除此以外的場合])
不過不想要讓以下所有的內容都是這個 [條件分歧] 的範圍的話,就可以用這個來中斷範圍
 
◆演奏BGM:音量, 音調, 聲音檔案名稱
◆演奏BGS:音量, 音調, 聲音檔案名稱
◆演奏ME:音量, 音調, 聲音檔案名稱
◆演奏SE:音量, 音調, 聲音檔案名稱
播放指定的聲音,效果和預設的沒有差別,只不過寫法有些不同(解釋上的問題)
音量:可設為0~100,數值越大越大聲
音調:50~100,數值越大越高音,越低越低音,預設通常為100
此事件不能放置註釋,不然會判定為 聲音檔案名稱 之中 
 
◆腳本:腳本內容
效果同預設事件 [腳本] ,但目前只能指定一行,要換行的話只能先用 ; 符號
不過主要目的還是給予你做些為的修改或切換畫面,這事件本身就不太適合這個腳本
(畢竟是方便不會腳本的人才搞出來這個腳本的...)
 
p:變數編號
◆測試:變數編號
◆查看:
變數編號
檢視指定變數目前的數值,會以一個小窗口呈現,主要也是方便用的而已
直接用 [腳本] 執行『p $game_variables[變數編號]』也會有相同的效果
 
註釋
基本上判定失敗的通常就被當成註釋不會執行,所以只要判定失敗就算註釋了
註釋寫在事件的最右邊也行(但並非每個事件都能這樣做,該事件就有說明..)
不過還是建議註釋最左邊加上 # 符號,以防有例外狀況而不小心判定
此外顏色也會變成綠色的,方便快速了解該內容就是註釋!!
相簿設定
標籤設定
相簿狀態