Save-Point
AktorTraits XP - Printable Version

+- Save-Point (https://www.save-point.org)
+-- Forum: Material Development (https://www.save-point.org/forum-8.html)
+--- Forum: Scripts Database (https://www.save-point.org/forum-39.html)
+---- Forum: RPGMaker XP (RGSS) Engine (https://www.save-point.org/forum-116.html)
+---- Thread: AktorTraits XP (/thread-8772.html)



AktorTraits XP - kyonides - 06-26-2023

AktorTraits XP

by Kyonides

Introduction

A forumer once asked for a very specific script to be made, a Trait System for the player's mobsters.

Add as many "traits" to each list this way:
Code:
LIKES = ["ice cream", "football", "science", "languages"]

If it gets too long, you can add more traits in the following lines.
Code:
LIKES = ["ice cream", "football", "science", "languages", "dancing",
  "trees", "penguins", "pizza"]

It has several Optional Script Calls, thus feel free to read the # embedded comments left there.

Embedded Comments

Code:
# * Script Calls * #

# - Step 1: Find an Actor - 2 Methods
# actor = $game_actors[ActorID]
# actor = $game_party.member(ActorPosition)

# - Step 2: Use Any of the Following Calls

# - Check if the Actor Has a Trait - 2 Ways
# -- Pass a "Trait"
# actor.personality?("Trait")
# actor.like?("Trait")
# actor.dislike?("Trait")
# actor.hobby?("Trait")
# -- Pass 2 ActorID's
# personality?(ActorID1, ActorID2)
# like?(ActorID1, ActorID2)
# dislike?(ActorID1, ActorID2)
# hobby?(ActorID1, ActorID2)

# * Optional Script Calls * #

# Their purpose is to change the Traits at a specific moment or as per the
# player's request at a store, etc.

# - Change a Type of Trait Randomly
# actor.change_personality
# actor.change_like
# actor.change_dislike
# actor.change_hobby

WARNING!

It would fail if you are testing your game using old save files.
An Actor's Position or Actor's Index can be any Number starting from 0.
The larger your Party is, the more positions there will be available.


Terms & Conditions

Free for use in any game.
Due credit is mandatory.
Don't piss me off!
That's it!


RE: AktorTraits - kyonides - 06-27-2023

Small But Useful Update

So far you could ask questions to find out if an Actor or Clone had the right "Trait".
What the script now lets you do is passing 1 out of 2 types of arguments.
Let me explain this with an example.

Code:
actor.personality?("Brave")
actor.personality?(actor2)
personality?(2, 3)

As you can see above, in one case we asked the script if the clone is brave but in the second one we wanted to know if the second clone called actor2 has the same personality as the first actor.

The former is pretty straightforward and it's useful whenever you wanna check if he has the right attitude.
The latter is a bit different. The script will extract actor2's personality and compare it with actor's own personality. This will be extremely helpful for you whenever you need to find out whether or not they'll be good teammates.