75 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
		
		
			
		
	
	
			75 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
|  | 
 | ||
|  | function sq_AddFunctionName(appendage) | ||
|  | { | ||
|  | 	appendage.sq_AddFunctionName("proc", "proc_appendage_PushOut") | ||
|  | 	appendage.sq_AddFunctionName("onStart", "onStart_appendage_PushOut") | ||
|  | 	appendage.sq_AddFunctionName("onEnd", "onEnd_appendage_PushOut") | ||
|  | } | ||
|  | 
 | ||
|  | function sq_AddEffect(appendage) | ||
|  | { | ||
|  | } | ||
|  | 
 | ||
|  | 
 | ||
|  | 
 | ||
|  | function proc_appendage_PushOut(appendage) | ||
|  | { | ||
|  | 	if(!appendage || !appendage.isValid()) { | ||
|  | 		return;		 | ||
|  | 	} | ||
|  | 
 | ||
|  | 	local parentObj = appendage.getParent(); | ||
|  | 	local sourceObj = appendage.getSource(); | ||
|  | 				 | ||
|  | 	if(!sourceObj || !parentObj) { | ||
|  | 		appendage.setValid(false); | ||
|  | 		return; | ||
|  | 	} | ||
|  | 
 | ||
|  | 	if (parentObj.getState() == STATE_HOLD) | ||
|  | 	{ | ||
|  | 		if (parentObj.getState() == STATE_HOLD && !sq_IsInCategory(parentObj,CATEGORY_ETC_FIXTURE)) | ||
|  | 		{ | ||
|  | 			//	虽姜胀 寞?渠煎 鬼薯 瞪? | ||
|  | 			parentObj.setCurrentDirection(sq_GetOppositeDirection(sourceObj.getDirection())); | ||
|  | 		} | ||
|  | 	} | ||
|  | 	else | ||
|  | 	{ | ||
|  | 		//	?萄卫郦晦 | ||
|  | 		if (parentObj.isMyControlObject() && parentObj.getState() != STATE_DIE && !parentObj.isDead()) | ||
|  | 		{ | ||
|  | 			sq_IntVectorClear(sq_GetGlobalIntVector()); | ||
|  | 			sq_IntVectorPush(sq_GetGlobalIntVector(),0); | ||
|  | 			sq_IntVectorPush(sq_GetGlobalIntVector(),0); | ||
|  | 			sq_AddSetStatePacketActiveObject(parentObj,STATE_HOLD, sq_GetGlobalIntVector(), STATE_PRIORITY_FORCE);						 | ||
|  | 		} | ||
|  | 	} | ||
|  | 
 | ||
|  | } | ||
|  | 
 | ||
|  | function onEnd_appendage_PushOut(appendage) | ||
|  | { | ||
|  | 	if(!appendage) { | ||
|  | 		return; | ||
|  | 	}	 | ||
|  | 		 | ||
|  | 	local parentObj = appendage.getParent(); | ||
|  | 				 | ||
|  | 	if(!parentObj) { | ||
|  | 		appendage.setValid(false); | ||
|  | 		return; | ||
|  | 	}			 | ||
|  | 		 | ||
|  | 	if (parentObj.getState() == STATE_HOLD) { | ||
|  | 		appendage.setValid(false); | ||
|  | 		parentObj.sendStateOnlyPacket(STATE_STAND); | ||
|  | 	} | ||
|  | 
 | ||
|  | 	//local ao = sq_GetCNRDObjectToActiveObject(parentObj); | ||
|  | 	//if(ao && sq_IsMyControlObject(ao) && !ao.isMovablePos(ao.getXPos(),ao.getYPos())) { | ||
|  | 		//sq_SimpleMoveToNearMovablePos(ao,100); // 桧翕碳陛 虽羲缣 毡棻贼 桧翕陛栋虽羲戏煎 桧翕 | ||
|  | 	//} | ||
|  | } | ||
|  | 
 |