Page 1 of 2

bool Interact(Gameplayer player); error

PostPosted: Sun Aug 26, 2007 1:56 pm
by kelfinforlife
I cant get this file correct. the coding is this :
Code: Select all
public override bool Interact(GamePlayer player);

int counterattack = 0;
const int FREE_LEVEL = 50;
public override void StartAttack(GameObject attackTarget)
{
if((attackTarget is GamePlayer))
{
GamePlayer t = (GamePlayer) attackTarget;
TurnTo(t, 50);
if(counterattack<20)
{
Say(t.Name + ", stop attacking me or I will kill you.");
counterattack++;
}
else
{
counterattack=0;
t.Die(this);
}
}
}
the error :

Error 2 'DOL.GS.Scripts.MasterTrainer.Interact(DOL.GS.GamePlayer)' must declare a body because it is not marked abstract or extern

can someone help me with this please, my C# knowledge is limited :S

PostPosted: Sun Aug 26, 2007 2:31 pm
by Nocto
remove
Code: Select all
public override bool Interact(GamePlayer player);
or add some code to it, it can't return void!

for example add
Code: Select all
public override bool Interact(Gameplayer player)
{
return true;
}
HTH
Nocto

PostPosted: Sun Aug 26, 2007 2:40 pm
by kelfinforlife
I did as you suggested and added the return true into it. i built the server and it came up with several error messages...
Code: Select all
public override bool WhisperReceive(GameLiving source, string str)
{
if (!base.Interact(player))
return false;


TurnTo(player, 5000);

if (player.Level <5>= 5 && player.Level < 50 && player.CharacterClass.Name != player.CharacterClass.BaseName)
{
player.Level = 50;
player.Mana = player.MaxMana;
player.Health = player.MaxHealth;
player.Endurance = player.MaxEndurance;

if ((player.CharacterClass.Name == "Cleric") || (player.CharacterClass.Name == "Necromancer") || (player.CharacterClass.Name == "Theurgist") || (player.CharacterClass.Name == "Wizard") || (player.CharacterClass.Name == "Cabalist") || (player.CharacterClass.Name == "Sorcerer") || (player.CharacterClass.Name == "Animist") || (player.CharacterClass.Name == "Eldritch") || (player.CharacterClass.Name == "Enchanter") || (player.CharacterClass.Name == "Mentalist") || (player.CharacterClass.Name == "Druid") || (player.CharacterClass.Name == "Bonedancer") || (player.CharacterClass.Name == "Runemaster") || (player.CharacterClass.Name == "Spiritmaster") || (player.CharacterClass.Name == "Healer") || (player.CharacterClass.Name == "Shaman")) player.SkillSpecialtyPoints += 220;
if ((player.CharacterClass.Name == "Friar") || (player.CharacterClass.Name == "Minstrel") || (player.CharacterClass.Name == "Valewalker") || (player.CharacterClass.Name == "Bard") || (player.CharacterClass.Name == "Warden") || (player.CharacterClass.Name == "Savage") || (player.CharacterClass.Name == "Skald")) player.SkillSpecialtyPoints += 330;
if ((player.CharacterClass.Name == "Reaver") || (player.CharacterClass.Name == "Armsman") || (player.CharacterClass.Name == "Mercenary") || (player.CharacterClass.Name == "Paladin") || (player.CharacterClass.Name == "Scout") || (player.CharacterClass.Name == "Blademaster") || (player.CharacterClass.Name == "Champion") || (player.CharacterClass.Name == "Hero") || (player.CharacterClass.Name == "Ranger") || (player.CharacterClass.Name == "Hunter") || (player.CharacterClass.Name == "Berserker") || (player.CharacterClass.Name == "Thane") || (player.CharacterClass.Name == "Warrior")) player.SkillSpecialtyPoints += 445;
if ((player.CharacterClass.Name == "Nightshade") || (player.CharacterClass.Name == "Shadowblade")) player.SkillSpecialtyPoints += 485;
if (player.CharacterClass.Name == "Infiltrator") player.SkillSpecialtyPoints += 553;


}
else
if (player.Level < 50)
SayTo(player, eChatLoc.CL_ChatWindow, "You need to take a Class for take level 50 !");
else
SayTo(player, eChatLoc.CL_ChatWindow, "Hmmm You can't do level 100 :D !");
}
{
return base.Interact(player);
}
the script no longer reads "player"...

Error:
Error 69 The name 'player' does not exist in the current context 120 32 GameServer

