Folgender Fehler tritt auf, wenn ich versuche meine Energie auszugleichen. Als Workaround habe ich versucht das ganze mit Math.Round(zahl, 2) zu runden aber der Fehler tritt weiterhin auf.

Code:
[Exception: Value 0,200000000000045 is higher than possible amount '0,2']
   bei stne.TBaseShipActions.HauptenergieErzeugen(Double Erzeugen, Boolean IgnoreLimit, EShipEnergieSituation Situation, TShipRessources RessourceOffset) in D:\source\jack\dev1\projects\stne\game\Core\ShipAction.cs:Zeile 2333.
   bei stne.TBeam.startTransaktion() in D:\source\jack\dev1\projects\stne\game\Core\Beam.cs:Zeile 638.
   bei stne.TBeam._Execute() in D:\source\jack\dev1\projects\stne\game\Core\Beam.cs:Zeile 262.
   bei stne.TBeam.Execute() in D:\source\jack\dev1\projects\stne\game\Core\Beam.cs:Zeile 163.
   bei stne.TBaseShipActions.Beamen(IShipPlanet Obj2, EBeamMode Mode, TLagerHashTableEx Waren) in D:\source\jack\dev1\projects\stne\game\Core\ShipAction.cs:Zeile 4634.
   bei stne.TUserShipAction.Beame(IShipPlanet Obj2, EBeamMode Mode, TLagerHashTableEx Waren) in D:\source\jack\dev1\projects\stne\game\Core\ShipMultiAction.cs:Zeile 1039.
   bei stne.Scripting.Types.CBaseShipManager.TransferiereZuSchiff(Int32 ToShipID, Double Anzahl, EBeamRessource Ressource) in D:\source\jack\dev1\projects\stne\game\Scripting\Objects.cs:Zeile 2747.

[TargetInvocationException: Ein Aufrufziel hat einen Ausnahmefehler verursacht.]
   bei System.RuntimeMethodHandle._InvokeMethodFast(IRuntimeMethodInfo method, Object target, Object[] arguments, SignatureStruct& sig, MethodAttributes methodAttributes, RuntimeType typeOwner)
   bei System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture, Boolean skipVisibilityChecks)
   bei System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
   bei System.Reflection.MethodBase.Invoke(Object obj, Object[] parameters)
   bei larne.scripting.TScriptObjectMemberNative.GetValueInternal(TScriptContext Context, Object obj, Object[] Index) in D:\source\jack\dev1\projects\shared\larne.scripting\Script.cs:Zeile 2667.
   bei larne.scripting.TScriptObjectMemberNative.GetValue(TScriptContext Context, TCodeExpressionObjectMember CallExp, Object obj, Object[] Index) in D:\source\jack\dev1\projects\shared\larne.scripting\Script.cs:Zeile 2656.
   bei larne.scripting.Expressions.TCodeExpressionObjectMember.Get(TScriptContext Context) in D:\source\jack\dev1\projects\shared\larne.scripting\ScriptExpressions.cs:Zeile 376.
   bei larne.scripting.Commands.TCodeCommandExpressionCall.Process(TScriptContext Context) in D:\source\jack\dev1\projects\shared\larne.scripting\ScriptCommands.cs:Zeile 80.
   bei larne.scripting.TScriptContext.ExecuteInternal() in D:\source\jack\dev1\projects\shared\larne.scripting\Script.cs:Zeile 1194.

[Exception: Das Script hat einen Laufzeitfehler verursacht. Zeile: 874, Spalte: 15, Token: 'Schiff', Script: 'Bib_Staffel']
   bei larne.scripting.TScriptContext.ExecuteInternal() in D:\source\jack\dev1\projects\shared\larne.scripting\Script.cs:Zeile 1209.
   bei larne.scripting.TScriptContext.CallMethod(TScriptObjectMemberCustom mem, TCodeExpressionObjectMember Caller, Object[] Args, CObject Instance) in D:\source\jack\dev1\projects\shared\larne.scripting\Script.cs:Zeile 1015.
   bei larne.scripting.TScriptContext.CallMethod(TCodeExpressionObjectMember Caller, Object[] Args, CObject Instance) in D:\source\jack\dev1\projects\shared\larne.scripting\Script.cs:Zeile 973.
   bei larne.scripting.TScriptObjectMemberCustom.GetValue(TScriptContext Context, TCodeExpressionObjectMember CallExp, Object obj, Object[] Index) in D:\source\jack\dev1\projects\shared\larne.scripting\Script.cs:Zeile 1852.
   bei larne.scripting.Expressions.TCodeExpressionObjectMember.Get(TScriptContext Context) in D:\source\jack\dev1\projects\shared\larne.scripting\ScriptExpressions.cs:Zeile 376.
   bei larne.scripting.Commands.TCodeCommandExpressionCall.Process(TScriptContext Context) in D:\source\jack\dev1\projects\shared\larne.scripting\ScriptCommands.cs:Zeile 80.
   bei larne.scripting.TScriptContext.ExecuteInternal() in D:\source\jack\dev1\projects\shared\larne.scripting\Script.cs:Zeile 1194.

