[FIXED] D2NT 3.1 craft Problem

05/10/2010 00:31 FoGzone#1
Einige von euch kennen sicherlich das Problem, dass der Bot die cubed items nicht in den Item Logs auflistet.
Kopiert einfach diesen Code in die NTCubing im libs ordner und er wird euch ab sofort die cubed items auflisten =)

Um richtig cuben zu können (besonders beim craften von amus und ringen) müsst ihr den Bot auf englisch umstellen (im manager ein Häckchen bei "-direct" reinmachen)

Code:
const NTCU_GEM = 0;

const NTCU_MAGIC = 1;
const NTCU_MAGIC_CHARM = 2;

const NTCU_CRAFT_HITPOWER_HELM = 10;
const NTCU_CRAFT_HITPOWER_BOOTS = 11;
const NTCU_CRAFT_HITPOWER_GLOVES = 12;
const NTCU_CRAFT_HITPOWER_BELT = 13;
const NTCU_CRAFT_HITPOWER_SHIELD = 14;
const NTCU_CRAFT_HITPOWER_BODY = 15;
const NTCU_CRAFT_HITPOWER_AMULET = 16;
const NTCU_CRAFT_HITPOWER_RING = 17;
const NTCU_CRAFT_HITPOWER_WEAPON = 18;

const NTCU_CRAFT_BLOOD_HELM = 19;
const NTCU_CRAFT_BLOOD_BOOTS = 20;
const NTCU_CRAFT_BLOOD_GLOVES = 21;
const NTCU_CRAFT_BLOOD_BELT = 22;
const NTCU_CRAFT_BLOOD_SHIELD = 23;
const NTCU_CRAFT_BLOOD_BODY = 24;
const NTCU_CRAFT_BLOOD_AMULET = 25;
const NTCU_CRAFT_BLOOD_RING = 26;
const NTCU_CRAFT_BLOOD_WEAPON = 27;

const NTCU_CRAFT_CASTER_HELM = 28;
const NTCU_CRAFT_CASTER_BOOTS = 29;
const NTCU_CRAFT_CASTER_GLOVES = 30;
const NTCU_CRAFT_CASTER_BELT = 31;
const NTCU_CRAFT_CASTER_SHIELD = 32;
const NTCU_CRAFT_CASTER_BODY = 33;
const NTCU_CRAFT_CASTER_AMULET = 34;
const NTCU_CRAFT_CASTER_RING = 35;
const NTCU_CRAFT_CASTER_WEAPON = 36;

const NTCU_CRAFT_SAFETY_HELM = 37;
const NTCU_CRAFT_SAFETY_BOOTS = 38;
const NTCU_CRAFT_SAFETY_GLOVES = 39;
const NTCU_CRAFT_SAFETY_BELT = 40;
const NTCU_CRAFT_SAFETY_SHIELD = 41;
const NTCU_CRAFT_SAFETY_BODY = 42;
const NTCU_CRAFT_SAFETY_AMULET = 43;
const NTCU_CRAFT_SAFETY_RING = 44;
const NTCU_CRAFT_SAFETY_WEAPON = 45;

const NTCU_SOCKET_BODYARMOR = 50;
const NTCU_SOCKET_WEAPON = 51;
const NTCU_SOCKET_HELM = 52;
const NTCU_SOCKET_SHIELD = 53;

const NTCU_UPGRADE_N_UNIQUE_WEAPON = 60;
const NTCU_UPGRADE_N_UNIQUE_ARMOR = 61;
const NTCU_UPGRADE_E_UNIQUE_WEAPON = 62;
const NTCU_UPGRADE_E_UNIQUE_ARMOR = 63;

const NTCU_UPGRADE_N_RARE_WEAPON = 64;
const NTCU_UPGRADE_N_RARE_ARMOR = 65;
const NTCU_UPGRADE_E_RARE_WEAPON = 66;
const NTCU_UPGRADE_E_RARE_ARMOR = 67;

const NTCU_ESSENSE = 70;

const NTCU_RUNE_EL = 610;
const NTCU_RUNE_ELD = 611;
const NTCU_RUNE_TIR = 612;
const NTCU_RUNE_NEF = 613;
const NTCU_RUNE_ETH = 614;
const NTCU_RUNE_ITH = 615;
const NTCU_RUNE_TAL = 616;
const NTCU_RUNE_RAL = 617;
const NTCU_RUNE_ORT = 618;
const NTCU_RUNE_THUL = 619;
const NTCU_RUNE_AMN = 620;
const NTCU_RUNE_SOL = 621;
const NTCU_RUNE_SHAEL = 622;
const NTCU_RUNE_DOL = 623;
const NTCU_RUNE_HEL = 624;
const NTCU_RUNE_IO = 625;
const NTCU_RUNE_LUM = 626;
const NTCU_RUNE_KO = 627;
const NTCU_RUNE_FAL = 628;
const NTCU_RUNE_LEM = 629;
const NTCU_RUNE_PUL = 630;
const NTCU_RUNE_UM = 631;
const NTCU_RUNE_MAL = 632;
const NTCU_RUNE_IST = 633;
const NTCU_RUNE_GUL = 634;
const NTCU_RUNE_VEX = 635;
const NTCU_RUNE_OHM = 636;
const NTCU_RUNE_LO = 637;
const NTCU_RUNE_SUR = 638;
const NTCU_RUNE_BER = 639;
const NTCU_RUNE_JAH = 640;
const NTCU_RUNE_CHAM = 641;

var _NTCU_CraftRecipe = new Array();
_NTCU_CraftRecipe.push([84, 615, 571]);
_NTCU_CraftRecipe.push([85, 617, 571]);
_NTCU_CraftRecipe.push([79, 618, 571]);
_NTCU_CraftRecipe.push([85, 616, 571]);
_NTCU_CraftRecipe.push([82, 614, 571]);
_NTCU_CraftRecipe.push([85, 613, 571]);
_NTCU_CraftRecipe.push([90, 619, 571]);
_NTCU_CraftRecipe.push([86, 620, 571]);
_NTCU_CraftRecipe.push([85, 612, 571]);

_NTCU_CraftRecipe.push([84, 617, 581]);
_NTCU_CraftRecipe.push([85, 614, 581]);
_NTCU_CraftRecipe.push([79, 613, 581]);
_NTCU_CraftRecipe.push([85, 616, 581]);
_NTCU_CraftRecipe.push([82, 615, 581]);
_NTCU_CraftRecipe.push([85, 619, 581]);
_NTCU_CraftRecipe.push([90, 620, 581]);
_NTCU_CraftRecipe.push([86, 621, 581]);
_NTCU_CraftRecipe.push([85, 618, 581]);

_NTCU_CraftRecipe.push([84, 613, 561]);
_NTCU_CraftRecipe.push([85, 619, 561]);
_NTCU_CraftRecipe.push([79, 618, 561]);
_NTCU_CraftRecipe.push([85, 615, 561]);
_NTCU_CraftRecipe.push([82, 614, 561]);
_NTCU_CraftRecipe.push([85, 616, 561]);
_NTCU_CraftRecipe.push([92, 617, 561]);
_NTCU_CraftRecipe.push([86, 620, 561]);
_NTCU_CraftRecipe.push([85, 612, 561]);

_NTCU_CraftRecipe.push([84, 615, 576]);
_NTCU_CraftRecipe.push([85, 618, 576]);
_NTCU_CraftRecipe.push([79, 617, 576]);
_NTCU_CraftRecipe.push([85, 616, 576]);
_NTCU_CraftRecipe.push([82, 613, 576]);
_NTCU_CraftRecipe.push([85, 614, 576]);
_NTCU_CraftRecipe.push([90, 619, 576]);
_NTCU_CraftRecipe.push([86, 620, 576]);
_NTCU_CraftRecipe.push([85, 621, 576]);

var _NTCU_SocketRecipe = new Array();
_NTCU_SocketRecipe.push([616, 619, 566]);
_NTCU_SocketRecipe.push([617, 620, 561]);
_NTCU_SocketRecipe.push([617, 619, 571]);
_NTCU_SocketRecipe.push([616, 620, 581]);

var _NTCU_UpgradeRecipe = new Array();
_NTCU_UpgradeRecipe.push([7, 617, 621, 576]);
_NTCU_UpgradeRecipe.push([7, 616, 622, 586]);
_NTCU_UpgradeRecipe.push([7, 626, 630, 576]);
_NTCU_UpgradeRecipe.push([7, 627, 629, 586]);

_NTCU_UpgradeRecipe.push([6, 618, 620, 571]);
_NTCU_UpgradeRecipe.push([6, 617, 619, 561]);
_NTCU_UpgradeRecipe.push([6, 628, 631, 571]);
_NTCU_UpgradeRecipe.push([6, 627, 630, 561]);

var _NTCU_Inventory = new Array(4);
_NTCU_Inventory[0] = new Array(10);
_NTCU_Inventory[1] = new Array(10);
_NTCU_Inventory[2] = new Array(10);
_NTCU_Inventory[3] = new Array(10);

var _NTCU_LogString;

