126 lines
		
	
	
		
			3.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
			
		
		
	
	
			126 lines
		
	
	
		
			3.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
getroottable()["iceAreaRainCreatePos"] <- {};
 | 
						||
getroottable()["iceAreaRainCreatePos"] = [[26,-30],[91,15],[-66,-5],[114,-39],[-37,-34],[-109,5],
 | 
						||
							  [26,20],[-20,4],[134,-12],[-92,-42],[-44,25],[-120,-23],[-23,-52],[62,-55],
 | 
						||
							  [55,1],[-10,-13],[84,-24]];
 | 
						||
				
 | 
						||
ICEAREA_VAR_AREA_SIZE <- 0;	// 葆彻霞 觼晦徽						  
 | 
						||
ICEAREA_VAR_LIFE_TIME <- 1; // 葆彻霞 卫除
 | 
						||
ICEAREA_VAR_ICE_COUNT <- 2; // 当撩 橡挤 偎热
 | 
						||
ICEAREA_VAR_ICE_RATE  <- 3; // 彩念 ?睦
 | 
						||
ICEAREA_VAR_ICE_LEVEL <- 4; // 彩念溯涟
 | 
						||
ICEAREA_VAR_ICE_TIME  <- 5; // 彩念卫除
 | 
						||
 | 
						||
function setCustomData_po_ATIceArea(obj,receiveData)
 | 
						||
{		
 | 
						||
	if(!obj)
 | 
						||
		return;
 | 
						||
 | 
						||
	local areaSizeRate= receiveData.readFloat();
 | 
						||
	local lifeTime	  = receiveData.readDword();
 | 
						||
	local iceRainCount= receiveData.readDword();
 | 
						||
	local iceRate	  = receiveData.readDword();
 | 
						||
	local iceLevel	  = receiveData.readDword();
 | 
						||
	local iceTime	  = receiveData.readDword();	
 | 
						||
	
 | 
						||
	local var = obj.getVar();
 | 
						||
	var.setFloat(ICEAREA_VAR_AREA_SIZE,areaSizeRate);
 | 
						||
	var.setInt(ICEAREA_VAR_LIFE_TIME,lifeTime);
 | 
						||
	var.setInt(ICEAREA_VAR_ICE_COUNT,iceRainCount);
 | 
						||
	var.setInt(ICEAREA_VAR_ICE_RATE,iceRate);
 | 
						||
	var.setInt(ICEAREA_VAR_ICE_LEVEL,iceLevel);
 | 
						||
	var.setInt(ICEAREA_VAR_ICE_TIME,iceTime);	
 | 
						||
}
 | 
						||
 | 
						||
 | 
						||
function onTimeEvent_po_ATIceArea(obj, timeEventIndex, timeEventCount)
 | 
						||
{		
 | 
						||
	if(!obj)
 | 
						||
		return false;
 | 
						||
		
 | 
						||
	if(timeEventIndex == 0) {
 | 
						||
		local var = obj.getVar();
 | 
						||
		local areaSizeRate = var.getFloat(ICEAREA_VAR_AREA_SIZE);
 | 
						||
		local iceRainCount = var.getInt(ICEAREA_VAR_ICE_COUNT);
 | 
						||
		local iceRate	   = var.getInt(ICEAREA_VAR_ICE_RATE);
 | 
						||
		local iceLevel	   = var.getInt(ICEAREA_VAR_ICE_LEVEL);
 | 
						||
		local iceTime	   = var.getInt(ICEAREA_VAR_ICE_TIME);
 | 
						||
 | 
						||
		if(timeEventCount < iceRainCount)
 | 
						||
		{
 | 
						||
			local currentIndex = timeEventCount%::iceAreaRainCreatePos.len();
 | 
						||
			local pos = ::iceAreaRainCreatePos[currentIndex];	
 | 
						||
			local x = pos[0];
 | 
						||
			local y = pos[1];
 | 
						||
			local iceSizeRate = sq_getRandom(80,110)*0.01; //橡挤 念姜 觼晦			
 | 
						||
			
 | 
						||
			if(areaSizeRate != 1.0)
 | 
						||
			{
 | 
						||
				x = x * areaSizeRate;
 | 
						||
				y = y * areaSizeRate;
 | 
						||
			}
 | 
						||
			
 | 
						||
			if(obj.isMyControlObject())
 | 
						||
			{
 | 
						||
				sq_BinaryStartWrite();			
 | 
						||
				sq_BinaryWriteDword(iceRate);		// 彩念 ?睦
 | 
						||
				sq_BinaryWriteDword(iceLevel);		// 彩念 溯涟
 | 
						||
				sq_BinaryWriteDword(iceTime);		// 彩念 卫除
 | 
						||
				sq_BinaryWriteFloat(iceSizeRate);	// 橡挤 念姜 觼晦
 | 
						||
				
 | 
						||
				sq_SendCreatePassiveObjectPacket(obj,24226, 0, x.tointeger(), y.tointeger(), 250, ENUM_DIRECTION_NEUTRAL);
 | 
						||
			}
 | 
						||
		}	
 | 
						||
		else
 | 
						||
		{			
 | 
						||
			obj.setTimeEvent(1,500,1,false);
 | 
						||
			return true; // 颤桧该 属寥 酝钦
 | 
						||
		}
 | 
						||
	}
 | 
						||
	else if(timeEventIndex == 1) {
 | 
						||
		//饵塭虽朝 ?溯歜戏煎 撮?
 | 
						||
		local ani = obj.getCurrentAnimation();
 | 
						||
		if(ani) {
 | 
						||
			ani.setCurrentFrameWithChildLayer(11);
 | 
						||
		}
 | 
						||
	}
 | 
						||
	return false;	
 | 
						||
} 
 | 
						||
 | 
						||
 | 
						||
 | 
						||
function onKeyFrameFlag_po_ATIceArea(obj,flagIndex)
 | 
						||
{		 
 | 
						||
	if(!obj)
 | 
						||
		return false;
 | 
						||
 | 
						||
	local var = obj.getVar();
 | 
						||
	if(flagIndex == 1) {
 | 
						||
		local sizeRate = var.getFloat(ICEAREA_VAR_AREA_SIZE);//葆彻霞 觼晦徽
 | 
						||
		if(sizeRate != 1.0) {
 | 
						||
			local ani = obj.getCurrentAnimation();				
 | 
						||
			ani.setImageRateFromOriginal(sizeRate,sizeRate);
 | 
						||
		}		
 | 
						||
	}
 | 
						||
	if(flagIndex == 2) {
 | 
						||
		local var = obj.getVar();
 | 
						||
		local lifeTime	   = var.getInt(ICEAREA_VAR_LIFE_TIME);
 | 
						||
		local iceRainCount = var.getInt(ICEAREA_VAR_ICE_COUNT);
 | 
						||
				
 | 
						||
		local createGap = lifeTime/iceRainCount;
 | 
						||
		obj.setTimeEvent(0,createGap.tointeger(),500,false); 
 | 
						||
	}	
 | 
						||
	return true;
 | 
						||
}
 | 
						||
 | 
						||
function onEndCurrentAni_po_ATIceArea(obj)
 | 
						||
{
 | 
						||
	if(!obj)
 | 
						||
		return;
 | 
						||
 | 
						||
	if(obj.isMyControlObject())
 | 
						||
	{
 | 
						||
		sq_SendDestroyPacketPassiveObject(obj);
 | 
						||
	}
 | 
						||
}
 | 
						||
 | 
						||
 |