Пример #1
0
	// Use this for initialization
	void Start () 
	{		
		if( true == m_bNeedLoadEntity )
		{
			AsUserEntity userChar = AsEntityManager.Instance.CreateDummyEntity("PlayerChar");
//			CharacterLoadData entityCreationData = //
//				new CharacterLoadData(AsUserInfo.Instance.GamerUserSessionIdx, AsUserInfo.Instance.GetCurrentUserCharacterInfo());
			CharacterLoadData entityCreationData = new CharacterLoadData(AsUserInfo.Instance.GamerUserSessionIdx, CharLoadData);
			entityCreationData.moveSpeed_ = 5;
			userChar.SetCreationData( entityCreationData );
			userChar.SetEnterWorldData( EnterWorldData );
		}
	}
Пример #2
0
	public bool Loading()	
	{
		
		// char info			
		CharLoadData.nCharUniqKey = 35;
		string str = "PlayerChar";
		for( int i=0; i<str.Length; ++i )
			CharLoadData.szCharName[i] = (byte)str[i];	
	
		CharLoadData.eRace = eRACE.DEMIGOD;
		CharLoadData.eClass = eCLASS.DIVINEKNIGHT;
		CharLoadData.nLevel = 1;
//		CharLoadData.nTotExp = 1;		
//		CharLoadData.nHpCur = 1;
//		CharLoadData.nHpMax = 1;
//		CharLoadData.nMpCur = 1;
//		CharLoadData.nMpMax = 1;		
//		CharLoadData.fMoveSpeed = 300;
//		CharLoadData.fAttDistance = 100;
		
		// position 
		EnterWorldData.sPosition.x = 20.0f;
		EnterWorldData.sPosition.y = 1.0f;
		EnterWorldData.sPosition.z = 30.0f;
		
		
//		AsUserInfo.Instance.SetCurrentUserCharacterInfo(CharLoadData);
//		AsUserInfo.Instance.SetCurrentUserEnterWorldinfo( EnterWorldData );
		
		
		// Create
		AsUserEntity userChar = AsEntityManager.Instance.CreateDummyEntity("PlayerChar") ;
//		CharacterLoadData entityCreationData = new CharacterLoadData(AsUserInfo.Instance.GamerUserSessionIdx, AsUserInfo.Instance.GetCharacter(0));
//		userChar.SetCreationData( entityCreationData );
		CharacterLoadData entityCreationData = new CharacterLoadData(AsUserInfo.Instance.GamerUserSessionIdx, CharLoadData);
		entityCreationData.moveSpeed_ = 5;
		userChar.SetCreationData( entityCreationData );
		userChar.HandleMessage(new Msg_ModelInitialize(eCreationType.CHAR_LOAD_RESULT));
		userChar.SetEnterWorldData( EnterWorldData );
		
		return true ;
		
	}
Пример #3
0
	public void SaveCurCharStat( body_GC_CHAR_SELECT_RESULT_1 _result)
	{
		savedCharStat = new CharacterLoadData( nGamerUserSessionIdx, _result.body);

		AsDeathDlg.SetResurrectCnt(_result.nResurrectionCnt);
	}