function NTCU_CheckItem(item, result)
{
	var i, n, _index;
	var _classid, _gid, _calclevel;
	var _result = false;

	if(!NTConfig_Cubing)
		return false;

	_classid = item.classid;
	_gid = item.gid;
	_calclevel = parseInt(me.GetStat(12)/2) + parseInt(item.itemlevel/2);

	for(i = 0 ; i < NTConfig_CubingItem.length ; i++)
	{
		if(NTConfig_CubingItem[i][0] == NTCU_GEM)
		{
			if(_classid == NTConfig_CubingItem[i][1])
			{
				for(n = 0 ; n < 3 ; n++)
				{
					if(NTConfig_CubingItem[i][2+n] == null)
					{
						NTConfig_CubingItem[i][2+n] = _gid;
						break;
					}
					else if(NTConfig_CubingItem[i][2+n] == _gid)
						break;
				}

				_result = true;
			}
		}
		else if(NTConfig_CubingItem[i][0] == NTCU_MAGIC || NTConfig_CubingItem[i][0] == NTCU_MAGIC_CHARM)
		{
			if(_classid == NTConfig_CubingItem[i][1])
			{
				if(result == 0 && item.quality == 4)
				{
					if(NTConfig_CubingItem[i][0] == NTCU_MAGIC_CHARM)
					{
						if(item.itemlevel >= 95)
						{
							if(NTConfig_CubingItem[i][2] == null)
							{
								NTConfig_CubingItem[i][2] = _gid;
								_result = true;
							}
							else if(NTConfig_CubingItem[i][2] == _gid)
								_result = true;
						}
					}
					//Begin Jav code
					else if( NTConfig_CubingItem[i][1] == 285 ) // maiden javelin
					{
						if(item.itemlevel >= 71 && item.itemlevel <= 75)
						{
							if(NTConfig_CubingItem[i][2] == null)
							{
								NTConfig_CubingItem[i][2] = _gid;
								_result = true;
							}
							else if(NTConfig_CubingItem[i][2] == _gid)
								_result = true;
						}
					}
					else if( NTConfig_CubingItem[i][1] == 295 ) // ceremonial javelin
					{
						if(item.itemlevel >= 77 && item.itemlevel <= 81)
						{
							if(NTConfig_CubingItem[i][2] == null)
							{
								NTConfig_CubingItem[i][2] = _gid;
								_result = true;
							}
							else if(NTConfig_CubingItem[i][2] == _gid)
								_result = true;
						}
					}
					else if( NTConfig_CubingItem[i][1] == 305 ) // maiden javelin
					{
						if(item.itemlevel >= 80 && item.itemlevel <= 84)
						{
							if(NTConfig_CubingItem[i][2] == null)
							{
								NTConfig_CubingItem[i][2] = _gid;
								_result = true;
							}
							else if(NTConfig_CubingItem[i][2] == _gid)
								_result = true;
						}
					}
					// End Jav Code
					else
					{
						if(item.itemlevel >= 85)
						{
							if(NTConfig_CubingItem[i][2] == null)
							{
								NTConfig_CubingItem[i][2] = _gid;
								_result = true;
							}
							else if(NTConfig_CubingItem[i][2] == _gid)
								_result = true;
						}
					}
				}
			}
			else if(_classid == 566 || _classid == 586 || _classid == 601)
			{
				if(NTConfig_CubingItem[i][2] != null)
				{
					for(n = 0 ; n < 3 ; n++)
					{
						if(NTConfig_CubingItem[i][3+n] == null)
						{
							NTConfig_CubingItem[i][3+n] = _gid;
							break;
						}
						else if(NTConfig_CubingItem[i][3+n] == _gid)
							break;
					}

					_result = true;
				}
			}
			else if(_classid == 565)
			{
				if(NTConfig_CubingItem[i][2] != null)
				{
					for(n = 0 ; n < 3 ; n++)
					{
						if(NTConfig_CubingItem[i][6+n] == null)
						{
							NTConfig_CubingItem[i][6+n] = _gid;
							break;
						}
						else if(NTConfig_CubingItem[i][6+n] == _gid)
							break;
					}

					_result = true;
				}
			}
			else if(_classid == 585)
			{
				if(NTConfig_CubingItem[i][2] != null)
				{
					for(n = 0 ; n < 3 ; n++)
					{
						if(NTConfig_CubingItem[i][9+n] == null)
						{
							NTConfig_CubingItem[i][9+n] = _gid;
							break;
						}
						else if(NTConfig_CubingItem[i][9+n] == _gid)
							break;
					}

					_result = true;
				}
			}
			else if(_classid == 600)
			{
				if(NTConfig_CubingItem[i][2] != null)
				{
					for(n = 0 ; n < 3 ; n++)
					{
						if(NTConfig_CubingItem[i][12+n] == null)
						{
							NTConfig_CubingItem[i][12+n] = _gid;
							break;
						}
						else if(NTConfig_CubingItem[i][12+n] == _gid)
							break;
					}

					_result = true;
				}
			}
		}
		else if(NTConfig_CubingItem[i][0] >= NTCU_CRAFT_HITPOWER_HELM && NTConfig_CubingItem[i][0] <= NTCU_CRAFT_SAFETY_WEAPON)
		{
			_index = NTConfig_CubingItem[i][0] - NTCU_CRAFT_HITPOWER_HELM;

			if(_classid == NTConfig_CubingItem[i][1])
			{
				if(result == 0 && item.quality == 4 && _calclevel >= _NTCU_CraftRecipe[_index][0])
				{
					if(NTConfig_CubingItem[i][2] == null)
					{
						NTConfig_CubingItem[i][2] = _gid;
						_result = true;
					}
					else if(NTConfig_CubingItem[i][2] == _gid)
						_result = true;
				}
			}
			else if(_classid == 643)
			{
				if(result == 0 && NTConfig_CubingItem[i][2] != null)
				{
					if(NTConfig_CubingItem[i][3] == null)
					{
						NTConfig_CubingItem[i][3] = _gid;
						_result = true;
					}
					else if(NTConfig_CubingItem[i][3] == _gid)
						_result = true;
				}
			}
			else if(_classid == _NTCU_CraftRecipe[_index][1])
			{
				if(NTConfig_CubingItem[i][2] != null)
				{
					if(NTConfig_CubingItem[i][4] == null)
					{
						NTConfig_CubingItem[i][4] = _gid;
						_result = true;
					}
					else if(NTConfig_CubingItem[i][4] == _gid)
						_result = true;
				}
			}
			else if(_classid == _NTCU_CraftRecipe[_index][2])
			{
				if(NTConfig_CubingItem[i][2] != null)
				{
					if(NTConfig_CubingItem[i][5] == null)
					{
						NTConfig_CubingItem[i][5] = _gid;
						_result = true;
					}
					else if(NTConfig_CubingItem[i][5] == _gid)
						_result = true;
				}
			}
			else if(_classid == _NTCU_CraftRecipe[_index][2]-1)
			{
				if(NTConfig_CubingItem[i][2] != null && NTConfig_CubingItem[i][5] == null)
				{
					for(n = 0 ; n < 3 ; n++)
					{
						if(NTConfig_CubingItem[i][6+n] == null)
						{
							NTConfig_CubingItem[i][6+n] = _gid;
							_result = true;

							break;
						}
						else if(NTConfig_CubingItem[i][6+n] == _gid)
						{
							_result = true;

							break;
						}
					}
				}
			}
		}
		else if(NTConfig_CubingItem[i][0] >= NTCU_SOCKET_BODYARMOR && NTConfig_CubingItem[i][0] <= NTCU_SOCKET_SHIELD)
		{
			_index = NTConfig_CubingItem[i][0] - NTCU_SOCKET_BODYARMOR;

			if(_classid == NTConfig_CubingItem[i][1])
			{
				if(result == 1 && item.quality <= 2 && item.GetStat(194) == 0)
				{
					if(NTConfig_CubingItem[i][2] == null)
					{
						NTConfig_CubingItem[i][2] = _gid;
						_result = true;
					}
					else if(NTConfig_CubingItem[i][2] == _gid)
						_result = true;
				}
			}
			else if(_classid == _NTCU_SocketRecipe[_index][0])
			{
				if(NTConfig_CubingItem[i][2] != null)
				{
					if(NTConfig_CubingItem[i][3] == null)
					{
						NTConfig_CubingItem[i][3] = _gid;
						_result = true;
					}
					else if(NTConfig_CubingItem[i][3] == _gid)
						_result = true;
				}
			}
			else if(_classid == _NTCU_SocketRecipe[_index][1])
			{
				if(NTConfig_CubingItem[i][2] != null)
				{
					if(NTConfig_CubingItem[i][4] == null)
					{
						NTConfig_CubingItem[i][4] = _gid;
						_result = true;
					}
					else if(NTConfig_CubingItem[i][4] == _gid)
						_result = true;
				}
			}
			else if(_classid == _NTCU_SocketRecipe[_index][2])
			{
				if(NTConfig_CubingItem[i][2] != null)
				{
					if(NTConfig_CubingItem[i][5] == null)
					{
						NTConfig_CubingItem[i][5] = _gid;
						_result = true;
					}
					else if(NTConfig_CubingItem[i][5] == _gid)
						_result = true;
				}
			}
			else if(_classid == _NTCU_SocketRecipe[_index][2]-1)
			{
				if(NTConfig_CubingItem[i][2] != null && NTConfig_CubingItem[i][5] == null)
				{
					for(n = 0 ; n < 3 ; n++)
					{
						if(NTConfig_CubingItem[i][6+n] == null)
						{
							NTConfig_CubingItem[i][6+n] = _gid;
							_result = true;

							break;
						}
						else if(NTConfig_CubingItem[i][6+n] == _gid)
						{
							_result = true;

							break;
						}
					}
				}
			}
		}
		else if(NTConfig_CubingItem[i][0] >= NTCU_UPGRADE_N_UNIQUE_WEAPON && NTConfig_CubingItem[i][0] <= NTCU_UPGRADE_E_RARE_ARMOR)
		{
			_index = NTConfig_CubingItem[i][0] - NTCU_UPGRADE_N_UNIQUE_WEAPON;

			if(_classid == NTConfig_CubingItem[i][1])
			{
				if(result == 1 && item.quality == _NTCU_UpgradeRecipe[_index][0])
				{
					if(NTConfig_CubingItem[i][2] == null)
					{
						NTConfig_CubingItem[i][2] = _gid;
						_result = true;
					}
					else if(NTConfig_CubingItem[i][2] == _gid)
						_result = true;
				}
			}
			else if(_classid == _NTCU_UpgradeRecipe[_index][1])
			{
				if(NTConfig_CubingItem[i][2] != null)
				{
					if(NTConfig_CubingItem[i][3] == null)
					{
						NTConfig_CubingItem[i][3] = _gid;
						_result = true;
					}
					else if(NTConfig_CubingItem[i][3] == _gid)
						_result = true;
				}
			}
			else if(_classid == _NTCU_UpgradeRecipe[_index][2])
			{
				if(NTConfig_CubingItem[i][2] != null)
				{
					if(NTConfig_CubingItem[i][4] == null)
					{
						NTConfig_CubingItem[i][4] = _gid;
						_result = true;
					}
					else if(NTConfig_CubingItem[i][4] == _gid)
						_result = true;
				}
			}
			else if(_classid == _NTCU_UpgradeRecipe[_index][3])
			{
				if(NTConfig_CubingItem[i][2] != null)
				{
					if(NTConfig_CubingItem[i][5] == null)
					{
						NTConfig_CubingItem[i][5] = _gid;
						_result = true;
					}
					else if(NTConfig_CubingItem[i][5] == _gid)
						_result = true;
				}
			}
			else if(_classid == _NTCU_UpgradeRecipe[_index][3]-1)
			{
				if(NTConfig_CubingItem[i][2] != null && NTConfig_CubingItem[i][5] == null)
				{
					for(n = 0 ; n < 3 ; n++)
					{
						if(NTConfig_CubingItem[i][6+n] == null)
						{
							NTConfig_CubingItem[i][6+n] = _gid;
							_result = true;

							break;
						}
						else if(NTConfig_CubingItem[i][6+n] == _gid)
						{
							_result = true;

							break;
						}
					}
				}
			}
		}
		else if(NTConfig_CubingItem[i][0] == NTCU_ESSENSE)
		{
			if(_classid >= 654 && _classid <= 657)
			{
				if(NTConfig_CubingItem[i][2+_classid-654] == null)
				{
					NTConfig_CubingItem[i][2+_classid-654] = _gid;
					_result = true;
				}
				else if(NTConfig_CubingItem[i][2+_classid-654] == _gid)
					_result = true;
			}
		}
		else if(NTConfig_CubingItem[i][0] >= NTCU_RUNE_EL && NTConfig_CubingItem[i][0] <= NTCU_RUNE_ORT)
		{
			if(_classid == NTConfig_CubingItem[i][0])
			{
				for(n = 0 ; n < 3 ; n++)
				{
					if(NTConfig_CubingItem[i][2+n] == null)
					{
						NTConfig_CubingItem[i][2+n] = _gid;
						break;
					}
					else if(NTConfig_CubingItem[i][2+n] == _gid)
						break;
				}

				_result = true;
			}
		}
		else if(NTConfig_CubingItem[i][0] >= NTCU_RUNE_THUL && NTConfig_CubingItem[i][0] <= NTCU_RUNE_LEM)
		{
			if(_classid == NTConfig_CubingItem[i][0])
			{
				for(n = 0 ; n < 3 ; n++)
				{
					if(NTConfig_CubingItem[i][2+n] == null)
					{
						NTConfig_CubingItem[i][2+n] = _gid;
						_result = true;

						break;
					}
					else if(NTConfig_CubingItem[i][2+n] == _gid)
					{
						_result = true;

						break;
					}
				}
			}
			else if(_classid == NTConfig_CubingItem[i][1])
			{
				if(NTConfig_CubingItem[i][3] != null)
				{
					if(NTConfig_CubingItem[i][5] == null)
					{
						NTConfig_CubingItem[i][5] = _gid;
						_result = true;
					}
					else if(NTConfig_CubingItem[i][5] == _gid)
						_result = true;
				}
			}
		}
		else if(NTConfig_CubingItem[i][0] >= NTCU_RUNE_PUL && NTConfig_CubingItem[i][0] <= NTCU_RUNE_CHAM)
		{
			if(_classid == NTConfig_CubingItem[i][0])
			{
				for(n = 0 ; n < 2 ; n++)
				{
					if(NTConfig_CubingItem[i][2+n] == null)
					{
						NTConfig_CubingItem[i][2+n] = _gid;
						break;
					}
					else if(NTConfig_CubingItem[i][2+n] == _gid)
						break;
				}

				_result = true;
			}
			else if(_classid == NTConfig_CubingItem[i][1])
			{
				if(NTConfig_CubingItem[i][3] != null)
				{
					if(NTConfig_CubingItem[i][4] == null)
					{
						NTConfig_CubingItem[i][4] = _gid;
						_result = true;
					}
					else if(NTConfig_CubingItem[i][4] == _gid)
						_result = true;
				}
			}
		}
	}

	return _result;
}

