概念

「ウソエの言語」の物語は全部私が書いたものですし、これに取り組むことが一番好きです。いつか完成すると願っています。

19歳のニカは世界を見てみたいと夢があります。でも、人生はそう簡単に行かないものですから、両親の店で働くことになりました。同い年の人も村に住んでいないですから、まだすごく若い子供達で遊ぶしかないです。それと、本を読むことです。
その村で一つの特別な場所があります:古の言語の本を持つ図書館。でも、その本は不思議な才能がいない人には読めないです。ただ翻訳した本がみられます:本物の本は隠しております。

普通の日で、ニカは偶然で不思議な小屋を見つけて、「あの言語」の本を見つけます。でも、古い本の真っ只中に警戒するスクロールもありますから、ニカはもっと知りたいから旅に出ます。

自分の冒険を見つかりたいと思う人に動かすゲームになるといいです。

この先のコードはRPGツクールXPのRGSSでプログラムしたコードです。

データ

名前:ウソエの言語
チーム(昔): 二人- Brenda van den Berg と私
年:  高校三年生  | 2015-2016


テクニカル
エンジン: RPG ツクール XP (昔)RPG ツクール MV (今)
難しさ (昔): ★
難しさ (今)  :★★★


ダウンロード - XP バーション: http://languageoflyse.nl/download.html

