RE: MultiSlots! - Jojozityjo - 10-09-2011
for some reason this is giving me problems when it worked perfectly in another game with the same scripts ...
the game starts with no actors to show a dialogue part, but as soon as it passes and the 1st char is added ... i get this error ...
Script 'mSlots (RPG & Game)' Line 201: NoMethodError occurred.
undefined method 'size' for nil:NilClass
any help with that?
RE: MultiSlots! - DerVVulfman - 10-20-2011
BUMP!
up to version 2.6
Hey, Jojozityjo. You found a critical error that came about when initializing players. Players that were already in the party didn't need to be initialized. Initialized characters had their stuff 'reset' and that caused a problem with the armor setup routine..
Fixed now, and you're in the credits.
RE: MultiSlots! - DerVVulfman - 11-23-2011
BUMP!
up to version 2.7
WHOOPS! My bad. That error wasn't fully repaired as Yin found out. I left out a stupid bit of code in the 2nd page mSlots (RPG & Game) that helped check on the initialized characters.
Now it's Yin's turn to be in another script's credits.
RE: MultiSlots! - DerVVulfman - 12-26-2012
BUMP TO
Version: 2.8
It's been a while since I had anything to bump with MultiSlots. Guess I had to find something. It looks like the switch that turned off the 'unarmed combat' system was defective. Eep! My bad. Fixed now though.
RE: MultiSlots! - Waddle Dee - 03-24-2013
Hey, I've found a bug. D: I realise this is a bit of a necro, but meh. I'd love assistance. ^^;;
When using the following script call...
Code: $game_actors[1].blocked_offhands = [1,2,3,4,5,6,7,8,9,10,11]
$game_actors[1].dual_wield = true
...and trying to equip a shield with a one-handed weapon, the shield doesn't show up in my status screen. Two weapons show up fine, or even a 2H weapon alone, but it's an issue with showing the shield's name on the left hand.
Any ideas? :<
And, lemme just say this script's great. <3 So any help would be appreciated~!
EDIT: Until there's any fix implemented, I'm doing this to manually insert the shield's item name on the status screen:
Code: draw_item_name($data_armors[@actor.armor1_id], 376 + 24, 106) #shield insert
The numbers will have to be altered for anyone else, as I'm using my own CMS. Just throw it above the lines where it displays the actor's equipment.
This could probably be done better, as I'm no expert with this sort of thing. :3
RE: MultiSlots! - DerVVulfman - 03-25-2013
Hey! Long time no see!!!
Well, I do appreciate any bug reports, and I saw yours while at work! Couldn't do anything then as I didn't have RPGMaker XP in front of me. BUT... I went into the script the moment I got home. And lo and behold, I got it fixed.
BUMP!
To Version 2.9
Thanks to Waddle Dee, a minor glitch appeared in the Window_Status class in the 3rd script page that handles the Window code. You can merely replace this page and be upgraded to the latest version with no problem.
Oh.... and now the credits includes Waddle Dee as she identified the error that needed repairing.
RE: MultiSlots! - Waddle Dee - 03-25-2013
Hi! :D Been busy, plus for awhile the website showed as down/offline for me (it may have just been on my end)...what a surprise it was when I saw everything up like nothing had happened, lol.
Thanks for the speedy response! ^^
RE: MultiSlots! - habs11 - 07-12-2013
DerVVulfman,
If you get tired of the requests, just tell me to stop :).
Great script as always, love what you do with everything. Would it be possible to make it so an actor was forbidden to have no weapon equipped? In most animated battler systems the actor graphic has a weapon, and I think it looks very poor if they are shown holding and attacking with a weapon if they don't have one equipped. Not the end of the world if you can't make it happen, just curious if it would be a simple fix. Thanks!
RE: MultiSlots! - DerVVulfman - 07-13-2013
Personally, I would use my 'Brenda's Visual Battlers' so I could make separate weapon spritesheets... have it so the actors can switch from a sword to an axe and let it visually change or let him fight unarmed that way.
But... that's not what you wish, so I cobbled this up. This being a direct edit to the script:
Look for line 334 in mSlots (Windows) and make changes to match. These edits happen where the @equip_type is involved as it handles the 1st slot (for weapons).
Code: # Add blank page
@data.push(nil) if @equip_type != 0
# Make a bit map and draw all items
@item_max = @data.size
self.contents = Bitmap.new(width - 32, row_max * 32)
if @equip_type != 0
for i in 0...@item_max-1
draw_item(i)
end
else
for i in 0...@item_max
draw_item(i)
end
end
if @equip_type != 0
s = @data.size-1
self.contents.draw_text(4, s * 32, 100, 32, MSlots::STRING_REMOVED)
end
end
#--------------------------------------------------------------------------
# * Draw Item
# index : item number
RE: MultiSlots! - habs11 - 07-13-2013
I have looked at your 'Brenda's Visual Battlers' script and it is awesome (no surprise). However I am using an 11-pose actor graphics for my battlers, so creating extra graphics with no weapon and other weapons would be more tedious than I would like. Thanks for the suggestion.
So, I added the extra lines into the script and I got the following error from Charlie Fleeds Bitmap, Draw Face 1.7:
Capture.PNG (Size: 18.54 KB / Downloads: 5)
I am not sure exactly the issue with the script, but I have pasted Charlies Bitmap script below. Thanks for looking into it.
Code: #==============================================================================
# ** Bitmap, Draw Face ver. 1.7
# ** Author: Charlie Fleed
#==============================================================================
#==============================================================================
# ■ BITMAP
#==============================================================================
class Bitmap
attr_accessor :bg_color
#--------------------------------------------------------------------------
# *
#--------------------------------------------------------------------------
unless @charlie_fleed_bitmap_initialize
@charlie_fleed_bitmap_initialize = true
alias_method :cl_initialize, :initialize
def initialize(a, b = nil)
if b != nil
cl_initialize(a, b)
else
cl_initialize(a)
end
@bg_color = Color.new(61,52,109)
end
end
#--------------------------------------------------------------------------
# ● Draw Text Bordered
# actually a draw_text_shadowed method
#--------------------------------------------------------------------------
def draw_text_bordered(x, y, width, height, text, align = 1)
color2 = font.color.clone
font.color.set(0, 0, 0)
draw_text(x + 1, y + 1, width, height, text, align)
font.color = color2
draw_text(x, y, width, height, text, align)
end
#--------------------------------------------------------------------------
# ● Draw Text Bordered 2
#--------------------------------------------------------------------------
def draw_text_bordered_2(x, y, width, height, text, align = 1)
color2 = font.color.clone
font.color = @bg_color
draw_text(x + 1, y + 1, width, height, text, align)
draw_text(x + 1, y - 1, width, height, text, align)
draw_text(x - 1, y + 1, width, height, text, align)
draw_text(x - 1, y - 1, width, height, text, align)
font.color = color2
draw_text(x, y, width, height, text, align)
end
#--------------------------------------------------------------------------
# ● Draw Text Shadowed
#--------------------------------------------------------------------------
alias draw_text_shadowed draw_text_bordered
#--------------------------------------------------------------------------
# ● Draw Text Shadowed 2 (double shadow)
#--------------------------------------------------------------------------
def draw_text_shadowed_2(x, y, width, height, text, align = 1)
color2 = font.color.clone
font.color.set(0, 0, 0)
draw_text(x + 2, y + 1, width, height, text, align)
draw_text(x + 1, y + 2, width, height, text, align)
draw_text(x + 1, y + 1, width, height, text, align)
font.color = color2
draw_text(x, y, width, height, text, align)
end
end
#==============================================================================
# ■ RPG Cache
#==============================================================================
module RPG
module Cache
#--------------------------------------------------------------------------
# ● Face
#--------------------------------------------------------------------------
def self.face(filename, hue)
begin
self.load_bitmap("Graphics/Faces/", filename, hue)
rescue
self.load_bitmap("Graphics/Faces/", "", hue)
end
end
#--------------------------------------------------------------------------
# ● State
#--------------------------------------------------------------------------
def self.state(filename, hue)
begin
self.load_bitmap("Graphics/States/", filename, hue)
rescue
self.load_bitmap("Graphics/States/", "", hue)
end
end
#--------------------------------------------------------------------------
# ● Turn
#--------------------------------------------------------------------------
def self.turn(filename)
begin
self.load_bitmap("Graphics/Pictures/turns/", filename)
rescue
self.load_bitmap("Graphics/Pictures/turns/", "")
end
end
#--------------------------------------------------------------------------
# ● Style 3 Face
#--------------------------------------------------------------------------
def self.face_s3(filename, hue)
begin
self.load_bitmap("Graphics/Faces/", filename+"-s3", hue)
rescue
self.load_bitmap("Graphics/Faces/", "", hue)
end
end
end
end
#==============================================================================
# ■ WINDOW BASE
#==============================================================================
class Window_Base
#--------------------------------------------------------------------------
# ● Draw Actor Face
#--------------------------------------------------------------------------
def draw_actor_face_CF(actor, x, y, size = 0)
bitmap = RPG::Cache.face(actor.name, actor.character_hue)
return if bitmap == nil
cw = bitmap.width
ch = bitmap.height
if size > 0
dst_cw = size
dst_ch = size
else
dst_cw = bitmap.width
dst_ch = bitmap.height
end
dst_rect = Rect.new(x, y, dst_cw, dst_ch)
src_rect = Rect.new(0, 0, cw, ch)
self.contents.stretch_blt(dst_rect, bitmap, src_rect)
end
#--------------------------------------------------------------------------
# ● Draw Actor Battle Status Face
#--------------------------------------------------------------------------
def draw_actor_battle_status_face(actor, x, y)
bitmap = RPG::Cache.face(actor.name + "-battlestatus", actor.character_hue)
return if bitmap == nil
cw = bitmap.width
ch = bitmap.height
dst_cw = bitmap.width
dst_ch = bitmap.height
dst_rect = Rect.new(x, y, dst_cw, dst_ch)
src_rect = Rect.new(0, 0, cw, ch)
self.contents.stretch_blt(dst_rect, bitmap, src_rect)
end
#--------------------------------------------------------------------------
# ● Draw Actor Face Small
#--------------------------------------------------------------------------
def draw_actor_face_small(actor, x, y, size = 0)
bitmap = RPG::Cache.face(actor.name + "-small", actor.character_hue)
# Fallback
if bitmap == RPG::Cache.face("", actor.character_hue)
bitmap = RPG::Cache.face(actor.name, actor.character_hue)
end
return if bitmap == nil
cw = bitmap.width
ch = bitmap.height
if size > 0
dst_cw = size
dst_ch = size
else
dst_cw = bitmap.width
dst_ch = bitmap.height
end
dst_rect = Rect.new(x, y, dst_cw, dst_ch)
src_rect = Rect.new(0, 0, cw, ch)
self.contents.stretch_blt(dst_rect, bitmap, src_rect)
end
#--------------------------------------------------------------------------
# ● Draw State Icon
#--------------------------------------------------------------------------
def draw_state_icon(state_id, x, y, size = 24)
return if state_id == 0
bitmap = RPG::Cache.state($data_states[state_id].name, 0)
return if bitmap == nil
cw = bitmap.width
ch = bitmap.height
dst_cw = size
dst_ch = size
dst_rect = Rect.new(x, y, dst_cw, dst_ch)
src_rect = Rect.new(0, 0, cw, ch)
self.contents.stretch_blt(dst_rect, bitmap, src_rect)
end
end
|