function NTCU_InitCubing()
{
	var i, n;
	var _count;
	var _items;

	if(!NTConfig_Cubing)
		return false;

	for(i = 0 ; i < NTConfig_CubingItem.length ; i++)
	{
		if(NTConfig_CubingItem[i][0] < NTCU_MAGIC)
			_count = 5;
		else if(NTConfig_CubingItem[i][0] < NTCU_CRAFT_HITPOWER_HELM)
			_count = 15;
		else if(NTConfig_CubingItem[i][0] < NTCU_ESSENSE)
			_count = 9;
		else if(NTConfig_CubingItem[i][0] == NTCU_ESSENSE)
			_count = 6;
		else if(NTConfig_CubingItem[i][0] < NTCU_RUNE_THUL)
			_count = 5;
		else if(NTConfig_CubingItem[i][0] < NTCU_RUNE_PUL)
			_count = 6;
		else
			_count = 5;

		for(n = 2 ; n < _count ; n++)
			NTConfig_CubingItem[i][n] = null;
	}

	_items = me.GetItems();

	if(!_items)
		return false;

	for(i = 0 ; i < _items.length ; i++)
	{
		if(_items[i].mode == 0)
		{
			if(_items[i].itemloc != 0 || NTConfig_Columns[_items[i].y][_items[i].x])
				NTSI_CheckItem(_items[i]);
		}
	}

	for(i = 0 ; i < _items.length ; i++)
	{
		if(_items[i].mode == 0)
		{
			if(_items[i].itemloc != 0 || NTConfig_Columns[_items[i].y][_items[i].x])
				NTSI_CheckItem(_items[i]);
		}
	}

	return true;
}

function NTCU_CheckCubing()
{
	var i, n;

	if(!NTConfig_Cubing)
		return false;

	for(i = 0 ; i < NTConfig_CubingItem.length ; i++)
	{
		if(NTConfig_CubingItem[i][0] == NTCU_MAGIC || NTConfig_CubingItem[i][0] == NTCU_MAGIC_CHARM)
		{
			for(n = 2 ; n < 6 ; n++)
			{
				if(NTConfig_CubingItem[i][n] == null)
					break;
			}

			if(n >= 6)
				break;

			for(n = 6 ; n < 9 ; n++)
			{
				if(NTConfig_CubingItem[i][n] == null)
					break;
			}

			if(n >= 9)
				break;

			for(n = 9 ; n < 12 ; n++)
			{
				if(NTConfig_CubingItem[i][n] == null)
					break;
			}

			if(n >= 12)
				break;

			for(n = 12 ; n < 15 ; n++)
			{
				if(NTConfig_CubingItem[i][n] == null)
					break;
			}

			if(n >= 15)
				break;
		}
		else if(NTConfig_CubingItem[i][0] >= NTCU_CRAFT_HITPOWER_HELM && NTConfig_CubingItem[i][0] <= NTCU_UPGRADE_E_RARE_ARMOR)
		{
			for(n = 2 ; n < 6 ; n++)
			{
				if(NTConfig_CubingItem[i][n] == null)
					break;
			}

			if(n >= 6)
				break;

			for(n = 6 ; n < 9 ; n++)
			{
				if(NTConfig_CubingItem[i][n] == null)
					break;
			}

			if(n >= 9)
				break;
		}
		else
		{
			for(n = 2 ; n < NTConfig_CubingItem[i].length ; n++)
			{
				if(NTConfig_CubingItem[i][n] == null)
					break;
			}

			if(n >= NTConfig_CubingItem[i].length)
				break;
		}
	}

	return (i < NTConfig_CubingItem.length);
}