Пример #4
0
	IEnumerator SetModeling()
	{
		AsLoadingIndigator.Instance.ShowIndigator( string.Empty);

		while( false == AsEntityManager.Instance.gameObject.active)
			yield return null;
		
		ReleaseModeling();
		
		eRACE race = (eRACE)AsCharacterCreateFramework.curRace;
		eCLASS job = (eCLASS)AsCharacterCreateFramework.curJob;
		eGENDER gender = (eGENDER)AsCharacterCreateFramework.curGender;
		
		sCHARVIEWDATA viewData = new sCHARVIEWDATA();
		viewData.eRace = race;
		viewData.eClass = job;
		viewData.eGender = gender;
		
		m_CharCreateGenderData = AsTableManager.Instance.GetTbl_CreateCharacter_GenderData( race, job, gender);
		if( null == m_CharCreateGenderData)
			Debug.LogError( "AsCustomizingPanel::SetModeling()[ con't find m_CharCreateGenderData ] race : " + race + " job : "+ job +" gender : " +gender);
		
		m_CharCreateClassData = AsTableManager.Instance.GetTbl_CreateCharacter_ClassData( race, job);
		if( null == m_CharCreateClassData)
			Debug.LogError( "AsCustomizingPanel::SetModeling()[ con't find m_CharCreateClassData ] race : " + race + " job : "+ job);
		
		int iHair = 0;
		if( null != m_CharCreateGenderData && null != m_CharCreateClassData)
		{
			iHair = (int)m_CharCreateGenderData.hairTypes[0] + (int)m_CharCreateGenderData.hairColors[0];
			int ibody = (int)m_CharCreateGenderData.bodyColors[0];
			int iPoint = (int)m_CharCreateGenderData.pointColors[0];
			int iGlove = (int)m_CharCreateGenderData.gloveColors[0];
			
			viewData.sNormalItemVeiw_1 = new sITEMVIEW();
			viewData.sNormalItemVeiw_1.nItemTableIdx = m_CharCreateClassData.commonProp.weapon;
			
			viewData.sNormalItemVeiw_2 = new sITEMVIEW();
			viewData.sNormalItemVeiw_2.nItemTableIdx = 0;
			
			viewData.sNormalItemVeiw_3 = new sITEMVIEW();
			viewData.sNormalItemVeiw_3.nItemTableIdx = ibody;
			
			viewData.sNormalItemVeiw_4 = new sITEMVIEW();
			viewData.sNormalItemVeiw_4.nItemTableIdx = iGlove;
			
			viewData.sNormalItemVeiw_5 = new sITEMVIEW();
			viewData.sNormalItemVeiw_5.nItemTableIdx = iPoint;
		}
		
		CharacterLoadData entityCreationData = new CharacterLoadData( ushort.MaxValue, viewData);
		entityCreationData.nHairItemIndex = iHair;
		
		m_ModelEntity = AsEntityManager.Instance.CreateUserEntity( "PlayerChar", entityCreationData, false);
		
		m_ModelEntity.HandleMessage( new Msg_AnimationIndicate( "Idle"));

		charDummy.transform.position = new Vector3( GetCharacterPositionX(), charDummy.transform.position.y, charDummy.transform.position.z);
		m_ModelEntity.gameObject.transform.localPosition = Vector3.zero;
		m_ModelEntity.gameObject.transform.localRotation = Quaternion.identity;
		m_ModelEntity.gameObject.transform.localScale = charDummy.transform.localScale;
		
		while( true)
		{
			if( eModelLoadingState.Finished == m_ModelEntity.CheckModelLoadingState())
				break;
			
			yield return null;
		}

		m_ModelEntity.transform.parent = charDummy.transform;
		SetLayerHierArchy( m_ModelEntity.transform, LayerMask.NameToLayer( "GUI"));
		
		Initialize();

		while( true == PartsRoot.s_isLoading)
			yield return null;

		genderIcons[0].controlIsEnabled = true;
		genderIcons[1].controlIsEnabled = true;

		AsLoadingIndigator.Instance.HideIndigator();
	}
