Перейти к содержанию

Скрипт пополнения варпака

Материал из Wiki Legnes

Скрипт пополнения запасов Варпака, берет из запасов нужное кол-во реагентов, бинтов, стрел и если нужно банок и скролей и докладывает в вашу сумку


// Мешок с реагентами откуда брать, смотрим через _info
var serialBagInReagents = '';

//Мешок куда закинуть реагенты, смотрим через _info
var serialBagToReagents = '';

// можно добавить свои поля, формат: [ID графики, Название, количество, цвет], значения смотрим смотрим через _info
var reagentList = [
	['0x0F7A', 'Black Pearl', 100],
	['0x0F7B', 'Blood Moss', 100],
	['0x0F84', 'Garlic', 100],
	['0x0F85', 'Ginseng', 100],
	['0x0F86', 'Mandrake Root', 100],
	['0x0F88', 'Nightshade', 100],	
	['0x0F8C', 'Sulfurous Ash', 100],
	['0x0F8D', 'Spiders Silk', 100],
	['0x0E21', 'Clean Bandage', 200],
	['0x0F3F', 'Arrow', 200],
	['0x0F0C', 'Lesser Heal Potion', 30, 0x00FB],	
];

function main()
{
	for (var r = 0; r < reagentList.length; r++) 
	{
		var reagent = reagentList[r];
		if (reagent[3]) {
			var currentReagentAmount = Orion.Count(reagent[0], reagent[3], serialBagToReagents);
		} else {
			var currentReagentAmount = Orion.Count(reagent[0], 'any', serialBagToReagents);
		}

		if (currentReagentAmount >= reagent[2]) {
			continue;
		}
		
		var needReagentAmount = reagent[2] - currentReagentAmount;
		
		// Проверим сколько у нас есть реагентов в сундуке
		if (reagent[3]) {
			var findReagentAmount = Orion.Count(reagent[0], reagent[3], serialBagInReagents);
		} else {
			var findReagentAmount = Orion.Count(reagent[0], 'any', serialBagInReagents);		
		}
		
		if (findReagentAmount == 0) {
			Orion.Print('0x0486', reagent[1] + ' в сумке закончились');
			continue;
		}
		
		if (findReagentAmount < needReagentAmount) {
			needReagentAmount = findReagentAmount;
		}
		
		if (reagent[3]) {
			Orion.DragItemType(reagent[0], reagent[3], serialBagInReagents, needReagentAmount);
		} else {
			Orion.DragItemType(reagent[0], 'any', serialBagInReagents, needReagentAmount);
		}

		Orion.DropDraggedItem(serialBagToReagents);
		Orion.Print('Положили ' + reagent[1] + ' в сумку ' + needReagentAmount);
    		Orion.Wait(1000);
	}
}