Help - Search - Members - Calendar
Full Version: Malexos "Better" Bow and Crossbow Addon
RPG RPG Revolution Forums > Scripting > Script Submissions > RGSS2-Submissions
Malexos
Malexos' "Better" Bow and Crossbow Addon v. 1.00
(For the Tankentai SBS)


INTRODUCTION
This is my first, and probably last script for several reasons.

1. I don't know how to script tongue.gif Like, seriously. I have no Idea how I even did this. I just started looking at the code for Kylock's Gun Addon and Bub's bow addon and somehow figured it out. XD but don't let that stop you from using the script--
it works, I promise.

Oh. Wow. I guess that was the only reason. I could have sworn I had more...oh well.

FEATURES

Anyways, the reason why "Better" is in quotation marks is because, I didn't really add anything flashy-- I just made it so that whatever bow you have equipped shows when you attack. Before, it would only show the generic-looking bow from the bow animation. Don't get me wrong-- the animation is nice. But I have over 150 Bows to choose from, and I thought it was odd that you wouldn't be able to see them in action, like so:


(Counts as screenshot?)

The Crossbow addon is basically Kylock's gun addon, except it shoots arrows. XP see, nothing fancy.

HOW TO USE
To use this script, you just need the wooden arrow graphic from Bub's original bow addon. I don't think i'm allowed to post it here, so I'll link to it.
....Okay, I'm not allowed to search for "Bow" in the Tankentai thread, so here you go:



*Forgiveness rather than permission*
Put that in your characters folder. The rest is Plug-und-Play.

Without further ado, here's the script in all it's simple splendour. biggrin.gif

CODE
#=======================================================
#■Malexos' "Better" Bow Addon v. 1.00, for the Tankentai SBS
#=======================================================
#=======================================================
# DESCRIPTION:
#======================================================
# It's basically the same old bow animation, except it shows whatever bow you
# have equipped.
#
#========================================================
# HOW TO USE:
#========================================================
# Plug und Play. Set the Bow Element to whatever element you'd like.
# Every bow that you would like to have this animation must have that element.
#
#========================================================
# NOTA BENE:
#========================================================
# I have absolutely no scripting knowledge whatsoever, just common sense.
# Let me know if there's a problem with the script. If I can't help you,
# you should probably ask Mr. Bubble, or Kylock, since I basically
# frankenscripted their scripts. You can give me credit if you like, but make
# absolutely certain you give Mr. Bubble and Kylock credit.
#========================================================

module N01
BOW_ELEMENT = 19 #The Element used to define a weapon as a bow. As I still
#like Mr. Bubble's original addon, I set the element to a
# different one than "bow".

RANGED_ANIME = {
"BOWSTRING" => ["sound", "se", 100, 100, "paralyze1"],
"RELEASEBOW" => ["sound", "se", 100, 100, "wind7"],
}

#Above are the sound effects used with the Bow Attack. You may change them
#to whatever you like, and even add sounds. If you decide to add a sound,
#make sure it's in the template found above.
# "BOWSTRING" => ["sound", "se", 100, 50, "paralyze1"],
# Ex. "BOWSTRING" is the name of the sound when plugging it in to the animation
# below.
# "sound" i'm guessing identifies this as a sound XP
# "se" lets the game know the sound is in the SE folder
# 100 = Volume
# 50 = Pitch
# "paralyze1" is the name of the sound file.

BOW_ANIME = {
"DRAW_POSE" => [ 0, 1, 1, 2, 0, -1, 0, true,"" ],
"DRAW_BOW" => ["anime", 83, 0, false, false, false],
"ARROW_ANGLE" => [ 30, 60, 11],
"SHOOT_ARROW" => ["m_a", 0, 0, 0, 15, -10, 0, 0, 0,false,"ARROW_ANGLE"],
}

ANIME.merge!(RANGED_ANIME)
ANIME.merge!(BOW_ANIME)
# Action Sequence
RANGED_ATTACK_ACTION = {
"BOW_ATTACKK" => ["BEFORE_MOVE", "WPN_SWING_UNDER", "10", "BOWSTRING",
"SHOOT_ARROW", "RELEASEBOW", "12","OBJ_ANIM","16",
"Can Collapse","FLEE_RESET"],}

ACTION.merge!(RANGED_ATTACK_ACTION)
end

module RPG
class Weapon
alias malexos_bows_base_action base_action
def base_action
# If the Element is checked on the weapons tab in the database,
# the new attack
if $data_weapons[@id].element_set.include?(N01::BOW_ELEMENT)
return "BOW_ATTACKK"
end
malexos_bows_base_action
end
alias malexos_bow_flying_graphic flying_graphic
def flying_graphic
if $data_weapons[@id].element_set.include?(N01::BOW_ELEMENT)
return "woodarrow" # Arrow graphic in Characters folder.
end
malexos_bow_flying_graphic
end
end
end

#=============================================================
# Malexos' Crossbow addon
#=============================================================
module N01
# Element used to define a weapon as a crossbow
CROSSBOW_ELEMENT = 20

RANGED_ANIME = {
"FIRE!" => ["sound", "se", 100, 100, "close1"],}