PostPosted: Sun Aug 26, 2007 3:07 pm
by Nocto
Code: Select all
public override bool WhisperReceive(GameLiving source, string str)
{


after this - add:
Code: Select all
GamePlayer player = (GamePlayer)source;
btw. what's this ?

if (player.Level <5>= 5 && player.Level < 50 && player.CharacterClass.Name != player.CharacterClass.BaseName)

PostPosted: Sun Aug 26, 2007 3:11 pm
by kelfinforlife
Thankyou so much!! Ive been trying to work out what i needed to do for like 3 hours now (really bad at C#!) the fact that the Build Succeeded and i have 0 errors means that you've just made my day :D

PostPosted: Sun Aug 26, 2007 3:25 pm
by kelfinforlife
although ive got my server to build successful the thing i was trying to do is unsuccessful, im trying to Script a MasterTrainer.cs using the PowerLeveler.cs and the PowerTrainer.cs files from the download page... can some1 help me with that please ?

PostPosted: Sun Aug 26, 2007 3:37 pm
by stealth215
well there is already one available...http://www.dolserver.net/?nav=userfiles ... tail&id=94

if you still want to create your own, there's no harm in compairing to that one once in awhile :P but this should save you alot of work

PostPosted: Sun Aug 26, 2007 3:38 pm
by kelfinforlife
Thanks :) im just trying to learn the coding as well as getting a server up and running, so no time wasted, thatnks for the link

PostPosted: Sun Aug 26, 2007 4:53 pm
by IStandAloneToo
Good idea. I would suggest continuing on making your own MasterTrainer. That will immerse your in DOL as well as teach you a lot about coding/coding errors!

PostPosted: Sun Aug 26, 2007 8:19 pm
by kelfinforlife
Thought id post my other problem in here , as its linked with the problems i had earlier... heres the coding
Code: Select all
public override bool Interact(GamePlayer player1, GamePlayer player)
{
if (!base.Interact(player1))
return false;

TurnTo(player1, 5000);

if (player1.Level <5>= 5 && player1.Level < 50 && player1.CharacterClass.Name != player1.CharacterClass.BaseName)
{
player1.Level = 50;
player1.Mana = player1.MaxMana;
player1.Health = player1.MaxHealth;
player1.Endurance = player1.MaxEndurance;

if ((player1.CharacterClass.Name == "Cleric") || (player1.CharacterClass.Name == "Necromancer") || (player1.CharacterClass.Name == "Theurgist") || (player1.CharacterClass.Name == "Wizard") || (player1.CharacterClass.Name == "Cabalist") || (player1.CharacterClass.Name == "Sorcerer") || (player1.CharacterClass.Name == "Animist") || (player1.CharacterClass.Name == "Eldritch") || (player1.CharacterClass.Name == "Enchanter") || (player1.CharacterClass.Name == "Mentalist") || (player1.CharacterClass.Name == "Druid") || (player1.CharacterClass.Name == "Bonedancer") || (player1.CharacterClass.Name == "Runemaster") || (player1.CharacterClass.Name == "Spiritmaster") || (player1.CharacterClass.Name == "Healer") || (player1.CharacterClass.Name == "Shaman")) player1.SkillSpecialtyPoints += 220;
if ((player1.CharacterClass.Name == "Friar") || (player1.CharacterClass.Name == "Minstrel") || (player1.CharacterClass.Name == "Valewalker") || (player1.CharacterClass.Name == "Bard") || (player1.CharacterClass.Name == "Warden") || (player1.CharacterClass.Name == "Savage") || (player1.CharacterClass.Name == "Skald")) player1.SkillSpecialtyPoints += 330;
if ((player1.CharacterClass.Name == "Reaver") || (player1.CharacterClass.Name == "Armsman") || (player1.CharacterClass.Name == "Mercenary") || (player1.CharacterClass.Name == "Paladin") || (player1.CharacterClass.Name == "Scout") || (player1.CharacterClass.Name == "Blademaster") || (player1.CharacterClass.Name == "Champion") || (player1.CharacterClass.Name == "Hero") || (player1.CharacterClass.Name == "Ranger") || (player1.CharacterClass.Name == "Hunter") || (player1.CharacterClass.Name == "Berserker") || (player1.CharacterClass.Name == "Thane") || (player1.CharacterClass.Name == "Warrior")) player1.SkillSpecialtyPoints += 445;
if ((player1.CharacterClass.Name == "Nightshade") || (player1.CharacterClass.Name == "Shadowblade")) player1.SkillSpecialtyPoints += 485;
if (player1.CharacterClass.Name == "Infiltrator") player1.SkillSpecialtyPoints += 553;


}
else
if (player1.Level < 50)
SayTo(player1, eChatLoc.CL_ChatWindow, "You need to take a Class for take level 50 !");
else
SayTo(player1, eChatLoc.CL_ChatWindow, "Hmmm You can't do level 100 :D !");
}
return true;

if (!base.Interact(player)) return false;
if (player.Level <5> 5)) player.Out.SendTrainerWindow();
}
return true;
}
heres the Error:

Error 3 'DOL.GS.Scripts.MasterTrainer.Interact(DOL.GS.GamePlayer, DOL.GS.GamePlayer)': no suitable method found to override.

Can some1 explain the problem to me and how to fix it please ? thanks XX

PostPosted: Sun Aug 26, 2007 8:34 pm
by kelfinforlife
Answered My Own Question, for those woh are in the same situation as i was i changed this :
Code: Select all
public override bool Interact( GamePlayer player, Gameplayer player 1)
to this:
Code: Select all
public override bool Interact( GamePlayer player)
I then went through the file deleting all the cases of "player1" to change it to "player" . Build Succeeded :D

