91 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
		
		
			
		
	
	
			91 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
| 
								 | 
							
								PIECE_OF_ICE_CORE_STATE_STAY   <- 2;
							 | 
						|||
| 
								 | 
							
								PIECE_OF_ICE_CORE_STATE_DAMAGE <- 3;
							 | 
						|||
| 
								 | 
							
								PIECE_OF_ICE_CORE_STATE_END	   <- 4;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								PIECE_OF_ICE_CORE_VAR_START_X <- 0;
							 | 
						|||
| 
								 | 
							
								PIECE_OF_ICE_CORE_VAR_SHAKE_END_TIME <- 1;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								function setCustomData_po_ATPieceOfIceCore(obj, reciveData)
							 | 
						|||
| 
								 | 
							
								{
							 | 
						|||
| 
								 | 
							
									if(!obj) return;	
							 | 
						|||
| 
								 | 
							
									
							 | 
						|||
| 
								 | 
							
									local var = obj.getVar();		
							 | 
						|||
| 
								 | 
							
									local x = obj.getXPos();
							 | 
						|||
| 
								 | 
							
									var.setInt(PIECE_OF_ICE_CORE_VAR_START_X, x);
							 | 
						|||
| 
								 | 
							
									var.push_ct_vector();
							 | 
						|||
| 
								 | 
							
									local timer = var.get_ct_vector(0);
							 | 
						|||
| 
								 | 
							
									obj.sendStateOnlyPacket(PIECE_OF_ICE_CORE_STATE_STAY);
							 | 
						|||
| 
								 | 
							
									
							 | 
						|||
| 
								 | 
							
									var.setInt(PIECE_OF_ICE_CORE_VAR_SHAKE_END_TIME, 0); 		
							 | 
						|||
| 
								 | 
							
								}
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								function setState_po_ATPieceOfIceCore(obj, state, datas)
							 | 
						|||
| 
								 | 
							
								{
							 | 
						|||
| 
								 | 
							
									if(!obj) return;
							 | 
						|||
| 
								 | 
							
										
							 | 
						|||
| 
								 | 
							
									if(state == PIECE_OF_ICE_CORE_STATE_DAMAGE)
							 | 
						|||
| 
								 | 
							
									{
							 | 
						|||
| 
								 | 
							
										local ani = obj.getCurrentAnimation();
							 | 
						|||
| 
								 | 
							
												
							 | 
						|||
| 
								 | 
							
										local var = obj.getVar();		
							 | 
						|||
| 
								 | 
							
										if(ani) {			
							 | 
						|||
| 
								 | 
							
											local currentIndex = sq_GetVectorData(datas, 0) + 3;
							 | 
						|||
| 
								 | 
							
											ani.setCurrentFrameWithChildLayer(currentIndex);
							 | 
						|||
| 
								 | 
							
										}		
							 | 
						|||
| 
								 | 
							
										local timer = var.get_ct_vector(0);
							 | 
						|||
| 
								 | 
							
										var.setInt(PIECE_OF_ICE_CORE_VAR_SHAKE_END_TIME, timer.Get() + 50); 
							 | 
						|||
| 
								 | 
							
										sq_SetMyShake(obj,2,80);
							 | 
						|||
| 
								 | 
							
									}	
							 | 
						|||
| 
								 | 
							
									else if(state == PIECE_OF_ICE_CORE_STATE_END)
							 | 
						|||
| 
								 | 
							
									{			
							 | 
						|||
| 
								 | 
							
										local ani = obj.getCurrentAnimation();			
							 | 
						|||
| 
								 | 
							
									
							 | 
						|||
| 
								 | 
							
										if(ani)	
							 | 
						|||
| 
								 | 
							
											ani.setCurrentFrameWithChildLayer(10); // 葆虽虞 ?溯歜
							 | 
						|||
| 
								 | 
							
									}
							 | 
						|||
| 
								 | 
							
								}
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								function procAppend_po_ATPieceOfIceCore(obj)
							 | 
						|||
| 
								 | 
							
								{
							 | 
						|||
| 
								 | 
							
									if(!obj) return;
							 | 
						|||
| 
								 | 
							
									
							 | 
						|||
| 
								 | 
							
									local var = obj.getVar();	
							 | 
						|||
| 
								 | 
							
									local timer = var.get_ct_vector(0);			
							 | 
						|||
| 
								 | 
							
									
							 | 
						|||
| 
								 | 
							
									local shakeEndTime = var.getInt(PIECE_OF_ICE_CORE_VAR_SHAKE_END_TIME);
							 | 
						|||
| 
								 | 
							
									local shakeValue = 0;
							 | 
						|||
| 
								 | 
							
									if(timer.Get() < shakeEndTime && obj.getState() != PIECE_OF_ICE_CORE_STATE_END)
							 | 
						|||
| 
								 | 
							
										shakeValue = (sq_GetShuttleValue(0, 6,sq_GetObjectTime(obj),100)-3);
							 | 
						|||
| 
								 | 
							
										
							 | 
						|||
| 
								 | 
							
									local x = var.getInt(PIECE_OF_ICE_CORE_VAR_START_X) + shakeValue;
							 | 
						|||
| 
								 | 
							
									local y = obj.getYPos();
							 | 
						|||
| 
								 | 
							
									local z = sq_GetShuttleValue(55, 65,sq_GetObjectTime(obj),1200);
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
									sq_SetCurrentPos(obj, x, y, z);
							 | 
						|||
| 
								 | 
							
								}
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								function onKeyFrameFlag_po_ATPieceOfIceCore(obj, flagIndex)
							 | 
						|||
| 
								 | 
							
								{
							 | 
						|||
| 
								 | 
							
									if(!obj)
							 | 
						|||
| 
								 | 
							
										return false;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
									if(flagIndex == 1)
							 | 
						|||
| 
								 | 
							
									{
							 | 
						|||
| 
								 | 
							
										sq_SetMyShake(obj,3,100);
							 | 
						|||
| 
								 | 
							
									}
							 | 
						|||
| 
								 | 
							
									if(flagIndex == 2)
							 | 
						|||
| 
								 | 
							
									{
							 | 
						|||
| 
								 | 
							
										obj.sendStateOnlyPacket(PIECE_OF_ICE_CORE_STATE_END);		
							 | 
						|||
| 
								 | 
							
									}
							 | 
						|||
| 
								 | 
							
									return true;	
							 | 
						|||
| 
								 | 
							
								}
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								function onEndCurrentAni_po_ATPieceOfIceCore(obj)
							 | 
						|||
| 
								 | 
							
								{
							 | 
						|||
| 
								 | 
							
									if(!obj) return;
							 | 
						|||
| 
								 | 
							
									
							 | 
						|||
| 
								 | 
							
									if(obj.isMyControlObject()) {
							 | 
						|||
| 
								 | 
							
										sq_SendDestroyPacketPassiveObject(obj);
							 | 
						|||
| 
								 | 
							
									}
							 | 
						|||
| 
								 | 
							
								}
							 | 
						|||
| 
								 | 
							
								 |