Пример #5
0
	public void SetCreationData( CharacterLoadData _data)
	{
		m_bCostumeOnOff = _data.bCostumeOnOff;
		m_sCharView = _data.sCharView;
		m_sCosItemView = _data.sCosItemView;
		m_iHairItemIndex = _data.nHairItemIndex;
		#region -Designation
		designationID = _data.designationID;
		#endregion

		Tbl_Class_Record record = AsTableManager.Instance.GetTbl_Class_Record( (eRACE)_data.race_, (eCLASS)_data.class_);

		sessionId_ = (int)_data.sessionKey_;
		uniqueId_ = (int)_data.uniqKey_;

		m_SessionId = _data.sessionKey_;
		m_UniqueId = _data.uniqKey_;

		m_ShopUId = AsUserInfo.Instance.LoginUserUniqueKey;

		SetProperty( eComponentProperty.NAME, AsUtil.GetRealString( _data.charName_));
		SetProperty( eComponentProperty.GUILD_NAME, AsUtil.GetRealString( _data.guildName_));
		SetProperty( eComponentProperty.RACE, _data.race_);
		SetProperty( eComponentProperty.CLASS, _data.class_);
		SetProperty( eComponentProperty.GENDER, _data.gender_);
		SetProperty( eComponentProperty.LEVEL, _data.level_);
		SetProperty( eComponentProperty.TOTAL_EXP, _data.totExp_);
		SetProperty( eComponentProperty.ATTACK_TYPE, record.attackType);

		SetProperty( eComponentProperty.SHOP_OPENING, _data.shopOpening_);
//		Debug.Log( "AsUserEntity::SetCreationData: eComponentProperty.SHOP_OPENING = " + _data.shopOpening_);

		SetProperty( eComponentProperty.HP_CUR, _data.hpCur_);
		if( null != _data.sFinalStatus)
		{
			SetProperty( eComponentProperty.HP_MAX, _data.sFinalStatus.fHPMax);
			SetProperty( eComponentProperty.MP_MAX, _data.sFinalStatus.fMPMax);
		}
		SetProperty( eComponentProperty.MP_CUR, _data.mpCur_);

		if( _data.sFinalStatus == null)
			SetProperty( eComponentProperty.MOVE_SPEED , _data.moveSpeed_);
		else
			SetProperty( eComponentProperty.MOVE_SPEED , (float)_data.sFinalStatus.nMoveSpeed * 0.01f);

		SetProperty( eComponentProperty.VIEW_DISTANCE , record.ViewDistance * 0.01f);

		Tbl_Skill_Record skill = AsTableManager.Instance.GetRandomBaseSkill( (eCLASS)_data.class_);
		Tbl_SkillLevel_Record skillLevel = AsTableManager.Instance.GetTbl_SkillLevel_Record( 1, skill.Index);

		SetProperty( eComponentProperty.ATTACK_DISTANCE, skillLevel.Usable_Distance * 0.01f);

		transform.rotation = Quaternion.AngleAxis( 180, Vector3.up);

		AsEntityManager.Instance.RegisterUserCharacter( this);
	}
Пример #6
0
	private void CharacterLoad()
	{
		if( true == loadStarted)
			return;

		if( ( 0 > screenIndex) || ( 2 < screenIndex))
			return;

		AsPacketHeader packet = AsUserInfo.Instance.GetCharacter( index);
		if( null == packet)
			return;

		CharacterLoadData entityCreationData = null;

		if( packet.GetType() == typeof( sCHARVIEWDATA))
		{
			sCHARVIEWDATA viewData = packet as sCHARVIEWDATA;

			Debug.Log( "AsCharacterSlotManager::_CreateCharacter: viewData.nCharUniqKey" + viewData.nCharUniqKey);

			entityCreationData = new CharacterLoadData( AsUserInfo.Instance.GamerUserSessionIdx, viewData);
			userEntity = AsEntityManager.Instance.CreateUserEntity( "PlayerChar", entityCreationData, false);
			userEntity.transform.parent = charDummy.transform;
			userEntity.transform.localPosition = Vector3.zero;
			userEntity.transform.localScale = Vector3.one;
			userEntity.transform.localRotation = Quaternion.identity;
			userEntity.HandleMessage( new Msg_AnimationIndicate( "Idle"));

			emptyEffect.gameObject.SetActiveRecursively( false);
		}
		else if( packet.GetType() == typeof( AS_GC_CHAR_LOAD_RESULT_EMPTY))
		{
			entityCreationData = new CharacterLoadData( AsUserInfo.Instance.GamerUserSessionIdx, packet as AS_GC_CHAR_LOAD_RESULT_EMPTY);
			userEntity = AsEntityManager.Instance.CreateUserEntity( "EmptySlot", entityCreationData);
			Debug.Assert( null != userEntity);
		}

		info.SetData( userEntity, isLocked);

		loadStarted = true;
	}