public static void AddSeperator(RenderContext context, CardElement element, Grid uiContainer) { if (element.Spacing == Spacing.None && !element.Separator) { return; } var uiSep = new Grid(); uiSep.Style = context.GetStyle($"Adaptive.Separator"); int spacing = context.Config.GetSpacing(element.Spacing); SeparatorConfig sepStyle = context.Config.Separator; uiSep.Margin = new Thickness(0, (spacing - sepStyle.LineThickness) / 2, 0, (spacing - sepStyle.LineThickness) / 2); uiSep.SetHeight(sepStyle.LineThickness); if (!string.IsNullOrWhiteSpace(sepStyle.LineColor)) { uiSep.SetBackgroundColor(sepStyle.LineColor, context); } uiContainer.RowDefinitions.Add(new RowDefinition() { Height = GridLength.Auto }); Grid.SetRow(uiSep, uiContainer.RowDefinitions.Count - 1); uiContainer.Children.Add(uiSep); }
private static Point GetTrackingPoint(CardElement element, string direction) { var point = Bounds.CenterOf(element.Bounds); if (direction.Contains("Top")) { point.Y = element.Top; } if (direction.Contains("Bottom")) { point.Y = element.Bounds.Bottom; } if (direction.Contains("Left")) { point.X = element.Left; } if (direction.Contains("Right")) { point.X = element.Bounds.Right; } return(point); }
protected static void AddSeparator(HtmlTag uiContainer, CardElement cardElement, RenderContext context) { switch (cardElement.Separation) { case SeparationStyle.None: return; case SeparationStyle.Default: { SeparationConfig sep = context.GetElementSeparation(cardElement); var uiSep = new DivTag() .AddClass("ac-separator") .Style("height", $"{sep.Spacing}px"); uiContainer.Children.Add(uiSep); } return; case SeparationStyle.Strong: { SeparationConfig sep = context.Config.StrongSeparation; var uiSep = new DivTag() .AddClass("ac-separator") .Style("padding-top", $"{sep.Spacing}px") .Style("margin-top", $"{sep.Spacing}px") .Style("border-top-color", $"{context.GetRGBColor(sep.LineColor)}") .Style("border-top-width", $"{sep.LineThickness}px") .Style("border-top-style", "solid") ; uiContainer.Children.Add(uiSep); } return; } }
public async Task <CardElement> InitCardLike() { var card = new CardElement(); card.Title = "Amour pour la raclette"; card.NumberResult = new List <FieldElement>(); foreach (var item in RaclettePollsList) { var temp = item.Like ? "Oui" : "Non"; if (card.NumberResult.Count(p => p.Key == temp) == 0) { card.NumberResult.Add(new FieldElement() { Key = temp, Value = 1, Color = ColorsUtils.Instance.GetRandomColor() }); } else { card.NumberResult.Find(p => p.Key == temp).Value += 1; } } card.NumberResult = card.NumberResult.OrderByDescending(p => p.Value).Select(d => d).ToList(); card.GraphResult = new GraphPie(card.NumberResult); return(card); }
public RouteChoice findRoute(CardEmotion emotion, CardElement element) { if (emotion == CardEmotion.violent && element == CardElement.airborne) { return(RouteChoice.AirViolent); } if (emotion == CardEmotion.violent && element == CardElement.fluid) { return(RouteChoice.ContactViolent); } if (emotion == CardEmotion.violent && element == CardElement.water) { return(RouteChoice.WaterViolent); } if (emotion == CardEmotion.nonviolent && element == CardElement.airborne) { return(RouteChoice.AirNon); } if (emotion == CardEmotion.nonviolent && element == CardElement.fluid) { return(RouteChoice.ContactNon); } if (emotion == CardEmotion.nonviolent && element == CardElement.water) { return(RouteChoice.WaterNon); } return(RouteChoice.AirViolent); }
// user has chosen a card public void continueWithChoice(Card card) { CardEmotion resultEmotion = choiceTree.calculateViolence(card); CardElement resultElement = choiceTree.calculateElement(card); instructions = "You chose a " + card.cardText.GetComponent <Text>().text + " approach. The zombies decided to take a " + resultEmotion.ToString() + ", " + resultElement + " approach!"; GameManager._instance.DisplaySelectionText(instructions); routeChoice = choiceTree.findRoute(resultEmotion, resultElement); // remove card display foreach (Card c in inGameHand) { c.GetComponent <RectTransform>().SetSiblingIndex(0); c.GetComponent <Button>().interactable = false; // Destroy(c.gameObject); } // add hand back to deck //while(hand.Count > 0) //{ // deck.Cards.Add(hand[hand.Count-1]); // hand.RemoveAt(hand.Count-1); //} }
private void SelectElement(CardElement element) { foreach (var el in _layoutDocument.Elements) { el.Selected = el == element; } }
public AddElementAction(LayoutDocument layoutDocument, CardElement newElement) { _layoutDocument = layoutDocument; _newElements = new List <CardElement> { newElement }; }
//public bool HasPrevFaceDown() //{ // return m_PrevFaceDown ? true : false; //} public void OnSelectedChange(bool changeStack = true) { if (m_IsSelected) { Logger.Instance.PrintLog(Common.DEBUG_TAG, "card " + m_CardName + " isSelected"); m_Renderer.color = Color.yellow; m_PrevPos = this.transform.position; } else { Logger.Instance.PrintLog(Common.DEBUG_TAG, "card " + m_CardName + " deSelected"); m_Renderer.color = Color.white; m_PrevPos = Vector3.zero; } if (changeStack) { if (m_NextInStack && ((m_NextInStack.position & this.position) > 0)) { if (((m_NextInStack.position & (Solitaire.CardPosition.Top1 | Solitaire.CardPosition.Top2 | Solitaire.CardPosition.Top3 | Solitaire.CardPosition.Top4)) == 0)) { m_NextInStack.IsSelected = m_IsSelected; } } else { if (m_IsSelected) { Utilities.Instance.DispatchEvent(Solitaire.Event.PlayAudio, "play_one", 0); } m_NextInStack = null; } } }
protected override void OnMouseDown(MouseButtonEventArgs e) { if (e.ChangedButton == MouseButton.Left && !IsDisplayOnly) { _mouseDownPoint = e.GetPosition(this); _mouseDownTarget = Elements.Where(el => el.Bounds.Contains(_mouseDownPoint.Value)).LastOrDefault(); if (_mouseDownTarget != null) { if (_mouseDownTarget.Selected == false && Keyboard.Modifiers.HasFlag(ModifierKeys.Shift) == false) { DeselectAll(); _mouseDownTarget.Selected = true; } else if (_mouseDownTarget.Selected && Keyboard.Modifiers.HasFlag(ModifierKeys.Shift)) { _mouseDownTarget.Selected = false; } else { _mouseDownTarget.Selected = true; } } Mouse.Capture(this); } base.OnMouseDown(e); }
private void ShowHintForStack(CardElement target, GameObject destination) { CardElement nextInStack = null; CardElement cloneCard = null; nextInStack = target; Vector3 dest = destination.transform.position; Vector3 clonePos = target.transform.position; clonePos.z = -10.0f - Common.ZOFFSET; while (nextInStack) { cloneCard = Instantiate(nextInStack, clonePos, Quaternion.identity); cloneCard.IsSelected = true; Utilities.Instance.MoveToWithCallBack(cloneCard.gameObject, dest, 1.0f, "DestroyAfterMove"); nextInStack = nextInStack.NextInStack; if (!nextInStack) { break; } clonePos.x = nextInStack.transform.position.x; clonePos.y = nextInStack.transform.position.y; clonePos.z -= Common.ZOFFSET; dest.y -= Common.YOFFSET; dest.z -= Common.ZOFFSET; } }
public bool CheckMoveCard(CardElement cardValue, Collider2D collider) { switch (collider.tag) { case "Card": { //element.m_CardValue = 1; break; } case "Bottom": { break; } case "Top": { break; } default: { break; } } return(false); }
protected static void AddSeparator(HtmlTag uiContainer, CardElement cardElement, RenderContext context) { if (!cardElement.Separator && cardElement.Spacing == Spacing.None) { return; } int spacing = context.Config.GetSpacing(cardElement.Spacing); if (cardElement.Separator) { SeparatorConfig sep = context.Config.Separator; var uiSep = new DivTag() .AddClass("ac-separator") .Style("padding-top", $"{spacing}px") .Style("margin-top", $"{spacing}px") .Style("border-top-color", $"{context.GetRGBColor(sep.LineColor)}") .Style("border-top-width", $"{sep.LineThickness}px") .Style("border-top-style", "solid") ; uiContainer.Children.Add(uiSep); } else { var uiSep = new DivTag() .AddClass("ac-separator") .Style("height", $"{spacing}px"); uiContainer.Children.Add(uiSep); } }
/// <summary> /// Get fallback text from the speech element /// </summary> /// <param name="text"></param> /// <returns></returns> public static string GetFallbackText(CardElement cardElement) { #if WPF #pragma warning disable CS0618 // Type or member is obsolete if (!string.IsNullOrEmpty(cardElement.Speak)) { var doc = new System.Xml.XmlDocument(); var xml = cardElement.Speak; if (!xml.Trim().StartsWith("<")) { xml = $"<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Speak>{xml}</Speak>"; } else if (!xml.StartsWith("<?xml ")) { xml = $"<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n{xml}"; } doc.LoadXml(xml); return(doc.InnerText); } #pragma warning restore CS0618 // Type or member is obsolete #elif XAMARIN // TODO: Xamarin fallback #endif return(null); }
private void Element_DataChanged(object sender, ElementControlEventArgs e) { var el = new CardElement(); switch (e.Type) { case 0: var cb = new CardBackground(); cb.layer = e.Layer; cb.x = (int)e.Locate.X; cb.y = (int)e.Locate.Y; cb.bgPath = e.Path; card.Set(e.Layer, cb); break; case 1: var cf = new CardFram(); cf.layer = e.Layer; cf.x = (int)e.Locate.X; cf.y = (int)e.Locate.Y; cf.bgPath = e.Path; card.Set(e.Layer, cf); break; case 2: var ci = new CardImage(); ci.layer = e.Layer; ci.x = (int)e.Locate.X; ci.y = (int)e.Locate.Y; ci.bgPath = e.Path; ci.Width = elements[e.Layer].pictureWidth.Value; ci.Height = elements[e.Layer].pictureHeight.Value; card.Set(e.Layer, ci); break; case 3: var cn = new CardImgNum(); cn.layer = e.Layer; cn.x = (int)e.Locate.X; cn.y = (int)e.Locate.Y; cn.bgPath = e.Path; cn.num = e.Num; card.Set(e.Layer, cn); break; case 4: var ct = new CardText(); ct.layer = e.Layer; ct.x = (int)e.Locate.X; ct.y = (int)e.Locate.Y; ct.bgPath = e.Path; ct.Text = e.Text; card.Set(e.Layer, ct); break; } Render(); }
void Start() { cardElement = GetComponent <CardElement>(); if (cardElement.card.category == blackCardCategory) { gameObject.AddComponent <BlackCardBehaviour>(); } }
public void AddCard(int id) { mCardElementList[id].gameObject.SetActive(false); CardElement selectedCard = Instantiate(mSelectedCardPrefab, mScrollPos2); selectedCard.Init(mCardDataArr[id].ID, mCardDataArr[id].Contents, RemoveCard); mSelectedCardDic.Add(mCardDataArr[id].ID, selectedCard); }
public async Task TestMethodInitCardClient1_2_2_1() { IndexViewModel unindex = new IndexViewModel(); await unindex.InitAsync(); CardElement card = await unindex.InitCardClient(); Assert.IsNotNull(card.NumberResult); }
public void FlipPreDownCard() { if (m_PrevInStack && !m_PrevInStack.IsFaceUp) { m_PrevInStack.gameObject.layer = 8; m_PrevInStack.IsFaceUp = true; m_PrevInStack = null; } }
public async Task TestMethodInitCardLike1_2_1_2() { IndexViewModel unindex = new IndexViewModel(); await unindex.InitAsync(); CardElement card = await unindex.InitCardLike(); Assert.IsInstanceOfType(card.Title, typeof(string)); }
public async Task TestMethodInitCardLike1_2_2_2() { IndexViewModel unindex = new IndexViewModel(); await unindex.InitAsync(); CardElement card = await unindex.InitCardLike(); Assert.IsInstanceOfType(card.NumberResult, typeof(List <FieldElement>)); }
public async Task TestMethodInitCardLike1_2_3_2() { IndexViewModel unindex = new IndexViewModel(); await unindex.InitAsync(); CardElement card = await unindex.InitCardLike(); Assert.IsInstanceOfType(card.GraphResult, typeof(GraphPie)); }
public async Task TestMethodInitCardLike1_2_3_1() { IndexViewModel unindex = new IndexViewModel(); await unindex.InitAsync(); CardElement card = await unindex.InitCardLike(); Assert.IsNotNull(card.GraphResult); }
public async Task TestMethodInitCardFavorite1_2_1_1() { IndexViewModel unindex = new IndexViewModel(); await unindex.InitAsync(); CardElement card = await unindex.InitCardFavorite(); Assert.IsNotNull(card.Title); }
public static string ToSymbol(this CardElement element) { return(element switch { CardElement.Fire => "F", CardElement.Water => "W", CardElement.Ice => "I", _ => "" });
private void OnTriggerEnter2D(Collider2D collision) { if (!m_IsSelected) { return; } switch (collision.tag) { case "Card": { CardElement card = collision.gameObject.GetComponent <CardElement>(); //Logger.Instance.PrintLog(Common.DEBUG_TAG, "card " + m_CardName + " OnTriggerEnter2D with " + card.CardName); if (!card.IsInStack() && card.IsFaceUp) { m_CollidedTag = 1; m_Collided = collision.gameObject; } break; } case "Top": { //Logger.Instance.PrintLog(Common.DEBUG_TAG, "card " + m_CardName + " OnTriggerEnter2D with " + collision.gameObject.name); if (collision.gameObject.transform.childCount == 0) { m_CollidedTag = 2; m_Collided = collision.gameObject; } break; } case "Bottom": { //Logger.Instance.PrintLog(Common.DEBUG_TAG, "card " + m_CardName + " OnTriggerEnter2D with " + collision.gameObject.name); if (collision.gameObject.transform.childCount == 0) { m_CollidedTag = 3; m_Collided = collision.gameObject; } else { //TODO: any better way to do this //GameObject lastChild = collision.transform.GetChild(collision.transform.childCount - 1).gameObject; //CardElement card = lastChild.GetComponent<CardElement>(); //if (!card.IsInStack() && card.IsFaceUp && card.position != this.position) //{ // m_CollidedTag = 1; // m_Collided = lastChild; //} } break; } } }
public Card PlayCard(CardElement element, int number) { Card card = Hand.FirstOrDefault(x => x.Element == element && x.Number == number); if (card != null) { Hand.Remove(card); } return(card); }
public ResizeAction(CardElement element, string direction, Guidelines guidelines) { _element = element; _direction = direction; _original = element.Bounds; _final = element.Bounds; _guidelines = guidelines; _trackingPoint = GetTrackingPoint(element, direction); _referencePoint = _trackingPoint; }
private void ShowHint(CardElement target, GameObject destination) { Vector3 clonePos = target.transform.position; clonePos.z = -10.0f - Common.ZOFFSET; CardElement cloneCard = Instantiate(target, clonePos, Quaternion.identity); cloneCard.IsSelected = true; Utilities.Instance.MoveToWithCallBack(cloneCard.gameObject, destination.transform.position, 1.0f, "DestroyAfterMove"); }
public void SetCurrentCard(CardElement card) { if (m_CurrentSelected && m_CurrentSelected.CardValue != card.CardValue) { m_CurrentSelected.IsSelected = false; } m_CurrentSelected = card; m_CurrentSelected.IsSelected = true; }
IEnumerator SettingUI(CardElement card) { yield return null; elem = card; Debug.Log(card.GetName() + " init"); _name.text = elem.GetName(); _level.text = elem.GetCost().ToString(); if (_picture != null) _picture.color = elem.GetColor(); if (_lastWill != null) _lastWill.text = elem.GetLastWillDesc(); }
public void LoadPlayerFromCard(CardElement elem) { m_id = elem.GetId(); m_lastWillPow = elem.GetLastWill(); m_name = elem.GetName(); m_maxHp = elem.GetHp(); m_curHp = m_maxHp; m_baseAttack = elem.GetAttack(); m_defence = elem.GetDefence(); GetComponent<SpriteRenderer>().color = elem.GetColor(); if (m_lastWillFunc.GetPreviousWill() == ELastWill.BOOST) m_bonusAttack = 30; }
public void StartTheRun(CardElement card) { m_curentHero = card; GameObject.FindObjectOfType<PlayableCharacter>().LoadPlayerFromCard(m_curentHero); m_curentState = EGameState.GAME; Time.timeScale = 1; GameObject[] objs = GameObject.FindGameObjectsWithTag("Ennemies"); foreach(GameObject obj in objs) { obj.GetComponent<Rigidbody2D>().isKinematic = false; } //load un hero avec ces infos //play le game }
public void SetCurLevel() { string levelName = Application.loadedLevelName; Debug.Log(Application.loadedLevelName); m_curentHero = null; m_idDeads = new List<int>(); Debug.LogError("SetLevel"); if (levelName.Contains(m_menuScene)) { m_currentSceneId = -1; m_curentState = EGameState.MENU; } else { m_currentSceneId = int.Parse(levelName.Split(new char[] { '_', '.' })[1]); m_curentState = EGameState.SELECTION; StartCoroutine(DisplayDeckOrder(1)); } Debug.Log(this.GetInstanceID()); }
public void Init(CardElement card) { StartCoroutine(SettingUI(card)); }
public void SetParams(CardElement other) { _isUnlocked = other._isUnlocked; m_id = other.GetId(); m_cost = other.GetCost(); m_name = other.GetName(); m_lastWillPow = other.GetLastWill(); m_lastWillDescription = other.GetLastWillDesc(); m_maxHp = other.GetHp(); m_baseAttack = other.GetAttack(); m_defence = other.GetDefence(); }