[RMVX] Neo-Face System 2.0

0 Members and 1 Guest are viewing this topic.

**
Rep:
Level 86
Neo-Face System
Version 2.0
by Woratana
Release Date: 22/01/2008


Introduction
Yesterday I read this thread: Your RPG Maker VX Maps and found Rabu's show face style

I heard that he used show picture for this, and he posted the face graphic that cut already.

So I script one to make it easier~^^

Features
Version 2.0
- No limitation in face size, use 1 face per file
Example:
Face size 192*192 pixel
http://i83.photobucket.com/albums/j295/woratana/facess1.jpg
Face size 255*255
http://i83.photobucket.com/albums/j295/woratana/facess2.jpg

- Show face in left side, right side, or switch back to normal RMVX face system.

- Fix bug when use "Show Choice" command.
Before and After:
Version 1.0
http://i83.photobucket.com/albums/j295/woratana/faced1.png
Version 2.0
http://i83.photobucket.com/albums/j295/woratana/faced2.png

Version 1.0
- Face size: 192*192 pixel, use 1 face per file
- Show face in left side or right side.
- Turn on/off face's Fade In effect, and change speed of Fade In effect.

Script
Place it above main
Code: [Select]
#==============================================================================
# NeoFace System v.2.0 [RMVX Script]
#------------------------------------------------------------------------------
# by Woratana [woratana@hotmail.com]
# Thaiware RPG Maker Community
# Special Thanks: Rabu
#------------------------------------------------------------------------------
# Released on: 22/01/2008
# - Put face graphics in folder "face" of your project.

# [New Features in Version 2.0]
# - Auto arrange face position (You can use any size of face file)

# - Call Script "$game_message.side = (number)" to switch show face mode.
# $game_message.side = 0 << switch to normal face system (default face system of RMVX)
# $game_message.side = 1 << switch to NeoFace system (show face in left side)
# $game_message.side = 2 << switch to NeoFace system (show face in right side)
# Default system when you first setup this script is 1
# THESE NUMBERS & RESULTS ARE DIFFERENT FROM VERSION 1.0 #

# Fixed bug in Show Choice command.
#==============================================================================

#==============================================================================
# Window_Base
#------------------------------------------------------------------------------
#==============================================================================
class Window_Base
 
def draw_face2(face_name, x, y)
@face.z = 201
@face.bitmap = Cache.face(face_name)
  if $game_message.side == 1
@face.mirror = false
@face.x = x + 6
  else
@face.mirror = true
@face.x = x + (538 - @face.width)
  end
@face.y = y - (@face.width - 123)
@face.opacity = 0 # Change 0 to 255 to turn off face's fade in effect.
  end
end

#==============================================================================
# Window_Message
#------------------------------------------------------------------------------
#==============================================================================
class Window_Message

alias msg_ini initialize
def initialize
  msg_ini
  @face = Sprite.new
  $game_message.side = 1 # Default face's side when game start~ (default: 1)
  @default_conx = 0
  # Move text left (-) or right (+) when there's face in right side or no face (default: 0)
end

def new_page
contents.clear
if @face.bitmap != nil
@face.bitmap.dispose
end
if $game_message.face_name.empty?
@contents_x = @default_conx
else
  name = $game_message.face_name
  index = $game_message.face_index
if $game_message.side == 0 ##
  draw_face(name, index, 0, 0)
else
  draw_face2(name, self.x, self.y)
end
  get_x_face
  @contents_x = @fx
end
@contents_y = 0
@line_count = 0
@show_fast = false
@line_show_fast = false
@pause_skip = false
contents.font.color = text_color(0)
  end

  def new_line
if $game_message.face_name.empty?
  @contents_x = @default_conx
else
  get_x_face
  @contents_x = @fx
  end
@contents_y += WLH
@line_count += 1
@line_show_fast = false
  end
 
  def update
super
update_gold_window
update_number_input_window
update_back_sprite
update_show_fast
if @face.bitmap != nil and @face.opacity < 255
  @face.opacity += 20 # Speed up face's fade in by increase this number
end
unless @opening or @closing
  if @wait_count > 0
@wait_count -= 1
  elsif self.pause
input_pause
  elsif self.active
input_choice
  elsif @number_input_window.visible
input_number
  elsif @text != nil
update_message
  elsif continue?
start_message
open
$game_message.visible = true
  else
close
if @face.bitmap != nil
@face.bitmap.dispose
end
$game_message.visible = @closing
  end
end
  end
 
def start_number_input
digits_max = $game_message.num_input_digits_max
number = $game_variables[$game_message.num_input_variable_id]
@number_input_window.digits_max = digits_max
@number_input_window.number = number
if $game_message.face_name.empty?
  @number_input_window.x = x - 23
else
  case $game_message.side ##
  when 0
@number_input_window.x = (x + 112) - 23
  when 1
@number_input_window.x = (x + @face.width) - 23
  when 2
@number_input_window.x = x - 23
  end
