Someone Plss Put a Script of FaceMessegeSystem!!! :(
for Doctor Todd:The Link that i downloaded there is no Script! Only Manual Script
Pardon me, moderate gentleman. I appear to have acquired a fragment of miscommunication from the request you have prepared upon this page. May I ask that you elaborate in this endeavor?
Firstly, Please improve your grammar.
I'm not criticizing you, but it's better to improve it
to let people understand what you want.
Secondly, Here's the script I found on RPGRevolution..
#==============================================================================
# Show Face on Message window with Emoticon option
#------------------------------------------------------------------------------
# By Nechigawara Sanzenin
# Orginal Show Face in Message Window from http://www.rpgrevolution.com/
# WARNING!! : This script can use on RPG Maker XP Only!! (VX Not Support)
#==============================================================================
=begin
How to Use Show Face Option:
Add "\f[FaceName]" To text in message control
FaceName must be the filename of a graphic file found in the directory
"Graphics\Pictures" of your RPG Maker XP project.
The file must be a PNG of 96X96 pixels.
You do not need to write the file extention.
How to Use Emoticon Option:
Add "\E[Number Of Emoticon]" To text in message control
The Emoticon Picture is in "Graphics\Picture".
when the line number of emoticonset is 1 , Number of Emoticon is 1.
when the line number of emoticonset is 2 , Number of Emoticon is 2.
Max of Number of Emoticon is 10.
You can set Emoticon's Picture Name at EMO_NAME.
You can set Emoticon's Position at EMO_X and EMO_y.
You can set frame rate at BALLOON_WAIT.
if the message window don't have face,Noting happen.
=end
#==============================================================================
class Window_Message < Window_Selectable
#--------------------------------------------------------------------------
BALLOON_WAIT = 12
EMO_NAME = "Balloon"
EMO_X = 93
EMO_Y = 15
#--------------------------------------------------------------------------
alias inc_initialize initialize
def initialize
inc_initialize
@viewport = Viewport.new(0, 0, 544, 416)
@viewport.z = z + 50
@balloon_face = 0
create_balloon
@pic_show = false
end
#--------------------------------------------------------------------------
def dispose
terminate_message
$game_temp.message_window_showing = false
if @input_number_window != nil
@input_number_window.dispose
end
dispose_balloon
@viewport.dispose
super
end
#--------------------------------------------------------------------------
alias inc_terminate_message terminate_message
def terminate_message
inc_terminate_message
@balloon_sprite.visible = false
@pic_show = false
end
#--------------------------------------------------------------------------
def refresh
self.contents.clear
self.contents.font.color = normal_color
self.contents.font.name = $fontface
self.contents.font.size = $fontsize
x = y = 0
@cursor_width = 0
# If the choices indentation is done
if $game_temp.choice_start == 0
x = 8
end
# When there is a message of the waiting of indication
if $game_temp.message_text != nil
text = $game_temp.message_text
# check face graphic
if (/\A\\[Ff]\[(.+?)\]/.match(text))!=nil then
@face_file = $1 + ".png"
if FileTest.exist?("Graphics/Pictures/" + $1 + ".png")
self.contents.blt(0, 16, RPG::Cache.picture(@face_file), Rect.new(0, 0, 96, 96))
@pic_show = true
end
text.gsub!(/\\[Ff]\[(.*?)\]/) { "" }
end
# Control character processing
begin
last_text = text.clone
text.gsub!(/\\[Vv]\[([0-9]+)\]/) { $game_variables[$1.to_i] }
end until text == last_text
text.gsub!(/\\[Nn]\[([0-9]+)\]/) do
$game_actors[$1.to_i] != nil ? $game_actors[$1.to_i].name : ""
end
# For convenience,"\\\\" convert to "\000"
text.gsub!(/\\\\/) { "\000" }
# "\\C" convert to "\001", "\\G" convert to "\002"
text.gsub!(/\\[Cc]\[([0-9]+)\]/) { "\001[#{$1}]" }
text.gsub!(/\\[Gg]/) { "\002" }
text.gsub!(/\\[Ff]\[([0-9]+)\]/) { "\003[#{$1}]" }
text.gsub!(/\\[Tt]\[([0-9]+)\]/) { "\004[#{$1}]" }
text.gsub!(/\\[Zz]\[([0-9]+)\]/) { "\005[#{$1}]" }
text.gsub!(/\\[Ee]\[([0-9]+)\]/) { "\006[#{$1}]" }
# Until acquisition (letter becomes not be able to acquire 1 letter in c, the loop)
phrase = ""
while ((c = text.slice!(/./m)) != nil)
# \\ = Show letter " \ "
if c == "\000"
# You reset to original letter
c = "\\"
end
# \C = Change text color
if c == "\001"
# Modifying letter color
text.sub!(/\[([0-9]+)\]/, "")
color = $1.to_i
if color >= 0 and color <= 7
self.contents.font.color = text_color(color)
end
# To the following letter
next
end
# \G = Show window gold
if c == "\002"
nowwidth = self.contents.text_size(phrase).width
self.contents.draw_text (4 + x, 32 * y, nowwidth, 32, phrase)
x += nowwidth
phrase = ""
# Drawing up the Gold window dough
if @gold_window == nil
@gold_window = Window_Gold.new
@gold_window.x = 560 - @gold_window.width
if $game_temp.in_battle
@gold_window.y = 192
else
@gold_window.y = self.y >= 128 ? 32 : 384
end
@gold_window.opacity = self.opacity
@gold_window.back_opacity = self.back_opacity
end
# To the following letter
next
end
# \F Change Font Face
if c == "\003"
text.sub!(/\[([0-9]+)\]/, "")
fontface = $1.to_i
case fontface
when 1
self.contents.font.name = "AngsanaUPC"
when 2
self.contents.font.name = "BrowalliaUPC"
when 3
self.contents.font.name = "CordiaUPC"
when 4
self.contents.font.name = "DilleniaUPC"
when 5
self.contents.font.name = "EucrosiaUPC"
when 6
self.contents.font.name = "FreesiaUPC"
when 7
self.contents.font.name = "IrisUPC"
when 8
self.contents.font.name = "JasmineUPC"
when 9
self.contents.font.name = "KodchiangUPC"
when 10
self.contents.font.name = "LilyUPC"
when 11
self.contents.font.name = "Microsoft Sans Serif"
when 12
self.contents.font.name = "Tahoma"
else
self.contents.font.name = $fontface
end
# To the following letter
next
end
# \T Change Font Type
if c == "\004"
text.sub!(/\[([0-9]+)\]/, "")
fonttype = $1.to_i
case fonttype
when 1
self.contents.font.bold = true
self.contents.font.italic = false
when 2
self.contents.font.bold = false
self.contents.font.italic = true
when 3
self.contents.font.bold = true
self.contents.font.italic = true
else
self.contents.font.bold = false
self.contents.font.italic = false
end
# To the following letter
next
end
# \Z Change Font Size
if c == "\005"
text.sub!(/\[([0-9]+)\]/, "")
self.contents.font.size = [[$1.to_i, 12].max, 50].min
c = ""
next
end
# show emoticon
if c == "\006"
text.sub!(/\[([0-9]+)\]/, "")
if @pic_show == true
@balloon_face = $1.to_i
refresh_balloon
end
c = ""
next
end
# In case of line feed character
if c == "\n"
nowwidth = self.contents.text_size(phrase).width
if @pic_show == true
self.contents.draw_text (120 + x, 32 * y, nowwidth, 32, phrase)
else
self.contents.draw_text (4 + x, 32 * y, nowwidth, 32, phrase)
end
x += nowwidth
phrase = ""
# If the choices renewing the width of cursor
if y >= $game_temp.choice_start
@cursor_width = [@cursor_width, x].max
end
# y Adding 1
y += 1
x = 0
# If the choices indentation is done
if y >= $game_temp.choice_start
x = 8
end
# To the following letter
next
end
# Drawing letter
# Adding the width of the letter which is drawn in x
phrase.concat (c)
end
if phrase != ""
nowwidth = self.contents.text_size(phrase).width
if @pic_show == true
self.contents.draw_text (120 + x, 32 * y, nowwidth, 32, phrase)
else
self.contents.draw_text (4 + x, 32 * y, nowwidth, 32, phrase)
end
x += nowwidth
phrase = ""
end
end
# In case of choices
if $game_temp.choice_max > 0
@item_max = $game_temp.choice_max
self.active = true
self.index = 0
end
# In case of numerical input
if $game_temp.num_input_variable_id > 0
digits_max = $game_temp.num_input_digits_max
number = $game_variables[$game_temp.num_input_variable_id]
@input_number_window = Window_InputNumber.new(digits_max)
@input_number_window.number = number
@input_number_window.x = self.x + 8
@input_number_window.y = self.y + $game_temp.num_input_start * 32
end
end
#--------------------------------------------------------------------------
def update
super
# In case of fading in
update_balloon
if @fade_in
self.contents_opacity += 24
if @input_number_window != nil
@input_number_window.contents_opacity += 24
end
if self.contents_opacity == 255
@fade_in = false
end
return
end
# When it is in the midst of numerical inputting
if @input_number_window != nil
@input_number_window.update
# Decision
if Input.trigger?(Input::C)
$game_system.se_play($data_system.decision_se)
$game_variables[$game_temp.num_input_variable_id] =
@input_number_window.number
$game_map.need_refresh = true
# Releasing the numerical input window
@input_number_window.dispose
@input_number_window = nil
terminate_message
end
return
end
# When it is in the midst of message indicating
if @contents_showing
# If it is not in the midst of indicating the choices, indicating pause sign
if $game_temp.choice_max == 0
self.pause = true
end
# Cancellation
if Input.trigger?(Input::B)
if $game_temp.choice_max > 0 and $game_temp.choice_cancel_type > 0
$game_system.se_play($data_system.cancel_se)
$game_temp.choice_proc.call($game_temp.choice_cancel_type - 1)
terminate_message
end
end
# Decision
if Input.trigger?(Input::C)
if $game_temp.choice_max > 0
$game_system.se_play($data_system.decision_se)
$game_temp.choice_proc.call(self.index)
end
terminate_message
end
return
end
# While fading out when there is a message or choices of the waiting of indication at other than
if @fade_out == false and $game_temp.message_text != nil
@contents_showing = true
$game_temp.message_window_showing = true
reset_window
refresh
Graphics.frame_reset
self.visible = true
self.contents_opacity = 0
if @input_number_window != nil
@input_number_window.contents_opacity = 0
end
@fade_in = true
return
end
# There is no message which it should indicate, but when the window is visible state
if self.visible
@fade_out = true
self.opacity -= 48
if self.opacity == 0
self.visible = false
@fade_out = false
$game_temp.message_window_showing = false
end
return
end
end
#--------------------------------------------------------------------------
def create_balloon
dispose_balloon
@balloon_duration = 8 * 8 + BALLOON_WAIT
@balloon_sprite = ::Sprite.new(@viewport)
@balloon_sprite.bitmap = RPG::Cache.picture(EMO_NAME)
@balloon_sprite.ox = 16
@balloon_sprite.oy = 32
@balloon_sprite.visible = false
update_balloon
end
#--------------------------------------------------------------------------
def refresh_balloon
if @balloon_face == 0 or @balloon_face > 10
@balloon_sprite.visible = false
else
@balloon_sprite.visible = true
end
update_balloon
end
#--------------------------------------------------------------------------
def update_balloon
if @balloon_duration > 0
@balloon_duration -= 1
if @balloon_duration == 0
@balloon_duration = 8 * 8 + BALLOON_WAIT
@balloon_duration -= 1
else
@balloon_sprite.x = x + EMO_X
@balloon_sprite.y = y + EMO_Y
@balloon_sprite.z = z + 50
if @balloon_duration < BALLOON_WAIT
sx = 7 * 32
else
sx = (7 - (@balloon_duration - BALLOON_WAIT) / 8) * 32
end
sy = (@balloon_face - 1) * 32
@balloon_sprite.src_rect.set(sx, sy, 32, 32)
end
end
end
#--------------------------------------------------------------------------
def dispose_balloon
if @balloon_sprite != nil
@balloon_sprite.dispose
@balloon_sprite = nil
end
end
end
How to Use Show Face Option:
Add "\f[FaceName]" To text in message control
FaceName must be the filename of a graphic file found in the directory
"Graphics\Pictures" of your RPG Maker XP project.
The file must be a PNG of 96X96 pixels.
You do not need to write the file extention.
How to Use Emoticon Option:
Add "\E[Number Of Emoticon]" To text in message control
The Emoticon Picture is in "Graphics\Picture".
when the line number of emoticonset is 1 , Number of Emoticon is 1.
when the line number of emoticonset is 2 , Number of Emoticon is 2.
Max of Number of Emoticon is 10.
You can set Emoticon's Picture Name at EMO_NAME.
You can set Emoticon's Position at EMO_X and EMO_y.
You can set frame rate at BALLOON_WAIT.
if the message window don't have face,Noting happen.
If you use this, Credit Nechigawara Sanzenin.