[Exception: Das Script hat einen Laufzeitfehler verursacht. Zeile: 874, Spalte: 15, Token: 'Schiff', Script: 'Bib_Staffel']
   bei larne.scripting.TScriptContext.ExecuteInternal() in D:\source\jack\dev1\projects\shared\larne.scripting\Script.cs:Zeile 1209.
   bei larne.scripting.TScriptContext.CallMethod(TScriptObjectMemberCustom mem, TCodeExpressionObjectMember Caller, Object[] Args, CObject Instance) in D:\source\jack\dev1\projects\shared\larne.scripting\Script.cs:Zeile 1015.
   bei larne.scripting.TScriptContext.CallMethod(TCodeExpressionObjectMember Caller, Object[] Args, CObject Instance) in D:\source\jack\dev1\projects\shared\larne.scripting\Script.cs:Zeile 973.
   bei larne.scripting.TScriptObjectClassCustom.CallConstructor(TScriptContext Context, CObject obj, TCodeExpressionCreateScriptObject Caller, Object[] Args) in D:\source\jack\dev1\projects\shared\larne.scripting\Script.cs:Zeile 1674.
   bei larne.scripting.Expressions.TCodeExpressionCreateScriptObject.Get(TScriptContext Context) in D:\source\jack\dev1\projects\shared\larne.scripting\ScriptExpressions.cs:Zeile 190.
   bei larne.scripting.Commands.TCodeCommandDim.Process(TScriptContext Context) in D:\source\jack\dev1\projects\shared\larne.scripting\ScriptCommands.cs:Zeile 150.
   bei larne.scripting.TScriptContext.ExecuteInternal() in D:\source\jack\dev1\projects\shared\larne.scripting\Script.cs:Zeile 1194.

[Exception: Das Script hat einen Laufzeitfehler verursacht. Zeile: 874, Spalte: 15, Token: 'Schiff', Script: 'Bib_Staffel']
   bei larne.scripting.TScriptContext.ExecuteInternal() in D:\source\jack\dev1\projects\shared\larne.scripting\Script.cs:Zeile 1209.
   bei larne.scripting.TScriptContext.CallMethod(TScriptObjectMemberCustom mem, TCodeExpressionObjectMember Caller, Object[] Args, CObject Instance) in D:\source\jack\dev1\projects\shared\larne.scripting\Script.cs:Zeile 1015.
   bei larne.scripting.TScriptContext.CallMethod(TCodeExpressionObjectMember Caller, Object[] Args, CObject Instance) in D:\source\jack\dev1\projects\shared\larne.scripting\Script.cs:Zeile 973.
   bei larne.scripting.TScriptObjectMemberCustom.GetValue(TScriptContext Context, TCodeExpressionObjectMember CallExp, Object obj, Object[] Index) in D:\source\jack\dev1\projects\shared\larne.scripting\Script.cs:Zeile 1852.
   bei larne.scripting.Expressions.TCodeExpressionObjectMember.Get(TScriptContext Context) in D:\source\jack\dev1\projects\shared\larne.scripting\ScriptExpressions.cs:Zeile 376.
   bei larne.scripting.Expressions.TCodeExpressionObjectMember.GetParameters(TScriptContext Context, TScriptParameterInfo[] ParamInfo) in D:\source\jack\dev1\projects\shared\larne.scripting\ScriptExpressions.cs:Zeile 312.
   bei larne.scripting.Expressions.TCodeExpressionObjectMember.Get(TScriptContext Context) in D:\source\jack\dev1\projects\shared\larne.scripting\ScriptExpressions.cs:Zeile 374.
   bei larne.scripting.Commands.TCodeCommandExpressionCall.Process(TScriptContext Context) in D:\source\jack\dev1\projects\shared\larne.scripting\ScriptCommands.cs:Zeile 80.
   bei larne.scripting.TScriptContext.ExecuteInternal() in D:\source\jack\dev1\projects\shared\larne.scripting\Script.cs:Zeile 1194.

[Exception: Das Script hat einen Laufzeitfehler verursacht. Zeile: 874, Spalte: 15, Token: 'Schiff', Script: 'Bib_Staffel']
   bei larne.scripting.TScriptContext.ExecuteInternal() in D:\source\jack\dev1\projects\shared\larne.scripting\Script.cs:Zeile 1209.
   bei larne.scripting.TScriptContext.CallMethod(TScriptObjectMemberCustom mem, TCodeExpressionObjectMember Caller, Object[] Args, CObject Instance) in D:\source\jack\dev1\projects\shared\larne.scripting\Script.cs:Zeile 1015.
   bei larne.scripting.TScriptContext.CallMethod(TCodeExpressionObjectMember Caller, Object[] Args, CObject Instance) in D:\source\jack\dev1\projects\shared\larne.scripting\Script.cs:Zeile 973.
   bei larne.scripting.TScriptObjectMemberCustom.GetValue(TScriptContext Context, TCodeExpressionObjectMember CallExp, Object obj, Object[] Index) in D:\source\jack\dev1\projects\shared\larne.scripting\Script.cs:Zeile 1852.
   bei larne.scripting.Expressions.TCodeExpressionObjectMember.Get(TScriptContext Context) in D:\source\jack\dev1\projects\shared\larne.scripting\ScriptExpressions.cs:Zeile 376.
   bei larne.scripting.Commands.TCodeCommandExpressionCall.Process(TScriptContext Context) in D:\source\jack\dev1\projects\shared\larne.scripting\ScriptCommands.cs:Zeile 80.
   bei larne.scripting.TScriptContext.ExecuteInternal() in D:\source\jack\dev1\projects\shared\larne.scripting\Script.cs:Zeile 1194.