end
@number_input_window.y = y + @contents_y
@number_input_window.active = true
@number_input_window.visible = true
@number_input_window.update
  end
 
  def update_cursor
if @index >= 0
  if $game_message.face_name.empty?
  x =  @default_conx
else
  get_x_face
  x = @fx
  end
  y = ($game_message.choice_start + @index) * WLH
  if $game_message.face_name.empty?
facesize = x
  else
facesize = @face.width
  end
  self.cursor_rect.set(x, y, contents.width - facesize, WLH)
else
  self.cursor_rect.empty
end
  end
 
  def get_x_face
case $game_message.side
when 0
  @fx = 112
when 1
  @fx = @face.width
when 2
  @fx = @default_conx
else
  @fx = @default_conx
end
  end


 
end # Class

#==============================================================================
# Game_Message: + store side variable
#------------------------------------------------------------------------------
#==============================================================================
class Game_Message
  attr_accessor :side
end

#==============================================================================
# END NeoFace System
# by Woratana (woratana@hotmail)
#==============================================================================

Download
- Face graphic cut in 192*192 pixel by Rabu
Download Faces Pack Here!

example:



Instruction Version 2.0
1) First, import the face graphic (any size) to folder "Face" in your game folder.

2) When you're choosing face graphic in event command "Show Message", you will see that it divided in 8 parts.
Don't worry about it, choose any part you want. All parts will show face same result in this script.

3) Type the message you want, and "Show Message" window should look like this:

4) Test the game, and you will see the result!

=================================

Change Face's Side & Switch to Normal VX Face System
You can show face in left or right side, or switch back to normal VX face system.

To change face's side, use event command "Call Script" and type this:
Code: [Select]
$game_message.side = (0 or 1 or 2)
0 << switch to normal face system (default face system of RMVX)
1 << switch to NeoFace system (show face in left side)
2 << switch to NeoFace system (show face in right side)
^ 1 is DEFAULT MODE when you first place this script
(If you don't use this script before show message, face will show in the last side that you set)

Example:
$game_message.side = 0 Normal RMVX Face System
http://i83.photobucket.com/albums/j295/woratana/facess8.jpg << In Editor


$game_message.side = 1 NeoFace system in Left side
http://i83.photobucket.com/albums/j295/woratana/facess4.jpg << In Editor


$game_message.side = 2 NeoFace system in Right side
http://i83.photobucket.com/albums/j295/woratana/facess6.jpg << In Editor

=================================

Author's Notes
Free for use in your non-commercial work if credit included. If your project is commercial, please contact me.

Please do not redistribute this script without permission. If you want to post it on any forum, please link to this topic.

Special Thanks
- Rabu (for cutout face graphics)
- ccoa's script thread, for outline of the script thread.

*
A Random Custom Title
Rep:
Level 96
wah
Wow, that's nice. :)

*
Rep:
Level 97
2014 Most Unsung Member2014 Best RPG Maker User - Engine2013 Best RPG Maker User (Scripting)2012 Most Mature Member2012 Favorite Staff Member2012 Best RPG Maker User (Scripting)2012 Best MemberSecret Santa 2012 ParticipantProject of the Month winner for July 20092011 Best Use of Avatar and Signature Space2011 Best RPG Maker User (Scripting)2011 Most Mature Member2011 Favourite Staff Member2011 Best Veteran2010 Most Mature Member2010 Favourite Staff Member
Looks very nice. What happens if you do not initialize $game_message.side? Does it assume NeoFace or regular? In any case, it looks great!

********
Hungry
Rep:
Level 96
Mawbeast
2013 Best ArtistParticipant - GIAW 11Secret Santa 2013 ParticipantFor the great victory in the Breakfast War.2012 Best Game Creator (Non-RM Programs)~Bronze - GIAW 9Project of the Month winner for December 2009Project of the Month winner for August 20082011 Best Game Creator (Non RM)Gold - GIAW Halloween
that's some very nice work
I'm liking the fact that we have some scripters jumping onto VX already
I might do so myself, translate some of my scripts over >.>

FCF3a A+ C- D H- M P+ R T W- Z- Sf RLCT a cmn+++ d++ e++ f h+++ iw+++ j+ p sf+
Follow my project: MBlok | Find me on: Bandcamp | Twitter | Patreon

*
A Random Custom Title
Rep:
Level 96
wah
that's some very nice work
I'm liking the fact that we have some scripters jumping onto VX already
I might do so myself, translate some of my scripts over >.>
Find and replace for teh win! :V

Also, the forum board name should be changed to RPG Maker Scripts and not just RMXP because RMVX will feature scripts, too. And topic titles can just say what system it's for.

*
Rep:
Level 102
2014 Biggest Narcissist Award2014 Biggest Forum Potato2014 Best Non-RM Creator2013 Best Game Creator (Non-RM)2013 Best IRC ChatterboxParticipant - GIAW 112012 Most Successful Troll2012 Funniest Member2012 Best Use Of Avatar and Signature space2012 Best IRC ChatterboxSecret Santa 2012 ParticipantProject of the Month winner for November 2009For being a noted contributor to the RMRK Wiki2010 Best IRC Chatterbox2010 Most Successful Troll2010 Biggest Forum Couch Potato
I'm assuming this is your work that you posted here?

If so, nice work.

**
Rep:
Level 86
@Irock
Yes, that's same script  :)

@modern algrebra
You can change the default show face here:
Code: [Select]
$game_message.side = 1 # Default face's side when game start~ (default: 1)

**
Rep:
Level 86
Sorry for double post  ;)

