Ren'Py教學 【第三篇 #03】Renpy 教學 自製設定畫面 - Space of NingNing

Ren'Py教學 【第三篇 #03】Renpy 教學 自製設定畫面

這篇會教大家如何在 Renpy 自製設定畫面

如果看完這篇後仍有什麼問題也歡迎給我來信~

Renpy  教學 自製設定畫面
Renpy  教學 自製設定畫面

最近開始了在 Youtube 上上傳教學影片歡迎訂閱我的頻道~  

◆YT 連結◆


比 較 基 本 的 代 碼 在 第 二 篇 已 經 講 過 了 所 以 這 篇 主 要 會 專 注 在 一 些 比 較 難 找 到 教 學 的 地 方 , 建 議 先 看 過 第 二 篇

    應 該 會 有 很 多 差 不 多 / 重 複 的 內 容 www 選 擇 單 獨 拿 出 來 再 做 一 篇 主 要 是 因 為 我 在 這 邊 遇 到 比 較 多 的 困 難

    Anyways 要 製 作 Preference 的 screen 可 以 使 用 Navigation 的 screen 就 好 或 是 使 用 Imagemap
    這 篇 文 章 我 要 介 紹 的 就 是 使 用 imagemap 來 製 作 Preference

    自 製 Renpy 的 設 定 畫 面 ( Preference Screen )

    1. Step - 事 前 準 備 圖 片
    首 先 準 備 : ground / idle / hover / selected_idle
    ground: 使 用 在 沒 有 任 何 物 件 ( 要 ) 被 選 擇 時 ( 就 是 空 空 的 時 候 )
    idle
    : 顯 示 可 以 被 選 擇 的 物 件 被 選 擇 前 的 樣 子
    hover: 顯 示 可 以 被 選 擇 的 物 件 被 選 擇 後 的 樣 子
    selected_idle: 讓 被 選 擇 的 物 件 保 持 選 擇 的 樣 子 (( 就 是 保 持 hover 的 樣 子 所 以 可 以 選 擇 跟 hover 一 樣 的 圖 圖 / 當 然 也 可 以 製 作 其 他 的 圖 圖 只 是 我 用 的 是 和 hover 一 樣 的 圖
    選 擇 性 可 以 加 的 :
    selected_hover: 顯 示 把 滑 鼠 滑 到 已 經 被 選 擇 的 物 件 時 的 樣 子
    我 之 前 看 別 人 的 教 學 時 有 些 人 會 在 加 一 張 selected_hover 但 我 個 人 是 認 為 這 不 一 定 是 需 要 的

    2. Step - 更 改 screen.rpy 裡 的 代 碼

    圖 片 製 作 好 或 是 找 到 好 要 用 來 當 作 背 景 的 圖 片 後 , 就 可 以 把 圖 片 放 到 GUI 的 文 件 夾 裡
    打 開 screen.rpy 並 且 輸 入 :

    screen preferences(): tag menu imagemap: ground 'gui/gui_prefs_ground.png' idle 'gui/gui_prefs_idle.png' hover 'gui/gui_prefs_hover.png' selected_idle 'gui/gui_prefs_sidle.png' cache False
    ( 可 以 刪 掉 原 本在 screen preferences 下 面 的 代 碼 或 是 在 他 們 前 面 加 上 # )
    除 了 這 樣 一 個 一 個 圖 片 定 義 外 也 可 以 使 用 auto 來 自 動 定 義 圖 片

    像 是 這 樣 :
    screen preferences(): tag menu imagemap: auto "gui/gui_prefs_%s.png"
    使 用 auto 的 話 renpy 會 自 動 偵 測 所 有 gui_prefs_ 開 頭 的 圖 片 並 且 判 斷 哪 張 圖 片 是 ground / 哪 張 圖 片 是 hover , 要 用 auto 的 話 記 得 圖 片 的 名 字 要 取 renpy 可 以 認 得 的名 字 , 圖 片 的 路 徑 也 比 需 小 心 ! 可 以 參 考 這 頁 ( 官 方 的 文 檔 )
    3. Step - 找 出 Hotspot

    方 法 1

    打 開 HotspotTool 找 出 按 鈕 對 應 的 Hotspot
    RenPy HotSpot Tool 的 使 用 方 式:
    使 用 上 面 的 網 址 下 載 這 個 Tool 之 後 打 開 它,點 擊 Load Image Base 和 Load Hover Image 分 別 載 入 用 來 製 作 Imagemap 的 圖


    點 下 右 上 角 + 的 符 號 在 用 滑 鼠 畫 出 滑 鼠 可 以 點 擊 的 範 圍
    右 上 角 - 的 符 號 點 下 去 , 在 滑 到 之 前 畫 好 的 範 圍 , 點 下 的 話 就 會 刪 掉 點 的 那 個 範 圍


    右 上 的 Option 點 下 去 的 話 可 以 輸 入 想 要 跳 到 的 畫 面 ( 點 下 這 個範 圍 可 以 跳 到 的 畫 面 )

    範 例 :
    右 上 角 在 + / - / Option 上 面
    點 擊 Load Data 可 以 載 入 之 前 存 的 檔 案
    Save Data 可 以 存 檔 現 在 做 的 更 改
    Save Code 會 生 成 一 個 rpy 檔 案
    之 後 就 可 以 把 用 這 個 Tool 生 出 的 Hotspot
    複 製 到 screen.rpy 裡

    方 法 2

    啟 動 專 案 然 後 使 用 Shift + D 進 入 到 開 發 者 頁 面 ( Developer Menu ) 然 後 點 圖 片 座 標 撿 選 器 ( Image Location Picker )
    找 出 你 要 用 的 圖
    他 會 列 出 所 有文 件 夾 裡 的 圖 片 所 以 可 以 就 要 慢 慢 找 了 xd 如 果 有 很 多 圖

    可 以 用 滑 鼠 畫 出 想 要 作 為 按 鈕 的 一 個 區 域
    此圖片是透過空想曲線的免費素材製作而成
    之 後 在 畫 面 左 下 角 就 能 看 到 它 的 hotspot
    Hotspot
    Renpy Hotspot
    範 例 :
    screen preferences(): tag menu imagemap: ground 'gui/gui_prefs_ground.png' idle 'gui/gui_prefs_idle.png' hover 'gui/gui_prefs_hover.png' selected_idle 'gui/gui_prefs_sidle.png' cache False hotspot (45, 40, 210, 50) action ShowMenu("load") hotspot (45, 140, 210, 50) action ShowMenu("preferences") hotspot (45, 240, 210, 50) action ShowMenu("gallery") hotspot (45, 340, 210, 50) action ShowMenu("main_menu") hotspot (45, 440, 210, 50) action ShowMenu("help") hotspot (45, 540, 210, 50) action ShowMenu("about") hotspot (45, 640, 210, 50) action Quit(confirm=False)

    我 使 用 的 圖 圖 :此圖片是透過空想曲線的免費素材製作而成
    利 用 上 面 的 熱 點 ( hotspot ) 可 以 讓 Renpy 知 道 哪 個 範 圍 有 一 個 按 鈕
    4. Step - 視 窗 / 文 字 速 度 / 音 量 設 定
    一 個 Preference 的 Screen 除 了 上 面 這 些 選 項 外 還 有 其 他 的 東 東 , 像 是 讓 玩 家 選 擇 使 用 全 螢 幕 / 小 螢 幕 , 調 整 音 量 或 是 跳 過 的 設 定 之 類 的
    這 些 功 能 也 可 以 透 過 imagemap 來 呈 現
    可 以 複 製 下 面 這 段 代 碼 到 screen preferences 下 , 之 後 在 改 成 自 己 的 hotspot
    ## Full Screnn or Window hotspot (420, 68, 152, 46) action Preference('display', 'fullscreen') hotspot (420, 120, 206, 69) action Preference('display', 'window') ## Skip Setting hotspot (365, 245, 210, 60) action Preference('skip', 'seen') hotspot (576, 246, 210, 60) action Preference('skip', 'all') ##Your Return Button hotspot (1164, 608, 200, 118) action Return() ##Speed And Volume Setting bar pos (899, 320) value Preference("text speed") style "pref_slider" bar pos (899, 150) value Preference("sound volume") style "pref_slider" bar pos (899, 65) value Preference("music volume") style "pref_slider" bar pos (899, 440) value Preference("auto-forward time") style "pref_slider"

    5.Step - 當 bar 不 起 作 用 時 的 替 代 方 案

    如 果 Text Speed / Sound Volume / Music Volume / Auto-Forward Time 看 起 來 很 奇 怪或 是 不 起 作 用,在 代 碼 後 面 加 上 style "pref_slider" 之 後 在 用 圖 片 取 代 原 本 在 gui/slider 裡的
    horizontal_hover_bar
    horizontal_hover_thumb
    horizontal_idle_bar
    horizontal_idle_thumb

    要 改 變 bar 的 長 度 / 寬 度 可 以 在 整 串 代 碼 下 面 加 上
    init -2 python: style.pref_slider.xmaximum = 350 style.pref_slider.ymaximum = 25
    style.pref_slider.xmaximum = 顯 示 bar 的 長 度
    style.pref_slider.ymaximum = 顯 示 bar 的 寬 度

    製 作 這 個 教 學 用 到 的 其 他 資 源:
    GUI 範 例: 來 自 空 想 曲 線 ( 藍 藍 的 那 個 )
    GUI 範 例 2: 來 自 momoizm ( 有 白 色 花 花 圖 案 , 藍 色 背 景 , 狗 狗 腳 掌 的 那 個 )

    其 他 相 關 連 結 :
    點 擊 這 裡 閱 讀 第 四 篇 ( Confirm screen 的 製 作 方 式 )
    點 擊 這 裡 閱 讀 第 五 篇 ( Gallery screen 的 製 作 方 式 )


    ----------------- 分 隔 線  -----------------

    在 離 開 之 前 如 果 可 以 的 話 幫 我 拍 個 手 吧 ~!


    Next Post Previous Post
    No Comment
    Add Comment
    comment url
    You are seeing this message because ad or script blocking software is interfering with this page.
    Disable any ad or script blocking software, then reload this page.