function NTCU_DoCubing()
{
	var i, n;
	var _items;

	_items = me.GetItems(NTC_UNIT_CUBE);

	if(!_items || _items.length < 1)
		return false;

	if(NTCU_CheckCubeInventoryInt() > 0)
	{
		if(!NTCU_OpenCubeInt(_items[0]))
			return false;

		if(NTCU_ClearCubeInt() < 1)
			return false;

		NTCU_CloseCubeInt();
	}

	do
	{
		for(i = 0 ; i < NTConfig_CubingItem.length ; i++)
		{
			if(NTConfig_CubingItem[i][0] == NTCU_MAGIC || NTConfig_CubingItem[i][0] == NTCU_MAGIC_CHARM)
			{
				for(n = 2 ; n < 6 ; n++)
				{
					if(NTConfig_CubingItem[i][n] == null)
						break;
				}

				if(n >= 6)
				{
					if(!NTCU_MoveItemsToCubeInt(_items[0], i, 2, 5))
						return false;

					break;
				}

				for(n = 6 ; n < 9 ; n++)
				{
					if(NTConfig_CubingItem[i][n] == null)
						break;
				}

				if(n >= 9)
				{
					if(!NTCU_MoveItemsToCubeInt(_items[0], i, 6, 8))
						return false;

					break;
				}

				for(n = 9 ; n < 12 ; n++)
				{
					if(NTConfig_CubingItem[i][n] == null)
						break;
				}

				if(n >= 12)
				{
					if(!NTCU_MoveItemsToCubeInt(_items[0], i, 9, 11))
						return false;

					break;
				}

				for(n = 12 ; n < 15 ; n++)
				{
					if(NTConfig_CubingItem[i][n] == null)
						break;
				}

				if(n >= 15)
				{
					if(!NTCU_MoveItemsToCubeInt(_items[0], i, 12, 14))
						return false;

					break;
				}
			}
			else if(NTConfig_CubingItem[i][0] >= NTCU_CRAFT_HITPOWER_HELM && NTConfig_CubingItem[i][0] <= NTCU_UPGRADE_E_RARE_ARMOR)
			{
				for(n = 2 ; n < 6 ; n++)
				{
					if(NTConfig_CubingItem[i][n] == null)
						break;
				}

				if(n >= 6)
				{
					if(!NTCU_MoveItemsToCubeInt(_items[0], i, 2, 5))
						return false;

					break;
				}

				for(n = 6 ; n < 9 ; n++)
				{
					if(NTConfig_CubingItem[i][n] == null)
						break;
				}

				if(n >= 9)
				{
					if(!NTCU_MoveItemsToCubeInt(_items[0], i, 6, 8))
						return false;

					break;
				}
			}
			else
			{
				for(n = 2 ; n < NTConfig_CubingItem[i].length ; n++)
				{
					if(NTConfig_CubingItem[i][n] == null)
						break;
				}

				if(n >= NTConfig_CubingItem[i].length)
				{
					if(!NTCU_MoveItemsToCubeInt(_items[0], i, 2, NTConfig_CubingItem[i].length-1))
						return false;

					break;
				}
			}
		}

		if(i < NTConfig_CubingItem.length)
		{
			if(!NTCU_OpenCubeInt(_items[0]))
				return false;

			if(!Transmute())
				return false;

			NTC_PingDelay(800);

			NTC_SendLogToOOG(NTC_LOG_COMMON, _NTCU_LogString);
			
			var crafted_itm = NTCU_GetCubeContents();
			if (crafted_itm.length == 1)
			{
				if (crafted_itm[0].quality == 8)
				{
					if ( NTSI_CheckItem(crafted_itm[0]) != 0 )
						NTC_SendLogToOOG(NTC_LOG_ITEM, "Kept Cubed Item " + NTC_ItemQualityToMGRColor[crafted_itm[0].quality] + crafted_itm[0].name.split("\n")[0] + ";" + crafted_itm[0].itemdesc);
					else
						NTC_SendLogToOOG(NTC_LOG_ITEM, "Trashed Cubed Item " + NTC_ItemQualityToMGRColor[crafted_itm[0].quality] + crafted_itm[0].name.split("\n")[0] + ";" + crafted_itm[0].itemdesc);
				}
					
			}

			if(NTCU_ClearCubeInt() == 1)
				NTCU_CloseCubeInt();
			else
			{
				NTCU_CloseCubeInt();

				return false;
			}
		}
	} while(NTCU_InitCubing() && NTCU_CheckCubing());

	return true;
}

// Internal function
function NTCU_CheckCubeInventoryInt()
{
	var i, x, y;
	var _itemcounts = 0;
	var _items;

	for(y = 0 ; y < 4 ; y++)
	{
		for(x = 0 ; x < 10 ; x++)
			_NTCU_Inventory[y][x] = 0;
	}

	_items = me.GetItems();

	if(!_items)
		return 0;

	for(i = 0 ; i < _items.length ; i++)
	{
		if(_items[i].mode == 0)
		{
			if(_items[i].itemloc == 0)
			{
				for(y = 0 ; y < _items[i].ysize ; y++)
				{
					for(x = 0 ; x < _items[i].xsize ; x++)
						_NTCU_Inventory[_items[i].y+y][_items[i].x+x] = 1;
				}
			}
			else if(_items[i].itemloc == 3)
				_itemcounts++;
		}
	}

	return _itemcounts;
}

function NTCU_MoveItemsToCubeInt(cube, index, start, end)
{
	var i, n;
	var _items;

	_items = me.GetItems();

	if(!_items)
		return false;

	_NTCU_LogString = "Transmuted ";

	for(i = start ; i <= end ; i++)
	{
		for(n = 0 ; n < _items.length ; n++)
		{
			if(_items[n].gid == NTConfig_CubingItem[index][i])
			{
				if(!NTCU_MoveItemToCubeInt(cube, _items[n]))
					return false;

				if(i > start)
					_NTCU_LogString += "+";

				_NTCU_LogString += _items[n].name.split("\n")[0];

				break;
			}
		}

		if(n >= _items.length)
			return false;
	}

	return true;
}

function NTCU_MoveItemToCubeInt(cube, item)
{
	var x, y;
	var _itemx, _itemy;

	if(item.itemloc == 3)
		return true;

	_itemx = item.x;
	_itemy = item.y;

	if(!NTC_ItemToCursor(item))
		return false;

	if(item.itemloc == 0)
	{
		for(y = 0 ; y < item.ysize ; y++)
		{
			for(x = 0 ; x < item.xsize ; x++)
				_NTCU_Inventory[_itemy+y][_itemx+x] = 0;
		}
	}

	for(x = 0 ; x < 80 ; x++)
	{
		if((x % 40) == 0)
		{
			if(item.ysize < 3)
				me.ClickItem(0, cube.x, cube.y, cube.itemloc);
			else if(item.ysize == 3)
				me.ClickItem(0, cube.x, cube.y-1, cube.itemloc);
			else
			{
				if(cube.y == 0)
					me.ClickItem(0, cube.x, -1, cube.itemloc);
				else
					me.ClickItem(0, cube.x, cube.y-2, cube.itemloc);
			}
		}

		NTC_Delay(100);

		if(!me.itemoncursor)
			break;
	}

	if(x >= 80)
		return false;

	NTC_PingDelay(200);

	return true;
}

function NTCU_MoveItemToInventoryInt(item)
{
	var x, y, m, n;
	var _havespace;

	for(y = 0 ; y < 4 ; y++)
	{
		for(x = 0 ; x < 10 ; x++)
		{
			_havespace = true;

			for(m = 0 ; m < item.ysize ; m++)
			{
				for(n = 0 ; n < item.xsize ; n++)
				{
					if(_NTCU_Inventory[y+m][x+n] == 1)
					{
						_havespace = false;
						m = 4;
						break;
					}
				}
			}

			if(_havespace)
			{
				if(!NTC_ItemToCursor(item))
					return false;

				for(m = 0 ; m < 80 ; m++)
				{
					if((m % 40) == 0)
						me.ClickItem(0, x, y, 0);

					NTC_Delay(100);

					if(!me.itemoncursor)
						break;
				}

				if(m >= 80)
					return false;

				for(m = 0 ; m < item.ysize ; m++)
				{
					for(n = 0 ; n < item.xsize ; n++)
						_NTCU_Inventory[y+m][x+n] = 1;
				}

				NTC_PingDelay(200);

				return true;
			}
		}
	}

	return false;
}

function NTCU_OpenCubeInt(_cube)
{
	if(_cube.itemloc == 4 && !GetUIState(0x19))
	{
		var _stash = NTC_FindUnit(NTC_UNIT_OBJECT, NTC_UNIT_STASH, 1);

		if(!_stash)
			return false;

		if(!NTT_DoInteract(_stash))
			return false;
	}

	if(!GetUIState(0x1A))
		return NTT_DoInteract(_cube);

	return true;
}

function NTCU_CloseCubeInt()
{
	var i;

	if(!GetUIState(0x1A))
		return true;

	for(i = 0 ; i < 20 ; i++)
	{
		if((i % 10) == 0)
			me.Cancel(0);

		NTC_Delay(200);

		if(!GetUIState(0x1A))
		{
			NTC_PingDelay(200);
			return true;
		}
	}

	return false;
}

function NTCU_ClearCubeInt()
{
	var i;
	var _itemcounts = 0;
	var _items = me.GetItems();

	if(!_items)
		return 0;

	for(i = 0 ; i < _items.length ; i++)
	{
		if(_items[i].mode == 0 && _items[i].itemloc == 3)
		{
			if(!NTCU_MoveItemToInventoryInt(_items[i]))
				return _itemcounts;

			_itemcounts++;
		}
	}

	return _itemcounts;
}

function NTCU_GetCubeContents() 
{
	var _items = me.GetItems();
	var _cube_items = new Array();

	for(i = 0 ; i < _items.length ; i++)
	{
		if(_items[i].mode == 0 && _items[i].itemloc == 3)
		{
			_cube_items.push(_items[i]);
		}
	}

	return _cube_items;	
}
05/10/2010 02:19 wessi86#2
du bist cool
05/10/2010 07:46 HcAndi20#3
danke dir^^
05/10/2010 09:15 Muddy Waters#4
Quote:
Originally Posted by Knutschkugel View Post
Einige von euch kennen sicherlich das Problem, dass der Bot die cubed items nicht in den Item Logs auflistet.
Kopiert einfach diesen Code in die NTCubing im libs ordner und er wird euch ab sofort die cubed items auflisten =)

Um richtig cuben zu können (besonders beim craften von amus und ringen) müsst ihr den Bot auf englisch umstellen (im manager ein Häckchen bei "-direct" reinmachen)

Code:
const NTCU_GEM = 0;

const NTCU_MAGIC = 1;
const NTCU_MAGIC_CHARM = 2;

const NTCU_CRAFT_HITPOWER_HELM = 10;
const NTCU_CRAFT_HITPOWER_BOOTS = 11;
const NTCU_CRAFT_HITPOWER_GLOVES = 12;
const NTCU_CRAFT_HITPOWER_BELT = 13;
const NTCU_CRAFT_HITPOWER_SHIELD = 14;
const NTCU_CRAFT_HITPOWER_BODY = 15;
const NTCU_CRAFT_HITPOWER_AMULET = 16;
const NTCU_CRAFT_HITPOWER_RING = 17;
const NTCU_CRAFT_HITPOWER_WEAPON = 18;

