<img src="http://www.piratesahoy.com/forum/style_emoticons/<#EMO_DIR#>/hi.gif" style="vertical-align:middle" emoid=":gday" border="0" alt="hi.gif" /> DevilSpawnX, and welcome aboard! Pull up a keg, have a seat, and have a couple on us! <img src="http://www.piratesahoy.com/forum/style_emoticons/<#EMO_DIR#>/par-ty.gif" style="vertical-align:middle" emoid="
" border="0" alt="par-ty.gif" />
Glad to see you've found your way into these fair waters, and hope you visit often!
This should do ya:
<!--c1--><div class='codetop'>CODE</div><div class='codemain'><!--ec1-->#include "charactersinitFalaiseDeFleur.c"
#include "charactersinitRedmond.c"
#include "charactersinitIslaMuelle.c"
#include "charactersinitOxbay.c"
#include "charactersinitConceicao.c"
#include "charactersinitDouwesen.c"
#include "charactersinitofficers.c"
#include "charactersinitStoryCharacters.c"
#include "charactersinitTempQuestCharacters.c"
#include "charactersinitOther.c"
#include "charactersinitQuebradasCostillas.c"
#include "charactersinitTempQuestEnemy.c"
#include "charactersinitFortCommandants.c"
#include "charactersinitUsurers.c"
#include "charactersinitItem Traders.c"
#include "charactersinitNK Characters.c" // NK
// Set characters initial data
void CreateCharacters()
{
ref ch;
int n;
for(n=0; n<TOTAL_CHARACTERS; n++)
{
makeref(ch,Characters[n]);
//DeleteAttribute(ch,"act");
DeleteAttribute(ch,"");
//Logic data
ch.id = "0";
ch.index = n;
ch.sex = "man";
//Model data
ch.model = "none";
ch.model.entity = "NPCharacter";
ch.model.animation = "";
//Address
ch.location = "none";
ch.location.group = "";
ch.location.locator = "";
ch.location.from_sea = "";
//Ship data
ch.Ship.Type = SHIP_NOTUSED_TYPE_NAME;//SHIP_LUGGER; // PS
//Quest data
ch.Dialog.CurrentNode = "First time";
ch.Dialog.TempNode = ch.Dialog.CurrentNode;
ch.quest.meeting = "0";
ch.quest = "True";
//Misc data
ch.nation = ENGLAND;
ch.skill.freeskill = 0;
ch.rank = 1;
ch.reputation = REPUTATION_NEUTRAL;
// battle hp
ch.headModel = "capitan";
LAi_SetLoginTime(ch, 6.0, 21.98333);
LAi_SetHP(ch, LAI_DEFAULT_HP, LAI_DEFAULT_HP_MAX);
// boal 05.09.03 offecer need to go to abordage -->
ch.AbordageMode = makeint(1);
// boal 05.09.03 offecer need to go to abordage <--
}
ReloadProgressUpdate();
makeref(ch,Characters[0]); //Blaze Devlin
//ch.perks.list.InstantBoarding = true;
ch.name = "Nathaniel";
ch.lastname = "Hawk";
ch.id = "Blaze";
ch.nation = ENGLAND;
ch.model = "Animists1"; // NK
ch.activity_begin = "0";
ch.activity_end = "24";
ch.sex = "man";
ch.luck = 4;
// ch.spyglass.itemID = COMMON_SPYGLASS;
// ch.gun.itemID = GUN_COMMON;
// ch.gun = "gun";
// ch.blade = "dagger";
// ch.blade.itemID = BLADE_DAGGER;
// ch.blade.time = 0.1;
// ch.blade.colorstart = argb(64, 64, 64, 64);
// ch.blade.colorend = argb(0, 32, 32, 32);
ch.location = "";
ch.location.group = "";
ch.location.locator = "";
ch.Dialog.Filename = "blaze_dialog.c";
ch.rank = START_RANK; // NK
ch.reputation = "50";
ch.experience = intRet(sti(ch.rank) > 1, CalculateExperienceFromRank(sti(ch.rank)), 0); // NK
ch.skill.Leadership = "1";
ch.skill.Fencing = "1";
ch.skill.Sailing = "1";
ch.skill.Accuracy = "1";
ch.skill.Cannons = "1";
ch.skill.Grappling = "1";
ch.skill.Repair = "1";
ch.skill.Defence = "1";
ch.skill.Commerce = "1";
ch.skill.Sneak = "1";
ch.skill.freeskill = sti(ch.rank) * 2; // NK
ch.perks.freepoints = sti(ch.rank); // NK
ch.money = START_MONEY; // NK
ch.Ship.Name = "Victory";
ch.Ship.Type = START_SHIP(); // PS
ch.Ship.Stopped = true;
//ch.Ship.Cannons.Type = CANNON_TYPE_TEST;
ch.FaceId = 31;
ch.ShipSlot1.Type=SHIP_NOTUSED;
ch.ShipSlot1.Name="NoName";
ch.ShipSlot2.Type=SHIP_NOTUSED;
ch.ShipSlot2.Name="NoName";
ch.ShipSlot3.Type=SHIP_NOTUSED;
ch.ShipSlot3.Name="NoName";
ch.quest.Contraband.relation = 50;
ch.quest.RelationAgentMet = "0";
ch.quest.gambling = "0";
ch.quest.friend_in_tavern = "";
ch.quest.main_line = "0";
ch.quest.killed.pirates = "0";
Ch.quest.Story_LeavingOxbay.win_condition.l1 = "location";
Ch.quest.Story_LeavingOxbay.win_condition.l1.character = "Blaze";
Ch.quest.Story_LeavingOxbay.win_condition.l1.location = "Oxbay";
Ch.quest.Story_LeavingOxbay.win_condition = "Story_leavingOxbay";
Ch.quest.Story_LeavingOxbay.fail_condition = "Story_leavingOxbay";
/* string stmp;
stmp = GUN_COMMON; Ch.items.(stmp) = 1;
stmp = POTION; Ch.items.(stmp) = 2;
stmp = BLADE_SABER; Ch.items.(stmp) = 1;
stmp = CHEAP_SPYGLASS; Ch.items.(stmp) = 1;*/
// RM -->
ch.land = 0;
ch.wealth = 500;
string sNat;
for(int nat; nat < MAX_NATIONS; nat++)
{
sNat = nat;
ch.nations.(sNat).Rank = 0;
ch.nations.(sNat).OldRank = 0;
}
ch.married = false;
// RM <--
ChangeName(GetMainCharacter()); // NK, this sets mainchar name to name in ..BuildSettings.h // Scheffnow - file renamed
// QUESTS BEGINNINGS
// Main story line
Ch.quest.Begining.win_condition.l1 = "location";
Ch.quest.Begining.win_condition.l1.location = "Oxbay_port";
Ch.quest.Begining.win_condition = "Begining";
//Hitman
ch.quest.Hitman = "";
ch.quest.Hit_start.win_condition.l1 = "location";
ch.quest.Hit_start.win_condition.l1.character = ch.id;
ch.quest.Hit_start.win_condition.l1.location = "Oxbay_port";
ch.quest.Hit_start.win_condition = "Hit_start";
//Hitman
//Lucas
ch.quest.Lucas = "";
ch.quest.Luc_start.win_condition.l1 = "location";
ch.quest.Luc_start.win_condition.l1.character = ch.id;
ch.quest.Luc_start.win_condition.l1.location = "Muelle_Residence";
ch.quest.Luc_start.win_condition = "Luc_start";
//Lucas
//Tutorial
ch.quest.Tut_start.win_condition.l1 = "location";
ch.quest.Tut_start.win_condition.l1.character = ch.id;
ch.quest.Tut_start.win_condition.l1.location = "Tutorial_Deck";
ch.quest.Tut_start.win_condition = "Tut_start";
//Tutorial
// Artois Voysey and Nigel Blythe quest
Ch.quest.Story_Artois_Nigel.win_condition.l1 = "location";
Ch.quest.Story_Artois_Nigel.win_condition.l1.character = "Blaze";
Ch.quest.Story_Artois_Nigel.win_condition.l1.location = "QC_town";
Ch.quest.Story_Artois_Nigel.win_condition = "Story_Artois";
Locations[FindLocation("QC_town")].vcskip = true;
//
ReloadProgressUpdate();
n = 1;
n = CreateFalaiseDeFleurCharacters(n);
ReloadProgressUpdate();
n = CreateRedmondCharacters(n);
ReloadProgressUpdate();
n = CreateIslaMuelleCharacters(n);
ReloadProgressUpdate();
n = CreateOxbayCharacters(n);
ReloadProgressUpdate();
n = CreateConceicaoCharacters(n);
ReloadProgressUpdate();
n = CreateDouwesenCharacters(n);
ReloadProgressUpdate();
n = CreateOfficersCharacters(n);
ReloadProgressUpdate();
n = CreateStoryCharacters(n);
ReloadProgressUpdate();
n = CreateTempQuestCharacters(n);
ReloadProgressUpdate();
n = CreateQuebradasCostillasCharacters(n);
ReloadProgressUpdate();
n = CreateTempQuestEnemy(n);
ReloadProgressUpdate();
n = CreateFortCommandants(n);
ReloadProgressUpdate();
n = CreateTownUsurers(n);
ReloadProgressUpdate();
n = CreateStreetMerchants(n);
ReloadProgressUpdate();
// NK -->
n = CreateNKCharacters(n);
ReloadProgressUpdate();
// NK <--
//Trace("NChar: " + n);
CreateOtherCharacters();
ReloadProgressUpdate();
if(GetMainCharacterIndex()>=0)
{
SetMainCharacterIndex(GetMainCharacterIndex());
}
//SetAllShipData();
//SetAllFellows();
//Post init
for(n=0; n<TOTAL_CHARACTERS; n++)
{
ref rCharacter = GetCharacter(n);
if(rCharacter.sex == "man")
{
rCharacter.model.animation = "man";
rCharacter.model.height = 1.8;
}else{
rCharacter.model.animation = "towngirl";
rCharacter.model.height = 1.75;
}
rCharacter.FaceGroup = 0;
// set fellows
if (CheckAttribute(rCharacter,"fellows")) { SetBaseFellows(rCharacter); }
// set base ship data
SetBaseShipData(rCharacter);
if(n > 1) rCharacter.FaceId = 0;
facemaker(rCharacter); // NK
//rCharacter.headModel = "h_" + rCharacter.model; // NK called by above, unneeded (`4-30`)
if(CheckAttribute(rCharacter,"blade"))
{
if(CheckAttribute(rCharacter,"blade.itemID"))
{
rCharacter.equip.blade = rCharacter.blade.itemID;
}
else
{
rCharacter.equip.blade = BLADE_SABER;
}
DeleteAttribute(rCharacter,"blade");
}
if(CheckAttribute(rCharacter,"gun"))
{
if(CheckAttribute(rCharacter,"gun.itemID"))
{
rCharacter.equip.gun = rCharacter.gun.itemID;
}
else
{
rCharacter.equip.gun = GUN_COMMON;
}
DeleteAttribute(rCharacter,"gun");
}
if(CheckAttribute(rCharacter,"spyglass.itemID"))
{
rCharacter.equip.spyglass = rCharacter.spyglass.itemID;
DeleteAttribute(rCharacter,"spyglass");
}
}
// MainCharacter start parameters
//NK -->
ch.Ship.HP = MakeInt(GetCharacterShipHP(ch) * 3 / 5);
ch.Ship.crew.quantity = MakeInt(GetMaxCrewQuantity(ch) * 3/5);
SetCharacterGoods(&Characters[0],GOOD_BALLS,GetCannonQuantity(ch)*BALLS_PER);
SetCharacterGoods(&Characters[0],GOOD_GRAPES,GetCannonQuantity(ch)*GRAPE_PER);
SetCharacterGoods(&Characters[0],GOOD_KNIPPELS,GetCannonQuantity(ch)*CHAIN_PER);
SetCharacterGoods(&Characters[0],GOOD_BOMBS,GetCannonQuantity(ch)*BOMBS_PER);
SetCharacterGoods(&Characters[0],GOOD_CHOCOLATE,100);
SetCharacterGoods(&Characters[0],GOOD_LEATHER,25);
SetCharacterGoods(&Characters[0],GOOD_WHEAT,sti(ch.ship.crew.quantity) * FOOD_PER_CREW * WHEAT_DAYS);
SetCharacterGoods(&Characters[0],GOOD_RUM,sti(ch.ship.crew.quantity) * FOOD_PER_CREW * RUM_DAYS);
// NK <--
Characters[GetCharacterIndex("Danielle")].model.animation = "woman";
ReloadProgressUpdate();
}
void SetAllShipData()
{
for(int i=0;i<MAX_CHARACTERS;i++)
{
SetBaseShipData(GetCharacter(i));
}
}
void SetAllFellows()
{
ref rcc;
for(int i=0;i<MAX_CHARACTERS;i++)
{
rcc = GetCharacter(i);
if(CheckAttribute(rcc,"fellows"))
{
SetBaseFellows(rcc);
}
}
}<!--c2--></div><!--ec2-->