關於部落格
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);
})();

  • 305763

    累積人氣

  • 6

    今日人氣

    0

    追蹤人氣

【腳本】商店隨機販賣

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

class Sword_Ram_Shop
#=======================================
#★魔劍工舖 - 商店隨機販賣不同物品
#轉貼腳本請著名出處:
http://blog.yam.com/a870053jjkj/article/22720052
#如果採用在遊戲中,看你高興是否顯示腳本出處,但嚴禁說是自己寫的腳本!!
#=======================================
#呼叫方法:$scene = Sword_Ram_Shop.new([種類, 最小範圍, 最大範圍, 數量])

#種類說明:0:物品    1:武器    2:防具    3以上:物品+武器+防具

#詳細設置說明請參考:http://blog.yam.com/a870053jjkj/article/22720052
#=======================================

  def initialize(a)
    b = []
    if a[0] >= 3
      d = true
    end
    # 設置範圍相反時就修正
    if a[2] < a[1]
      aa = a[2]
      ab = a[1]
      a[2] = ab
      a[1] = aa
    end
    # 偵測是否設置錯誤
    if a[2] == a[1]
      print("【數值輸入錯誤】", "n", "原因:最小範圍 和 最大範圍設置一樣")
      return
    end
    ac = a[2] - a[1] + 1
    if d
      ac *= 3
    end
    if ac < a[3]
      print("【數值輸入錯誤】", "n", "原因:你輸入的範圍小於販賣的數量")
      return
    end
    if a[1] == 0 or a[2] == 0
      print("【數值輸入錯誤】", "n", "原因:範圍數值禁止輸入0")
      return
    end
    # 處理商店的物品
    c = {}
    for i in 0...a[3]
      loop do
        @sword_a = a[1] + rand(a[2] - a[1] + 1)
        if d
          e = rand(3)
          @sword_a = [e, @sword_a]
        else
          @sword_a = [a[0], @sword_a]
        end
        unless c.has_value?(@sword_a)
          c[i] = @sword_a
          break
        end
      end
      b[i] = @sword_a
    end
    $game_temp.shop_calling = true
    $game_temp.shop_goods = b
  end
  # 回到地圖畫面
  def main
    $scene = Scene_Map.new
  end
end

 
 
呼叫方法
可以使用事件中的 [腳本] 事件貼上以下腳本來進行呼叫(紅字部分必須要更改)
$scene = Sword_Ram_Shop.new([種類, 最小範圍, 最大範圍, 數量])
種類
設定要販賣的東西種類,0為物品、1為武器、2為防具,3為物品、武器、防具
 
最小範圍
最大範圍

決定出現的販賣物的範圍,簡單來說就像事件 [變數操作] 的隨機數一樣的設置方式
假設最小範圍輸入2,最大範圍輸入6,則就表示編號2到6的意思
如果最小數值比最大數值還要大時,則最小數值和最大數值會被系統自動交換
不可以輸入0,也不可以輸入相同,此外輸入的範圍不可以小於數量
假設你設置1~6,而數量是7時,由於不會顯示一樣的東西
你設置的1~6的範圍不可能到達7,也會引起這個問題出現
如果種類是輸入3時(物品+武器+防具),則數量限制會乘3,也就是說...
以上假設如果種類是輸入3,其數量最多可以輸入到18個!
 
數量
販賣物的顯示數量
 
使用參考:
#隨機販賣編號1到6的4個物品
$scene = Sword_Ram_Shop.new([0, 1, 6, 4])
 
#隨機販賣編號1到7的5個防具
$scene = Sword_Ram_Shop.new([2, 7, 1, 5])
 
#隨機販賣編號4到10的6個物品或武器或防具
$scene = Sword_Ram_Shop.new([3, 4, 10, 6])
 
#出現【數值輸入錯誤】的小窗口
$scene = Sword_Ram_Shop.new([1, 3, 6, 6])
 
#隨機販賣編號3到6的10個物品或武器或防具
$scene = Sword_Ram_Shop.new([3, 3, 6, 10])
相簿設定
標籤設定
相簿狀態