ID:269307
 
When the proc is looking to see if the person should learn the skill...it doesnt work after they know Bukujitsu.
I know that it is stopping becuase of the RETURN, but then it would say YOU HAVE LEARNED BUKUJITSU every time they learn a new skills, and so on.
mob
proc
Skill_Check()
if(src.MaxPL>=100)
if(src.Skills.Find("Bukujitsu"))
return
else
src << "<center><font size=-1><font color=red>YOU HAVE LEARNED BUKUJITSU!"
src.Skills.Add("Bukujitsu")
src.verbs += /mob/Skills/verb/Bukujitsu
return
if(src.MaxPL>=175)
if(src.Skills.Find("Power Up"))
return
else
src << "<center><font size=-1><font color=red>YOU HAVE LEARNED POWER UP!"
src.Skills.Add("Power Up")
src.verbs += /mob/Skills/verb/Power_Up
return
ITG Master wrote:
When the proc is looking to see if the person should learn the skill...it doesnt work after they know Bukujitsu.
I know that it is stopping becuase of the RETURN, but then it would say YOU HAVE LEARNED BUKUJITSU every time they learn a new skills, and so on.
> mob
> proc
> Skill_Check()
> if(src.MaxPL>=100)
> if(src.Skills.Find("Bukujitsu"))
> return
> else
> src << "<center><font size=-1><font color=red>YOU HAVE LEARNED BUKUJITSU!"
> src.Skills.Add("Bukujitsu")
> src.verbs += /mob/Skills/verb/Bukujitsu
> return
> if(src.MaxPL>=175)
> if(src.Skills.Find("Power Up"))
> return
> else
> src << "<center><font size=-1><font color=red>YOU HAVE LEARNED POWER UP!"
> src.Skills.Add("Power Up")
> src.verbs += /mob/Skills/verb/Power_Up
> return
>


That's because, you're returning the proc when it locates "Bukujitsu" in the skills list.
Use the ! operator. You don't need to keep using return.

mob
proc
Skill_Check()
if(src.MaxPL>=100)
if(!src.Skills.Find("Bukujitsu")) //If we didn't find Bukujitsu(spelt Bukujutsu by the way) then do this...
src << "<center><font size=-1><font color=red>YOU HAVE LEARNED BUKUJITSU!"
src.Skills.Add("Bukujitsu")
src.verbs += /mob/Skills/verb/Bukujitsu
if(src.MaxPL>=175)
if(!src.Skills.Find("Power Up"))
src << "<center><font size=-1><font color=red>YOU HAVE LEARNED POWER UP!"
src.Skills.Add("Power Up")
src.verbs += /mob/Skills/verb/Power_Up


Also, you don't need to do src.list.Add("") all the time. It's easier to do src.list += "".
In response to DeathAwaitsU
He is also using improper use of Find().
The in operator is more like it. :p