const NTCU_CRAFT_BLOOD_HELM = 19;
const NTCU_CRAFT_BLOOD_BOOTS = 20;
const NTCU_CRAFT_BLOOD_GLOVES = 21;
const NTCU_CRAFT_BLOOD_BELT = 22;
const NTCU_CRAFT_BLOOD_SHIELD = 23;
const NTCU_CRAFT_BLOOD_BODY = 24;
const NTCU_CRAFT_BLOOD_AMULET = 25;
const NTCU_CRAFT_BLOOD_RING = 26;
const NTCU_CRAFT_BLOOD_WEAPON = 27;

const NTCU_CRAFT_CASTER_HELM = 28;
const NTCU_CRAFT_CASTER_BOOTS = 29;
const NTCU_CRAFT_CASTER_GLOVES = 30;
const NTCU_CRAFT_CASTER_BELT = 31;
const NTCU_CRAFT_CASTER_SHIELD = 32;
const NTCU_CRAFT_CASTER_BODY = 33;
const NTCU_CRAFT_CASTER_AMULET = 34;
const NTCU_CRAFT_CASTER_RING = 35;
const NTCU_CRAFT_CASTER_WEAPON = 36;

const NTCU_CRAFT_SAFETY_HELM = 37;
const NTCU_CRAFT_SAFETY_BOOTS = 38;
const NTCU_CRAFT_SAFETY_GLOVES = 39;
const NTCU_CRAFT_SAFETY_BELT = 40;
const NTCU_CRAFT_SAFETY_SHIELD = 41;
const NTCU_CRAFT_SAFETY_BODY = 42;
const NTCU_CRAFT_SAFETY_AMULET = 43;
const NTCU_CRAFT_SAFETY_RING = 44;
const NTCU_CRAFT_SAFETY_WEAPON = 45;

const NTCU_SOCKET_BODYARMOR = 50;
const NTCU_SOCKET_WEAPON = 51;
const NTCU_SOCKET_HELM = 52;
const NTCU_SOCKET_SHIELD = 53;

const NTCU_UPGRADE_N_UNIQUE_WEAPON = 60;
const NTCU_UPGRADE_N_UNIQUE_ARMOR = 61;
const NTCU_UPGRADE_E_UNIQUE_WEAPON = 62;
const NTCU_UPGRADE_E_UNIQUE_ARMOR = 63;

const NTCU_UPGRADE_N_RARE_WEAPON = 64;
const NTCU_UPGRADE_N_RARE_ARMOR = 65;
const NTCU_UPGRADE_E_RARE_WEAPON = 66;
const NTCU_UPGRADE_E_RARE_ARMOR = 67;

const NTCU_ESSENSE = 70;

const NTCU_RUNE_EL = 610;
const NTCU_RUNE_ELD = 611;
const NTCU_RUNE_TIR = 612;
const NTCU_RUNE_NEF = 613;
const NTCU_RUNE_ETH = 614;
const NTCU_RUNE_ITH = 615;
const NTCU_RUNE_TAL = 616;
const NTCU_RUNE_RAL = 617;
const NTCU_RUNE_ORT = 618;
const NTCU_RUNE_THUL = 619;
const NTCU_RUNE_AMN = 620;
const NTCU_RUNE_SOL = 621;
const NTCU_RUNE_SHAEL = 622;
const NTCU_RUNE_DOL = 623;
const NTCU_RUNE_HEL = 624;
const NTCU_RUNE_IO = 625;
const NTCU_RUNE_LUM = 626;
const NTCU_RUNE_KO = 627;
const NTCU_RUNE_FAL = 628;
const NTCU_RUNE_LEM = 629;
const NTCU_RUNE_PUL = 630;
const NTCU_RUNE_UM = 631;
const NTCU_RUNE_MAL = 632;
const NTCU_RUNE_IST = 633;
const NTCU_RUNE_GUL = 634;
const NTCU_RUNE_VEX = 635;
const NTCU_RUNE_OHM = 636;
const NTCU_RUNE_LO = 637;
const NTCU_RUNE_SUR = 638;
const NTCU_RUNE_BER = 639;
const NTCU_RUNE_JAH = 640;
const NTCU_RUNE_CHAM = 641;

var _NTCU_CraftRecipe = new Array();
_NTCU_CraftRecipe.push([84, 615, 571]);
_NTCU_CraftRecipe.push([85, 617, 571]);
_NTCU_CraftRecipe.push([79, 618, 571]);
_NTCU_CraftRecipe.push([85, 616, 571]);
_NTCU_CraftRecipe.push([82, 614, 571]);
_NTCU_CraftRecipe.push([85, 613, 571]);
_NTCU_CraftRecipe.push([90, 619, 571]);
_NTCU_CraftRecipe.push([86, 620, 571]);
_NTCU_CraftRecipe.push([85, 612, 571]);

_NTCU_CraftRecipe.push([84, 617, 581]);
_NTCU_CraftRecipe.push([85, 614, 581]);
_NTCU_CraftRecipe.push([79, 613, 581]);
_NTCU_CraftRecipe.push([85, 616, 581]);
_NTCU_CraftRecipe.push([82, 615, 581]);
_NTCU_CraftRecipe.push([85, 619, 581]);
_NTCU_CraftRecipe.push([90, 620, 581]);
_NTCU_CraftRecipe.push([86, 621, 581]);
_NTCU_CraftRecipe.push([85, 618, 581]);

_NTCU_CraftRecipe.push([84, 613, 561]);
_NTCU_CraftRecipe.push([85, 619, 561]);
_NTCU_CraftRecipe.push([79, 618, 561]);
_NTCU_CraftRecipe.push([85, 615, 561]);
_NTCU_CraftRecipe.push([82, 614, 561]);
_NTCU_CraftRecipe.push([85, 616, 561]);
_NTCU_CraftRecipe.push([92, 617, 561]);
_NTCU_CraftRecipe.push([86, 620, 561]);
_NTCU_CraftRecipe.push([85, 612, 561]);

_NTCU_CraftRecipe.push([84, 615, 576]);
_NTCU_CraftRecipe.push([85, 618, 576]);
_NTCU_CraftRecipe.push([79, 617, 576]);
_NTCU_CraftRecipe.push([85, 616, 576]);
_NTCU_CraftRecipe.push([82, 613, 576]);
_NTCU_CraftRecipe.push([85, 614, 576]);
_NTCU_CraftRecipe.push([90, 619, 576]);
_NTCU_CraftRecipe.push([86, 620, 576]);
_NTCU_CraftRecipe.push([85, 621, 576]);

var _NTCU_SocketRecipe = new Array();
_NTCU_SocketRecipe.push([616, 619, 566]);
_NTCU_SocketRecipe.push([617, 620, 561]);
_NTCU_SocketRecipe.push([617, 619, 571]);
_NTCU_SocketRecipe.push([616, 620, 581]);

var _NTCU_UpgradeRecipe = new Array();
_NTCU_UpgradeRecipe.push([7, 617, 621, 576]);
_NTCU_UpgradeRecipe.push([7, 616, 622, 586]);
_NTCU_UpgradeRecipe.push([7, 626, 630, 576]);
_NTCU_UpgradeRecipe.push([7, 627, 629, 586]);

_NTCU_UpgradeRecipe.push([6, 618, 620, 571]);
_NTCU_UpgradeRecipe.push([6, 617, 619, 561]);
_NTCU_UpgradeRecipe.push([6, 628, 631, 571]);
_NTCU_UpgradeRecipe.push([6, 627, 630, 561]);

var _NTCU_Inventory = new Array(4);
_NTCU_Inventory[0] = new Array(10);
_NTCU_Inventory[1] = new Array(10);
_NTCU_Inventory[2] = new Array(10);
_NTCU_Inventory[3] = new Array(10);

var _NTCU_LogString;