PostPosted: Sun Aug 26, 2007 8:34 pm
by ichijin
Code: Select all
public override bool Interact(GamePlayer player1, GamePlayer player)
if (!base.Interact(player1))
Your function takes 2 players as input. interact(player1, player2);

When you call it on the 2nd line I left in, you only send it one player: interact(player1). Your use of the function has to have the same ammount of arguments as the function declaration.
Code: Select all
public bool MyFunction(int argument1, bool argument2)
{
}
MyFunction(someInt, someBool);

PostPosted: Sun Aug 26, 2007 8:37 pm
by kelfinforlife
Right i see, so if my file still fails i should go back and add a second like of arguments for both player and player1 :) will keep that in mind for future refference. ty :D

PostPosted: Sun Aug 26, 2007 9:21 pm
by kelfinforlife
ok... still not working, im not 100% sure what im doing here, after removing all the player 1 cases as i mentioned before, instead of my file working only half of it ran. so i tried adding a 2nd argument all the way through the origional file i had... and now i have this (somehow:?:)
Code: Select all
using System;
using DOL;
using DOL.GS;
using DOL.Events;
using DOL.GS.PacketHandler;
using System.Collections;
using DOL.Database;
namespace DOL.GS.Scripts
{
public class MasterTrainer: GameNPC
{
int counterattack=0;
const int FREE_LEVEL = 50;
public override void StartAttack(GameObject attackTarget)
{
if((attackTarget is GamePlayer))
{
GamePlayer t = (GamePlayer) attackTarget;
TurnTo(t, 50);
if(counterattack<20)
{
Say(t.Name + ", stop attacking me or I will kill you.");
counterattack++;
}
else
{
counterattack=0;
t.Die(this);
}
}
}
/// <summary>
/// For Recieving Respec Stones.
/// </summary>
/// <param></param>
/// <param></param>
/// <returns></returns>
public override bool ReceiveItem(GameLiving source, InventoryItem item)
{
if (source == null || item == null) return false;

GamePlayer player = source as GamePlayer;
if (player != null)
{
switch (item.Id_nb)
{
case "respec_single":
{
player.Inventory.RemoveCountFromStack(item, 1);
player.RespecAmountSingleSkill++;
player.Out.SendMessage("Thanks, I added a single spec respec to use /respec <linename>", eChatType.CT_System, eChatLoc.CL_PopupWindow);
return true;
}
case "respec_full":
{
player.Inventory.RemoveCountFromStack(item, 1);
player.RespecAmountAllSkill++;
player.Out.SendMessage("A nice " + item.Name + "! I added a full respec to use /respec all", eChatType.CT_System, eChatLoc.CL_PopupWindow);
return true;
}
case "respec_realm":
{
player.Inventory.RemoveCountFromStack(item, 1);
player.RespecAmountRealmSkill++;
player.Out.SendMessage("Thanks, I added a realm respec to use /respec realm", eChatType.CT_System, eChatLoc.CL_PopupWindow);
return true;
}
}
}


return base.ReceiveItem(source, item);
}
public bool PromotePlayer(GamePlayer player, int classid, string messageToPlayer)
{
if(player == null) return false;
// Player was promoted
if (player.SetCharacterClass(classid))
{
player.Out.SendMessage(this.Name +" says, \""+ messageToPlayer +"\"",eChatType.CT_System,eChatLoc.CL_PopupWindow);
player.Out.SendMessage("You have been upgraded to the "+player.CharacterClass.Name+" class!",eChatType.CT_Important,eChatLoc.CL_SystemWindow);
player.CharacterClass.OnLevelUp(player);
player.UpdateSpellLineLevels(true);
player.RefreshSpecDependantSkills(true);
//player.Out.SendUpdatePlayerSpells();
player.Out.SendUpdatePlayerSkills();
player.Out.SendUpdatePlayer();
// after gifts
player.Out.SendMessage("You have been accepted by the "+player.CharacterClass.Profession+"!",eChatType.CT_Important,eChatLoc.CL_SystemWindow);
player.SaveIntoDatabase();
return true;
}
return false;
}
public override bool Interact(GamePlayer player, GamePlayer player1)
{
if(!base.Interact(player, player1)) return false;
TurnTo(player1, 5000);
TurnTo(player, 5000);
if (player.Level <5>= 5 && player.Level < 50 && player.CharacterClass.Name != player.CharacterClass.BaseName)
{
player.Level = 50;
player.Mana = player.MaxMana;
player.Health = player.MaxHealth;
player.Endurance = player.MaxEndurance;

if ((player.CharacterClass.Name == "Cleric") || (player.CharacterClass.Name == "Necromancer") || (player.CharacterClass.Name == "Theurgist") || (player.CharacterClass.Name == "Wizard") || (player.CharacterClass.Name == "Cabalist") || (player.CharacterClass.Name == "Sorcerer") || (player.CharacterClass.Name == "Animist") || (player.CharacterClass.Name == "Eldritch") || (player.CharacterClass.Name == "Enchanter") || (player.CharacterClass.Name == "Mentalist") || (player.CharacterClass.Name == "Druid") || (player.CharacterClass.Name == "Bonedancer") || (player.CharacterClass.Name == "Runemaster") || (player.CharacterClass.Name == "Spiritmaster") || (player.CharacterClass.Name == "Healer") || (player.CharacterClass.Name == "Shaman")) player.SkillSpecialtyPoints += 220;
if ((player.CharacterClass.Name == "Friar") || (player.CharacterClass.Name == "Minstrel") || (player.CharacterClass.Name == "Valewalker") || (player.CharacterClass.Name == "Bard") || (player.CharacterClass.Name == "Warden") || (player.CharacterClass.Name == "Savage") || (player.CharacterClass.Name == "Skald")) player.SkillSpecialtyPoints += 330;
if ((player.CharacterClass.Name == "Reaver") || (player.CharacterClass.Name == "Armsman") || (player.CharacterClass.Name == "Mercenary") || (player.CharacterClass.Name == "Paladin") || (player.CharacterClass.Name == "Scout") || (player.CharacterClass.Name == "Blademaster") || (player.CharacterClass.Name == "Champion") || (player.CharacterClass.Name == "Hero") || (player.CharacterClass.Name == "Ranger") || (player.CharacterClass.Name == "Hunter") || (player.CharacterClass.Name == "Berserker") || (player.CharacterClass.Name == "Thane") || (player.CharacterClass.Name == "Warrior")) player.SkillSpecialtyPoints += 445;
if ((player.CharacterClass.Name == "Nightshade") || (player.CharacterClass.Name == "Shadowblade")) player.SkillSpecialtyPoints += 485;
if (player.CharacterClass.Name == "Infiltrator") player.SkillSpecialtyPoints += 553;


}
else
if (player.Level < 50)
SayTo(player, eChatLoc.CL_ChatWindow, "You need to take a Class for take level 50 !");
else
SayTo(player, eChatLoc.CL_ChatWindow, "Hmmm You can't do level 100 :D !");
}
return true;

if (player1.Level <5>= 5 && player1.Level < 50 && player1.CharacterClass.Name != player1.CharacterClass.BaseName)
{
player1.Level = 50;
player1.Mana = player1.MaxMana;
player1.Health = player1.MaxHealth;
player1.Endurance = player1.MaxEndurance;

if ((player1.CharacterClass.Name == "Cleric") || (player1.CharacterClass.Name == "Necromancer") || (player1.CharacterClass.Name == "Theurgist") || (player1.CharacterClass.Name == "Wizard") || (player1.CharacterClass.Name == "Cabalist") || (player1.CharacterClass.Name == "Sorcerer") || (player1.CharacterClass.Name == "Animist") || (player1.CharacterClass.Name == "Eldritch") || (player1.CharacterClass.Name == "Enchanter") || (player1.CharacterClass.Name == "Mentalist") || (player1.CharacterClass.Name == "Druid") || (player1.CharacterClass.Name == "Bonedancer") || (player1.CharacterClass.Name == "Runemaster") || (player1.CharacterClass.Name == "Spiritmaster") || (player1.CharacterClass.Name == "Healer") || (player1.CharacterClass.Name == "Shaman")) player1.SkillSpecialtyPoints += 220;
if ((player1.CharacterClass.Name == "Friar") || (player1.CharacterClass.Name == "Minstrel") || (player1.CharacterClass.Name == "Valewalker") || (player1.CharacterClass.Name == "Bard") || (player1.CharacterClass.Name == "Warden") || (player1.CharacterClass.Name == "Savage") || (player1.CharacterClass.Name == "Skald")) player1.SkillSpecialtyPoints += 330;
if ((player1.CharacterClass.Name == "Reaver") || (player1.CharacterClass.Name == "Armsman") || (player1.CharacterClass.Name == "Mercenary") || (player1.CharacterClass.Name == "Paladin") || (player1.CharacterClass.Name == "Scout") || (player1.CharacterClass.Name == "Blademaster") || (player1.CharacterClass.Name == "Champion") || (player1.CharacterClass.Name == "Hero") || (player1.CharacterClass.Name == "Ranger") || (player1.CharacterClass.Name == "Hunter") || (player1.CharacterClass.Name == "Berserker") || (player1.CharacterClass.Name == "Thane") || (player1.CharacterClass.Name == "Warrior")) player1.SkillSpecialtyPoints += 445;
if ((player1.CharacterClass.Name == "Nightshade") || (player1.CharacterClass.Name == "Shadowblade")) player1.SkillSpecialtyPoints += 485;
if (player1.CharacterClass.Name == "Infiltrator") player1.SkillSpecialtyPoints += 553;


}
else
if (player1.Level < 50)
SayTo(player1, eChatLoc.CL_ChatWindow, "You need to take a Class for take level 50 !");
else
SayTo(player1, eChatLoc.CL_ChatWindow, "Hmmm You can't do level 100 :D !");
}
return true;

if (player1.Level < 5) player1.Out.SendMessage("You are not ready to take on a profession yet. You have to reach the level 5 first.", eChatType.CT_Say, eChatLoc.CL_PopupWindow);
if (player.Level<5>5)) player.Out.SendTrainerWindow();
if ((player.CharacterClass.BaseName != player.CharacterClass.Name) && (player.Level > 5)) player.Out.SendTrainerWindow();

}
return true;
}
public override bool WhisperReceive(GameLiving source, string str)
{
if(!base.WhisperReceive(source,str)) return false;
if(!(source is GamePlayer)) return false;
GamePlayer player = (GamePlayer) source;
if(player.CharacterClass.Name==player.CharacterClass.BaseName)
{
switch(str)
{
// __Albion________________________________________________________________________________________________________________
case "Armsman":
if (((player.RaceName == "Inconnu") || (player.RaceName == "Half Ogre") || (player.RaceName == "AlbionMinotaur") || (player.RaceName == "Briton") || (player.RaceName == "Highlander") || (player.RaceName == "Saracen") || (player.RaceName == "Avalonian")) && (player.CharacterClass.ID == 14))
PromotePlayer(player, (int)eCharacterClass.Armsman, "Arise, "+player.Name+", and know that you are no longer a simple "+player.CharacterClass.BaseName+". You are now an Armsman!");
break;
case "Cabalist":
if (((player.RaceName=="Briton")||(player.RaceName=="Avalonian")||(player.RaceName=="Inconnu")||(player.RaceName=="Half Ogre")||(player.RaceName=="Saracen")) && (player.CharacterClass.ID==18))
PromotePlayer(player, (int)eCharacterClass.Cabalist, "Arise, "+player.Name+", and know that you are no longer a simple "+player.CharacterClass.BaseName+". You are now a Cabalist!");
break;
case "Cleric":
if (((player.RaceName == "Briton") || (player.RaceName == "AlbionMinotaur") || (player.RaceName == "Avalonian") || (player.RaceName == "Highlander")) && (player.CharacterClass.ID == 16))
PromotePlayer(player, (int)eCharacterClass.Cleric, "Arise, "+player.Name+", and know that you are no longer a simple "+player.CharacterClass.BaseName+". You are now a Cleric!");
break;
case "Friar":
if (((player.RaceName=="Briton")||(player.RaceName=="Saracen")) && (player.CharacterClass.ID==16))
PromotePlayer(player, (int)eCharacterClass.Friar, "Arise, "+player.Name+", and know that you are no longer a simple "+player.CharacterClass.BaseName+". You are now a Friar!");
break;
case "Infiltrator":
if (((player.RaceName=="Briton")||(player.RaceName=="Saracen")||(player.RaceName=="Inconnu")) && (player.CharacterClass.ID==17))
PromotePlayer(player, (int)eCharacterClass.Infiltrator, "Arise, "+player.Name+", and know that you are no longer a simple "+player.CharacterClass.BaseName+". You are now an Infiltrator!");
break;
case "Mercenary":
if (((player.RaceName == "Briton") || (player.RaceName == "AlbionMinotaur") || (player.RaceName == "Half Ogre") || (player.RaceName == "Saracen") || (player.RaceName == "Highlander") || (player.RaceName == "Inconnu") || (player.RaceName == "Avalonian")) && (player.CharacterClass.ID == 14))
PromotePlayer(player, (int)eCharacterClass.Mercenary, "Arise, "+player.Name+", and know that you are no longer a simple "+player.CharacterClass.BaseName+". You are now a Mercenary!");
break;
case "Minstrel":
if (((player.RaceName == "Briton") || (player.RaceName == "Saracen") || (player.RaceName == "AlbionMinotaur") || (player.RaceName == "Highlander")) && (player.CharacterClass.ID == 17))
PromotePlayer(player, (int)eCharacterClass.Minstrel, "Arise, "+player.Name+", and know that you are no longer a simple "+player.CharacterClass.BaseName+". You are now a Minstrel!");
break;
case "Necromancerx":
PromotePlayer(player, (int)eCharacterClass.Necromancer, "Arise, "+player.Name+", and know that you are no longer a simple "+player.CharacterClass.BaseName+". You are now a Necromancer!");
break;

case "Paladin":
if (((player.RaceName=="Briton")||(player.RaceName=="Saracen")||(player.RaceName=="Highlander")||(player.RaceName=="Avalonian")) && (player.CharacterClass.ID==14))
PromotePlayer(player, (int)eCharacterClass.Paladin, "Arise, "+player.Name+", and know that you are no longer a simple "+player.CharacterClass.BaseName+". You are now a Paladin!");
break;
case "Reaver":
if (((player.RaceName=="Briton")||(player.RaceName=="Saracen")||(player.RaceName=="Highlander")||(player.RaceName=="Inconnu")) && (player.CharacterClass.ID==14))
PromotePlayer(player, (int)eCharacterClass.Reaver, "Arise, "+player.Name+", and know that you are no longer a simple "+player.CharacterClass.BaseName+". You are now a Reaver!");
break;
case "Scout":
if (((player.RaceName=="Inconnu")||(player.RaceName=="Saracen")||(player.RaceName=="Highlander")||(player.RaceName=="Briton")) && (player.CharacterClass.ID==17))
PromotePlayer(player, (int)eCharacterClass.Scout, "Arise, "+player.Name+", and know that you are no longer a simple "+player.CharacterClass.BaseName+". You are now a Scout!");
break;
case "Sorcerer":
if (((player.RaceName=="Briton")||(player.RaceName=="Avalonian")||(player.RaceName=="Inconnu")||(player.RaceName=="Half Ogre")||(player.RaceName=="Saracen")) && (player.CharacterClass.ID==18))
PromotePlayer(player, (int)eCharacterClass.Sorcerer, "Arise, "+player.Name+", and know that you are no longer a simple "+player.CharacterClass.BaseName+". You are now a Sorcerer!");
break;
case "Theurgist":
if (((player.RaceName=="Avalonian")||(player.RaceName=="Briton")||(player.RaceName=="Half Ogre")) && (player.CharacterClass.ID==15))
PromotePlayer(player, (int)eCharacterClass.Theurgist, "Arise, "+player.Name+", and know that you are no longer a simple "+player.CharacterClass.BaseName+". You are now a Therugist!");
break;
case "Wizard":
if (((player.RaceName=="Briton")||(player.RaceName=="Avalonian")||(player.RaceName=="Half Ogre")) && (player.CharacterClass.ID==15))
PromotePlayer(player, (int)eCharacterClass.Wizard, "Arise, "+player.Name+", and know that you are no longer a simple "+player.CharacterClass.BaseName+". You are now a Wizard!");
break;
case "Heretic":
if ((((player.RaceName == "Avalonian") || (player.RaceName == "Briton") || (player.RaceName == "Inconnu"))) && (player.CharacterClass.ID==16))
PromotePlayer(player, (int)eCharacterClass.Heretic, "Arise, "+player.Name+", and know that you are no longer a simple "+player.CharacterClass.BaseName+". You are now a Heretic!");
break;
// __Midgard________________________________________________________________________________________________________________

case "Warrior":
if (((player.RaceName == "Kobold") || (player.RaceName == "MidgardMinotaur") || (player.RaceName == "Dwarf") || (player.RaceName == "Valkyn") || (player.RaceName == "Norseman") || (player.RaceName == "Troll")) && (player.CharacterClass.ID == 35))
PromotePlayer(player, (int)eCharacterClass.Warrior, "Arise, "+player.Name+", and know that you are no longer a simple "+player.CharacterClass.BaseName+". You are now a Warrior!");
break;
case "Thane":
if (((player.RaceName=="Norseman")||(player.RaceName=="Troll")||(player.RaceName=="Frostalf")||(player.RaceName=="Dwarf")) && (player.CharacterClass.ID==35))
PromotePlayer(player, (int)eCharacterClass.Thane, "Arise, "+player.Name+", and know that you are no longer a simple "+player.CharacterClass.BaseName+". You are now a Thane!");
break;
case "Berserker":
if (((player.RaceName == "Norseman") || (player.RaceName == "MidgardMinotaur") || (player.RaceName == "Troll") || (player.RaceName == "Dwarf")) && (player.CharacterClass.ID == 35))
PromotePlayer(player, (int)eCharacterClass.Berserker, "Arise, "+player.Name+", and know that you are no longer a simple "+player.CharacterClass.BaseName+". You are now a Berserker!");
break;
case "Skald":
if (((player.RaceName == "Kobold") || (player.RaceName == "MidgardMinotaur") || (player.RaceName == "Norseman") || (player.RaceName == "Dwarf") || (player.RaceName == "Troll")) && (player.CharacterClass.ID == 35))
PromotePlayer(player, (int)eCharacterClass.Skald, "Arise, "+player.Name+", and know that you are no longer a simple "+player.CharacterClass.BaseName+". You are now a Skald!");
break;
case "Savage":
if (((player.RaceName == "Norseman") || (player.RaceName == "MidgardMinotaur") || (player.RaceName == "Kobold") || (player.RaceName == "Troll") || (player.RaceName == "Valkyn") || (player.RaceName == "Dwarf")) && (player.CharacterClass.ID == 35))
PromotePlayer(player, (int)eCharacterClass.Savage, "Arise, "+player.Name+", and know that you are no longer a simple "+player.CharacterClass.BaseName+". You are now a Savage!");
break;
case "Hunter":
if (((player.RaceName=="Norseman")||(player.RaceName=="Kobold")||(player.RaceName=="Valkyn")||(player.RaceName=="Frostalf")) && (player.CharacterClass.ID==38))
PromotePlayer(player, (int)eCharacterClass.Hunter, "Arise, "+player.Name+", and know that you are no longer a simple "+player.CharacterClass.BaseName+". You are now a Hunter!");
break;
case "Shadowblade":
if (((player.RaceName=="Norseman")||(player.RaceName=="Kobold")||(player.RaceName=="Valkyn")||(player.RaceName=="Frostalf"))&& (player.CharacterClass.ID==38))
PromotePlayer(player, (int)eCharacterClass.Shadowblade, "Arise, "+player.Name+", and know that you are no longer a simple "+player.CharacterClass.BaseName+". You are now a Shadowblade!");
break;
case "Runemaster":
if (((player.RaceName=="Norseman")||(player.RaceName=="Kobold")||(player.RaceName=="Frostalf")||(player.RaceName=="Dwarf"))&& (player.CharacterClass.ID==36))
PromotePlayer(player, (int)eCharacterClass.Runemaster, "Arise, "+player.Name+", and know that you are no longer a simple "+player.CharacterClass.BaseName+". You are now a Runemaster!");
break;
case "Spiritmaster":
if (((player.RaceName=="Kobold")||(player.RaceName=="Norseman")||(player.RaceName=="Frostalf"))&& (player.CharacterClass.ID==36))
PromotePlayer(player, (int)eCharacterClass.Spiritmaster, "Arise, "+player.Name+", and know that you are no longer a simple "+player.CharacterClass.BaseName+". You are now a Spiritmaster!");
break;
case "Bonedancer":
if (((player.RaceName=="Valkyn")||(player.RaceName=="Kobold")||(player.RaceName=="Troll")) && (player.CharacterClass.ID==36))
PromotePlayer(player, (int)eCharacterClass.Bonedancer, "Arise, "+player.Name+", and know that you are no longer a simple "+player.CharacterClass.BaseName+". You are now a Bonedancer!");
break;
case "Healer":
if (((player.RaceName == "Dwarf") || (player.RaceName == "Norseman") || (player.RaceName == "MidgardMinotaur") || (player.RaceName == "Frostalf")) && (player.CharacterClass.ID == 37))
PromotePlayer(player, (int)eCharacterClass.Healer, "Arise, "+player.Name+", and know that you are no longer a simple "+player.CharacterClass.BaseName+". You are now a Healer!");
break;
case "Shaman":
if (((player.RaceName == "Kobold") || (player.RaceName == "MidgardMinotaur") || (player.RaceName == "Troll") || (player.RaceName == "Frostalf")) && (player.CharacterClass.ID == 37))
PromotePlayer(player, (int)eCharacterClass.Shaman, "Arise, "+player.Name+", and know that you are no longer a simple "+player.CharacterClass.BaseName+". You are now a Shaman!");
break;

case "Warlock":
if (((player.RaceName == "Kobold") || (player.RaceName == "Norseman") || (player.RaceName == "Frostalf")) && (player.CharacterClass.ID == 36))
PromotePlayer(player, (int)eCharacterClass.Warlock, "Arise, " + player.Name + ", and know that you are no longer a simple " + player.CharacterClass.BaseName + ". You are now a Warlock!");
break;
case "Valkyrie":
if ((player.RaceName == "Norsmen") || (player.RaceName == "Dwarf") && (player.CharacterClass.ID == 35))
PromotePlayer(player, (int)eCharacterClass.Valkyrie, "Arise, " + player.Name + ", you are now a Valkryee!");
break;

// __Hibernia______________________________________________________________________________________________________________

case "Animistx":
if (((player.RaceName == "Firbolg") || (player.RaceName == "Celt") || (player.RaceName == "Sylvan")) && (player.CharacterClass.ID == 57))
PromotePlayer(player, (int)eCharacterClass.Animist, "Arise, "+player.Name+", and know that you are no longer a simple "+player.CharacterClass.BaseName+". You are now an Animist!");
break;
case "Bard":
if (((player.RaceName=="Celt")||(player.RaceName=="Firbolg"))&& (player.CharacterClass.ID==53))
PromotePlayer(player, (int)eCharacterClass.Bard, "Arise, "+player.Name+", and know that you are no longer a simple "+player.CharacterClass.BaseName+". You are now a Bard!");
break;
case "Blademaster":
if (((player.RaceName == "Firbolg") || (player.RaceName == "HiberniaMinotaur") || (player.RaceName == "Celt") || (player.RaceName == "Shar") || (player.RaceName == "Elf")) && (player.CharacterClass.ID == 52))
PromotePlayer(player, (int)eCharacterClass.Blademaster, "Arise, "+player.Name+", and know that you are no longer a simple "+player.CharacterClass.BaseName+". You are now a Blademaster!");
break;
case "Champion":
if (((player.RaceName=="Celt")|(player.RaceName=="Elf")||(player.RaceName=="Lurikeen")||(player.RaceName=="Shar")) && (player.CharacterClass.ID==52))
PromotePlayer(player, (int)eCharacterClass.Champion, "Arise, "+player.Name+", and know that you are no longer a simple "+player.CharacterClass.BaseName+". You are now a Champion!");
break;
case "Druid":
if (((player.RaceName == "Celt") || (player.RaceName == "HiberniaMinotaur") || (player.RaceName == "Firbolg") || (player.RaceName == "Sylvan")) && (player.CharacterClass.ID == 53))
PromotePlayer(player, (int)eCharacterClass.Druid, "Arise, "+player.Name+", and know that you are no longer a simple "+player.CharacterClass.BaseName+". You are now a Druid!");
break;
case "Eldritch":
if (((player.RaceName=="Lurikeen")||(player.RaceName=="Elf")) && (player.CharacterClass.ID==51))
PromotePlayer(player, (int)eCharacterClass.Eldritch, "Arise, "+player.Name+", and know that you are no longer a simple "+player.CharacterClass.BaseName+". You are now an Eldritch!");
break;
case "Enchanter":
if (((player.RaceName=="Lurikeen")||(player.RaceName=="Elf")) && (player.CharacterClass.ID==51))
PromotePlayer(player, (int)eCharacterClass.Enchanter, "Arise, "+player.Name+", and know that you are no longer a simple "+player.CharacterClass.BaseName+". You are now an Enchanter!");
break;
case "Bainshee":
if (((player.RaceName == "Lurikeen") || (player.RaceName == "Elf")) && (player.CharacterClass.ID == 51))
PromotePlayer(player, (int)eCharacterClass.Bainshee, "Arise, " + player.Name + ", and know that you are now a bainshee!!");
break;
case "Hero":
if (((player.RaceName == "Firbolg") || (player.RaceName == "HiberniaMinotaur") || (player.RaceName == "Lurikeen") || (player.RaceName == "Celt") || (player.RaceName == "Shar")) && (player.CharacterClass.ID == 52))
PromotePlayer(player, (int)eCharacterClass.Hero, "Arise, "+player.Name+", and know that you are no longer a simple "+player.CharacterClass.BaseName+". You are now a Hero!");
break;
case "Mentalist":
if (((player.RaceName=="Lurikeen")||(player.RaceName=="Celt")||(player.RaceName=="Elf")) && (player.CharacterClass.ID==51))
PromotePlayer(player, (int)eCharacterClass.Mentalist, "Arise, "+player.Name+", and know that you are no longer a simple "+player.CharacterClass.BaseName+". You are now a Mentalist!");
break;
case "Nightshade":
if (((player.RaceName=="Lurikeen")||(player.RaceName=="Elf")||(player.RaceName=="Celt")) && (player.CharacterClass.ID==54))
PromotePlayer(player, (int)eCharacterClass.Nightshade, "Arise, "+player.Name+", and know that you are no longer a simple "+player.CharacterClass.BaseName+". You are now a Nightshade!");
break;
case "Vampiir":
if (((player.RaceName == "Lurikeen") || (player.RaceName == "Celt") || (player.RaceName == "Shar")) && ((player.CharacterClass.ID == 54)))
PromotePlayer(player, (int)eCharacterClass.Vampiir, "Arise " + player.Name + " and know that you are now a Vampiir!");
break;
case "Ranger":
if (((player.RaceName=="Lurikeen")||(player.RaceName=="Elf")||(player.RaceName=="Celt")||(player.RaceName=="Shar")) && (player.CharacterClass.ID==54))
PromotePlayer(player, (int)eCharacterClass.Ranger, "Arise, "+player.Name+", and know that you are no longer a simple "+player.CharacterClass.BaseName+". You are now a Ranger!");
break;
case "Valewalker":
if (((player.RaceName=="Firbolg")||(player.RaceName=="Celt")||(player.RaceName=="Sylvan"))&& (player.CharacterClass.ID==57))
PromotePlayer(player, (int)eCharacterClass.Valewalker, "Arise, "+player.Name+", and know that you are no longer a simple "+player.CharacterClass.BaseName+". You are now a Valewalker!");
break;
case "Warden":
if (((player.RaceName == "Celt") || (player.RaceName == "HiberniaMinotaur") || (player.RaceName == "Firbolg")) && (player.CharacterClass.ID == 53))
PromotePlayer(player, (int)eCharacterClass.Warden, "Arise, "+player.Name+", and know that you are no longer a simple "+player.CharacterClass.BaseName+". You are now a Warden!");
break;
default: break;
}
}
return true;
}
private void SendReply(GamePlayer target, string msg)
{
target.Out.SendMessage(msg,eChatType.CT_Say,eChatLoc.CL_PopupWindow);
}
}
}
and still getting the error

Error 3 'DOL.GS.Scripts.MasterTrainer.Interact(DOL.GS.GamePlayer, DOL.GS.GamePlayer)': no suitable method found to override.

my C# skills are pathetic can some1 please give me a fix?

PostPosted: Sun Aug 26, 2007 9:38 pm
by ichijin
Change this:
Code: Select all
public override bool Interact(GamePlayer player, GamePlayer player1)
To this:
Code: Select all
public bool Interact(GamePlayer player, GamePlayer player1)
Should at least get rid of that error.
[/code]