Files
dsrc/sku.0/sys.server/compiled/game/script/player/player_beta.script
T

1042 lines
26 KiB
Plaintext

/**
*
* Title: player_beta.script
* Description: required script functionality for all player objects
*/
include java.lang.System;
include java.lang.reflect.*;
include java.util.Arrays;
include java.util.Vector;
include java.lang.Math;
include library.sui;
include library.skill;
include library.pclib;
include library.utils;
include library.money;
const string SKILL_WEAPON_RANGED_BASIC = "combat_ranged_weapons_basic"; //No longer used. Retained here for B8A flexibility.
const string SKILL_WEAPON_MELEE_BASIC = "combat_melee_basic"; //No longer used. Retained here for BETA flexibility.
const string SKILL_NOVICE_SCOUT = "outdoors_scout_novice";
const string SKILL_NOVICE_MARKSMAN = "combat_marksman_novice";
const string SKILL_NOVICE_BRAWLER = "combat_brawler_novice";
const string SKILL_NOVICE_ENTERTAINER = "social_entertainer_novice";
const string SKILL_NOVICE_MEDIC = "science_medic_novice";
const string SKILL_NOVICE_ARTISAN = "crafting_artisan_novice";
// BEGIN BETA CRAP THAT SHOULD BE DELETED LATER
messageHandler sendLoginMessage()
{
detachScript( self, "player.player_beta");
/*
string strLoginMessageTitle = "";
string strLoginMessage = "";
debugServerConsoleMsg(self, "Logging into game with beta script");
location locTest = getLocation(self);
obj_id objPlanetObject = getPlanetByName(locTest.area);
if(objPlanetObject!=null)
{
debugServerConsoleMsg(self, "Non-Null planet object");
if(hasObjVar(objPlanetObject, "strLoginMessageTitle"))
{
strLoginMessageTitle = getStringObjVar(objPlanetObject, "strLoginMessageTitle");
}
if(hasObjVar(objPlanetObject, "strLoginMessage"))
{
strLoginMessage = getStringObjVar(objPlanetObject, "strLoginMessage");
}
debugServerConsoleMsg(self, "strLoginMessageTitle is "+strLoginMessageTitle);
debugServerConsoleMsg(self, "strLoginMessage is "+strLoginMessage);
if((strLoginMessage!="")&&(strLoginMessageTitle!=""))
{
// send persistent chat message
debugServerConsoleMsg(self, "sending message to "+getName(self));
chatSendPersistentMessage("StarWarsGalaxies",getName(self), strLoginMessageTitle,strLoginMessage, null);
chatSendPersistentMessage(self, strLoginMessageTitle,strLoginMessage, null);
}
else
{
debugServerConsoleMsg(self, "Bad message");
}
}
*/
return SCRIPT_CONTINUE;
}
trigger OnAddedToWorld()
{
detachScript( self, "player.player_beta");
/*
location locTest = getLocation(self);
obj_id objPlanetObject = getPlanetByName(locTest.area);
dictionary dctParams = new dictionary();
messageTo(self, "sendLoginMessage", dctParams, 10, false);
deltadictionary dctPlayerInformation = objPlanetObject.getScriptVars();
// we have 2 things in this array
// 1 is a a GIANT ARRAY
// the other is a bunch dictionarys using "obj_id". Inside they have an "arrayIndex" = # string
Vector vctPlayers;
obj_id[] objPlayers = dctPlayerInformation.getObjIdArray("objPlayers");
if(objPlayers == null)
{
debugServerConsoleMsg(self, "Null array");
objPlayers = new obj_id[1];
objPlayers[0] = self;
if ( objPlayers != null )
dctPlayerInformation.put("objPlayers", objPlayers);
}
else
{
debugServerConsoleMsg(self, "Non Null players making a vector and stuff");
vctPlayers = new Vector(Arrays.asList(objPlayers));
if(!(vctPlayers.contains(self)))
{
vctPlayers.add(self);
}
vctPlayers.toArray(objPlayers);
if ( objPlayers != null )
dctPlayerInformation.put("objPlayers", objPlayers);
}
*/
return SCRIPT_CONTINUE;
}
trigger OnLogout()
{
detachScript( self, "player.player_beta");
/*
location locTest = getLocation(self);
obj_id objPlanetObject = getPlanetByName(locTest.area);
deltadictionary dctPlayerInformation = objPlanetObject.getScriptVars();
Vector vctPlayers;
obj_id[] objPlayers = dctPlayerInformation.getObjIdArray("objPlayers");
if(objPlayers==null)
{
return SCRIPT_CONTINUE;
}
else
{
vctPlayers = new Vector(Arrays.asList(objPlayers));
if(!(vctPlayers.contains(self)))
{
vctPlayers.remove(self);
}
vctPlayers.toArray(objPlayers);
dctPlayerInformation.put("objPlayers", objPlayers);
}
*/
return SCRIPT_CONTINUE;
}
/*
// END BETA CRAP
trigger OnAttach()
{
// Beta HACK
//giveItemsToPlayer(self);
//money.bankTo("travel_test", self, 1000000);
//attachScript(self, "ai.pet_master");
return SCRIPT_CONTINUE;
}
*/
trigger OnInitialize()
{
detachScript( self, "player.player_beta");
// skill.assignSkillTemplate(self, skill.PLAYER_BETA);
return SCRIPT_CONTINUE;
}
/*
trigger OnSpeaking(string text)
{
/*
boolean gaveItem = false;
obj_id inventory = getObjectInSlot(self, "inventory");
//give random armor
if(text == "givearmor")
{
gaveItem = givePlayerArmor(self, inventory);
if(!gaveItem)
{
LOG("player_beta", "Armor granting failed!");
}
}
//give random ranged weapon
if(text == "giveranged")
{
if(hasSkill(self, "basic_ranged_weapons"))
{
boolean boolGaveRW = giveRangedWeapon(self, inventory);
if(!gaveItem)
{
LOG("player_beta", "Armor granting failed!");
}
}
else
{
sendSystemMessage(self, "You can't have a ranged weapon because you don't have the skill basic_ranged_weapons.");
return SCRIPT_OVERRIDE;
}
}
//give melee weapon
if(text == "givemelee")
{
if(hasSkill(self, "basic_melee_combat"))
{
boolean boolGaveMW = giveMeleeWeapon(self, inventory);
if(!gaveItem)
{
LOG("player_beta", "Armor granting failed!");
}
}
else
{
sendSystemMessage(self, "You can't have a ranged weapon because you don't have the skill basic_ranged_weapons.");
return SCRIPT_OVERRIDE;
}
}
return SCRIPT_CONTINUE;
}
*/
// ***********************************************************************************
// *********************** DEMO - COMBAT MUSIC TRIGGERS - DEMO ***********************
// ***********************************************************************************
/*
trigger OnEnteredCombat()
{
playMusic(self, "sound/music_player_v_creat_lp.snd");
return SCRIPT_CONTINUE;
}
trigger OnExitedCombat()
{
playMusic(self, "sound/music_player_v_creat_vict.snd");
return SCRIPT_CONTINUE;
}
*/
//put shit in the player inventory
void giveItemsToPlayer(obj_id self)
{
//money.bankTo("travel_test", self, 100000);
//get the inventory object
obj_id inventory = getObjectInSlot(self, "inventory");
//is it null?
if ( inventory == null )
{
debugSpeakMsg(self, "inventory is null!");
return;
}
//maybe some food and medicine
/*YOU GET NOTHING!
obj_id loaf = createObject("object/tangible/food/bread_loaf_full_s1.iff", inventory,"");
obj_id melon = createObject("object/tangible/food/fruit_melon.iff", inventory,"");
obj_id damageMedicine = createObject("object/tangible/medicine/newbie_medpack_damage.iff", inventory,"");
obj_id woundHealthMedicine1 = createObject("object/tangible/medicine/newbie_medpack_wound_health.iff", inventory,"");
obj_id woundHealthMedicine2 = createObject("object/tangible/medicine/newbie_medpack_wound_health.iff", inventory,"");
obj_id woundActionMedicine1 = createObject("object/tangible/medicine/newbie_medpack_wound_action.iff", inventory,"");
*/
//obj_id kabob = createObject("object/tangible/food/meat_kabob.iff", inventory,"");
//how about some healing items?
//obj_id antidote = createObject("object/tangible/medicine/antidote_sm_s1.iff", inventory,"");
//obj_id medpack = createObject("object/tangible/medicine/medpack_sm_s1.iff", inventory,"");
//obj_id stimpack = createObject("object/tangible/medicine/stimpack_sm_s1.iff", inventory,"");
//Some Grenades
//obj_id cryoGrenade = createObject ("object/weapon/ranged/grenade/grenade_cryoban.iff", inventory, "");
//obj_id impDetGrenade = createObject ("object/weapon/ranged/grenade/grenade_imperial_detonator.iff", inventory, "");
//obj_id fragGrenade = createObject ("object/weapon/ranged/grenade/grenade_fragmentation.iff", inventory, "");
//Giving them Crafting Things
//obj_id craftingTool = createObject ("object/tangible/crafting/station/generic_tool.iff", inventory, "");
// Give Random survey tool
string surveyTool = "mineral";
/*
int surveyType = rand (1,4);
switch (surveyType)
{
case 1:
surveyTool = "gas";
break;
case 2:
surveyTool = "liquid";
break;
case 3:
surveyTool = "mineral";
break;
case 4:
surveyTool = "moisture";
break;
default:
break;
}
*/
//obj_id equipSurvey = createObject ("object/tangible/survey_tool/survey_tool_" + surveyTool + ".iff", inventory, "");
//obj_id smallHouseDeed = createObject ("object/tangible/deed/player_house_deed/tatooine_house_small_deed.iff", inventory, "");
//obj_id medHouseDeed = createObject ("object/tangible/deed/player_house_deed/tatooine_house_medium_deed.iff", inventory, "");
//obj_id solarGenerator = createObject ("object/tangible/deed/generator_deed/power_generator_solar_deed.iff", inventory, "");
//obj_id moistureHarvester = createObject ("object/tangible/deed/harvester_deed/moisture_harvester_deed.iff", inventory, "");
boolean gaveItem = false;
//how about some armor?
if ( getSpecies(self) != SPECIES_WOOKIEE )
{
gaveItem = givePlayerArmor(self, inventory);
if(!gaveItem)
{
debugSpeakMsg (self,"Armor granting failed!");
}
}
//give random ranged weapon
if(!hasSkill(self, SKILL_WEAPON_RANGED_BASIC))
{
// grantSkill (self, SKILL_WEAPON_RANGED_BASIC);
// Removed on 11-26-02 by CBarnes
// There is no "basic ranged weapon" ability for all players anymore.
}
boolean boolGaveRW = giveRangedWeapon(self, inventory);
if(!boolGaveRW)
{
debugSpeakMsg (self, "Ranged Weapon granting failed!");
}
//give melee weapon
if(!hasSkill(self, SKILL_WEAPON_MELEE_BASIC))
{
//grantSkill (self, SKILL_WEAPON_MELEE_BASIC);
// Removed on 11-26-02 by CBarnes
// There is no longer a basic melee weapon ability for all players
}
boolean boolGaveMW = giveMeleeWeapon(self, inventory);
if(!boolGaveMW)
{
debugSpeakMsg (self, "Melee Weapon granting failed!");
}
//give musical instrument
boolean boolGaveMI = giveMusicalInstrument(self, inventory);
if(!boolGaveMI)
{
debugSpeakMsg (self, "Musical Instrument granting failed!");
}
//***********************************************************************************************
//***********************************************************************************************
//
//This is non-beta stuff, class specific starting Items which should be left behind when all beta
//testing Items are removed later.
//
//***********************************************************************************************
//***********************************************************************************************
//SCOUTS
if (hasSkill (self, SKILL_NOVICE_SCOUT))
{
string toolType = "gas";
int randType = rand (1,4);
switch (randType)
{
case 1:
toolType = "gas";
break;
case 2:
toolType = "liquid";
break;
case 3:
toolType = "mineral";
break;
case 4:
toolType = "moisture";
break;
default:
break;
}
boolean boolGaveBlaster = giveRangedWeapon(self, inventory);
//obj_id surveyEqp = createObject ("object/tangible/survey_tool/survey_tool_" + toolType + ".iff", self, "");
}
//MARKSMAN
if (hasSkill (self, SKILL_NOVICE_MARKSMAN))
{
string rifleType = "dlt20a";
int randRifle = rand (1,4);
switch (randRifle)
{
case 1:
rifleType = "laser";
break;
case 2:
rifleType = "dlt20";
break;
case 3:
rifleType = "dlt20a";
break;
case 4:
rifleType = "sg82";
break;
default:
break;
}
boolean boolGaveBlaster = giveRangedWeapon(self, inventory);
obj_id rifle = createObject ("object/weapon/ranged/rifle/rifle_" + rifleType + ".iff", self, "");
//Buffs?
}
//BRAWLER
if (hasSkill (self, SKILL_NOVICE_BRAWLER))
{
string swordType = "sword_01";
int randSword = rand (1,4);
switch (randSword)
{
case 1:
swordType = "01";
break;
case 2:
swordType = "02";
break;
case 3:
swordType = "blade_ryyk";
break;
case 4:
swordType = "blade_rantok";
break;
default:
break;
}
string polearmType = "sword_01";
int randPole = rand (1,5);
switch (randPole)
{
case 1:
polearmType = "controllerfp";
break;
case 2:
polearmType = "staff_metal";
break;
case 3:
polearmType = "staff_wood_s1";
break;
case 4:
polearmType = "staff_wood_s2";
break;
case 5:
polearmType = "vibrolance";
break;
default:
break;
}
obj_id sword = createObject ("object/weapon/melee/sword/sword_" + swordType + ".iff", self, "");
obj_id polearm = createObject ("object/weapon/melee/polearm/lance_" + polearmType + ".iff", self, "");
obj_id belt = createObject ("object/tangible/wearables/armor/padded/armor_padded_s01_belt.iff", self, "");
obj_id lArm = createObject ("object/tangible/wearables/armor/padded/armor_padded_s01_bracer_l.iff", self, "");
obj_id rArm = createObject ("object/tangible/wearables/armor/padded/armor_padded_s01_bracer_r.iff", self, "");
obj_id lBicep = createObject ("object/tangible/wearables/armor/padded/armor_padded_s01_bicep_l.iff", self, "");
obj_id rBicep = createObject ("object/tangible/wearables/armor/padded/armor_padded_s01_bicep_r.iff", self, "");
obj_id gloves = createObject ("object/tangible/wearables/armor/padded/armor_padded_s01_gloves.iff", self, "");
obj_id helmet = createObject ("object/tangible/wearables/armor/padded/armor_padded_s01_helmet.iff", self, "");
obj_id chest = createObject ("object/tangible/wearables/armor/padded/armor_padded_s01_chest_plate.iff", self, "");
obj_id legs = createObject ("object/tangible/wearables/armor/padded/armor_padded_s01_leggings.iff", self, "");
obj_id boots = createObject ("object/tangible/wearables/armor/padded/armor_padded_s01_boots.iff", self, "");
}
//ENTERTAINER
if (hasSkill (self, SKILL_NOVICE_ENTERTAINER))
{
string instrumentType = "bandfill";
int randInst = rand (1,7);
switch (randInst)
{
case 1:
instrumentType = "bandfill";
break;
case 2:
instrumentType = "fanfar";
break;
case 3:
instrumentType = "fizz";
break;
case 4:
instrumentType = "kloo_horn";
break;
case 5:
instrumentType = "mandoviol";
break;
case 6:
instrumentType = "slitherhorn";
break;
case 7:
instrumentType = "traz";
break;
default:
break;
}
boolean boolGaveBlaster = giveRangedWeapon(self, inventory);
obj_id imageKit = createObject ("", self, "");
obj_id instrument = createObject ("object/tangible/instrument/" + instrumentType + ".iff", self, "");
obj_id clothes = createObject ("object/tangible/wearables/bodysuit/bodysuit_s15.iff", self, "");
}
//MEDIC
if (hasSkill (self, SKILL_NOVICE_MEDIC))
{
string medType = "damage";
int randMed = rand (1,7);
switch (randMed)
{
case 1:
medType = "damage";
break;
case 2:
medType = "sm_s1";
break;
case 3:
medType = "wound";
break;
case 4:
medType = "wound_action";
break;
case 5:
medType = "wound_constitution";
break;
case 6:
medType = "wound_health";
break;
case 7:
medType = "wound_stamina";
break;
default:
break;
}
boolean boolGaveBlaster = giveRangedWeapon(self, inventory);
obj_id stimpack1 = createObject ("object/tangible/medicine/stimpack_sm_s1.iff", self, "");
obj_id stimpack2 = createObject ("object/tangible/medicine/antidote_sm_s1.iff", self, "");
obj_id medpack1 = createObject ("object/tangible/medicine/medpack_" + medType + ".iff", self, "");
obj_id medpack2 = createObject ("object/tangible/medicine/medpack_" + medType + ".iff", self, "");
}
//ARTISAN
if (hasSkill (self, SKILL_NOVICE_ARTISAN))
{
boolean boolGaveBlaster = giveRangedWeapon(self, inventory);
obj_id craftStation = createObject ("object/tangible/crafting/station/generic_tool.iff", self, "");
//Add some resources.
}
return;
}
boolean givePlayerArmor(obj_id self, obj_id inventory)
{
boolean gaveItem = true;
return gaveItem;
/*
int type = rand(1,9);
obj_id armor = obj_id.NULL_ID;
switch(type)
{
case 1: // blast
LOG("beta_script", "You get stormtrooper blast armor!");
armor= createObject("object/tangible/wearables/armor/bone/gp_armor_bone_boots.iff", inventory,"");
if(armor == null)
{
gaveItem = false;
}
armor= createObject("object/tangible/wearables/armor/bone/gp_armor_bone_leggings.iff", inventory,"");
if(armor == null)
{
gaveItem = false;
}
armor= createObject("object/tangible/wearables/armor/bone/gp_armor_bone_gloves.iff", inventory,"");
if(armor == null)
{
gaveItem = false;
}
break;
case 2:
armor= createObject("object/tangible/wearables/armor/bone/gp_armor_bone_bracer_l.iff", inventory,"");
if(armor == null)
{
gaveItem = false;
}
armor= createObject("object/tangible/wearables/armor/bone/gp_armor_bone_bracer_r.iff", inventory,"");
if(armor == null)
{
gaveItem = false;
}
armor= createObject("object/tangible/wearables/armor/bone/gp_armor_bone_chest_plate.iff", inventory,"");
if(armor == null)
{
gaveItem = false;
}
break;
case 3:
armor= createObject("object/tangible/wearables/armor/bone/gp_armor_bone_gloves.iff", inventory,"");
if(armor == null)
{
gaveItem = false;
}
armor= createObject("object/tangible/wearables/armor/bone/gp_armor_bone_leggings.iff", inventory,"");
if(armor == null)
{
gaveItem = false;
}
armor= createObject("object/tangible/wearables/armor/bone/gp_armor_bone_chest_plate.iff", inventory,"");
if(armor == null)
{
gaveItem = false;
}
break;
case 4: // padded
LOG("beta_script", "You get padded armor!");
armor= createObject("object/tangible/wearables/armor/padded/impact_armor_padded_boots.iff", inventory,"");
if(armor == null)
{
gaveItem = false;
}
armor= createObject("object/tangible/wearables/armor/padded/impact_armor_padded_belt.iff", inventory,"");
if(armor == null)
{
gaveItem = false;
}
armor= createObject("object/tangible/wearables/armor/padded/impact_armor_padded_chest_plate.iff", inventory,"");
if(armor == null)
{
gaveItem = false;
}
break;
case 5:
armor= createObject("object/tangible/wearables/armor/padded/impact_armor_padded_bracer_r.iff", inventory,"");
if(armor == null)
{
gaveItem = false;
}
armor= createObject("object/tangible/wearables/armor/padded/impact_armor_padded_bracer_l.iff", inventory,"");
if(armor == null)
{
gaveItem = false;
}
armor= createObject("object/tangible/wearables/armor/padded/impact_armor_padded_leggings.iff", inventory,"");
if(armor == null)
{
gaveItem = false;
}
break;
case 6:
armor= createObject("object/tangible/wearables/armor/padded/impact_armor_padded_chest_plate.iff", inventory,"");
if(armor == null)
{
gaveItem = false;
}
armor= createObject("object/tangible/wearables/armor/padded/impact_armor_padded_gloves.iff", inventory,"");
if(armor == null)
{
gaveItem = false;
}
armor= createObject("object/tangible/wearables/armor/padded/impact_armor_padded_leggings.iff", inventory,"");
if(armor == null)
{
gaveItem = false;
}
break;
case 7: //chitin energy
LOG("beta_script", "You get chitin energy armor!!");
armor= createObject("object/tangible/wearables/armor/chitin/energy_armor_chitin_boots.iff", inventory,"");
if(armor == null)
{
gaveItem = false;
}
armor= createObject("object/tangible/wearables/armor/chitin/energy_armor_chitin_bicep_l.iff", inventory,"");
if(armor == null)
{
gaveItem = false;
}
armor= createObject("object/tangible/wearables/armor/chitin/energy_armor_chitin_bicep_r.iff", inventory,"");
if(armor == null)
{
gaveItem = false;
}
break;
case 8:
armor= createObject("object/tangible/wearables/armor/chitin/energy_armor_chitin_bracer_l.iff", inventory,"");
if(armor == null)
{
gaveItem = false;
}
armor= createObject("object/tangible/wearables/armor/chitin/energy_armor_chitin_bracer_r.iff", inventory,"");
if(armor == null)
{
gaveItem = false;
}
armor= createObject("object/tangible/wearables/armor/chitin/energy_armor_chitin_chest_plate.iff", inventory,"");
if(armor == null)
{
gaveItem = false;
}
break;
case 9:
armor= createObject("object/tangible/wearables/armor/chitin/energy_armor_chitin_gloves.iff", inventory,"");
if(armor == null)
{
gaveItem = false;
}
armor= createObject("object/tangible/wearables/armor/chitin/energy_armor_chitin_chest_plate.iff", inventory,"");
if(armor == null)
{
gaveItem = false;
}
armor= createObject("object/tangible/wearables/armor/chitin/energy_armor_chitin_leggings.iff", inventory,"");
if(armor == null)
{
gaveItem = false;
}
break;
default: //oops
break;
}
if ( armor != obj_id.NULL_ID )
{
setAutoInsured(armor);
}
return gaveItem;
*/
}
boolean giveRangedWeapon(obj_id self, obj_id inventory)
{
boolean gaveItem = false;
obj_id weapon = obj_id.NULL_ID;
int randType = rand(0,10);
switch(randType)
{
case 0:
weapon = createObject("object/weapon/ranged/pistol/pistol_cdef.iff", inventory,"");
if (weapon != null)
{
gaveItem = true;
}
break;
case 1:
weapon = createObject("object/weapon/ranged/pistol/pistol_d18.iff", inventory,"");
if (weapon != null)
{
gaveItem = true;
}
break;
case 2:
weapon = createObject("object/weapon/ranged/pistol/pistol_dh17.iff", inventory,"");
if (weapon != null)
{
gaveItem = true;
}
break;
case 3:
weapon = createObject("object/weapon/ranged/pistol/pistol_dl44.iff", inventory,"");
if (weapon != null)
{
gaveItem = true;
}
break;
case 4:
weapon = createObject("object/weapon/ranged/pistol/pistol_dl44_metal.iff", inventory,"");
if (weapon != null)
{
gaveItem = true;
}
break;
case 5:
weapon = createObject("object/weapon/ranged/pistol/pistol_dx2.iff", inventory,"");
if (weapon != null)
{
gaveItem = true;
}
break;
case 6:
weapon = createObject("object/weapon/ranged/pistol/pistol_fwg5.iff", inventory,"");
if (weapon != null)
{
gaveItem = true;
}
break;
case 7:
weapon = createObject("object/weapon/ranged/pistol/pistol_power5.iff", inventory,"");
if (weapon != null)
{
gaveItem = true;
}
break;
case 8:
weapon = createObject("object/weapon/ranged/pistol/pistol_scout_blaster.iff", inventory,"");
if (weapon != null)
{
gaveItem = true;
}
break;
case 9:
weapon = createObject("object/weapon/ranged/pistol/pistol_srcombat.iff", inventory,"");
if (weapon != null)
{
gaveItem = true;
}
break;
case 10:
weapon = createObject("object/weapon/ranged/pistol/pistol_striker.iff", inventory,"");
if (weapon != null)
{
gaveItem = true;
}
break;
default:
break;
}
if ( weapon != obj_id.NULL_ID )
{
setAutoInsured(weapon);
}
return(gaveItem);
}
boolean giveMeleeWeapon(obj_id self, obj_id inventory)
{
// Uncomment the line below if you want to give a weapon
boolean gaveItem = false;
// Comment the line below and uncomment the above to run the switch function below
//boolean gaveItem = true;
obj_id weapon = obj_id.NULL_ID;
int randType = rand(1,4);
switch(randType)
{
case 1:
weapon = createObject("object/weapon/melee/knife/knife_dagger.iff", inventory,"");
if (weapon != null)
{
gaveItem = true;
}
break;
case 2:
weapon = createObject("object/weapon/melee/knife/knife_stone.iff", inventory,"");
if (weapon != null)
{
gaveItem = true;
}
break;
case 3:
weapon = createObject("object/weapon/melee/knife/knife_survival.iff", inventory,"");
if (weapon != null)
{
gaveItem = true;
}
break;
case 4:
weapon = createObject("object/weapon/melee/knife/knife_vibroblade.iff", inventory,"");
if (weapon != null)
{
gaveItem = true;
}
break;
default:
break;
}
if ( weapon != obj_id.NULL_ID )
{
setAutoInsured(weapon);
}
return(gaveItem);
}
boolean giveMusicalInstrument(obj_id self, obj_id inventory)
{
// Uncomment the line below if you want to give an instrument
boolean gaveItem = false;
// Comment the line below and uncomment the above to run the switch function below
//boolean gaveItem = true;
obj_id instrument = obj_id.NULL_ID;
int randType = rand(1,3); // We're only picking the first three for BETA.
switch(randType)
{
case 1:
instrument = createObject("object/tangible/instrument/kloo_horn.iff", inventory,"");
if (instrument != null)
{
gaveItem = true;
}
break;
case 2:
instrument = createObject("object/tangible/instrument/traz.iff", inventory,"");
if (instrument != null)
{
gaveItem = true;
}
break;
case 3:
instrument = createObject("object/tangible/instrument/slitherhorn.iff", inventory,"");
if (instrument != null)
{
gaveItem = true;
}
break;
case 4:
instrument = createObject("object/tangible/instrument/nalargon.iff", inventory,"");
if (instrument != null)
{
gaveItem = true;
}
break;
case 5:
instrument = createObject("object/tangible/instrument/traz.iff", inventory,"");
if (instrument != null)
{
gaveItem = true;
}
break;
case 6:
instrument = createObject("object/tangible/instrument/fanfar.iff", inventory,"");
if (instrument != null)
{
gaveItem = true;
}
break;
case 7:
instrument = createObject("object/tangible/instrument/flute_droopy.iff", inventory,"");
if (instrument != null)
{
gaveItem = true;
}
break;
case 8:
instrument = createObject("object/tangible/instrument/fizz.iff", inventory,"");
if (instrument != null)
{
gaveItem = true;
}
break;
case 9:
instrument = createObject("object/tangible/instrument/bandfill.iff", inventory,"");
if (instrument != null)
{
gaveItem = true;
}
break;
case 10:
instrument = createObject("object/tangible/instrument/ommni_box.iff", inventory,"");
if (instrument != null)
{
gaveItem = true;
}
break;
default:
break;
}
if ( instrument != obj_id.NULL_ID )
{
setAutoInsured(instrument);
}
return(gaveItem);
}
messageHandler handleInventoryCheck()
{
if ( params == null )
{
return SCRIPT_OVERRIDE;
}
obj_id[] items = params.getObjIdArray(pclib.DICT_ITEM_ID);
if ( (items == null) || (items.length == 0) )
{
debugSpeakMsg(self, "handleInventoryCheck: no items at time of check");
}
else
{
string[] report = new string[items.length];
for ( int i = 0; i < items.length; i++ )
{
report[i] = "(" + items[i] + ") " + getName(items[i]);
}
sui.listbox(self, "Inventory Check Report", report);
}
return SCRIPT_CONTINUE;
}