hi also ich hab jetzt ein kleine problem bei einem script
und zwar hab ich versucht das der NPC einen wegteleportiert ( hab richtige codes eingegeben )
aber er zeigt mir irgendwie noch ein fehler an
ich schlage mich immoment so durch ich veränder sachen an den scripts und schaue was denn passiert aber immoment komme ich nicht weiter und einer der #C kann bzw gelernt hat sieht die fehler ( hoffe ich zumindestens ) auf anhieb hier der NPC ^^
using System;
using System.Collections;
using System.Timers;
using DOL;
using DOL.GS;
using DOL.Database;
using DOL.GS.Scripts;
using DOL.Events;
using DOL.GS.GameEvents;
using DOL.GS.PacketHandler;
using DOL.GS.Quests;
namespace DOL.GS.Scripts
{
public class PorterAlb: GameMob
{
public override bool AddToWorld()
{
GameNpcInventoryTemplate template = new GameNpcInventoryTemplate();
template.AddNPCEquipment(eInventorySlot.Cloak, 1721, 22);
template.AddNPCEquipment(eInventorySlot.TorsoArmor, 1736);
template.AddNPCEquipment(eInventorySlot.LegsArmor, 1742);
template.AddNPCEquipment(eInventorySlot.ArmsArmor, 1735);
template.AddNPCEquipment(eInventorySlot.HandsArmor, 1741);
template.AddNPCEquipment(eInventorySlot.FeetArmor, 1754);
template.AddNPCEquipment(eInventorySlot.RightHandWeapon, 853, 22);
template.AddNPCEquipment(eInventorySlot.LeftHandWeapon, 854, 22);
Inventory = template.CloseTemplate();
Name = "Gefangenen Waechter";
GuildName = "Wenn du zum Clan der heiligen Krieger gehorst sprich mit mir";
Level = 100;
SwitchWeapon(eActiveWeaponSlot.Standard);
base.AddToWorld();
return true;
}
private eEmote Salute = eEmote.Wave;//The Emote the NPC does when Interacted
private eEmote Laugh = eEmote.Laugh;
private eEmote Raise = eEmote.Raise;
public override bool Interact(GamePlayer player)
{
if(!base.Interact(player)) return false;
TurnTo(player.X,player.Y);
foreach (GamePlayer emoteplayer in this.GetPlayersInRadius(WorldMgr.VISIBILITY_DISTANCE))
{
emoteplayer.Out.SendEmoteAnimation(this, Salute);
}
player.Out.SendMessage("Hallo " + player.Name + "! wie ich sehe seitihr ein gefangener von uns .\n" +
"aber wir haben immoment sehr viel probleme im Reich \n" +
"Und da ihr eingentlich ein Krieger seit will ich mal nicht so [sein] \n",
eChatType.CT_System, eChatLoc.CL_PopupWindow);
return true;
}
public override bool WhisperReceive(GameLiving source, string str)
{
if(!base.WhisperReceive(source,str)) return false;
GamePlayer player = (GamePlayer) source;
TurnTo(player.X,player.Y);
switch(str)
{
case "sein":
foreach (GamePlayer emoteplayer in this.GetPlayersInRadius(WorldMgr.VISIBILITY_DISTANCE))
emoteplayer.Out.SendEmoteAnimation(this, Laugh);
SendReply(player,
"Ja ihr habt richtig gehoert! \n" +
"Ihr werde euch auf wunsch zu eurem heimatreich Teleportieren und ihr koennt fuer das reich kapemfen wollt ihr freigelassen werden ? [OK] [Nein] oder wollt ich noch was [wissen]? \n" +
"Wie kann ich anderen spielern eine [Nachricht senden], Wo finde ich noch weitere [Informationen]? \n");
}
break;
case "OK":
//If your response is NOT "ok" we just return and don't do anything
if (response != 0x01)
return;
//The player clicked on "OK" so we teleport him!
player.MoveTo(1, 531405, 479515, 0, 2790);
break;
case "Nein":
foreach (GamePlayer emoteplayer in this.GetPlayersInRadius(WorldMgr.VISIBILITY_DISTANCE))
{
emoteplayer.Out.SendEmoteAnimation(this, Raise);
SendReply(player, "Wie ihr wollt : \n" +
"wenn ihr doch freigelassen werden wollt dann sprecht wieder mit mir \n" +
"und nun lasst mich bitte in ruhe wenn ihr schon nicht freigelassen werden wollt \n");
}
break;
case "wissen":
foreach (GamePlayer emoteplayer in this.GetPlayersInRadius(WorldMgr.VISIBILITY_DISTANCE))
{
emoteplayer.Out.SendEmoteAnimation(this, Raise);
SendReply(player, "Wenn ihr noch mehr wissen wollt dann geht zu Kalr den Klugen er kann euch da sicher weiterhelfen ");
}
break;
default: break;
}
return true;
}
private void SendReply(GamePlayer target, string msg)
{
target.Out.SendMessage(msg,eChatType.CT_System, eChatLoc.CL_PopupWindow);
}
}
}
und wenn ich das programm ( den dolserver ) starte sagt der mir folgendes problem:
0:03:42,981 - [MAIN] - DEBUG - DOL.GS.Scripts.ScriptMgr - Script assembly missing, recompile required!
20:03:43,996 - [MAIN] - ERROR - DOL.GS.Scripts.ScriptMgr - Script compilation failed because:
20:03:43,996 - [MAIN] - ERROR - DOL.GS.Scripts.ScriptMgr - Invalid token 'return' in class, struct, or interface member declaration
20:03:43,996 - [MAIN] - ERROR - DOL.GS.Scripts.ScriptMgr - c:\Dokumente und Einstellungen\Besitzer\Eigene Dateien\ICQ Lite\287240847\Ultra2k_227058070\scripts\customnpc\WächterAlb.cs Line:106 Col:5
20:03:43,996 - [MAIN] - ERROR - DOL.GS.Scripts.ScriptMgr - Script compilation failed because:
20:03:43,996 - [MAIN] - ERROR - DOL.GS.Scripts.ScriptMgr - Expected class, delegate, enum, interface, or struct
20:03:43,996 - [MAIN] - ERROR - DOL.GS.Scripts.ScriptMgr - c:\Dokumente und Einstellungen\Besitzer\Eigene Dateien\ICQ Lite\287240847\Ultra2k_227058070\scripts\customnpc\WächterAlb.cs Line:108 Col:12
20:03:43,996 - [MAIN] - ERROR - DOL.GS.Scripts.ScriptMgr - Script compilation failed because:
20:03:43,996 - [MAIN] - ERROR - DOL.GS.Scripts.ScriptMgr - Type or namespace definition, or end-of-file expected
20:03:43,996 - [MAIN] - ERROR - DOL.GS.Scripts.ScriptMgr - c:\Dokumente und Einstellungen\Besitzer\Eigene Dateien\ICQ Lite\287240847\Ultra2k_227058070\scripts\customnpc\WächterAlb.cs Line:113 Col:1
20:03:43,996 - [MAIN] - INFO - DOL.GS.GameServer - Script compilation: False
hoffe mir kann da einer weiter hlefen ^^