generic image
Processing...
  • Games
  • Catalog
  • Develop
  • Robux
  • Search in Players
  • Search in Games
  • Search in Catalog
  • Search in Groups
  • Search in Library
  • Log In
  • Sign Up
  • Games
  • Catalog
  • Develop
  • Robux
   
ROBLOX Forum » Game Creation and Development » Scripting Helpers
Home Search
 

Re: I have the simple Katana script...

Previous Thread :: Next Thread 
Poisenfangs is not online. Poisenfangs
Joined: 03 Aug 2009
Total Posts: 166
28 Sep 2011 05:09 PM
Is there anyway it can be changed to damage 2 types of 'Humanoid'? I have a game, with one kind of enemy with the Humanoid name of 'Feral', and the other 'Harmless'. I'd like it if this sword could effect both Feral and Harmless.

Thanks!


r = game:service("RunService")


local damage = 0 --I changed this to 0, nothing should get hurt by touching a sword.


local slash_damage = 2
local lunge_damage = 3

sword = script.Parent.Handle
Tool = script.Parent


local SlashSound = Instance.new("Sound")
SlashSound.SoundId = "rbxasset://sounds\\swordslash.wav"
SlashSound.Parent = sword
SlashSound.Volume = .7

local LungeSound = Instance.new("Sound")
LungeSound.SoundId = "rbxasset://sounds\\swordlunge.wav"
LungeSound.Parent = sword
LungeSound.Volume = .6

local UnsheathSound = Instance.new("Sound")
UnsheathSound.SoundId = "rbxasset://sounds\\unsheath.wav"
UnsheathSound.Parent = sword
UnsheathSound.Volume = 1


function blow(hit)
local humanoid = hit.Parent:findFirstChild("Humanoid")
local vCharacter = Tool.Parent
local vPlayer = game.Players:playerFromCharacter(vCharacter)
local hum = vCharacter:findFirstChild("Humanoid") -- non-nil if tool held by a character
if humanoid~=nil and humanoid ~= hum and hum ~= nil then
-- final check, make sure sword is in-hand

local right_arm = vCharacter:FindFirstChild("Right Arm")
if (right_arm ~= nil) then
local joint = right_arm:FindFirstChild("RightGrip")
if (joint ~= nil and (joint.Part0 == sword or joint.Part1 == sword)) then
tagHumanoid(humanoid, vPlayer)
humanoid:TakeDamage(damage)
wait(1)
untagHumanoid(humanoid)
end
end


end
end


function tagHumanoid(humanoid, player)
local creator_tag = Instance.new("ObjectValue")
creator_tag.Value = player
creator_tag.Name = "creator"
creator_tag.Parent = humanoid
end

function untagHumanoid(humanoid)
if humanoid ~= nil then
local tag = humanoid:findFirstChild("creator")
if tag ~= nil then
tag.Parent = nil
end
end
end


function attack()
damage = slash_damage
SlashSound:play()
local anim = Instance.new("StringValue")
anim.Name = "toolanim"
anim.Value = "Slash"
anim.Parent = Tool
end

function lunge()
damage = lunge_damage

LungeSound:play()

local anim = Instance.new("StringValue")
anim.Name = "toolanim"
anim.Value = "Lunge"
anim.Parent = Tool


force = Instance.new("BodyVelocity")
force.velocity = Vector3.new(0,10,0) --Tool.Parent.Torso.CFrame.lookVector * 80
force.Parent = Tool.Parent.Torso
wait(.2)
swordOut()
wait(.2)
force.Parent = nil
wait(.4)
swordUp()

damage = slash_damage
end

function swordUp()
Tool.GripForward = Vector3.new(-1,0,0)
Tool.GripRight = Vector3.new(0,1,0)
Tool.GripUp = Vector3.new(0,0,1)
end

function swordOut()
Tool.GripForward = Vector3.new(0,0,1)
Tool.GripRight = Vector3.new(0,1,0)
Tool.GripUp = Vector3.new(1,0,0)
end

function swordAcross()
-- parry
end


Tool.Enabled = true
local last_attack = 0
function onActivated()

if not Tool.Enabled then
return
end

Tool.Enabled = false

local character = Tool.Parent;
local humanoid = character.Humanoid
if humanoid == nil then
print("Humanoid not found")
return
end

t = r.Stepped:wait()

if (t - last_attack < .2) then
lunge()
else
attack()
end

last_attack = t

--wait(.5)

Tool.Enabled = true
end


function onEquipped()
UnsheathSound:play()
end


script.Parent.Activated:connect(onActivated)
script.Parent.Equipped:connect(onEquipped)


connection = sword.Touched:connect(blow)

Report Abuse
Poisenfangs is not online. Poisenfangs
Joined: 03 Aug 2009
Total Posts: 166
28 Sep 2011 05:13 PM
Bump..?