BOW_ANIME = {
"ARROW_ANGLE" => [30, 60, 11],
"SHOOT_ARROW" => ["m_a", 0, 0, 0, 5, 0, 0, 0, 0,false,"ARROW_ANGLE"],
}

ANIME.merge!(RANGED_ANIME)
# Action Sequence
RANGED_ATTACK_ACTION = {
"CROSSBOW_ATTACK" => ["JUMP_AWAY","WPN_SWING_V","30","FIRE!","WPN_SWING_V",
"SHOOT_ARROW", "OBJ_ANIM_WEIGHT","12","WPN_SWING_VL","OBJ_ANIM_L","One Wpn Only",
"16","Can Collapse","JUMP_TO","COORD_RESET"],}
ACTION.merge!(RANGED_ATTACK_ACTION)
end

module RPG
class Weapon
alias malexos_crossbow_base_action base_action
def base_action
if $data_weapons[@id].element_set.include?(N01::CROSSBOW_ELEMENT)
return "CROSSBOW_ATTACK"
end
malexos_crossbow_base_action
end
alias malexos_bow_flying_graphic flying_graphic
def flying_graphic
if $data_weapons[@id].element_set.include?(N01::CROSSBOW_ELEMENT)
return "woodarrow" # Arrow graphic in Characters folder
end
malexos_bow_flying_graphic
end
end
end



CREDIT AND THANKS:

-You don't really have to credit me. You can just thank me if you use it tongue.gif
-Mr. Bubble
-Kylock
elstupido
Hi, I got a small problem with your addon.

I wanted to add an option for a wand animation -
I gotta say i know nothing about scripting and i've been using rpg maker
for like 3 weeks now.

So i went ahead and copy / pasted the part with the crossbow animation
below it and customized it so it looked like a wand animation. And it worked fine.

The problem is: It kills the bow animation. When i equip a bow and
try to attack i always get an error saying:
"Script 'Bow and Crossbow addon' line 122: SystemStackError occured (sometimes it says line 125)

stack level too deep

this is what i did:
CODE
#=============================================================
# Elstupido's Wand Addon
#=============================================================
module N01
# Element used to define a weapon as a wand
WAND_ELEMENT = 21

RANGED_ANIME = {
"FIRE!" => ["sound", "se", 100, 100, "fire1"],}

BOW_ANIME = {
"ARROW_ANGLE" => [30, 60, 11],
"SHOOT_ARROW" => ["m_a", 0, 0, 0, 5, 0, 0, 0, 0,false,"ARROW_ANGLE"],
}

ANIME.merge!(RANGED_ANIME)
# Action Sequence
RANGED_ATTACK_ACTION = {
"WAND_ATTACK" => ["FIRE!","WPN_SWING_V",
"SHOOT_ARROW", "OBJ_ANIM_WEIGHT","12","WPN_SWING_VL","OBJ_ANIM_L","One Wpn Only",
"16","Can Collapse"],}
ACTION.merge!(RANGED_ATTACK_ACTION)
end

module RPG
class Weapon
alias elstupidos_wand_base_action base_action
def base_action
if $data_weapons[@id].element_set.include?(N01::WAND_ELEMENT)
return "WAND_ATTACK"
end
elstupidos_wand_base_action
end
alias malexos_bow_flying_graphic flying_graphic
def flying_graphic
if $data_weapons[@id].element_set.include?(N01::WAND_ELEMENT)
return "fireshot" # Arrow graphic in Characters folder
end
malexos_bow_flying_graphic
end
end
end
Xzygon
Hi el, you necroposted. (Necroposted = posting way after the last post.)
Read the rules. You posted 2 MONTHS after the last post was posted. Read the forum rules. If you want help, go check out the script support, post in the script support for help, and READ THE RULES.
elstupido
Sorry about that, i didn't know about "necroposting" and thought it
would be best posting my problem right here, rather than opening
a whole new thread and having to explain which addon by who
i am talking about and ... i dont even get why it's wrong...
but I'll try to not "necropost" anymore.

EDIT: found the error myself, had to change the aliases in my part of the script
bluepapalink
does this work with tankentai kaduki?
Kread-EX
QUOTE (Malexos @ Aug 6 2009, 09:29 PM) *
Malexos' "Better" Bow and Crossbow Addon v. 1.00 (For the Tankentai SBS)

The title. Do you notice For the Tankentai SBS? Kaduki is not a battle system, it's a guy who makes sprites.
The Angel of Death
Actually Both.
Kaduki made sideview sprites, Mr. Bubbles modified his Takentakai to fit said sprites.
manat31790
QUOTE (Xzygon @ Oct 12 2009, 06:02 AM) *
Hi el, you necroposted. (Necroposted = posting way after the last post.)
Read the rules. You posted 2 MONTHS after the last post was posted. Read the forum rules. If you want help, go check out the script support, post in the script support for help, and READ THE RULES.

I thought necroposting is okay when it comes to scripts. Correct me if I'm wrong. Anyway, this script is awesome. Thank you for sharing, Malexos.
Kread-EX
It's okay when you have a question or a bug report. Considering that Xzygon's comment was made in 2009, you really didn't need to reply to it...
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Invision Power Board © 2001-2013 Invision Power Services, Inc.