// Small P
function smallP(x,y) {
	let obj = CreateItemU2(1,x,y,x,y-32,100);
	itemHandler(obj,1,0);
	return obj;
}

// Small 点
function smallTen(x,y) {
	let obj = CreateItemU2(2,x,y,x,y-32,GetAreaCommonData("game","piv",10000));
	itemHandler(obj,1,0);
	return obj;
}

// Small Fever
function smallFever(x,y) {
	let obj = CreateItemU2(3,x,y,x,y-32,1000);
	itemHandler(obj,1,0);
	return obj;
}

// Big P
function bigP(x,y) { 
	let obj = CreateItemU2(4,x,y,x,y-32,100);
	itemHandler(obj,1,0);
	ObjRender_SetScaleXYZ(obj,0.6,0.6,0);
	return obj;
}

// Big 点
function bigTen(x,y) { 
	let obj = CreateItemU2(5,x,y,x,y-32,GetAreaCommonData("game","piv",10000)*3);
	itemHandler(obj,1,0);
	ObjRender_SetScaleXYZ(obj,0.6,0.6,0);
	return obj;
}

// Big Fever
function bigFever(x,y) { 
	let obj = CreateItemU2(6,x,y,x,y-32,3000);
	itemHandler(obj,1,0);
	ObjRender_SetScaleXYZ(obj,0.6,0.6,0);
	return obj;
}

// Extend!
function plyExtend(x,y) { 
	let obj = CreateItemU2(7,x,y,x,y-32,25000);
	itemHandler(obj,1,0);
	ObjRender_SetScaleXYZ(obj,1.256,1.256,0);
	return obj;
}

// Spell
function plySpell(x,y) { 
	let obj = CreateItemU2(8,x,y,x,y-32,20000);
	itemHandler(obj,1,0);
	ObjRender_SetScaleXYZ(obj,1.256,1.256,0);
	return obj;
}

// Item handler
task itemHandler(obj,v,s) { 

	let itemX = 0;
	let itemY = 0;
	let c = 0;
	let itemDir = 0;
	
	while(!Obj_IsDeleted(obj)) {
		itemX = ObjMove_GetX(obj);
		itemY = ObjMove_GetY(obj);

		ObjRender_SetAngleZ(obj,itemDir);
		if(itemDir < 720) { itemDir+=40; } 
		
		CollectItemsInCircle(GetPlayerX,GetPlayerY,64); 
		
		// leave field (excluding top) == delete
		if(ObjMove_GetX(obj) < GetClipMinX-4 || ObjMove_GetX(obj) > GetClipMaxX+4 || ObjMove_GetY(obj) > GetClipMaxY+4) { 
			break;
		}
		yield;
	}
	Obj_Delete(obj);
}