[Exception: Das Script hat einen Laufzeitfehler verursacht. Zeile: 874, Spalte: 15, Token: 'Schiff', Script: 'Bib_Staffel']
   bei larne.scripting.TScriptContext.ExecuteInternal() in D:\source\jack\dev1\projects\shared\larne.scripting\Script.cs:Zeile 1209.
   bei larne.scripting.TScriptContext.Execute(Int32 StartLine) in D:\source\jack\dev1\projects\shared\larne.scripting\Script.cs:Zeile 1246.
   bei larne.scripting.TScriptContext.Execute() in D:\source\jack\dev1\projects\shared\larne.scripting\Script.cs:Zeile 1281.
   bei stne.TScript.ExecuteInternal() in D:\source\jack\dev1\projects\stne\game\Core\Temp3.cs:Zeile 1088.
   bei stne.TScript.ExecuteDirect() in D:\source\jack\dev1\projects\stne\game\Core\Temp3.cs:Zeile 999.
   bei stne.TScript.EnsureExecuted() in D:\source\jack\dev1\projects\stne\game\Core\Temp3.cs:Zeile 1144.
   bei stne.wf_ScriptEdit.pg_ep_Website(THtmlControl Container) in D:\source\jack\dev1\projects\stne\game\WebForms\ScriptEdit.cs:Zeile 1009.
   bei stne.wf_ScriptEdit.pg_TabControl() in D:\source\jack\dev1\projects\stne\game\WebForms\ScriptEdit.cs:Zeile 609.
   bei stne.wf_ScriptEdit.pg_Edit() in D:\source\jack\dev1\projects\stne\game\WebForms\ScriptEdit.cs:Zeile 535.
   bei stne.wf_ScriptEdit.CreatePage() in D:\source\jack\dev1\projects\stne\game\WebForms\ScriptEdit.cs:Zeile 209.
   bei stne.TstneBasePage.CallCreatePage() in D:\source\jack\dev1\projects\stne\game\Core\WebControls.cs:Zeile 191.
   bei stne.TstneGamePage.CallCreatePage() in D:\source\jack\dev1\projects\stne\game\Core\WebControls.cs:Zeile 980.
   bei stne.wf_ScriptEdit.Run() in D:\source\jack\dev1\projects\stne\game\WebForms\ScriptEdit.cs:Zeile 99.
   bei stne.wf_Game.Page_Load(Object sender, EventArgs e) in D:\source\jack\dev1\projects\stne\game\Game.aspx.cs:Zeile 140.
   bei System.Web.UI.Control.LoadRecursive()
   bei System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)

Assembly: larne.scripting.dll
Time: 11.05.2012 15:11:50
Server: DE1
User-ID: 62789
STNE-Version: 1.0.74.487
Compiled at: 09.05.2012 22:41:05
Compiled from: Jack
Hier der Entsprechende Code. Der Fehler tritt in der Zeile mit TransferToShip auf.

Code:
function EnergyEqualize() As Double {
		Var j As Integer;
		Var transfer As Integer;
		Var sum As Integer;
		Var durchschnitt As Integer;
		Var Schiff As CMyShip;
		Var ZielSchiff As CMyShip;

		For (Each Schiff In Fleet.Ships)
		{
			sum = (sum + Schiff.Energy);
		}

		durchschnitt = Math.Floor(sum / Fleet.Ships.Count);

		For (Each Schiff In Fleet.Ships){
			If(Schiff.Energy > durchschnitt) {
				j = 0;
				While((Schiff.Energy > durchschnitt) AND (j < Fleet.Ships.Count))
				{
					ZielSchiff = Fleet.Ships.Item(j);
					If((ZielSchiff.Energy < durchschnitt) AND (Schiff.ShipID <> ZielSchiff.ShipID))
					{
						transfer = (durchschnitt - ZielSchiff.Energy);
						If(transfer > (durchschnitt - ZielSchiff.Energy))
						{
							transfer = durchschnitt - ZielSchiff.Energy;
						}
						If(transfer > 0)
						{
							Schiff.Action.TransferToShip(ZielSchiff.ShipID, Math.Round(transfer,2), EBeamResource.Energy);
						}
					}
					j = j + 1;
				}
			}
		}
	}