function NTCU_CheckItem(item, result)
{
	var i, n, _index;
	var _classid, _gid, _calclevel;
	var _result = false;

	if(!NTConfig_Cubing)
		return false;

	_classid = item.classid;
	_gid = item.gid;
	_calclevel = parseInt(me.GetStat(12)/2) + parseInt(item.itemlevel/2);

	for(i = 0 ; i < NTConfig_CubingItem.length ; i++)
	{
		if(NTConfig_CubingItem[i][0] == NTCU_GEM)
		{
			if(_classid == NTConfig_CubingItem[i][1])
			{
				for(n = 0 ; n < 3 ; n++)
				{
					if(NTConfig_CubingItem[i][2+n] == null)
					{
						NTConfig_CubingItem[i][2+n] = _gid;
						break;
					}
					else if(NTConfig_CubingItem[i][2+n] == _gid)
						break;
				}

				_result = true;
			}
		}
		else if(NTConfig_CubingItem[i][0] == NTCU_MAGIC || NTConfig_CubingItem[i][0] == NTCU_MAGIC_CHARM)
		{
			if(_classid == NTConfig_CubingItem[i][1])
			{
				if(result == 0 && item.quality == 4)
				{
					if(NTConfig_CubingItem[i][0] == NTCU_MAGIC_CHARM)
					{
						if(item.itemlevel >= 95)
						{
							if(NTConfig_CubingItem[i][2] == null)
							{
								NTConfig_CubingItem[i][2] = _gid;
								_result = true;
							}
							else if(NTConfig_CubingItem[i][2] == _gid)
								_result = true;
						}
					}
					//Begin Jav code
					else if( NTConfig_CubingItem[i][1] == 285 ) // maiden javelin
					{
						if(item.itemlevel >= 71 && item.itemlevel <= 75)
						{
							if(NTConfig_CubingItem[i][2] == null)
							{
								NTConfig_CubingItem[i][2] = _gid;
								_result = true;
							}
							else if(NTConfig_CubingItem[i][2] == _gid)
								_result = true;
						}
					}
					else if( NTConfig_CubingItem[i][1] == 295 ) // ceremonial javelin
					{
						if(item.itemlevel >= 77 && item.itemlevel <= 81)
						{
							if(NTConfig_CubingItem[i][2] == null)
							{
								NTConfig_CubingItem[i][2] = _gid;
								_result = true;
							}
							else if(NTConfig_CubingItem[i][2] == _gid)
								_result = true;
						}
					}
					else if( NTConfig_CubingItem[i][1] == 305 ) // maiden javelin
					{
						if(item.itemlevel >= 80 && item.itemlevel <= 84)
						{
							if(NTConfig_CubingItem[i][2] == null)
							{
								NTConfig_CubingItem[i][2] = _gid;
								_result = true;
							}
							else if(NTConfig_CubingItem[i][2] == _gid)
								_result = true;
						}
					}
					// End Jav Code
					else
					{
						if(item.itemlevel >= 85)
						{
							if(NTConfig_CubingItem[i][2] == null)
							{
								NTConfig_CubingItem[i][2] = _gid;
								_result = true;
							}
							else if(NTConfig_CubingItem[i][2] == _gid)
								_result = true;
						}
					}
				}
			}
			else if(_classid == 566 || _classid == 586 || _classid == 601)
			{
				if(NTConfig_CubingItem[i][2] != null)
				{
					for(n = 0 ; n < 3 ; n++)
					{
						if(NTConfig_CubingItem[i][3+n] == null)
						{
							NTConfig_CubingItem[i][3+n] = _gid;
							break;
						}
						else if(NTConfig_CubingItem[i][3+n] == _gid)
							break;
					}

					_result = true;
				}
			}
			else if(_classid == 565)
			{
				if(NTConfig_CubingItem[i][2] != null)
				{
					for(n = 0 ; n < 3 ; n++)
					{
						if(NTConfig_CubingItem[i][6+n] == null)
						{
							NTConfig_CubingItem[i][6+n] = _gid;
							break;
						}
						else if(NTConfig_CubingItem[i][6+n] == _gid)
							break;
					}

					_result = true;
				}
			}
			else if(_classid == 585)
			{
				if(NTConfig_CubingItem[i][2] != null)
				{
					for(n = 0 ; n < 3 ; n++)
					{
						if(NTConfig_CubingItem[i][9+n] == null)
						{
							NTConfig_CubingItem[i][9+n] = _gid;
							break;
						}
						else if(NTConfig_CubingItem[i][9+n] == _gid)
							break;
					}

					_result = true;
				}
			}
			else if(_classid == 600)
			{
				if(NTConfig_CubingItem[i][2] != null)
				{
					for(n = 0 ; n < 3 ; n++)
					{
						if(NTConfig_CubingItem[i][12+n] == null)
						{
							NTConfig_CubingItem[i][12+n] = _gid;
							break;
						}
						else if(NTConfig_CubingItem[i][12+n] == _gid)
							break;
					}

					_result = true;
				}
			}
		}
		else if(NTConfig_CubingItem[i][0] >= NTCU_CRAFT_HITPOWER_HELM && NTConfig_CubingItem[i][0] <= NTCU_CRAFT_SAFETY_WEAPON)
		{
			_index = NTConfig_CubingItem[i][0] - NTCU_CRAFT_HITPOWER_HELM;

			if(_classid == NTConfig_CubingItem[i][1])
			{
				if(result == 0 && item.quality == 4 && _calclevel >= _NTCU_CraftRecipe[_index][0])
				{
					if(NTConfig_CubingItem[i][2] == null)
					{
						NTConfig_CubingItem[i][2] = _gid;
						_result = true;
					}
					else if(NTConfig_CubingItem[i][2] == _gid)
						_result = true;
				}
			}
			else if(_classid == 643)
			{
				if(result == 0 && NTConfig_CubingItem[i][2] != null)
				{
					if(NTConfig_CubingItem[i][3] == null)
					{
						NTConfig_CubingItem[i][3] = _gid;
						_result = true;
					}
					else if(NTConfig_CubingItem[i][3] == _gid)
						_result = true;
				}
			}
			else if(_classid == _NTCU_CraftRecipe[_index][1])
			{
				if(NTConfig_CubingItem[i][2] != null)
				{
					if(NTConfig_CubingItem[i][4] == null)
					{
						NTConfig_CubingItem[i][4] = _gid;
						_result = true;
					}
					else if(NTConfig_CubingItem[i][4] == _gid)
						_result = true;
				}
			}
			else if(_classid == _NTCU_CraftRecipe[_index][2])
			{
				if(NTConfig_CubingItem[i][2] != null)
				{
					if(NTConfig_CubingItem[i][5] == null)
					{
						NTConfig_CubingItem[i][5] = _gid;
						_result = true;
					}
					else if(NTConfig_CubingItem[i][5] == _gid)
						_result = true;
				}
			}
			else if(_classid == _NTCU_CraftRecipe[_index][2]-1)
			{
				if(NTConfig_CubingItem[i][2] != null && NTConfig_CubingItem[i][5] == null)
				{
					for(n = 0 ; n < 3 ; n++)
					{
						if(NTConfig_CubingItem[i][6+n] == null)
						{
							NTConfig_CubingItem[i][6+n] = _gid;
							_result = true;

							break;
						}
						else if(NTConfig_CubingItem[i][6+n] == _gid)
						{
							_result = true;

							break;
						}
					}
				}
			}
		}
		else if(NTConfig_CubingItem[i][0] >= NTCU_SOCKET_BODYARMOR && NTConfig_CubingItem[i][0] <= NTCU_SOCKET_SHIELD)
		{
			_index = NTConfig_CubingItem[i][0] - NTCU_SOCKET_BODYARMOR;

			if(_classid == NTConfig_CubingItem[i][1])
			{
				if(result == 1 && item.quality <= 2 && item.GetStat(194) == 0)
				{
					if(NTConfig_CubingItem[i][2] == null)
					{
						NTConfig_CubingItem[i][2] = _gid;
						_result = true;
					}
					else if(NTConfig_CubingItem[i][2] == _gid)
						_result = true;
				}
			}
			else if(_classid == _NTCU_SocketRecipe[_index][0])
			{
				if(NTConfig_CubingItem[i][2] != null)
				{
					if(NTConfig_CubingItem[i][3] == null)
					{
						NTConfig_CubingItem[i][3] = _gid;
						_result = true;
					}
					else if(NTConfig_CubingItem[i][3] == _gid)
						_result = true;
				}
			}
			else if(_classid == _NTCU_SocketRecipe[_index][1])
			{
				if(NTConfig_CubingItem[i][2] != null)
				{
					if(NTConfig_CubingItem[i][4] == null)
					{
						NTConfig_CubingItem[i][4] = _gid;
						_result = true;
					}
					else if(NTConfig_CubingItem[i][4] == _gid)
						_result = true;
				}
			}
			else if(_classid == _NTCU_SocketRecipe[_index][2])
			{
				if(NTConfig_CubingItem[i][2] != null)
				{
					if(NTConfig_CubingItem[i][5] == null)
					{
						NTConfig_CubingItem[i][5] = _gid;
						_result = true;
					}
					else if(NTConfig_CubingItem[i][5] == _gid)
						_result = true;
				}
			}
			else if(_classid == _NTCU_SocketRecipe[_index][2]-1)
			{
				if(NTConfig_CubingItem[i][2] != null && NTConfig_CubingItem[i][5] == null)
				{
					for(n = 0 ; n < 3 ; n++)
					{
						if(NTConfig_CubingItem[i][6+n] == null)
						{
							NTConfig_CubingItem[i][6+n] = _gid;
							_result = true;

							break;
						}
						else if(NTConfig_CubingItem[i][6+n] == _gid)
						{
							_result = true;

							break;
						}
					}
				}
			}
		}
		else if(NTConfig_CubingItem[i][0] >= NTCU_UPGRADE_N_UNIQUE_WEAPON && NTConfig_CubingItem[i][0] <= NTCU_UPGRADE_E_RARE_ARMOR)
		{
			_index = NTConfig_CubingItem[i][0] - NTCU_UPGRADE_N_UNIQUE_WEAPON;

			if(_classid == NTConfig_CubingItem[i][1])
			{
				if(result == 1 && item.quality == _NTCU_UpgradeRecipe[_index][0])
				{
					if(NTConfig_CubingItem[i][2] == null)
					{
						NTConfig_CubingItem[i][2] = _gid;
						_result = true;
					}
					else if(NTConfig_CubingItem[i][2] == _gid)
						_result = true;
				}
			}
			else if(_classid == _NTCU_UpgradeRecipe[_index][1])
			{
				if(NTConfig_CubingItem[i][2] != null)
				{
					if(NTConfig_CubingItem[i][3] == null)
					{
						NTConfig_CubingItem[i][3] = _gid;
						_result = true;
					}
					else if(NTConfig_CubingItem[i][3] == _gid)
						_result = true;
				}
			}
			else if(_classid == _NTCU_UpgradeRecipe[_index][2])
			{
				if(NTConfig_CubingItem[i][2] != null)
				{
					if(NTConfig_CubingItem[i][4] == null)
					{
						NTConfig_CubingItem[i][4] = _gid;
						_result = true;
					}
					else if(NTConfig_CubingItem[i][4] == _gid)
						_result = true;
				}
			}
			else if(_classid == _NTCU_UpgradeRecipe[_index][3])
			{
				if(NTConfig_CubingItem[i][2] != null)
				{
					if(NTConfig_CubingItem[i][5] == null)
					{
						NTConfig_CubingItem[i][5] = _gid;
						_result = true;
					}
					else if(NTConfig_CubingItem[i][5] == _gid)
						_result = true;
				}
			}
			else if(_classid == _NTCU_UpgradeRecipe[_index][3]-1)
			{
				if(NTConfig_CubingItem[i][2] != null && NTConfig_CubingItem[i][5] == null)
				{
					for(n = 0 ; n < 3 ; n++)
					{
						if(NTConfig_CubingItem[i][6+n] == null)
						{
							NTConfig_CubingItem[i][6+n] = _gid;
							_result = true;

							break;
						}
						else if(NTConfig_CubingItem[i][6+n] == _gid)
						{
							_result = true;

							break;
						}
					}
				}
			}
		}
		else if(NTConfig_CubingItem[i][0] == NTCU_ESSENSE)
		{
			if(_classid >= 654 && _classid <= 657)
			{
				if(NTConfig_CubingItem[i][2+_classid-654] == null)
				{
					NTConfig_CubingItem[i][2+_classid-654] = _gid;
					_result = true;
				}
				else if(NTConfig_CubingItem[i][2+_classid-654] == _gid)
					_result = true;
			}
		}
		else if(NTConfig_CubingItem[i][0] >= NTCU_RUNE_EL && NTConfig_CubingItem[i][0] <= NTCU_RUNE_ORT)
		{
			if(_classid == NTConfig_CubingItem[i][0])
			{
				for(n = 0 ; n < 3 ; n++)
				{
					if(NTConfig_CubingItem[i][2+n] == null)
					{
						NTConfig_CubingItem[i][2+n] = _gid;
						break;
					}
					else if(NTConfig_CubingItem[i][2+n] == _gid)
						break;
				}

				_result = true;
			}
		}
		else if(NTConfig_CubingItem[i][0] >= NTCU_RUNE_THUL && NTConfig_CubingItem[i][0] <= NTCU_RUNE_LEM)
		{
			if(_classid == NTConfig_CubingItem[i][0])
			{
				for(n = 0 ; n < 3 ; n++)
				{
					if(NTConfig_CubingItem[i][2+n] == null)
					{
						NTConfig_CubingItem[i][2+n] = _gid;
						_result = true;

						break;
					}
					else if(NTConfig_CubingItem[i][2+n] == _gid)
					{
						_result = true;

						break;
					}
				}
			}
			else if(_classid == NTConfig_CubingItem[i][1])
			{
				if(NTConfig_CubingItem[i][3] != null)
				{
					if(NTConfig_CubingItem[i][5] == null)
					{
						NTConfig_CubingItem[i][5] = _gid;
						_result = true;
					}
					else if(NTConfig_CubingItem[i][5] == _gid)
						_result = true;
				}
			}
		}
		else if(NTConfig_CubingItem[i][0] >= NTCU_RUNE_PUL && NTConfig_CubingItem[i][0] <= NTCU_RUNE_CHAM)
		{
			if(_classid == NTConfig_CubingItem[i][0])
			{
				for(n = 0 ; n < 2 ; n++)
				{
					if(NTConfig_CubingItem[i][2+n] == null)
					{
						NTConfig_CubingItem[i][2+n] = _gid;
						break;
					}
					else if(NTConfig_CubingItem[i][2+n] == _gid)
						break;
				}

				_result = true;
			}
			else if(_classid == NTConfig_CubingItem[i][1])
			{
				if(NTConfig_CubingItem[i][3] != null)
				{
					if(NTConfig_CubingItem[i][4] == null)
					{
						NTConfig_CubingItem[i][4] = _gid;
						_result = true;
					}
					else if(NTConfig_CubingItem[i][4] == _gid)
						_result = true;
				}
			}
		}
	}

	return _result;
}