*Floodcheck, too*
Report Abuse
1WOOF1 is not online. 1WOOF1
Joined: 03 May 2009
Total Posts: 20682
28 Sep 2011 05:14 PM
[ Content Deleted ]
Report Abuse
Poisenfangs is not online. Poisenfangs
Joined: 03 Aug 2009
Total Posts: 166
28 Sep 2011 05:16 PM
Okay, thank-you!
Report Abuse
Poisenfangs is not online. Poisenfangs
Joined: 03 Aug 2009
Total Posts: 166
28 Sep 2011 05:27 PM
It didn't work for me :(.
Report Abuse
RoyStanford is not online. RoyStanford
Joined: 21 Oct 2008
Total Posts: 2222
28 Sep 2011 05:41 PM
Try something like this. Where it says something like this
local humanoid = hit.Parent:FindFirstChild("Humanoid")
change that to something like this

if hit.Parent:FindFirstChild("Feral") ~= nil then
humanoid = hit.Parent:FindFirstChild("Feral")
end
if hit.Parent:FindFirstChild("Harmless") ~= nil then
humanoid = hit.Parent:FindFirstChild("Harmless")
end

There ya go.
Report Abuse
Poisenfangs is not online. Poisenfangs
Joined: 03 Aug 2009
Total Posts: 166
28 Sep 2011 06:18 PM
So..

function blow(hit)
local humanoid = hit.Parent:findFirstChild("Feral")
local vCharacter = Tool.Parent
local vPlayer = game.Players:playerFromCharacter(vCharacter)
local hum = vCharacter:findFirstChild("Humanoid") -- non-nil if tool held by a character
if humanoid~=nil and humanoid ~= hum and hum ~= nil then

function blow(hit)
local humanoid = hit.Parent:findFirstChild("Harmless")
local vCharacter = Tool.Parent
local vPlayer = game.Players:playerFromCharacter(vCharacter)
local hum = vCharacter:findFirstChild("Humanoid") -- non-nil if tool held by a character
if humanoid~=nil and humanoid ~= hum and hum ~= nil then
Report Abuse
RoyStanford is not online. RoyStanford
Joined: 21 Oct 2008
Total Posts: 2222
28 Sep 2011 06:21 PM
Actually do this.

function blow(hit)
if hit.Parent:FindFirstChild("Feral") ~= nil then
local humanoid = hit.Parent:findFirstChild("Feral")
local vCharacter = Tool.Parent
local vPlayer = game.Players:playerFromCharacter(vCharacter)
local hum = vCharacter:findFirstChild("Feral") -- non-nil if tool held by a character
if humanoid~=nil and humanoid ~= hum and hum ~= nil then
-- final check, make sure sword is in-hand
end
if hit.Parent:FindFirstChild("Harmless") ~= nil then
local humanoid = hit.Parent:findFirstChild("Harmless")
local vCharacter = Tool.Parent
local vPlayer = game.Players:playerFromCharacter(vCharacter)
local hum = vCharacter:findFirstChild("Harmless") -- non-nil if tool held by a character
if humanoid~=nil and humanoid ~= hum and hum ~= nil then
-- final check, make sure sword is in-hand
end
Report Abuse
Poisenfangs is not online. Poisenfangs
Joined: 03 Aug 2009
Total Posts: 166
28 Sep 2011 06:23 PM
Okay, I'll post back here if it works or not (I'll obviously change everything, not just that).
Report Abuse
Poisenfangs is not online. Poisenfangs
Joined: 03 Aug 2009
Total Posts: 166
28 Sep 2011 06:40 PM
Nope.. still nothing... DX.
Report Abuse
RoyStanford is not online. RoyStanford
Joined: 21 Oct 2008
Total Posts: 2222
28 Sep 2011 06:40 PM
Any output?
Report Abuse
Poisenfangs is not online. Poisenfangs
Joined: 03 Aug 2009
Total Posts: 166
28 Sep 2011 06:43 PM
Output...? I am not a very good scripter.. sorry. That's why I'm asking for help :<
Report Abuse
RoyStanford is not online. RoyStanford
Joined: 21 Oct 2008
Total Posts: 2222
28 Sep 2011 06:44 PM
Ok well forget about the output just try the script.
Report Abuse
Poisenfangs is not online. Poisenfangs
Joined: 03 Aug 2009
Total Posts: 166
28 Sep 2011 06:48 PM
No, it didn't work, that's what I'm saying.
Report Abuse
RoyStanford is not online. RoyStanford
Joined: 21 Oct 2008
Total Posts: 2222
28 Sep 2011 06:50 PM
Ok well sorry I don't know what to do about that.
Report Abuse
Previous Thread :: Next Thread 
Page 1 of 1
 
 
ROBLOX Forum » Game Creation and Development » Scripting Helpers
   
 
   
  • About Us
  • Jobs
  • Blog
  • Parents
  • Help
  • Terms
  • Privacy

©2017 Roblox Corporation. Roblox, the Roblox logo, Robux, Bloxy, and Powering Imagination are among our registered and unregistered trademarks in the U.S. and other countries.



Progress
Starting Roblox...
Connecting to Players...
R R

Roblox is now loading. Get ready to play!

R R

You're moments away from getting into the game!

Click here for help

Check Remember my choice and click Launch Application in the dialog box above to join games faster in the future!

Gameplay sponsored by:
Loading 0% - Starting game...
Get more with Builders Club! Join Builders Club
Choose Your Avatar
I have an account
generic image