#==============================================================================
# ** Scene_MenuLoL
#------------------------------------------------------------------------------
# This class performs title screen processing.
#==============================================================================
class Scene_MenuLoL
def initialize(menu_index = 0)
@menu_index = menu_index
end
def main
s1 = "Items" #Bitmap.new("Graphics/Icons/032-Item01.png")
s2 = "Skill"
s3 = "Equip"
s4 = "Profile"
s5 = "Notebook"
s6 = "Quit"
@command_window = Window_Command.new(320, [s1, s2, s3, s4, s5, s6])
@command_window.index = @menu_index
@command_window.y = 190
@command_window.back_opacity = 160
@window_notebook = Window_Notebook.new
@window_notebook.x = 320
@window_notebook.visible = false
@window_notebook.active = false
@window_people = Window_People.new
@window_people.x = 320
@window_people.back_opacity = 160
#@window_people.y = 0
@gold_window = Window_Gold.new
@gold_window.x = 0
@gold_window.y = 416
@gold_window.back_opacity = 160
# background
#@bg = Sprite.new
#@bg.bitmap = Bitmap.new("Graphics/Titles/001-Title01.jpg")
@bg = Spriteset_Map.new
Graphics.transition
loop do
Graphics.update
Input.update
update
if $scene != self
break
end
end
Graphics.freeze
@window_people.dispose
@command_window.dispose
@gold_window.dispose
@bg.dispose
@window_notebook.dispose
end
##################### update
def update
@gold_window.update
@command_window.update
@window_people.update
@window_notebook.update
if @command_window.active
update_command
return
end
if @window_people.active
update_status
return
end
if @window_notebook.active
update_notebook
end
end
##################### Update Command
def update_command
if Input.trigger?(Input::B)
$game_system.se_play($data_system.cancel_se)
$scene = Scene_Map.new
end
if Input.trigger?(Input::C)
case @command_window.index
when 0 # Items
$game_system.se_play($data_system.decision_se)
$scene = Scene_Item.new
when 1 # Skill
$game_system.se_play($data_system.decision_se)
@command_window.active = false
@window_people.active = true
@window_people.index = 0
when 2 # Equip
$game_system.se_play($data_system.decision_se)
@command_window.active = false
@window_people.active = true
@window_people.index = 0
when 3 # Profile
$game_system.se_play($data_system.decision_se)
@command_window.active = false
@window_people.active = true
@window_people.index = 0
when 4 # Journal
$game_system.se_play($data_system.decision_se)
@command_window.active = false
@window_people.visible = false
@window_notebook.active = true
@window_notebook.visible = true
when 5 # Quit
$game_system.se_play($data_system.decision_se)
$scene = Scene_End.new
end
return
end #end If trigger C
end
#################### Update Status
def update_status
if Input.trigger?(Input::B)
# Play cancel SE
$game_system.se_play($data_system.cancel_se)
# Make command window active
@command_window.active = true
@window_people.active = false
@window_people.index = -1
return
end
if Input.trigger?(Input::C)
case @command_window.index
when 1 # skill
$game_system.se_play($data_system.decision_se)
$scene = Scene_Skill.new(@window_people.index)
when 2 # equipment
$game_system.se_play($data_system.decision_se)
$scene = Scene_Equip.new(@window_people.index)
when 3 # status
$game_system.se_play($data_system.decision_se)
$scene = Scene_Status.new(@window_people.index)
end
return
end
end
############ Update notebook
def update_notebook
if Input.trigger?(Input::B)
$game_system.se_play($data_system.cancel_se)
@window_notebook.active = false
@window_notebook.visible = false
@command_window.active = true
@command_window.index = 4
@window_people.visible = true
end
end
############
end #class end
#==============================================================================
# ** Window_People
#------------------------------------------------------------------------------
# Waar de actors hun naam, picture, lv enz. in staan.
#==============================================================================
class Window_People < Window_Selectable
def initialize
super(0,0,320,480)
self.contents = Bitmap.new(width - 20, height - 20)
@column_max = 2
refresh
self.active = false
self.index = -1
end
################ def refresh
def refresh
self.contents.clear
@item_max = $game_party.actors.size
@bitmap = Bitmap.new(width - 20, height - 20)
for i in 0 ... $game_party.actors.size
x = (i * 160) + 5
y = 15
if i >= 2
x -= 320
y = 245
end
actor = $game_party.actors[i]
self.contents.draw_text(x + 32, y + 96, 50, 20, actor.name)
draw_menu_head(actor, x + 10, y)
# draw HP bar and text
self.contents.draw_text(x, y +116, 20, 20, "HP")
draw_hp_bar(actor, x + 40, y + 121, 58)
#self.contents.draw_text(x + 4 , y + 120, 48, 20, actor.hp.to_s, 2)
# self.contents.draw_text(x + 40, y + 120, 48, 20, "/", 1)
#self.contents.draw_text(x + 50, y + 120, 48, 20, actor.maxhp.to_s, 2)
# draw SP bar and text
self.contents.draw_text(x, y + 140, 20, 20, "SP")
draw_sp_bar(actor, x + 40, y + 145, 58)
# draw state, level, exp
for j in 0 ... actor.states.size
#$indexstates = actor.states.size
draw_state(actor, x + 100 , (y + 96) + (j * 24), actor.states[j])
end
draw_actor_level(actor, x, y + 155)
self.contents.draw_text(x, y +180, 40, 20, "EXP")
if actor.level == 99 then
self.contents.draw_text(x + 40, y + 180, 60, 20, "____ / ____")
else
draw_exp_bar(actor, x + 40, y + 185)
end
end # end for met actors
end # end def
############ def draw menu Head
def draw_menu_head(actor, x, y)
if actor.name == "Nica" then
bitmap = RPG::Cache.picture("MenuNica.png")
elsif actor.name == "Thye"
bitmap = RPG::Cache.picture("MenuThye.png")
elsif actor.name == "Sehlia"
bitmap = RPG::Cache.picture("MenuSehlia.png")
else
bitmap = RPG::Cache.picture("MenuNayll.png")
end
src_rect = Rect.new(0, 0, 96, 96)
#self.contents.blt(x - cw / 2, y - ch, bitmap, src_rect)
self.contents.blt(x, y, bitmap, src_rect)
end
############ def draw Rect
def draw_rect(x, y)
@rect = Rect.new(x, y, 24, 24)
color = Color.new(255,255,255,255)
self.contents.fill_rect(@rect, color)
end
############## def draw state
def draw_state(battler, x, y, state_id)
#for i in battler.states $data_states[i].name ==
if $data_states[state_id].name == "Knockout" then
bitmapicon = Bitmap.new("Graphics/Icons/100-State01.png")
elsif $data_states[state_id].name == "Venom" then
bitmapicon = Bitmap.new("Graphics/Icons/100-State02.png")
elsif $data_states[state_id].name == "Stun" then
bitmapicon = Bitmap.new("Graphics/Icons/100-State03.png")
elsif $data_states[state_id].name == "Sleep" then
bitmapicon = Bitmap.new("Graphics/Icons/100-State04.png")
else
bitmapicon = Bitmap.new("Graphics/Icons/001-Weapon01.png")
end
src_recticon = Rect.new(0, 0, 24, 24)
self.contents.blt(x, y, bitmapicon, src_recticon)
# end
end
################## def cursor update
def update_cursor_rect
if @index < 0
self.cursor_rect.empty
else
#self.cursor_rect.set(0, @index * 116, self.width - 32, 96)
x = @index * 160
y = 10
if @index >= 2
x -= 320
y = 240
end
self.cursor_rect.set(x, y, 128 , 208)
end
end
#######
end