function NTCU_InitCubing()
{
	var i, n;
	var _count;
	var _items;

	if(!NTConfig_Cubing)
		return false;

	for(i = 0 ; i < NTConfig_CubingItem.length ; i++)
	{
		if(NTConfig_CubingItem[i][0] < NTCU_MAGIC)
			_count = 5;
		else if(NTConfig_CubingItem[i][0] < NTCU_CRAFT_HITPOWER_HELM)
			_count = 15;
		else if(NTConfig_CubingItem[i][0] < NTCU_ESSENSE)
			_count = 9;
		else if(NTConfig_CubingItem[i][0] == NTCU_ESSENSE)
			_count = 6;
		else if(NTConfig_CubingItem[i][0] < NTCU_RUNE_THUL)
			_count = 5;
		else if(NTConfig_CubingItem[i][0] < NTCU_RUNE_PUL)
			_count = 6;
		else
			_count = 5;

		for(n = 2 ; n < _count ; n++)
			NTConfig_CubingItem[i][n] = null;
	}

	_items = me.GetItems();

	if(!_items)
		return false;

	for(i = 0 ; i < _items.length ; i++)
	{
		if(_items[i].mode == 0)
		{
			if(_items[i].itemloc != 0 || NTConfig_Columns[_items[i].y][_items[i].x])
				NTSI_CheckItem(_items[i]);
		}
	}

	for(i = 0 ; i < _items.length ; i++)
	{
		if(_items[i].mode == 0)
		{
			if(_items[i].itemloc != 0 || NTConfig_Columns[_items[i].y][_items[i].x])
				NTSI_CheckItem(_items[i]);
		}
	}

	return true;
}

function NTCU_CheckCubing()
{
	var i, n;

	if(!NTConfig_Cubing)
		return false;

	for(i = 0 ; i < NTConfig_CubingItem.length ; i++)
	{
		if(NTConfig_CubingItem[i][0] == NTCU_MAGIC || NTConfig_CubingItem[i][0] == NTCU_MAGIC_CHARM)
		{
			for(n = 2 ; n < 6 ; n++)
			{
				if(NTConfig_CubingItem[i][n] == null)
					break;
			}

			if(n >= 6)
				break;

			for(n = 6 ; n < 9 ; n++)
			{
				if(NTConfig_CubingItem[i][n] == null)
					break;
			}

			if(n >= 9)
				break;

			for(n = 9 ; n < 12 ; n++)
			{
				if(NTConfig_CubingItem[i][n] == null)
					break;
			}

			if(n >= 12)
				break;

			for(n = 12 ; n < 15 ; n++)
			{
				if(NTConfig_CubingItem[i][n] == null)
					break;
			}

			if(n >= 15)
				break;
		}
		else if(NTConfig_CubingItem[i][0] >= NTCU_CRAFT_HITPOWER_HELM && NTConfig_CubingItem[i][0] <= NTCU_UPGRADE_E_RARE_ARMOR)
		{
			for(n = 2 ; n < 6 ; n++)
			{
				if(NTConfig_CubingItem[i][n] == null)
					break;
			}

			if(n >= 6)
				break;

			for(n = 6 ; n < 9 ; n++)
			{
				if(NTConfig_CubingItem[i][n] == null)
					break;
			}

			if(n >= 9)
				break;
		}
		else
		{
			for(n = 2 ; n < NTConfig_CubingItem[i].length ; n++)
			{
				if(NTConfig_CubingItem[i][n] == null)
					break;
			}

			if(n >= NTConfig_CubingItem[i].length)
				break;
		}
	}

	return (i < NTConfig_CubingItem.length);
}

function NTCU_DoCubing()
{
	var i, n;
	var _items;

	_items = me.GetItems(NTC_UNIT_CUBE);

	if(!_items || _items.length < 1)
		return false;

	if(NTCU_CheckCubeInventoryInt() > 0)
	{
		if(!NTCU_OpenCubeInt(_items[0]))
			return false;

		if(NTCU_ClearCubeInt() < 1)
			return false;

		NTCU_CloseCubeInt();
	}

	do
	{
		for(i = 0 ; i < NTConfig_CubingItem.length ; i++)
		{
			if(NTConfig_CubingItem[i][0] == NTCU_MAGIC || NTConfig_CubingItem[i][0] == NTCU_MAGIC_CHARM)
			{
				for(n = 2 ; n < 6 ; n++)
				{
					if(NTConfig_CubingItem[i][n] == null)
						break;
				}

				if(n >= 6)
				{
					if(!NTCU_MoveItemsToCubeInt(_items[0], i, 2, 5))
						return false;

					break;
				}

				for(n = 6 ; n < 9 ; n++)
				{
					if(NTConfig_CubingItem[i][n] == null)
						break;
				}

				if(n >= 9)
				{
					if(!NTCU_MoveItemsToCubeInt(_items[0], i, 6, 8))
						return false;

					break;
				}

				for(n = 9 ; n < 12 ; n++)
				{
					if(NTConfig_CubingItem[i][n] == null)
						break;
				}

				if(n >= 12)
				{
					if(!NTCU_MoveItemsToCubeInt(_items[0], i, 9, 11))
						return false;

					break;
				}

				for(n = 12 ; n < 15 ; n++)
				{
					if(NTConfig_CubingItem[i][n] == null)
						break;
				}

				if(n >= 15)
				{
					if(!NTCU_MoveItemsToCubeInt(_items[0], i, 12, 14))
						return false;

					break;
				}
			}
			else if(NTConfig_CubingItem[i][0] >= NTCU_CRAFT_HITPOWER_HELM && NTConfig_CubingItem[i][0] <= NTCU_UPGRADE_E_RARE_ARMOR)
			{
				for(n = 2 ; n < 6 ; n++)
				{
					if(NTConfig_CubingItem[i][n] == null)
						break;
				}

				if(n >= 6)
				{
					if(!NTCU_MoveItemsToCubeInt(_items[0], i, 2, 5))
						return false;

					break;
				}

				for(n = 6 ; n < 9 ; n++)
				{
					if(NTConfig_CubingItem[i][n] == null)
						break;
				}

				if(n >= 9)
				{
					if(!NTCU_MoveItemsToCubeInt(_items[0], i, 6, 8))
						return false;

					break;
				}
			}
			else
			{
				for(n = 2 ; n < NTConfig_CubingItem[i].length ; n++)
				{
					if(NTConfig_CubingItem[i][n] == null)
						break;
				}

				if(n >= NTConfig_CubingItem[i].length)
				{
					if(!NTCU_MoveItemsToCubeInt(_items[0], i, 2, NTConfig_CubingItem[i].length-1))
						return false;

					break;
				}
			}
		}

		if(i < NTConfig_CubingItem.length)
		{
			if(!NTCU_OpenCubeInt(_items[0]))
				return false;

			if(!Transmute())
				return false;

			NTC_PingDelay(800);

			NTC_SendLogToOOG(NTC_LOG_COMMON, _NTCU_LogString);
			
			var crafted_itm = NTCU_GetCubeContents();
			if (crafted_itm.length == 1)
			{
				if (crafted_itm[0].quality == 8)
				{
					if ( NTSI_CheckItem(crafted_itm[0]) != 0 )
						NTC_SendLogToOOG(NTC_LOG_ITEM, "Kept Cubed Item " + NTC_ItemQualityToMGRColor[crafted_itm[0].quality] + crafted_itm[0].name.split("\n")[0] + ";" + crafted_itm[0].itemdesc);
					else
						NTC_SendLogToOOG(NTC_LOG_ITEM, "Trashed Cubed Item " + NTC_ItemQualityToMGRColor[crafted_itm[0].quality] + crafted_itm[0].name.split("\n")[0] + ";" + crafted_itm[0].itemdesc);
				}
					
			}

			if(NTCU_ClearCubeInt() == 1)
				NTCU_CloseCubeInt();
			else
			{
				NTCU_CloseCubeInt();

				return false;
			}
		}
	} while(NTCU_InitCubing() && NTCU_CheckCubing());

	return true;
}

