private static int[] nhactuquy(int indexFocus, int[] cardHand, int[] cardFire) { int[] indexCardNhac = null; if (cardHand == null || cardHand.Length < 4) { return(null); } int[] tyquy = null; int[] cardUp = null; for (int i = 0; i < cardHand.Length; i++) { if (getValue(cardHand[i]) == getValue(cardHand[indexFocus])) { tyquy = RTL.insertArray(tyquy, i); cardUp = RTL.insertArray(cardUp, cardHand[i]); } if (tyquy != null && tyquy.Length == 4) { break; } } if (tyquy != null && tyquy.Length == 4 && compareCard(cardUp, cardFire)) { indexCardNhac = tyquy; } return(indexCardNhac); }
public void UnMarkFirstLetter() { string richTextForUI = ""; string letter; if (GameplayController.Instance.CurrentLevel.monsterInputType == MonsterInputType.Word) { for (int i = GameplayController.Instance.CurrentSegment.MonsterRequiredLetters.Length - 1; i >= 0; i--) { //letter = ArabicSupport.ArabicFixer.Fix (GameplayController.Instance.CurrentSegment.MonsterRequiredLetters [i], true, true); letter = RTL.Fix(GameplayController.Instance.CurrentSegment.MonsterRequiredLetters [i]); if (i <= lastIndex) { richTextForUI += StringWithColorTags(StringWithBoldTags(StringWithSizeTags(letter, mDefaultSize)), mController.FontColorWordDefault); } else { richTextForUI += StringWithColorTags(StringWithBoldTags(StringWithSizeTags(letter, mDefaultSize)), mController.FontColorWordBold); } } if (mTarget != null) { mTarget.text = richTextForUI; } lastIndex++; } }
public static string GetText(string input, bool convertNumbers = true, bool isLtrText = false, int wordWrapBias = 0, bool keepLtrClean = false) { if (input != null) { if (wordWrapBias > 0) { input = RTL.a(input, wordWrapBias); } string[] array = input.Split(new char[] { '\n' }); StringBuilder stringBuilder = new StringBuilder(); for (int i = 0; i < array.Length; i++) { stringBuilder.Append(RTL.a(array[i], convertNumbers, isLtrText, keepLtrClean)); if (i != array.Length - 1) { stringBuilder.Append('\n'); } } return(stringBuilder.ToString()); } return(""); }
private static int[] nhac4doithong(int indexFocus, int[] cardHand, int[] cardFire) { int[] indexCardNhac = null; if (cardHand == null || cardHand.Length < 8) { return(null); } int[] pearList = null; int[] cardUp = null; int temp = getValue(cardHand[indexFocus]); for (int i = indexFocus; i < cardHand.Length - 1; i += 2) { if ((getValue(cardHand[i]) == 1 ? 14 : getValue(cardHand[i])) == temp && (getValue(cardHand[i + 1]) == 1 ? 14 : getValue(cardHand[i + 1])) == temp) { pearList = RTL.insertArray(pearList, i); pearList = RTL.insertArray(pearList, i + 1); cardUp = RTL.insertArray(cardUp, cardHand[i]); cardUp = RTL.insertArray(cardUp, cardHand[i + 1]); temp += 1; } } if (pearList != null && pearList.Length == 8 && compareCard(cardUp, cardFire)) { indexCardNhac = pearList; } return(indexCardNhac); }
private static int[] nhacsam(int indexFocus, int[] cardHand, int[] cardFire) { int[] indexCardNhac = null; if (cardHand == null || cardHand.Length < 3) { return(null); } int[] sam = null; int[] cardUp = null; for (int i = 0; i < cardHand.Length; i++) { if (getValue(cardHand[i]) == getValue(cardHand[indexFocus])) { sam = RTL.insertArray(sam, i); cardUp = RTL.insertArray(cardUp, cardHand[i]); } if (sam != null && sam.Length == 3) { break; } } if (sam != null && sam.Length == 3 && compareCard(cardUp, cardFire)) { indexCardNhac = sam; } return(indexCardNhac); }
private static void a(RTL.PartMode A_0, string A_1, ref List <string> A_2) { if (A_1 == "") { return; } switch (A_0) { case RTL.PartMode.Arabic: A_2.Add(A_1); return; case RTL.PartMode.English: A_1 = RTL.a(A_1); A_2.Add(A_1); return; case RTL.PartMode.LatinNumbers: A_1 = RTL.a(A_1); A_2.Add(A_1); return; case RTL.PartMode.ArabicNumbers: A_1 = RTL.a(A_1); A_2.Add(A_1); return; case RTL.PartMode.Punctuation: A_2.Add(A_1); return; default: return; } }
private void nguoiDungHaPhom(int[] arr) { int size = ((PhomPlayer)players[0]).getEatCard().Length; int[] eatArr = size > 0 ? new int[((PhomPlayer)players[0]) .getEatCard().Length] : null; for (int i = 0; i < size; i++) { eatArr[i] = ((PhomPlayer)players[0]).getEatCard()[i]; } int[][] phom = RTL.checkPhom(arr, eatArr); if (phom == null) { SendData.onHaPhom(null); } else { SendData.onHaPhom(phom); btn_ha_phom.gameObject.SetActive(false); } eatArr = null; //for(int i = 0; i < players[0].cardHand.getSize(); i++) { //players[0].cardHand.getCardbyPos (i).setMo (false); //} //players[0].cardHand.setAllMo (false); }
public virtual void addToCard(ArrayCard arrC, int idCard, bool isDearling, bool isTouch, bool isSort, bool isEatCard) { arrC.addCard(idCard); if (isSort) { int[] temp = RTL.sort(cardHand.getArrCardAll()); if (pos == 0) { cardHand.setArrCard(temp, false); } } Card card = arrC.getCardbyID(idCard); if (card == null) { card = arrC.getCardbyPos(arrC.getSize() - 1); } if (isDearling) { Vector3 oldPos = card.gameObject.transform.localPosition; card.gameObject.transform.parent = arrC.mainTransform; card.gameObject.transform.localPosition = new Vector3(0, 0, 0); Debug.LogError("Boc Bai"); card.gameObject.transform.parent = arrC.transform; StartCoroutine(card.moveTo(oldPos, 0.25f, 0, true)); } }
public override void setCardPhom(int[] arrayPhom) { base.setCardPhom(arrayPhom); try { allCardPhom = arrayPhom; int[][] cardPhom = RTL.getPhom3(arrayPhom, null); for (int i = 0; i < cardPhom.Length; i++) { if (cardPhom[i].Length >= 6) { } } for (int i = 0; i < 3; i++) { this.cardPhom[i].removeAllCard(); } for (int i = 0; i < cardPhom.Length; i++) { this.cardPhom[i].setArrCard(cardPhom[i]); } } catch (Exception e) { // TODO: handle exception } }
private static int[] nhacdoithong(int indexFocus, int[] cardHand, int[] cardFire) { int[] indexCardNhac = null; if (getValue(cardHand[indexFocus]) == 2 || cardHand.Length < 6) { return(null); } int[] pearList = null; int temp = getValue(cardHand[indexFocus]); for (int i = indexFocus; i < cardHand.Length - 1; i++) { if ((getValue(cardHand[i]) == 1 ? 14 : getValue(cardHand[i])) == temp && (getValue(cardHand[i + 1]) == 1 ? 14 : getValue(cardHand[i + 1])) == temp) { pearList = RTL.insertArray(pearList, i); pearList = RTL.insertArray(pearList, i + 1); temp += 1; } } if (pearList != null && (pearList.Length == 6 || pearList.Length == 8)) { indexCardNhac = pearList; } return(indexCardNhac); }
public virtual void allCardFinish(string nick, int[] card) { card = RTL.sort(card); if (players[getPlayer(nick)].isPlaying()) { players[getPlayer(nick)].setCardHandInFinishGame(card); } }
private void sortCards(int[] cardhand) { players[0].cardhand_xepbai = RTL.sortPhom1(cardhand, RTL.getPhom3Minh(cardhand, players[0].getEatCard()), players[0].getEatCard()); players[0].id_xepbai = players[0].cardhand_xepbai.Length - 1; players[0].isUserXepbai = true; }
public static bool checkSanhPK(int[] cards) { int[] cardS = null; int cardTemp = -1; int cardsSize = cards.Length; for (int i = 0; i < cardsSize; i++) { if (cardTemp == -1) { cardTemp = cards[i]; cardS = RTL.insertArray(cardS, cardTemp); continue; } else if (i >= 4 && getValue(cardTemp) == 5) { if (getValue(cards[i]) == 1 && getValue(cardS[0]) != 1) { cardS = RTL.insertArray(cardS, cards[i]); } else if (getValue(cards[i]) == 6) { cardS = RTL.insertArray(cardS, cards[i]); cardTemp = cards[i]; } } else if ((getValue(cardTemp) == 13 ? 0 : getValue(cardTemp)) + 1 == getValue(cards[i])) { cardS = RTL.insertArray(cardS, cards[i]); cardTemp = cards[i]; } else if (getValue(cardTemp) == getValue(cards[i])) { cardS = subArray(cardS, cardTemp); cardS = RTL.insertArray(cardS, cards[i]); cardTemp = cards[i]; } else { if (cardS.Length <= 2) { cardS = null; cardS = RTL.insertArray(cardS, cards[i]); cardTemp = cards[i]; } else if (cardS.Length < 5) { break; } } } if (cardS.Length >= 5) { return(true); } return(false); }
private static string a(string A_0, bool A_1, bool A_2) { List <char> list = new List <char>(A_0.ToLower().ToCharArray()); List <char> list2 = new List <char>(A_0.ToCharArray()); new List <char>(); List <string> list3 = new List <string>(); string text = ""; RTL.PartMode partMode = RTL.PartMode.Arabic; RTL.PartMode partMode2 = RTL.PartMode.Arabic; for (int i = 0; i < list.Count; i++) { bool flag = false; partMode2 = RTL.a(list, i, partMode, partMode2, A_2); if (partMode2 != partMode) { flag = true; if (partMode == RTL.PartMode.Arabic && partMode2 == RTL.PartMode.Punctuation) { flag = false; } } if (flag) { RTL.a(partMode, text, ref list3); text = ""; partMode = partMode2; } text += list2[i]; } RTL.a(partMode, text, ref list3); StringBuilder stringBuilder = new StringBuilder(); if (A_1) { for (int j = list3.Count - 1; j >= 0; j--) { stringBuilder.Append(list3[j]); } } else if (A_2) { for (int k = list3.Count - 1; k >= 0; k--) { stringBuilder.Append(list3[k]); } } else { foreach (string current in list3) { stringBuilder.Append(current); } } return(stringBuilder.ToString()); }
// Update is called once per frame private void Update() { string text = ""; string[] paragraphs = mainText.Split('\n'); for (int i = 0; i < paragraphs.Length; i++) { text += ToRtlParagraph(paragraphs[i]); } textUI.text = RTL.GetText(text); }
public string GetFixAllLetters(int index) { if (_fixAllLetters == null) { _fixAllLetters = new string[MonsterAllLetters.Length]; } if (string.IsNullOrEmpty(_fixAllLetters [index])) { _fixAllLetters [index] = RTL.Fix(MonsterAllLetters [index]); } return(_fixAllLetters [index]); }
public int[] getArrCardAll2() // có sắp xếp, không trả về null { int[] arr = null; for (int i = 0; i < getSize(); i++) { arr = RTL.insertArray(arr, arrIntCard[i]); } if (arr == null) { return(new int[] { }); } return(arr); }
public int[] getArrayCardAllTrue() // không sắp xếp { int[] arr = null; for (int i = 0; i < arrCard.Count; i++) { arr = RTL.insertArray(arr, arrCard[i].getId()); } if (arr == null) { return(new int[] { }); } return(arr); }
public override void startTableOk(int[] cardHand, Message msg, string[] nickPlay) { base.startTableOk(cardHand, msg, nickPlay); btn_doiluat.gameObject.SetActive(false); isHaphom = false; isHaphomRoi = false; setPositionPhom(false); try { for (int i = 0; i < players.Length; i++) { if (i != 0) { players[i].cardHand.maxW = cardHand.Length * 20; } players[i].cardPhom[0].removeAllCard(); players[i].cardPhom[1].removeAllCard(); players[i].cardPhom[2].removeAllCard(); players[i].card_win[0] = -1; players[i].card_win[1] = -1; players[i].card_win[2] = -1; players[i].allCardPhom = null; players[i].isUserXepbai = false; } players[0].cardhand_xepbai = null; for (int i = 0; i < 4; i++) { cardDrop[i].removeAllCard(); } BaseInfo.gI().isHaPhom = false; //players[0].gameObject.transform.localPosition = new Vector3(xPlay, -115, 0); players[0].setCardHand( RTL.sortPhom(cardHand, RTL.getPhom3(cardHand, players[0].card_win)), true, false, false); players[0].isUserXepbai = false; totalCardNoc = getTotalPlayerPlaying() * 4 - 1; setSoBaiNoc(totalCardNoc); for (int i = 1; i < players.Length; i++) { if (players[i].isPlaying()) { addCardHandOtherPlayer(9, i); } } SoundManager.instance.startchiabaiAudio(); } catch (Exception e) { // TODO: handle exception } setActiveBtn(btn_xepbai, false); }
public override void allCardFinish(string nick, int[] card) { card = RTL.sort(card); if (players[getPlayer(nick)].isPlaying()) { players[getPlayer(nick)].diem = RTL.getScoreFinal(card); players[getPlayer(nick)].setCardHandInFinishGame(RTL.sortPhom(card, RTL.getPhom3(card, players[getPlayer(nick)].getEatCard()))); } for (int i = 0; i < 4; i++) { cardDrop[i].removeAllCard(); } }
private static int[] nhac1doi(int indexFocus, int[] cardHand, int[] cardFire) { int[] indexCardNhac = null; if (cardHand == null || cardHand.Length < 2) { return(null); } int cPos = -1; int[] arrCardUp = new int[] { cardHand[indexFocus] }; if (indexFocus + 1 <= cardHand.Length && indexFocus - 1 >= cardHand.Length) { if (getValue(cardHand[indexFocus + 1]) == cardHand[indexFocus]) { if (compareCard(RTL.insertArray(arrCardUp, cardHand[indexFocus + 1]), cardFire)) { cPos = indexFocus + 1; } } else if (getValue(cardHand[indexFocus - 1]) == cardHand[indexFocus]) { if (compareCard(RTL.insertArray(arrCardUp, cardHand[indexFocus - 1]), cardFire)) { cPos = indexFocus - 1; } } } int pos = -1; if (indexFocus - 1 >= 0 && getValue(cardHand[indexFocus - 1]) == getValue(cardHand[indexFocus])) { pos = indexFocus - 1; } if (indexFocus + 1 <= cardHand.Length - 1 && getValue(cardHand[indexFocus + 1]) == getValue(cardHand[indexFocus]) && pos == -1) { pos = indexFocus + 1; } if (pos != -1 && compareCard(RTL.insertArray(arrCardUp, cardHand[pos]), cardFire)) { cPos = pos; } if (cPos != -1) { indexCardNhac = new int[] { cPos }; } return(indexCardNhac); }
public override void onEatCardSuccess(string from, string to, int card) { base.onEatCardSuccess(from, to, card); gameControl.sound.startAnbairacAudio(); int id1 = getPlayer(from), id2 = getPlayer(to); if (id1 == -1 || id2 == -1) { // activity.showToast("Không hợp lệ"); } else { if (card != -1) { players[id1].onEatCard(card); if (id1 == 0) { if (!BaseInfo.gI().isView) { players[0].isUserXepbai = false; players[0].addToCardHand(card, true); int[] cardnew = RTL.sortPhom(players[0].cardHand .getArrCardAll(), RTL.getPhom3( players[0].cardHand.getArrCardAll(), players[0].getEatCard())); players[0].setCardHand(cardnew, players[0].getEatCard(), false, false, false); setActiveBtn(btn_danhbai, true); } } else { } try { for (int i = 0; i < players.Length; i++) { if (players[i].isPlaying() && players[i].pos == id2) { cardDrop[i].removeCardByID(card); } } } catch (Exception e) { } } } }
public int[] getArrCardChoose() // có sắp xếp, có trả về null // return super.getArrCard(); { int[] arr = null; for (int i = 0; i < getSize(); i++) { if (arrCard[i].isChoose) { arr = RTL.insertArray(arr, arrCard[i].getId()); } } if (arr != null) { arr = RTL.sort(arr); } return(arr); }
public static bool isbondoithong(int[] card) { int[] pearList = null; for (int i = 0; i < card.Length - 1; i++) { if (getValue(card[i]) == getValue(card[i + 1])) { if (!isContain(pearList, getValue(card[i]))) { pearList = RTL.insertArray(pearList, getValue(card[i])); } } } if (pearList != null && pearList.Length == 4) { return(true); } return(false); }
private static string a(List <char> A_0, bool A_1, ref int A_2) { char arg_08_0 = A_0[A_2]; if (A_0[A_2] == '\0') { A_0.RemoveAt(A_2); A_2--; return(""); } string result = A_0[A_2].ToString(); string key; switch (key = A_0[A_2].ToString()) { case "ا": result = RTL.a(A_0, A_2, "0xFE8D", "0xFE8D", "0xFE8E", "0xFE8E"); return(result); case "أ": result = RTL.a(A_0, A_2, "0xFE83", "0xFE83", "0xFE84", "0xFE84"); return(result); case "إ": result = RTL.a(A_0, A_2, "0xFE87", "0xFE87", "0xFE88", "0xFE88"); return(result); case "آ": result = RTL.a(A_0, A_2, "0xFE81", "0xFE81", "0xFE82", "0xFE82"); return(result); case "ب": result = RTL.a(A_0, A_2, "0xFE8F", "0xFE91", "0xFE92", "0xFE90"); return(result); case "پ": result = RTL.a(A_0, A_2, "0xFB56", "0xFB58", "0xFB59", "0xFB57"); return(result); case "ت": result = RTL.a(A_0, A_2, "0xFE95", "0xFE97", "0xFE98", "0xFE96"); return(result); case "ث": result = RTL.a(A_0, A_2, "0xFE99", "0xFE9B", "0xFE9C", "0xFE9A"); return(result); case "ج": result = RTL.a(A_0, A_2, "0xFE9D", "0xFE9F", "0xFEA0", "0xFE9E"); return(result); case "چ": result = RTL.a(A_0, A_2, "0xFB7A", "0xFB7C", "0xFB7D", "0xFB7B"); return(result); case "ح": result = RTL.a(A_0, A_2, "0xFEA1", "0xFEA3", "0xFEA4", "0xFEA2"); return(result); case "خ": result = RTL.a(A_0, A_2, "0xFEA5", "0xFEA7", "0xFEA8", "0xFEA6"); return(result); case "د": result = RTL.a(A_0, A_2, "0xFEA9", "0xFEA9", "0xFEAA", "0xFEAA"); return(result); case "ذ": result = RTL.a(A_0, A_2, "0xFEAB", "0xFEAB", "0xFEAC", "0xFEAC"); return(result); case "ر": result = RTL.a(A_0, A_2, "0xFEAD", "0xFEAD", "0xFEAE", "0xFEAE"); return(result); case "ز": result = RTL.a(A_0, A_2, "0xFEAF", "0xFEAF", "0xFEB0", "0xFEB0"); return(result); case "ژ": result = RTL.a(A_0, A_2, "0x0698", "0x0698", "0xFB8B", "0xFB8B"); return(result); case "س": result = RTL.a(A_0, A_2, "0xFEB1", "0xFEB3", "0xFEB4", "0xFEB2"); return(result); case "ش": result = RTL.a(A_0, A_2, "0xFEB5", "0xFEB7", "0xFEB8", "0xFEB6"); return(result); case "ص": result = RTL.a(A_0, A_2, "0xFEB9", "0xFEBB", "0xFEBC", "0xFEBA"); return(result); case "ض": result = RTL.a(A_0, A_2, "0xFEBD", "0xFEBF", "0xFEC0", "0xFEBE"); return(result); case "ط": result = RTL.a(A_0, A_2, "0xFEC1", "0xFEC3", "0xFEC4", "0xFEC2"); return(result); case "ظ": result = RTL.a(A_0, A_2, "0xFEC5", "0xFEC7", "0xFEC8", "0xFEC6"); return(result); case "ع": result = RTL.a(A_0, A_2, "0xFEC9", "0xFECB", "0xFECC", "0xFECA"); return(result); case "غ": result = RTL.a(A_0, A_2, "0xFECD", "0xFECF", "0xFED0", "0xFECE"); return(result); case "ف": result = RTL.a(A_0, A_2, "0xFED1", "0xFED3", "0xFED4", "0xFED2"); return(result); case "ق": result = RTL.a(A_0, A_2, "0xFED5", "0xFED7", "0xFED8", "0xFED6"); return(result); case "ﮎ": result = RTL.a(A_0, A_2, "0xFB8E", "0xFB90", "0xFB91", "0xFB8F"); return(result); case "ک": case "ك": result = RTL.a(A_0, A_2, "0xFED9", "0xFEDB", "0xFEDC", "0xFEDA"); return(result); case "گ": result = RTL.a(A_0, A_2, "0xFB92", "0xFB94", "0xFB95", "0xFB93"); return(result); case "ل": result = RTL.a(A_0, A_2, "0xFEDD", "0xFEDF", "0xFEE0", "0xFEDE"); return(result); case "م": result = RTL.a(A_0, A_2, "0xFEE1", "0xFEE3", "0xFEE4", "0xFEE2"); return(result); case "ن": result = RTL.a(A_0, A_2, "0xFEE5", "0xFEE7", "0xFEE8", "0xFEE6"); return(result); case "ه": result = RTL.a(A_0, A_2, "0xFEE9", "0xFEEB", "0xFEEC", "0xFEEA"); return(result); case "ة": result = RTL.a(A_0, A_2, "0xFE93", "0xFEEB", "0xFEEC", "0xFE94"); return(result); case "و": result = RTL.a(A_0, A_2, "0xFEED", "0xFEED", "0xFEEE", "0xFEEE"); return(result); case "ؤ": result = RTL.a(A_0, A_2, "0xFE85", "0xFE85", "0xFE86", "0xFE86"); return(result); case "ى": result = RTL.a(A_0, A_2, "0xFEEF", "0xFEEF", "0xFEF0", "0xFEF0"); return(result); case "ي": result = RTL.a(A_0, A_2, "0xFEEF", "0xFEF3", "0xFEF4", "0xFEF0"); return(result); case "ئ": result = RTL.a(A_0, A_2, "0xFE89", "0xFE8B", "0xFE8C", "0xFE8A"); return(result); case "ء": result = "0xFE80"; return(result); case "ٹ": result = RTL.a(A_0, A_2, "0xFB66", "0xFB68", "0xFB69", "0xFB67"); return(result); case "ڈ": result = RTL.a(A_0, A_2, "0xFB88", "0xFB88", "0xFB89", "0xFB89"); return(result); case "ڑ": result = RTL.a(A_0, A_2, "0xFB8C", "0xFB8C", "0xFB8D", "0xFB8D"); return(result); case "ں": result = RTL.a(A_0, A_2, "0xFB9E", "0xFB9E", "0xFBE9", "0xFB9F"); return(result); case "ﮠ": result = RTL.a(A_0, A_2, "0xFBA0", "0xFBA2", "0xFBA3", "0xFBA1"); return(result); case "ے": result = RTL.a(A_0, A_2, "0xFBAE", "0xFBAE", "0xFBAF", "0xFBAF"); return(result); case "ہ": result = RTL.a(A_0, A_2, "0xFBA6", "0xFBA8", "0xFBA9", "0xFBA7"); return(result); case "0": if (A_1) { result = "0x0660"; return(result); } return(result); case "1": if (A_1) { result = "0x0661"; return(result); } return(result); case "2": if (A_1) { result = "0x0662"; return(result); } return(result); case "3": if (A_1) { result = "0x0663"; return(result); } return(result); case "4": if (A_1) { result = "0x0664"; return(result); } return(result); case "5": if (A_1) { result = "0x0665"; return(result); } return(result); case "6": if (A_1) { result = "0x0666"; return(result); } return(result); case "7": if (A_1) { result = "0x0667"; return(result); } return(result); case "8": if (A_1) { result = "0x0668"; return(result); } return(result); case "9": if (A_1) { result = "0x0669"; return(result); } return(result); } result = A_0[A_2].ToString(); return(result); }
public void PlayCalloutSound(Level lvl, int segmentId, Segment seg) { string fileName; string url; AudioClip voice; string word = ""; switch (lvl.monsterInputType) { case MonsterInputType.Letter: case MonsterInputType.SoundLetter: if (TryLetter) { fileName = RTL.Clean(seg.MonsterRequiredLetters [0]); if (letters.ContainsKey(fileName)) { letters.Remove(fileName); } url = "Sounds/Voice/Letters/" + fileName; voice = Resources.Load(url) as AudioClip; if (voice == null) { logLetter += "Letter - Sound is missing - '" + /*RTL.Fix*/ (url) + "'" + " Level: " + (lvl.levelId - 1) + " Segment Id: " + (segmentId + 1) + "\n"; // Debug.Log ("Letter - Sound is missing - '" + url + "'" + " Level: " + (lvl.levelId - 1) + " Segment Id: " + (segmentId + 1)); } } break; case MonsterInputType.LetterInWord: if (TryLetterInWord) { fileName = ArabicBaseForm.Extract(RTL.Clean(seg.MonsterRequiredLetters [0])); // fileName = RTL.Fix(seg.MonsterRequiredLetters [0]); if (letters.ContainsKey(fileName)) { letters.Remove(fileName); } url = "Sounds/Voice/Letters/" + fileName; voice = Resources.Load(url) as AudioClip; if (voice == null) { logLetterInWord += "Letter In Word - Sound is missing - '" + /*RTL.Fix*/ (url) + "'" + " Level: " + (lvl.levelId - 1) + " Segment Id: " + (segmentId + 1) + " ( " + url + " )" + "\n"; // Debug.Log ("Letter In Word - Sound is missing - '" + url + "'" + " Level: " + (lvl.levelId - 1) + " Segment Id: " + (segmentId + 1)); } } break; case MonsterInputType.Word: case MonsterInputType.SoundWord: if (TryWord) { word = ""; foreach (string letter in seg.MonsterRequiredLetters) { word += letter; } fileName = ArabicBaseForm.Extract(RTL.Clean(word)); if (words.ContainsKey(fileName)) { words.Remove(fileName); } url = "Sounds/Voice/Words/" + fileName; voice = Resources.Load(url) as AudioClip; if (voice == null) { logWord += "Word - Sound is missing - '" + /*RTL.Fix*/ (url) + "'" + " Level: " + (lvl.levelId - 1) + " Segment Id: " + (segmentId + 1) + "\n"; } } break; } }
public void click() { if (player.getName().Equals(BaseInfo.gI().mainInfo.nick)) { int len = 0; if (arrayCard == null) { return; } if (arrayCard.getArrCardChoose() != null) { len = arrayCard.getArrCardChoose().Length; } if (len != 0) { if (card.isChoose) { } else { int value1 = TLMNChooseCard.getValue(card.getId()); int value2 = TLMNChooseCard.getValue(arrayCard.getArrCardChoose()[len - 1]); if (!(value1 == value2) && !(value1 == value2 + 1) && !(RTL.getCardInfo(card.getId())[1] == RTL .getCardInfo(arrayCard.getArrCardChoose()[len - 1])[1] - 1)) { int valuve3 = RTL.getCardInfo(arrayCard.getArrCardChoose()[0])[1]; if (!(value1 == valuve3) && !(value1 == valuve3 + 1) && !(value1 == valuve3 - 1)) { if (!TLMNChooseCard.issanh2(TLMNPlayer.sort(RTL.insertArray(arrayCard.getArrCardChoose(), card.getId()))) && !TLMNChooseCard .isdoi(RTL.insertArray(arrayCard.getArrCardChoose(), card.getId())) && !TLMNChooseCard .issam(RTL.insertArray(arrayCard.getArrCardChoose(), card.getId()))) { for (int i = 0; i < arrayCard.getSize(); i++) { arrayCard.getCardbyPos(i).setChoose(false); } len = 0; } } } if (tlmnStage != null && tlmnStage.tableArrCard != null && arrayCard.getArrCardChoose() != null && arrayCard.getArrCardChoose().Length > 0) { if (!TLMNChooseCard.issanh2(TLMNPlayer.sort(RTL.insertArray(arrayCard.getArrCardChoose(), card.getId()))) && !TLMNChooseCard.isdoi(RTL.insertArray(arrayCard.getArrCardChoose(), card.getId())) && !TLMNChooseCard.issam(RTL.insertArray(arrayCard.getArrCardChoose(), card.getId()))) { for (int i = 0; i < arrayCard.getSize(); i++) { arrayCard.getCardbyPos(i).setChoose(false); } len = 0; } } } } card.setChoose(!card.isChoose); if (tlmnStage != null && tlmnStage.tableArrCard != null) { if (tlmnStage.tableArrCard.Length > 0 && len == 0) { int indexCardChoose = -1; if (arrayCard.getArrCardChoose() == null) { return; } if (arrayCard.getArrCardChoose().Length == 1) { for (int i = 0; i < arrayCard.getArrCardAll().Length; i++) { if (arrayCard.getArrCardAll()[i] == card.getId()) { indexCardChoose = i; } } if (indexCardChoose != -1) { int[] index = TLMNChooseCard.getArrIndexCardNhac(indexCardChoose, arrayCard.getArrCardAll(), tlmnStage.tableArrCard); if (index != null) { for (int i = 0; i < index.Length; i++) { Card cardNhac = arrayCard.getCardbyPos(index[i]); if (cardNhac != null) { cardNhac.setChoose(true); } } } } } } } else { if (arrayCard.getArrCardChoose() == null) { return; } if (arrayCard.getArrCardChoose().Length == 2 && card.isChoose) { int[] index = TLMNChooseCard.getArrIndexCardNhac(arrayCard.getArrCardChoose(), arrayCard.getArrCardAll()); if (index != null) { for (int i = 0; i < index.Length; i++) { Card cardNhac = arrayCard.getCardbyPos(index[i]); if (cardNhac != null) { cardNhac.setChoose(true); } } } if (index != null && index.Length < 2) { if (!TLMNChooseCard.issanh2(arrayCard.getArrCardChoose())) { for (int i = 0; i < arrayCard.getSize(); i++) { arrayCard.getCardbyPos(i).setChoose(false); } card.setChoose(!card.isChoose); } } } else if (arrayCard.getArrCardChoose().Length >= 2 && card.isChoose) { if (!TLMNChooseCard.issanh2(arrayCard.getArrCardChoose())) { for (int i = 0; i < arrayCard.getSize(); i++) { arrayCard.getCardbyPos(i).setChoose(false); } card.setChoose(!card.isChoose); } } else if (arrayCard.getArrCardChoose().Length >= 2 && !card.isChoose) { // int indexCardChoose = -1; // for (int i = 0; i < arrayCard.getArrCardAll().Length; // i++) { // if (arrayCard.getArrCardAll()[i] == card.getId()) { // indexCardChoose = i; // } // } // if (indexCardChoose != -1) { // for (int i = indexCardChoose; i < // arrayCard.getArrCardAll().Length; i++) { // arrayCard.getCardbyPos(i).setChoose(false); // } // } } } } }
public static int checkThung(int[] cards) { int[] y = new int[4]; int x = -1; int[] cardThung = null; for (int i = 0; i < cards.Length; i++) { switch (getType(cards[i])) { case 0: y[0]++; if (y[0] > 4) { x = 0; } break; case 1: y[1]++; if (y[1] > 4) { x = 1; } break; case 2: y[2]++; if (y[2] > 4) { x = 2; } break; case 3: y[3]++; if (y[3] > 4) { x = 3; } break; default: break; } } if (x != -1) { for (int i = 0, n = cards.Length; i < n; i++) { if (getType(cards[i]) == x) { cardThung = RTL.insertArray(cardThung, cards[i]); } } if (checkSanhPK(cardThung) && cardThung.Length > 4) { return(8); } return(5); } else { if (checkSanhPK(cards)) { return(4); } } return(0); }
private static int[] nhacsanh(int indexFocus, int[] cardHand, int[] cardFire) { int[] indexCardNhac = null; if (cardHand == null || cardHand.Length < cardFire.Length) { return(null); } int temp = -1; int[] sanh = null; int[] cardUp = null; for (int i = indexFocus; i < cardHand.Length; i++) { if (temp == -1) { temp = getValue(cardHand[i]); sanh = RTL.insertArray(sanh, i); cardUp = RTL.insertArray(cardUp, cardHand[i]); } else if ((getValue(cardHand[i]) == 1 ? 14 : getValue(cardHand[i])) == temp + 1) { sanh = RTL.insertArray(sanh, i); cardUp = RTL.insertArray(cardUp, cardHand[i]); temp = (getValue(cardHand[i]) == 1 ? 14 : getValue(cardHand[i])); if (sanh.Length == cardFire.Length) { break; } } } if (sanh.Length != cardFire.Length && (getValue(cardHand[indexFocus]) >= getValue(cardFire[cardFire.Length - 1]) || getValue(cardHand[indexFocus]) == 1)) { if (getValue(cardHand[indexFocus]) == getValue(cardFire[cardFire.Length - 1]) && cardHand[indexFocus] < cardFire[cardFire.Length - 1]) { return(null); } sanh = null; for (int i = indexFocus; i >= 0; i--) { if (temp == -1) { temp = getValue(cardHand[i]); sanh = RTL.insertArray(sanh, i); cardUp = RTL.insertArray(cardUp, cardHand[i]); } else if ((getValue(cardHand[i]) == 1 ? 14 : getValue(cardHand[i])) == temp - 1) { sanh = RTL.insertArray(sanh, i); cardUp = RTL.insertArray(cardUp, cardHand[i]); temp = (getValue(cardHand[i]) == 1 ? 14 : getValue(cardHand[i])); } if (sanh.Length == cardFire.Length) { break; } } } try { if (sanh != null && sanh.Length == cardFire.Length) { if (getValue(cardHand[sanh[sanh.Length - 1]]) == getValue(cardFire[cardFire.Length - 1])) { if (sanh.Length < cardHand.Length) { if (getValue(cardHand[sanh[sanh.Length - 1]]) == getValue(cardHand[sanh[sanh.Length - 1] + 1])) { sanh[sanh.Length - 1] += 1; cardUp[cardUp.Length - 1] = cardHand[sanh[sanh.Length - 1]]; } } if (sanh.Length < cardHand.Length) { if (getValue(cardHand[sanh[sanh.Length - 1]]) == getValue(cardHand[sanh[sanh.Length - 1] + 1])) { sanh[sanh.Length - 1] += 1; cardUp[cardUp.Length - 1] = cardHand[sanh[sanh.Length - 1]]; } } if (sanh.Length < cardHand.Length) { if (getValue(cardHand[sanh[sanh.Length - 1]]) == getValue(cardHand[sanh[sanh.Length - 1] + 1])) { sanh[sanh.Length - 1] += 1; cardUp[cardUp.Length - 1] = cardHand[sanh[sanh.Length - 1]]; } } } } } catch (Exception e) { // TODO: handle exception } if (sanh != null && sanh.Length == cardFire.Length && compareCard(cardUp, cardFire)) { indexCardNhac = new int[cardFire.Length]; for (int j = 0; j < cardFire.Length; j++) { indexCardNhac[j] = sanh[j]; } } return(indexCardNhac); }
private static string a(string A_0, bool A_1, bool A_2, bool A_3) { string result; try { if (A_0.Length == 0) { result = ""; } else { A_0 = A_0.Replace("ی", "ي"); string text = ""; int i = 0; List <char> list = new List <char>(A_0.ToCharArray()); list.Reverse(); while (i < list.Count) { string a_ = RTL.a(list, A_1, ref i); text += RTL.b(a_); i++; } List <string> list2 = new List <string>(text.Split(new char[] { ' ' })); list2.Reverse(); new List <string>(); for (i = 0; i < list2.Count; i++) { if (list2[i] == "ﺔﻠﻟﺍ" || list2[i] == "ﺔﻠﻟﺃ" || list2[i] == "ﻪﻠﻟﺍ" || list2[i] == "ﻪﻠﻟﺃ") { list2[i] = char.ConvertFromUtf32(65010) + char.ConvertFromUtf32(65165); } if (list2[i] == "ﻪﻠﻟ" || list2[i] == "ﺔﻠﻟ") { list2[i] = char.ConvertFromUtf32(65010); } } text = ""; bool flag = true; foreach (string current in list2) { if (flag) { for (int j = 0; j < current.Length; j++) { flag &= (RTL.punctuationMarks.IndexOf(current[j]) != -1 || RTL.latinChars.IndexOf(current.ToLower()[j]) != -1); } } } if (!A_2 && !flag) { list2.Reverse(); } for (int k = 0; k < list2.Count; k++) { string a_2 = list2[k]; text += RTL.a(RTL.a(a_2, A_2, A_3), ""); if (k != list2.Count - 1) { text += " "; } } result = text; } } catch (Exception) { result = ""; } return(result); }