How can I make a creature do something?
// the some_action is a function that usually starts with "Action"
AssignCommand(oCreature,some_action)
How can I make something happen after awhile?
fDelayInSeconds=2.0;
DelayCommand(fDelayInSeconds,some_action);
How can I script an object into a container?
object oItem=CreateItemOnObject( "item_template", GetObjectByTag("container_tag"));
How can I script an object into my Inventory?
object oItem=CreateItemOnObject( "item_template", GetFirstPC());
How can I equip an item by scripting once I have it in my inventory?
AssignCommand(GetFirstPC(), ActionEquipItem(oItem, nInventorySlot);
How can I spawn an object at a a specific location?
/* Possible Object types:
OBJECT_TYPE_CREATURE
OBJECT_TYPE_ITEM
OBJECT_TYPE_TRIGGER
OBJECT_TYPE_DOOR
OBJECT_TYPE_WAYPOINT
OBJECT_TYPE_PLACEABLE
OBJECT_TYPE_STORE */
// for the 3 floats in the function below
// you can use the X, Y, Z coordintates from
// the whereami cheat code
vector vPosition=Vector(0.0, 0.0, 0.0);
location lWhereToSpawn=Location(vPosition,0.0);
CreateObject( OBJECT_TYPE_CREATURE,
"object_template",lWhereToSpawn);
How can I create an object right next to me?
// same OBJECT_TYPEs as above
CreateObject( OBJECT_TYPE_CREATURE,
"object_template", GetLocation(GetFirstPC()));
How can I give myself credits?
GiveGoldToCreature( GetFirstPC(),nAmount);
How can I take credits away from myself?
TakeGoldFromCreature(nAmount, GetFirstPC());
How can I give myself Light Side or Dark Side points?
/* Alignments:
ALIGNMENT_DARK_SIDE
ALIGNMENT_LIGHT_SIDE
ALIGNMENT_NEUTRAL */
AdjustAlignment( GetFirstPC(),ALIGNMENT_DARK_SIDE,nAmount);
How can I give myself experience points?
// you guessed it...
GiveXPToCreature(GetFirstPC(),nAmount);
How can I multiclass a character into a Jedi?
/*possible classes:
CLASS_TYPE_SOLDIER
CLASS_TYPE_SCOUT
CLASS_TYPE_SCOUNDREL
CLASS_TYPE_JEDIGUARDIAN
CLASS_TYPE_JEDICONSULAR
CLASS_TYPE_JEDISENTINEL
CLASS_TYPE_COMBATDROID
CLASS_TYPE_EXPERTDROID
CLASS_TYPE_MINION */
AddMultiClass( CLASS_TYPE_JEDIGUARDIAN, GetObjectByTag("Mission"));
How can I start a basic conversation?
void main() {
ActionStartConversation(GetFirstPC(),"dlg_filenamehere");
}
Canderis Edit:
If the above code does not work try defining the npc who will be talking:
void main()
{
object oNPC=GetObjectByTag("npc_tag");
AssignCommand ((oNPC), ActionStartConversation(GetFirstPC(),"npc_tag"));
}
How can I make an NPC walk up to me and start a conversation?
void main() {
object oNPC=GetObjectByTag("npc_tag");
location lMe=GetLocation(GetFirstPC());
ActionDoCommand(SetCommandable(TRUE,oNPC));
AssignCommand (oNPC,ActionForceMoveToLocation(lMe,FALSE));
AssignCommand (oNPC, ActionStartConversation(GetFirstPC()));
}
===============================
Kotor 2: TSL only - new practical functions:
* those functions can help you avoid .utc file conflicts that will crash the game or prevent plot advancement as explained in this thread (
http://www.lucasforums.com/editpost.php?s=&action=editpost&postid=1765880)
Give a new feat to a creature:
// DJS-OEI 1/13/2004
// 786: Grants the target a feat without regard for prerequisites.
void GrantFeat( int nFeat, object oCreature );
Give a new Force power to a Creature:
// DJS-OEI 1/13/2004
// 787: Grants the target a spell without regard for prerequisites.
void GrantSpell( int nSpell, object oCreature );
Change the appearance of a creature:
// 850
// ChangeObjectAppearance
// oObjectToChange = Object to change appearance of
// nAppearance = appearance to change to (from appearance.2da)
void ChangeObjectAppearance( object oObjectToChange, int nAppearance );
Adjust attributes:
// 833
// AWD-OEI 7/06/2004
// This function adjusts a creatures stats.
// oObject is the creature that will have it's attribute adjusted
// The following constants are acceptable for the nAttribute parameter:
// ABILITY_STRENGTH
// ABILITY_DEXTERITY
// ABILITY_CONSTITUTION
// ABILITY_INTELLIGENCE
// ABILITY_WISDOM
// ABILITY_CHARISMA
// nAmount is the integer vlaue to adjust the stat by (negative values will work).
void AdjustCreatureAttributes(object oObject, int nAttribute, int nAmount);
Adjust skills:
// 869
// DJS-OEI 10/9/2004
// This function adjusts a creature's skills.
// oObject is the creature that will have its skill adjusted
// The following constants are acceptable for the nSkill parameter:
// SKILL_COMPUTER_USE
// SKILL_DEMOLITIONS
// SKILL_STEALTH
// SKILL_AWARENESS
// SKILL_PERSUADE
// SKILL_REPAIR
// SKILL_SECURITY
// SKILL_TREAT_INJURY
// nAmount is the integer value to adjust the stat by (negative values will work).
void AdjustCreatureSkills(object oObject, int nSkill, int nAmount);