// Internal function
function NTCU_CheckCubeInventoryInt()
{
	var i, x, y;
	var _itemcounts = 0;
	var _items;

	for(y = 0 ; y < 4 ; y++)
	{
		for(x = 0 ; x < 10 ; x++)
			_NTCU_Inventory[y][x] = 0;
	}

	_items = me.GetItems();

	if(!_items)
		return 0;

	for(i = 0 ; i < _items.length ; i++)
	{
		if(_items[i].mode == 0)
		{
			if(_items[i].itemloc == 0)
			{
				for(y = 0 ; y < _items[i].ysize ; y++)
				{
					for(x = 0 ; x < _items[i].xsize ; x++)
						_NTCU_Inventory[_items[i].y+y][_items[i].x+x] = 1;
				}
			}
			else if(_items[i].itemloc == 3)
				_itemcounts++;
		}
	}

	return _itemcounts;
}

function NTCU_MoveItemsToCubeInt(cube, index, start, end)
{
	var i, n;
	var _items;

	_items = me.GetItems();

	if(!_items)
		return false;

	_NTCU_LogString = "Transmuted ";

	for(i = start ; i <= end ; i++)
	{
		for(n = 0 ; n < _items.length ; n++)
		{
			if(_items[n].gid == NTConfig_CubingItem[index][i])
			{
				if(!NTCU_MoveItemToCubeInt(cube, _items[n]))
					return false;

				if(i > start)
					_NTCU_LogString += "+";

				_NTCU_LogString += _items[n].name.split("\n")[0];

				break;
			}
		}

		if(n >= _items.length)
			return false;
	}

	return true;
}

function NTCU_MoveItemToCubeInt(cube, item)
{
	var x, y;
	var _itemx, _itemy;

	if(item.itemloc == 3)
		return true;

	_itemx = item.x;
	_itemy = item.y;

	if(!NTC_ItemToCursor(item))
		return false;

	if(item.itemloc == 0)
	{
		for(y = 0 ; y < item.ysize ; y++)
		{
			for(x = 0 ; x < item.xsize ; x++)
				_NTCU_Inventory[_itemy+y][_itemx+x] = 0;
		}
	}

	for(x = 0 ; x < 80 ; x++)
	{
		if((x % 40) == 0)
		{
			if(item.ysize < 3)
				me.ClickItem(0, cube.x, cube.y, cube.itemloc);
			else if(item.ysize == 3)
				me.ClickItem(0, cube.x, cube.y-1, cube.itemloc);
			else
			{
				if(cube.y == 0)
					me.ClickItem(0, cube.x, -1, cube.itemloc);
				else
					me.ClickItem(0, cube.x, cube.y-2, cube.itemloc);
			}
		}

		NTC_Delay(100);

		if(!me.itemoncursor)
			break;
	}

	if(x >= 80)
		return false;

	NTC_PingDelay(200);

	return true;
}

function NTCU_MoveItemToInventoryInt(item)
{
	var x, y, m, n;
	var _havespace;

	for(y = 0 ; y < 4 ; y++)
	{
		for(x = 0 ; x < 10 ; x++)
		{
			_havespace = true;

			for(m = 0 ; m < item.ysize ; m++)
			{
				for(n = 0 ; n < item.xsize ; n++)
				{
					if(_NTCU_Inventory[y+m][x+n] == 1)
					{
						_havespace = false;
						m = 4;
						break;
					}
				}
			}

			if(_havespace)
			{
				if(!NTC_ItemToCursor(item))
					return false;

				for(m = 0 ; m < 80 ; m++)
				{
					if((m % 40) == 0)
						me.ClickItem(0, x, y, 0);

					NTC_Delay(100);

					if(!me.itemoncursor)
						break;
				}

				if(m >= 80)
					return false;

				for(m = 0 ; m < item.ysize ; m++)
				{
					for(n = 0 ; n < item.xsize ; n++)
						_NTCU_Inventory[y+m][x+n] = 1;
				}

				NTC_PingDelay(200);

				return true;
			}
		}
	}

	return false;
}

function NTCU_OpenCubeInt(_cube)
{
	if(_cube.itemloc == 4 && !GetUIState(0x19))
	{
		var _stash = NTC_FindUnit(NTC_UNIT_OBJECT, NTC_UNIT_STASH, 1);

		if(!_stash)
			return false;

		if(!NTT_DoInteract(_stash))
			return false;
	}

	if(!GetUIState(0x1A))
		return NTT_DoInteract(_cube);

	return true;
}

function NTCU_CloseCubeInt()
{
	var i;

	if(!GetUIState(0x1A))
		return true;

	for(i = 0 ; i < 20 ; i++)
	{
		if((i % 10) == 0)
			me.Cancel(0);

		NTC_Delay(200);

		if(!GetUIState(0x1A))
		{
			NTC_PingDelay(200);
			return true;
		}
	}

	return false;
}

function NTCU_ClearCubeInt()
{
	var i;
	var _itemcounts = 0;
	var _items = me.GetItems();

	if(!_items)
		return 0;

	for(i = 0 ; i < _items.length ; i++)
	{
		if(_items[i].mode == 0 && _items[i].itemloc == 3)
		{
			if(!NTCU_MoveItemToInventoryInt(_items[i]))
				return _itemcounts;

			_itemcounts++;
		}
	}

	return _itemcounts;
}

function NTCU_GetCubeContents() 
{
	var _items = me.GetItems();
	var _cube_items = new Array();

	for(i = 0 ; i < _items.length ; i++)
	{
		if(_items[i].mode == 0 && _items[i].itemloc == 3)
		{
			_cube_items.push(_items[i]);
		}
	}

	return _cube_items;	
}
An sich ein ganz schicker Ansatz.:)
Ich verstehe nur nicht, warum du ein Array für die Items im Cube vorsiehst und dieses dann von deiner Funktion zurückgeben lässt. Also meines Wissens nach hast du nach jedem Cube Vorgang immer nurnoch ein einziges Item im Cube. Darum ist das Array an der Stelle etwas sinnlos, wenn du eh nur ein einziges Objekt übergeben musst.

Aber ansonsten elegante Lösung. ;)

Lg
Muddy
05/18/2010 21:23 senfbert#5
hallo, jau bei mir isser nämlich auch immer abgeschmiert wenn er n amu craften wollte (hab bisher nur amus ausprobiert). habs jetzt grad mal auf "direct" gesetzt und warte mal bis er zu craften anfängt.
und im laufe dieser warterei sind mir einige fragen zum ablauf des craftens gekommen:

1.) wenn ich dem bot sachen im inv oder in der kiste mitgebe die er zum craften benutzen könnte (wollte ich eben testweise mal machen damit ich nicht ewig warten muss um zu sehen ob er wieder abstürzt), dann ignoriert er sie oder schmeißt sie weg. daher würde mich mal interssieren ob es überhaupt geht, ihm sachen mitzugeben zum craften oder ob er die selber finden muss um zu checken, dass er die craften kann, oder

2.) hängt es auch noch von der art der zu craftenden items ab? sprich: nimmt er jedes x-beliebige blaue amulet her (dann könnte er ja auch welche gamblen) oder wovon hängt das ab? und wartet er immer darauf, dass er ein pack fertig hat oder müllt er sich jetzt erst mal mit ral runen voll bis er n perf ametysten beisammen hat!?

p.s. ich hab jetzt die ntcubing bei mir überschrieben, die zumindest am anfang ähnlich der deinigen war, hab ich "reinkopieren" dann schon richtig als "ersetzten" verstanden?
so sah die original aus
05/31/2010 22:19 senfbert#6
isch bins ma wieder. hab ma ne grundsätzliche frage zu der bot-crafterei:

1.) nach welchen kriterien wählt der die amus, ringe, juwele etc denn aus?

2.) welche reihenfolge verwendet er dabei, da ja die craft zutaten unterschiedlich oft droppen?

3.) was macht er wenn er einerseits was craften soll, andererseits aber auch - der pickit entsprechend - was von den craftzutaten stashn soll?

4.) also berücksichtigt er weiterhin, dass er bestimmte juwele oder ähnliches stashn soll, oder mixt er einfach tapfer alles zusammen?

5.) kann man trotzdem bspw. pgs cuben und stashn auch wenn ein teil davon zum craften verwendet wird?