[size="4"]NeoFace version 3 is coming![/size]
[color="#FF0000"]
New Features
[/color]
- Allow 8 faces per file for NeoFace system~ (You can still use 1 face per file)

- New mode! $game_message.side = -1 [color="#8B0000"]Show Normal Face system in right side![/color]


- New Effect! Move Face horizontally from outside to inside the screen!!

- More New Features that you can easily config!!
Quote
  MOVE_TEXT = true # (true/false)
  # Move text to right side of face, when showing NeoFace in left side.
 
  FACE_X_PLUS = 0 # Move Face Horizontally
  FACE_Y_PLUS = 0 # Move Face Vertically

[color="#8B0000"]^ 3 FEATURES ABOVE WILL ALLOW YOU TO SHOW FACE ABOVE MESSAGE BOX!![/color]


  TEXT_X_PLUS = 0 # Move Text Horizontally
  CHOICE_INPUT_X_PLUS = 10 # Move Choices Text and Input Number Text Horizontally
 
  EightFaces_File = false
  # for NeoFace System: use 8 Faces per file / 1 Face per file (true/false)
 
  DEFAULT_SIDE = 0 # Default Face's Side when game start~

  FADE_EFFECT = true # Turn on/off fade effect (true/false)
  FADE_SPEED = 20 # Speed up face's fade effect by increase this number
 
  MOVE_EFFECT = true # Turn on/off "move in" effect (true/false)
  MOVE_SPEED = 10 # Speed up face's "move in" effect by increase this number

[color="#FF0000"]NEW EFFECT! MOVE FACE FROM OUTSIDE TO INSIDE THE SCREEN!![/color]

I'm planning to add NMS features in there, and maybe Name Box. What do you think about it?

Please let me know if you have any idea or suggestion about NeoFace 3 :lol:

**
Rep:
Level 88
I R 3V1L!!111!!1
Nice script. Gonna try it. However, The face pack is no longer available, anyone have a mirror?

Edit--- never mind. got some.
Great script just tested it.
« Last Edit: March 05, 2008, 10:03:02 PM by Doom_master1122 »

**
Rep:
Level 86
Nice script. Gonna try it. However, The face pack is no longer available, anyone have a mirror?

Edit--- never mind. got some.
Great script just tested it.
where did you find it?

**
Rep:
Level 86
I uploaded face pack :)

Here it is:
http://neofacepack.notlong.com/

*
Rep:
Level 97
2014 Most Unsung Member2014 Best RPG Maker User - Engine2013 Best RPG Maker User (Scripting)2012 Most Mature Member2012 Favorite Staff Member2012 Best RPG Maker User (Scripting)2012 Best MemberSecret Santa 2012 ParticipantProject of the Month winner for July 20092011 Best Use of Avatar and Signature Space2011 Best RPG Maker User (Scripting)2011 Most Mature Member2011 Favourite Staff Member2011 Best Veteran2010 Most Mature Member2010 Favourite Staff Member
This is quite nice. The big faces definitely look better than the 96x96 ones. Nice job here worale.

**
Rep:
Level 86
Thanks a lot, MA. If Rabu didn't show me, I will never know how nice to use bigger face  ;)

Annoucement:
This script it already included in NMS (Neo Message System)

Neo Message System
http://rmrk.net/index.php/topic,24559.0.html

*
Rep: +0/-0Level 82
its not working for me and i really want it !!!!!!!!! please help me PLEASE  :tpg:

**
Rep: +0/-0Level 75
RMRK Junior

**
Rep: +0/-0Level 75
RMRK Junior
not working  :tpg:

**
Rep: +0/-0Level 75
RMRK Junior
Cool Level 60  ;D ;D ;D

**
Rep:
Level 66
Haven't been on for ages -.-
Sry to bother ya but, the link for some reason doesn't seem to work?
I tried it but then it says that the key has been deleted or something sry.
Is it possible if you can give me another source? PLEASE


thank you,
IneedHELP!

***
Rep:
Level 57
Miiiiaf =^+^=
GIAW 14: ParticipantParticipant - GIAW 11
Very cool!!
I'd like to use it but it gives a conflict with MA's ATS...

It says:
Script 'ATS' line 3507: TypeError occurred.
nil can't be coerced into FixNum

Don't know if it can be fixed... If it can be fixed, I'd love to use it! Otherwise, I'll just use regular faces.

Grtz


As blonde as can be!!!
Doesn't mean I'm the dumb one...
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Spoiler for supporting!: