protected bool DropToGround(ref Vector3 pos) { RaycastHit raycastHit; int num = 1235288065; int num1 = 8454144; if (TerrainMeta.TopologyMap && (TerrainMeta.TopologyMap.GetTopology(pos) & 82048) != 0) { return(false); } if (TerrainMeta.HeightMap && TerrainMeta.Collision && !TerrainMeta.Collision.GetIgnore(pos, 0.01f)) { float height = TerrainMeta.HeightMap.GetHeight(pos); pos.y = Mathf.Max(pos.y, height); } if (!TransformUtil.GetGroundInfo(pos, out raycastHit, 80f, num, null)) { return(false); } if ((1 << (raycastHit.transform.gameObject.layer & 31) & num1) == 0) { return(false); } pos = raycastHit.point; return(true); }
private void RegenerateInTeamHeroModels() { DespawnCharacter(); for (int i = 0; i < 9; i++) { FormationPosition formationPosition = (FormationPosition)(i + 1); uint roleID = ManageHeroesProxy.instance.GetCharacterInstanceIDAt(formationPosition); //uint cachedRoleID = 0; //_cachedFormationDic.TryGetValue(formationPosition, out cachedRoleID); //if (roleID != cachedRoleID) //{ TransformUtil.ClearChildren(roleModelRoots[i], true); if (!ManageHeroesProxy.instance.IsPositionEmpty(formationPosition)) { if (GameProxy.instance.IsPlayer(roleID)) { PlayerInfo playerInfo = GameProxy.instance.PlayerInfo; CharacterEntity characterEntity = CharacterEntity.CreatePlayerEntityAsUIElement(playerInfo, roleModelRoots[i], false, false); _characters.Add(characterEntity); } else { HeroInfo heroInfo = HeroProxy.instance.GetHeroInfo(roleID); HeroEntity heroEntity = CharacterEntity.CreateHeroEntityAsUIElement(heroInfo, roleModelRoots[i], false, false); _characters.Add(heroEntity); } } _cachedFormationDic.AddOrReplace(formationPosition, roleID); //} formationBaseImages[i].SetSprite(roleID > 0 || ManageHeroesProxy.instance.CurrentFormationTeamInfo.formationInfo.formationData.GetPosEnalbe(formationPosition) ? _formationOccupiedSprite : _formationNormalSprite); roleShadows[i].gameObject.SetActive(roleID > 0); } }
// 设置庄家 public void SetDealer(int player_pos) { Vector3[] dealerPos = Coordinate.GetDealerPosArray(maxCount); int target = GetPlayerPos(player_pos - 1); if (dealer == null) { string dealerPath = "Prefabs/Dealer"; dealer = Instantiate(Resources.Load(dealerPath)) as GameObject; dealer.transform.parent = desktop.transform; dealer.transform.localScale = new Vector3(1, 1, 1); dealer.transform.localPosition = dealerPos[target]; TransformUtil.SetWarpAnchor(dealer); } else { // 显示庄家 dealer.SetActive(true); Sequence s = DOTween.Sequence(); s.Append(dealer.transform.DOLocalMove(dealerPos[target], 1)); s.AppendCallback(() => { TransformUtil.ResetAnchor(dealer, dealerPos[target]); dealer.GetComponent <Image>().SetNativeSize(); TransformUtil.SetWarpAnchor(dealer); }); } }
public void UpdateVisuals(int totalNumCards) { this.m_numCardsText.Text = this.m_numCards.ToString(); this.m_amountText.Text = this.m_amount.ToString(); if (this.m_numGoldText != null) { if (this.m_numGoldCards > 0) { this.m_numGoldText.gameObject.SetActive(true); object[] args = new object[] { this.m_numGoldCards.ToString() }; this.m_numGoldText.Text = GameStrings.Format("GLUE_MASS_DISENCHANT_NUM_GOLDEN_CARDS", args); TransformUtil.SetLocalPosX(this.m_numCardsText, 7.638979f); this.m_barFrameMesh.GetComponent <MeshFilter>().mesh = MassDisenchant.Get().m_rarityBarGoldMesh; this.m_barFrameMesh.material = MassDisenchant.Get().m_rarityBarGoldMaterial; } else { this.m_numGoldText.gameObject.SetActive(false); TransformUtil.SetLocalPosX(this.m_numCardsText, 2.902672f); this.m_barFrameMesh.GetComponent <MeshFilter>().mesh = MassDisenchant.Get().m_rarityBarNormalMesh; this.m_barFrameMesh.material = MassDisenchant.Get().m_rarityBarNormalMaterial; } } float num = (totalNumCards <= 0f) ? 0f : (((float)this.m_numCards) / ((float)totalNumCards)); this.m_amountBar.GetComponent <Renderer>().material.SetFloat("_Percent", num); }
public void Move(CollisionObject item, Matrix4 transform) { var worldTransform = item.WorldTransform; var from = worldTransform.ExtractTranslation( ); var to = transform.ExtractTranslation( ); var closestConvexResultCallback = new ClosestNotMeConvexResultCallback(item, from, to) { CollisionFilterGroup = ( CollisionFilterGroups )(CollisionGroup.Objects | CollisionGroup.Level) }; World.ConvexSweepTest(( ConvexShape )item.CollisionShape, worldTransform, transform, closestConvexResultCallback); if (closestConvexResultCallback.HasHit) { Vector3 linVel; Vector3 angVel; TransformUtil.CalculateVelocity(worldTransform, transform, 1.0f, out linVel, out angVel); Matrix4 T; TransformUtil.IntegrateTransform(worldTransform, linVel, angVel, closestConvexResultCallback.ClosestHitFraction, out T); item.WorldTransform = T; } else { item.WorldTransform = transform; } }
private static void SaveSkinnedMesh(string savePath, string name, GameObject model, string[] extraTransformNames, Material[] mats) { var renderer = model.GetComponentInChildren <SkinnedMeshRenderer>(true); if (renderer == null) { return; } var data = ScriptableObject.CreateInstance <SkinnedMeshData>(); var bones = renderer.bones; string[] bonePaths = new string[bones.Length]; for (int i = 0; i < bones.Length; i++) { string bonePath = TransformUtil.GetTransformPath(model.transform, bones[i]); bonePaths[i] = bonePath; } data.bones = bonePaths; //data.materials = renderer.sharedMaterials; data.materials = mats; data.mesh = renderer.sharedMesh; data.extraTransformNames = extraTransformNames; AssetDatabase.CreateAsset(data, savePath); AssetImporter.GetAtPath(savePath).assetBundleName = string.Format("models/skin_{0}.bundle", name); }
private void RefreshVIPDetail() { VIPData currentVIPData = VIPData.GetVIPData(_currentVIPLevel); VIPDetailTitleText.text = Localization.Get(currentVIPData.name); if (currentVIPData.IsMinLevelVIPData()) { previousVIPDetailButton.gameObject.SetActive(false); nextVIPDetailButton.gameObject.SetActive(true); } else if (currentVIPData.IsMaxLevelVIPData()) { previousVIPDetailButton.gameObject.SetActive(true); nextVIPDetailButton.gameObject.SetActive(false); } else { previousVIPDetailButton.gameObject.SetActive(true); nextVIPDetailButton.gameObject.SetActive(true); } LeanTween.value(vipDetailContent.gameObject, OnVIPDetailContentXUpdate, vipDetailContent.anchoredPosition.x, -_currentVIPLevel * vipPrivilegeDetailItemPrefab.GetComponent <LayoutElement>().preferredWidth, 0.25f); TransformUtil.ClearChildren(vipBenefitsItemsRoot, true); List <GameResData> benefitItemList = currentVIPData.benefitItemList; for (int i = 0, benefitItemCount = benefitItemList.Count; i < benefitItemCount; i++) { CommonRewardIcon rewardIcon = CommonRewardIcon.Create(vipBenefitsItemsRoot); rewardIcon.SetGameResData(benefitItemList[i]); } VIPBenefitsRootGameObject.gameObject.SetActive(benefitItemList.Count > 0); drawVIPBenefitsButton.gameObject.SetActive(!VIPProxy.instance.HasReceivedGiftVIPLevelList.Contains(_currentVIPLevel)); }
public void State_Strafe_Enter(Vector3 strafePos, bool shouldUseNapalm = false) { Vector3 vector3; Vector3 vector31; if (this.CanUseNapalm() & shouldUseNapalm) { this.useNapalm = shouldUseNapalm; this.lastNapalmTime = UnityEngine.Time.realtimeSinceStartup; } this.lastStrafeTime = UnityEngine.Time.realtimeSinceStartup; this._currentState = PatrolHelicopterAI.aiState.STRAFE; if (!TransformUtil.GetGroundInfo(strafePos, out vector3, out vector31, 100f, LayerMask.GetMask(new string[] { "Terrain", "World", "Construction", "Water" }), base.transform)) { this.strafe_target_position = strafePos; } else { this.strafe_target_position = vector3; } this.numRocketsLeft = 12; this.lastRocketTime = 0f; this.movementLockingAiming = true; Vector3 randomOffset = this.GetRandomOffset(strafePos, 175f, 192.5f, 20f, 30f); this.SetTargetDestination(randomOffset, 10f, 30f); this.SetIdealRotation(this.GetYawRotationTo(randomOffset), -1f); this.puttingDistance = true; }
private void GestureListener_DragCompleted(object sender, DragCompletedGestureEventArgs e) { if (IsDragItem || !IsDragList) { return; } _lastDraggedYDist = -1.0; if (firstItem != null) { if (firstItem.Height > 70) { firstItem.Height = 100; TransformUtil.setScaleX(firstItem, 1); TransformUtil.setTranslateX(firstItem, 0); } else { //Debug.WriteLine("Delete"); CurrItem.Delete(0); } } firstItem = null; IsDragList = false; }
private void OnFrameMouseOver(UIEvent e) { string key = string.Empty; string str2 = string.Empty; switch (this.m_showingCurrency) { case CurrencyType.GOLD: key = "GLUE_TOOLTIP_GOLD_HEADER"; str2 = "GLUE_TOOLTIP_GOLD_DESCRIPTION"; break; case CurrencyType.ARCANE_DUST: key = "GLUE_CRAFTING_ARCANEDUST"; str2 = "GLUE_CRAFTING_ARCANEDUST_DESCRIPTION"; break; } if (key != string.Empty) { KeywordHelpPanel panel = base.GetComponent <TooltipZone>().ShowTooltip(GameStrings.Get(key), GameStrings.Get(str2), 0.7f, true); SceneUtils.SetLayer(panel.gameObject, GameLayer.BattleNet); panel.transform.localEulerAngles = new Vector3(270f, 0f, 0f); panel.transform.localScale = new Vector3(70f, 70f, 70f); if (UniversalInputManager.UsePhoneUI != null) { TransformUtil.SetPoint((Component)panel, Anchor.TOP, (Component)this.m_mouseOverZone, Anchor.BOTTOM, Vector3.zero); } else { TransformUtil.SetPoint((Component)panel, Anchor.BOTTOM, (Component)this.m_mouseOverZone, Anchor.TOP, Vector3.zero); } } }
public Spell GetSpell(SpellType spellType) { foreach (SpellTableEntry entry in this.m_Table) { if (entry.m_Type == spellType) { if ((entry.m_Spell == null) && (entry.m_SpellPrefabName != null)) { string name = FileUtils.GameAssetPathToName(entry.m_SpellPrefabName); GameObject obj2 = AssetLoader.Get().LoadActor(name, true, true); Spell spell = obj2.GetComponent <Spell>(); if (spell != null) { entry.m_Spell = spell; TransformUtil.AttachAndPreserveLocalTransform(obj2.transform, base.gameObject.transform); } } if (entry.m_Spell == null) { Debug.LogError(string.Concat(new object[] { "Unable to load spell ", spellType, " from spell table ", base.gameObject.name })); return(null); } Spell component = UnityEngine.Object.Instantiate <GameObject>(entry.m_Spell.gameObject).GetComponent <Spell>(); component.SetSpellType(spellType); return(component); } } return(null); }
public static void GlobalBroadcast(string messageName, object param = null) { foreach (Component rootObject in TransformUtil.GetRootObjects()) { rootObject.BroadcastMessage(messageName, param, (SendMessageOptions)1); } }
static int QPYX_SetZ_YXQP(IntPtr L_YXQP) { try { int QPYX_count_YXQP = LuaDLL.lua_gettop(L_YXQP); if (QPYX_count_YXQP == 2) { UnityEngine.Transform QPYX_arg0_YXQP = (UnityEngine.Transform)ToLua.CheckObject <UnityEngine.Transform>(L_YXQP, 1); float QPYX_arg1_YXQP = (float)LuaDLL.luaL_checknumber(L_YXQP, 2); TransformUtil.SetZ(QPYX_arg0_YXQP, QPYX_arg1_YXQP); return(0); } else if (QPYX_count_YXQP == 3) { UnityEngine.Transform QPYX_arg0_YXQP = (UnityEngine.Transform)ToLua.CheckObject <UnityEngine.Transform>(L_YXQP, 1); float QPYX_arg1_YXQP = (float)LuaDLL.luaL_checknumber(L_YXQP, 2); bool QPYX_arg2_YXQP = LuaDLL.luaL_checkboolean(L_YXQP, 3); TransformUtil.SetZ(QPYX_arg0_YXQP, QPYX_arg1_YXQP, QPYX_arg2_YXQP); return(0); } else { return(LuaDLL.luaL_throw(L_YXQP, "invalid arguments to method: TransformUtil.SetZ")); } } catch (Exception e_YXQP) { return(LuaDLL.toluaL_exception(L_YXQP, e_YXQP)); } }
private void InitToggles() { int start = (int)BlackMarketType.BlackMarket_Min + 1; int end = (int)BlackMarketType.BlackMarket_Max; if (!BlackMarketProxy.instance.isLimitActivityOpen) { end = (int)BlackMarketType.BlackMarket_LimitActivity; } TransformUtil.ClearChildren(toggleRoot, true); togglePrefab.gameObject.SetActive(true); for (int i = start; i < end; i++) { Toggle toggle = Instantiate <Toggle>(togglePrefab); toggle.transform.SetParent(toggleRoot, false); ToggleContent content = toggle.GetComponent <ToggleContent>(); content.Set(i, Localization.Get(string.Format("ui.black_market_view.toggle.{0}", i))); if (i == (int)BlackMarketProxy.instance.selectType) { toggle.isOn = true; } else { toggle.isOn = false; } } togglePrefab.gameObject.SetActive(false); }
static int SetZ(IntPtr L) { try { int count = LuaDLL.lua_gettop(L); if (count == 2) { UnityEngine.Transform arg0 = (UnityEngine.Transform)ToLua.CheckObject <UnityEngine.Transform>(L, 1); float arg1 = (float)LuaDLL.luaL_checknumber(L, 2); TransformUtil.SetZ(arg0, arg1); return(0); } else if (count == 3) { UnityEngine.Transform arg0 = (UnityEngine.Transform)ToLua.CheckObject <UnityEngine.Transform>(L, 1); float arg1 = (float)LuaDLL.luaL_checknumber(L, 2); bool arg2 = LuaDLL.luaL_checkboolean(L, 3); TransformUtil.SetZ(arg0, arg1, arg2); return(0); } else { return(LuaDLL.luaL_throw(L, "invalid arguments to method: TransformUtil.SetZ")); } } catch (Exception e) { return(LuaDLL.toluaL_exception(L, e)); } }
public void SetAxis(ref IndexedVector3 axisInA) { IndexedVector3 rbAxisA1, rbAxisA2; TransformUtil.PlaneSpace1(ref axisInA, out rbAxisA1, out rbAxisA2); IndexedVector3 pivotInA = m_rbAFrame._origin; // m_rbAFrame._origin = pivotInA; //MathUtil.setBasis(ref m_rbAFrame,ref axisInA,ref rbAxisA1,ref rbAxisA2); m_rbAFrame._basis = new IndexedBasisMatrix(rbAxisA1.X, rbAxisA2.X, axisInA.X, rbAxisA1.Y, rbAxisA2.Y, axisInA.Y, rbAxisA1.Z, rbAxisA2.Z, axisInA.Z); IndexedVector3 axisInB = m_rbA.GetCenterOfMassTransform()._basis *axisInA; IndexedQuaternion rotationArc = MathUtil.ShortestArcQuat(ref axisInA, ref axisInB); IndexedVector3 rbAxisB1 = MathUtil.QuatRotate(ref rotationArc, ref rbAxisA1); IndexedVector3 rbAxisB2 = IndexedVector3.Cross(ref axisInB, ref rbAxisB1); m_rbBFrame._origin = m_rbB.GetCenterOfMassTransform().Inverse() * (m_rbA.GetCenterOfMassTransform() * (pivotInA)); m_rbBFrame._basis = new IndexedBasisMatrix(rbAxisB1.X, rbAxisB2.X, axisInB.X, rbAxisB1.Y, rbAxisB2.Y, axisInB.Y, rbAxisB1.Z, rbAxisB2.Z, axisInB.Z); }
protected override Rect GetBoundingRectangleCore() { if (this._item.Parent == null && this._item != this._item.Root && this._item.Name != null) { ModelItem modelItem = this.ModelService.FromName(this.ModelService.Root, this._item.Name, StringComparison.OrdinalIgnoreCase); if (modelItem != null) { this._item = modelItem; } } PresentationSource presentationSource = PresentationSource.FromVisual((Visual)DesignerView.FromContext(this._item.Context)); if (presentationSource == null || presentationSource.RootVisual == null || !this.ViewItem.IsVisible) { return(new Rect()); } Rect selectionFrameBounds = ElementUtilities.GetSelectionFrameBounds(this.ViewItem); if (selectionFrameBounds.Location == new Point(0.0, 0.0) && selectionFrameBounds.Size == new Size(0.0, 0.0)) { return(new Rect()); } Rect rect1 = new Rect(selectionFrameBounds.Size); Rect rect2 = TransformUtil.GetSelectionFrameTransformToParentVisual(this.ViewItem, presentationSource.RootVisual).TransformBounds(rect1); return(new Rect(presentationSource.RootVisual.PointToScreen(rect2.Location), rect2.Size)); }
public override void ProcessAllTriangles(ITriangleCallback callback, ref IndexedVector3 aabbMin, ref IndexedVector3 aabbMax) { IndexedVector3 halfExtents = (aabbMax - aabbMin) * .5f; float radius = halfExtents.Length(); IndexedVector3 center = (aabbMax + aabbMin) * 0.5f; //this is where the triangles are generated, given AABB and plane equation (normal/constant) IndexedVector3 tangentDir0; IndexedVector3 tangentDir1; //tangentDir0/tangentDir1 can be precalculated TransformUtil.PlaneSpace1(ref m_planeNormal, out tangentDir0, out tangentDir1); IndexedVector3 supVertex0 = IndexedVector3.Zero; IndexedVector3 supVertex1 = IndexedVector3.Zero; IndexedVector3 projectedCenter = center - (IndexedVector3.Dot(m_planeNormal, center) - m_planeConstant) * m_planeNormal; IndexedVector3[] triangle = new IndexedVector3[3]; triangle[0] = (projectedCenter + tangentDir0 * radius + tangentDir1 * radius); triangle[1] = (projectedCenter + tangentDir0 * radius - tangentDir1 * radius); triangle[2] = (projectedCenter - tangentDir0 * radius - tangentDir1 * radius); callback.ProcessTriangle(triangle, 0, 0); triangle[0] = projectedCenter - tangentDir0 * radius - tangentDir1 * radius; triangle[1] = projectedCenter - tangentDir0 * radius + tangentDir1 * radius; triangle[2] = projectedCenter + tangentDir0 * radius + tangentDir1 * radius; callback.ProcessTriangle(triangle, 0, 1); }
public void InternalWritebackVelocity(float timeStep) { if (BulletGlobals.g_streamWriter != null && BulletGlobals.debugRigidBody) { BulletGlobals.g_streamWriter.WriteLine(String.Format("[{0}] internalWritebackVelocity ", (String)m_userObjectPointer)); MathUtil.PrintVector3(BulletGlobals.g_streamWriter, "LinearVelocity", GetLinearVelocity()); MathUtil.PrintVector3(BulletGlobals.g_streamWriter, "DeltaLinearVelocity", m_deltaLinearVelocity); MathUtil.PrintVector3(BulletGlobals.g_streamWriter, "AngularVelocity", GetAngularVelocity()); MathUtil.PrintVector3(BulletGlobals.g_streamWriter, "DeltaAngularVelocity", m_deltaAngularVelocity); } if (m_inverseMass != 0f) { SetLinearVelocity(GetLinearVelocity() + m_deltaLinearVelocity); SetAngularVelocity(GetAngularVelocity() + m_deltaAngularVelocity); //correct the position/orientation based on push/turn recovery IndexedMatrix newTransform; TransformUtil.IntegrateTransform(GetWorldTransform(), m_pushVelocity, m_turnVelocity, timeStep, out newTransform); SetWorldTransform(ref newTransform); //m_originalBody->setCompanionId(-1); } if (BulletGlobals.g_streamWriter != null && BulletGlobals.debugRigidBody) { BulletGlobals.g_streamWriter.WriteLine("post integrate transform."); MathUtil.PrintMatrix(BulletGlobals.g_streamWriter, GetWorldTransform()); } //m_deltaLinearVelocity = IndexedVector3.Zero; //m_deltaAngularVelocity = IndexedVector3.Zero; //m_pushVelocity = IndexedVector3.Zero; //m_turnVelocity = IndexedVector3.Zero; }
/// <summary> /// 检查是否隐藏UI /// </summary> void CheckHidenWin() { bool isHiden = false; for (int i = m_IdPosList.Count - 1; i >= 0; i--) { int id = m_IdPosList[i]; if (m_UIList.ContainsKey(id)) { WindowBase winbs = m_UIList[id]; if (winbs == null) { continue; } T_UIConfig config = winbs.F_GetUIConfig(); if (config.UI_Type == T_UIConfig.UI_TYPE.WIN) { if (isHiden == true) { TransformUtil.ChangeLayer(winbs.transform, 0, 5); } else { TransformUtil.ChangeLayer(winbs.transform, 5, 0); } if (config.ShowMask == (int)MaskType.BlurTexture || config.ShowMask == (int)MaskType.HidenUnderUI) { isHiden = true; } } } } }
public void Draw(IDebugDraw drawer) { int i; for (i = 0; i < NUMRAYS_IN_BAR; i++) { drawer.DrawLine(ref source[i], ref hit_com[i], Color.Lime); } const float normalScale = 10.0f; // easier to see if this is big for (i = 0; i < NUMRAYS_IN_BAR; i++) { Vector3 to = hit_surface[i] + normalScale * normal[i]; drawer.DrawLine(ref hit_surface[i], ref to, Color.White); } Quaternion qFrom = Quaternion.RotationAxis(new Vector3(1.0f, 0.0f, 0.0f), 0.0f); Quaternion qTo = Quaternion.RotationAxis(new Vector3(1.0f, 0.0f, 0.0f), 0.7f); for (i = 0; i < NUMRAYS_IN_BAR; i++) { Matrix from = Matrix.RotationQuaternion(qFrom) * Matrix.Translation(source[i]); Matrix to = Matrix.RotationQuaternion(qTo) * Matrix.Translation(dest[i]); Vector3 linVel, angVel; TransformUtil.CalculateVelocity(from, to, 1.0f, out linVel, out angVel); Matrix T; TransformUtil.IntegrateTransform(from, linVel, angVel, hit_fraction[i], out T); Vector3 box1 = boxShapeHalfExtents; Vector3 box2 = -boxShapeHalfExtents; drawer.DrawBox(ref box1, ref box2, ref T, Color.Aqua); } }
public List <List <Line3D> > Partition(List <Line3D> square, double width, double height) { //获取当前面的转换举证 Matrix4 m = TransformUtil.GetMatrix(square); //将当前坐标转换到平面坐标 List <Line3D> tf = TransformUtil.Transform(square, m); //计算投影 List <Line2D> pf = TransformUtil.Projection(tf); List <List <Line2D> > partitions = Partition(pf, width, height, null); var rm = TransformUtil.GetInversetMatrix(m); //当前的结果 List <List <Line3D> > result = new List <List <Line3D> >(); //进行坐标转换 partitions.ForEach(x => { List <Line3D> rt = TransformUtil.Projection(x, 0); result.Add(TransformUtil.Transform(rt, rm)); }); return(result); }
private IEnumerator RefreshRoleModelCoroutine() { DespawnCharacter(); TransformUtil.ClearChildren(roleModelRoot, true); yield return(new WaitForSeconds(0.4f)); PlayerInfo playerInfo = _roleInfo as PlayerInfo; HeroInfo heroInfo = _roleInfo as HeroInfo; if (playerInfo != null) { CharacterEntity characterEntity = CharacterEntity.CreatePlayerEntityAsUIElement(playerInfo, roleModelRoot, true, true); Action.Controller.ActionController.instance.PlayerAnimAction(characterEntity, AnimatorUtil.VICOTRY_ID); } else if (heroInfo != null) { bool canClick = true; if (_roleInfo.heroData.hero_type == 4)//boss { canClick = false; } _characterEntity = CharacterEntity.CreateHeroEntityAsUIElement(heroInfo, roleModelRoot, canClick, true); if (canClick) { Action.Controller.ActionController.instance.PlayerAnimAction(_characterEntity, AnimatorUtil.VICOTRY_ID); } } }
// Reflect the rectangle in the XAxis public void ReflectXAxis() { TransformUtil.ReflectXAxis(ref m_dMinX, ref m_dMinY); TransformUtil.ReflectXAxis(ref m_dMaxX, ref m_dMaxY); Normalize(); }
public bool DropToGround(Vector3 targetPos, bool force = false) { float range = (force ? 10000f : (maxStepHeight + maxStepDownHeight)); Vector3 pos; Vector3 normal; if (TransformUtil.GetGroundInfo(targetPos, out pos, out normal, range, 278986753)) { if (UnityEngine.Physics.CheckSphere(pos + Vector3.up * 1f, 0.2f, 278986753)) { return(false); } base.transform.position = pos; Vector3 eulerAngles = QuaternionEx.LookRotationForcedUp(base.transform.forward, averagedUp).eulerAngles; if (eulerAngles.z > 180f) { eulerAngles.z -= 360f; } else if (eulerAngles.z < -180f) { eulerAngles.z += 360f; } eulerAngles.z = Mathf.Clamp(eulerAngles.z, -10f, 10f); base.transform.rotation = Quaternion.Euler(eulerAngles); return(true); } return(false); }
public static Rect GetRenderSizeBounds(DependencyObject element) { if (element == null) { throw new ArgumentNullException("element"); } Rect rect = new Rect(); Visual visual = element as Visual; if (visual == null) { return(rect); } rect.Location = (Point)VisualTreeHelper.GetOffset(visual); UIElement uiElement = visual as UIElement; if (uiElement == null) { Size size = VisualTreeHelper.GetContentBounds(visual).Size; if (size.Width <= 0.0 && size.Height <= 0.0) { Visual parentVisual = VisualTreeHelper.GetParent((DependencyObject)visual) as Visual; if (parentVisual != null) { size = TransformUtil.GetTransformToDescendant(parentVisual, visual).TransformBounds(ElementUtilities.GetSelectionFrameBounds((DependencyObject)parentVisual)).Size; } } rect.Size = size; } else { rect.Size = uiElement.RenderSize; } return(rect); }
/// <summary> /// Shows the config and control window in Unity. /// </summary> private static void SettingsGUI() { TransformUtil tu = (TransformUtil)GetWindow <TransformUtil>(); tu.title = "Transform Util"; tu.Show(); }
public void RefreshUIDropReward() { List <GameResData> rewards = DungeonDetailProxy.instance.GetDropRewardList(); GameResData resData; TransformUtil.ClearChildren(TranRewardRoot, true); int accountExp = 0; int heroExp = 0; for (int i = 0, count = rewards.Count; i < count; i++) { resData = rewards[i]; BaseResType type = resData.type; if (type == BaseResType.Hero || type == BaseResType.Equipment || type == BaseResType.Item) { CommonRewardIcon icon = CommonRewardIcon.Create(TranRewardRoot); icon.SetGameResData(resData); icon.SetDesButtonType(ShowDescriptionType.click); } else if (type == BaseResType.Account_Exp) { accountExp += resData.count; } else if (type == BaseResType.Hero_Exp) { heroExp += resData.count; } } text_reward_hero_exp.text = heroExp.ToString(); text_reward_account_exp.text = accountExp.ToString(); }
// 初始化玩家位置 private void InitPlayer() { if (playerObjs.Count > 0) { return; } int slide_count = maxCount / 2; Vector3[] playerPos = Coordinate.GetPlayerPosArray(maxCount); Vector3[] chipPos = Coordinate.GetChipPosArray(maxCount); for (int i = 0; i < maxCount; i++) { // 初始化筹码位置 string chipPath = i > slide_count ? "Prefabs/ChipLeft" : "Prefabs/ChipRight"; GameObject chipObj = Instantiate(Resources.Load(chipPath)) as GameObject; chipObj.name = "chip" + i; chipObj.transform.parent = desktop.transform; chipObj.transform.localScale = new Vector3(1, 1, 1); chipObj.transform.localPosition = chipPos[i]; chips.Add(chipObj); TransformUtil.SetWarpAnchor(chipObj); // 初始化玩家 GameObject player = Instantiate(Resources.Load("Prefabs/Player")) as GameObject; player.name = "player" + i; player.transform.parent = desktop.transform; player.transform.localScale = new Vector3(1, 1, 1); player.GetComponent <PlayerControler>().chipObj = chipObj; player.GetComponent <PlayerControler>().SetHandCardPosition(i > slide_count); player.transform.localPosition = playerPos[i]; playerObjs.Add(player); TransformUtil.SetWarpAnchor(player); } roomLight.GetComponent <LightControler>().SetPalyerObjects(playerObjs); }
public void UpdateGroundNormal() { Vector3 vector3; Vector3 vector31; if (Time.time >= this.nextGroundNormalUpdateTime) { this.nextGroundNormalUpdateTime = Time.time + UnityEngine.Random.Range(0.2f, 0.35f); this.targetUp = this.averagedUp; Transform[] transformArrays = this.groundSampleOffsets; for (int i = 0; i < (int)transformArrays.Length; i++) { if (!TransformUtil.GetGroundInfo(transformArrays[i].position + (Vector3.up * 2f), out vector3, out vector31, 4f, 278986753, null)) { this.targetUp += Vector3.up; } else { this.targetUp += vector31; } } this.targetUp /= (float)((int)this.groundSampleOffsets.Length + 1); } this.averagedUp = Vector3.Lerp(this.averagedUp, this.targetUp, Time.deltaTime * 4f); }