示例#1
0
        public static void rejectTeleport(Players.Player ply)
        {
            Data.PlayerData pd = getPlayerData(ply);
            Players.Player  partner;
            bool            sucessful = Players.TryGetPlayer(pd.tpRequester, out partner);

            if (!sucessful)
            {
                Chat.sendSilent(ply, "TP request invalid, deleting.");
            }
            else
            {
                Data.PlayerData partnerPD = getPlayerData(partner);
                Chat.sendSilent(ply, "You canceled your TP request to " + partner.Name + ".");
                Chat.sendSilent(partner, ply.Name + " canceled their TP request.");
                partnerPD.tpRequester      = NetworkID.Invalid;
                partnerPD.requestingTP     = false;
                partnerPD.tpHere           = false;
                playerDataDict[partner.ID] = partnerPD;
            }
            pd.tpRequester         = NetworkID.Invalid;
            pd.requestingTP        = false;
            pd.tpHere              = false;
            playerDataDict[ply.ID] = pd;
        }
示例#2
0
        public static void notifyTeleport(Players.Player from, Players.Player to, bool here)
        {
            Data.PlayerData fromPD = getPlayerData(from);
            Data.PlayerData toPD   = getPlayerData(to);

            if (fromPD.requestingTP || fromPD.tpRequester != NetworkID.Invalid)
            {
                Chat.sendSilent(from, "You already have an outstanding tp request.");
                return;
            }

            if (toPD.tpRequester != NetworkID.Invalid || toPD.requestingTP)
            {
                Chat.sendSilent(from, "That player already has a request.");
                Chat.sendSilent(to, "Someone tried to send you a tp request, but you already have one.");
                return;
            }

            toPD.tpRequester    = from.ID;
            fromPD.tpRequester  = to.ID;
            fromPD.requestingTP = true;
            toPD.tpHere         = here;

            Chat.sendSilent(from, (here?"TPHere":"TP") + " request sent to " + to.Name + ".");
            Chat.sendSilent(from, "Type '/tp reject' to cancel the request.");
            Chat.sendSilent(to, (here ? "TPHere" : "TP") + " request from " + from.Name + ".");
            Chat.sendSilent(to, "Type '/tp accept' to allow " + from.Name + " to teleport " + (here?"here":"to you") + ", or type '/tp reject' to disallow.");

            playerDataDict[from.ID] = fromPD;
            playerDataDict[to.ID]   = toPD;
        }
示例#3
0
        public static void acceptTeleport(Players.Player ply)
        {
            Data.PlayerData pd = getPlayerData(ply);
            Players.Player  partner;
            bool            sucessful = Players.TryGetPlayer(pd.tpRequester, out partner);

            if (!sucessful)
            {
                Chat.sendSilent(ply, "TP request invalid, deleting.");
            }
            else
            {
                Data.PlayerData partnerPD = getPlayerData(partner);
                if (pd.tpHere)
                {
                    Chat.sendSilent(ply, "Teleporting you to " + partner.Name + ".");
                    Chat.sendSilent(partner, "Teleporting " + ply.Name + " to you.");
                    ChatCommands.Implementations.Teleport.TeleportTo(ply, partner.Position);
                }
                else
                {
                    Chat.sendSilent(ply, "Teleporting " + partner.Name + " to you.");
                    Chat.sendSilent(partner, "Teleporting you to " + ply.Name + ".");
                    ChatCommands.Implementations.Teleport.TeleportTo(partner, ply.Position);
                }
                partnerPD.tpRequester      = NetworkID.Invalid;
                partnerPD.requestingTP     = false;
                partnerPD.tpHere           = false;
                playerDataDict[partner.ID] = partnerPD;
            }
            pd.tpRequester         = NetworkID.Invalid;
            pd.requestingTP        = false;
            pd.tpHere              = false;
            playerDataDict[ply.ID] = pd;
        }
示例#4
0
        /// <summary>
        /// Take this player, check if they've changed position, if so, tell them if the chunk belongs to anyone!
        /// </summary>
        /// <param name="player">player</param>
        private static void notifyNewChunkEntrancesIterator(Players.Player player)
        {
            // get the current chunkID
            string cid = ColonyAPI.Managers.WorldManager.XZPositionToString(ColonyAPI.Managers.WorldManager.positionToVector3Int(player.Position).ToChunk());

            Data.PlayerData pd = getPlayerData(player, cid);

            if (pd.chunkID == cid)
            {
                // they haven't changed chunks yet
            }
            else
            {
                // they have!
                if (WorldManager.ChunkDataList.ContainsKey(cid))
                {
                    if (WorldManager.ChunkDataList[cid].hasOwner())
                    {
                        if (WorldManager.ChunkDataList[cid].getOwner() != player.ID)
                        {
                            // we are in a foreign owned chunk!
                            Chat.send(player, String.Format("You now in chunk owned by: {0}", Players.GetPlayer(WorldManager.ChunkDataList[cid].getOwner()).Name));
                        }
                        else
                        {
                            //Chat.Send(player, "You own this chunk", ChatSenderType.Server);
                        }
                    }
                }


                //update the reference to the chunk they are in
                pd.chunkID = cid;
            }
        }
示例#5
0
        /// <summary>
        /// INTERNAL
        /// Rejects the trade in player's current playerdata and notifies the users.
        /// </summary>
        /// <param name="player">The player who is rejecting.</param>
        /// <param name="isInternal">If this was called internally. If true then it doesn't notify the users.</param>
        public static void rejectTrade(Players.Player player, bool isInternal = false)
        {
            if (getTradeEnabled())
            {
                Data.PlayerData pd = getPlayerData(player);

                if (pd.tradeData == null)
                {
                    Chat.sendSilent(player, "You have no outstanding trade requests.", Chat.ChatColour.orange);
                    return;
                }

                Data.PlayerData partnerData = playerDataDict[pd.tradeData.partner.PID];

                if (!isInternal)
                {
                    Chat.sendSilent(player, "Trade rejected.", Chat.ChatColour.orange);
                    Chat.sendSilent(Players.GetPlayer(partnerData.PID), player.Name + " rejected your trade request.", Chat.ChatColour.orange);
                }

                pd.tradeData          = null;
                partnerData.tradeData = null;

                playerDataDict[pd.PID]          = pd;
                playerDataDict[partnerData.PID] = partnerData;
            }
            else
            {
                Chat.sendSilent(player, "Trade Disabled.", Chat.ChatColour.red);
            }
        }
示例#6
0
    public void Jarraitu()
    {
        menuAnim.SetTrigger("jarraituhasi");
        jokalariDatuak = data.JokalariDatuakKargatu();
        int sceneToLoad = jokalariDatuak.Eszenatokia;

        backAnim.SetTrigger("start");
        fadeManager.FadeToScene(sceneToLoad);
    }
    public void DatuakGorde()
    {
        Data.PlayerData datuak = inbentarioa.Gorde();
        datuak.Eszenatokia = sceneLoader.GetCurrentScene();
        CheckpointZenbakiaLortu();              // hau kendu eta behekoa utzi
        datuak.checkPointZenbakia = checkpointZenbakia;
        //datuak.checkPointZenbakia = CheckpointZenbakiaLortu();
        datuak.ekintzak = Ekintzak.instantzia.ekintzak;

        jokalariDatuak.JokalariDatuakGorde(datuak);
    }
示例#8
0
    // Use this for initialization
    void Start()
    {
        Data playerData = Data.instantzia;

        jokalariDatuak = playerData.JokalariDatuakKargatu();

        txanponak.text = jokalariDatuak.lortutakoTxanponGuztiak.ToString();
        bihotzak.text  = (jokalariDatuak.bizitzaPuntuMax / 2).ToString();
        heriotzak.text = jokalariDatuak.jokalariaHilZenbaketa.ToString();

        StartCoroutine(FadeManager.BukaeraFadeIn(.5f));
    }
示例#9
0
        /// <summary>
        /// INTERNAL
        /// Accepts the trade in player's current playerdata, set the items, and notify the users.
        /// </summary>
        /// <param name="player">The player who is accepting.</param>
        public static void acceptTrade(Players.Player player)
        {
            Data.PlayerData pd = getPlayerData(player);

            if (pd.tradeData == null)
            {
                Chat.sendSilent(Players.GetPlayer(player.ID), "You have no outstanding trade requests.", Chat.ChatColour.orange);
                return;
            }

            Data.PlayerData partnerData = pd.tradeData.partner;

            Stockpile playerStockpile = Stockpile.GetStockPile(Players.GetPlayer(player.ID));
            Stockpile partnerStockpile;

            Stockpile.TryGetStockpile(Players.GetPlayer(partnerData.PID), out partnerStockpile);

            if (partnerStockpile != null)
            {
                if (partnerStockpile.AmountContained(pd.tradeData.giveId) <= pd.tradeData.giveAmount)
                {
                    Chat.sendSilent(player, "Your partner can't afford this trade. It will need to be remade.", Chat.ChatColour.orange);
                    Chat.sendSilent(Players.GetPlayer(partnerData.PID), "You can't afford your trade with " + player.Name + ". Please get the required items and send another request.", Chat.ChatColour.orange);
                    rejectTrade(player, true);
                    return;
                }

                if (playerStockpile.AmountContained(pd.tradeData.takeId) <= pd.tradeData.takeAmount)
                {
                    Chat.sendSilent(player, "You can't afford this trade. Please get the required items or reject the trade.", Chat.ChatColour.orange);
                    return;
                }

                playerStockpile.Remove(pd.tradeData.takeId, pd.tradeData.takeAmount);
                partnerStockpile.Remove(pd.tradeData.giveId, pd.tradeData.giveAmount);
                playerStockpile.Add(pd.tradeData.giveId, pd.tradeData.giveAmount);
                partnerStockpile.Add(pd.tradeData.takeId, pd.tradeData.takeAmount);
            }
            else
            {
                Chat.sendSilent(player, "Your partner doesn't exist. Ignoring trade.", Chat.ChatColour.orange);
                rejectTrade(player, true);
                return;
            }

            Chat.sendSilent(player, "Trade Accepted.", Chat.ChatColour.lime);
            Chat.sendSilent(Players.GetPlayer(partnerData.PID), player.Name + " accepted your trade request.", Chat.ChatColour.lime);

            pd.tradeData                    = null;
            partnerData.tradeData           = null;
            playerDataDict[player.ID]       = pd;
            playerDataDict[partnerData.PID] = partnerData;
        }
示例#10
0
        /// <summary>
        /// Get the player data for player.
        /// If player does not exist in our storage, it creates it with chunk id cid.
        /// </summary>
        /// <param name="player">The player to get the storage of.</param>
        /// <param name="cid">Optional. The chunk to start the player in. Default is ""</param>
        /// <returns>The PlayerData of player.</returns>
        private static Data.PlayerData getPlayerData(Players.Player player, string cid = "")
        {
            if (playerDataDict.ContainsKey(player.ID))
            {
                return(playerDataDict[player.ID]);
            }

            Data.PlayerData pd = new Data.PlayerData(player.ID, cid);

            playerDataDict.Add(player.ID, pd);

            ColonyAPI.Helpers.Utilities.WriteLog("ColonyPlusPlus-Core", "Player added:" + player.ID.steamID);

            return(pd);
        }
示例#11
0
        /// <summary>
        /// INTERNAL
        /// Notifies player to that there is a trade offer from from.
        /// If any of the arguments are invalid it will tell the users that they need to correct them.
        /// </summary>
        /// <param name="from">The player that is sending the request.</param>
        /// <param name="to">The player that is getting sent the request.</param>
        /// <param name="give">The ItemID of the item from is giving away.</param>
        /// <param name="giveamt">How many from is giving to to.</param>
        /// <param name="take">The ItemID of the item from wants from to.</param>
        /// <param name="takeamt">How many from wants from to.</param>
        public static void notifyTrade(Players.Player from, Players.Player to, ushort give, int giveamt, ushort take, int takeamt)
        {
            Data.PlayerData fromPd = getPlayerData(from);
            Data.PlayerData toPd   = getPlayerData(to);

            if (fromPd.tradeData != null || toPd.tradeData != null)
            {
                Chat.sendSilent(from, "Trade to " + to.Name + " failed, you or your trade partner have an outstanding trade.", Chat.ChatColour.orange);
                Chat.sendSilent(to, "Trade from " + from.Name + " failed, you or your trade partner have an outstanding trade.", Chat.ChatColour.orange);
                return;
            }
            string name;
            bool   legalIds = ItemTypes.IndexLookup.TryGetName(give, out name);

            legalIds = legalIds && ItemTypes.IndexLookup.TryGetName(take, out name);

            if (!legalIds)
            {
                Chat.sendSilent(from, "Invalid ID's", Chat.ChatColour.orange);
                return;
            }

            Stockpile fromSP = Stockpile.GetStockPile(from);
            Stockpile toSP   = Stockpile.GetStockPile(to);

            if (fromSP.AmountContained(take) <= takeamt)
            {
                Chat.sendSilent(from, "You can't afford that trade.", Chat.ChatColour.orange);
                return;
            }

            fromPd.tradeData = new Data.TradeData(give, giveamt, take, takeamt, ref toPd, true);
            toPd.tradeData   = new Data.TradeData(take, takeamt, give, giveamt, ref fromPd, false);

            Chat.sendSilent(from, "Trade sent to " + to.Name + ":", Chat.ChatColour.orange);
            Chat.sendSilent(from, fromPd.tradeData.ToString() + " from " + to.Name, Chat.ChatColour.orange);
            Chat.sendSilent(from, "Type '/trade reject' to cancel your trade.", Chat.ChatColour.orange);
            Chat.sendSilent(to, "Incoming trade request:", Chat.ChatColour.orange);
            Chat.sendSilent(to, toPd.tradeData.ToString() + " from " + from.Name, Chat.ChatColour.orange);
            Chat.sendSilent(to, "Type '/trade accept' to accept the trade.", Chat.ChatColour.orange);
            Chat.sendSilent(to, "Type '/trade reject' to reject the trade.", Chat.ChatColour.orange);

            playerDataDict[from.ID] = fromPd;
            playerDataDict[to.ID]   = toPd;
        }
示例#12
0
 public void Jolastu()
 {
     jokalariDatuak = data.JokalariDatuakKargatu();
     menuAnim.SetTrigger("play");
     print("jolastu -> datuak gordeta? " + jokalariDatuak.datuakGordeta);
     if (jokalariDatuak.datuakGordeta)
     {
         print("datuak gordeta");
         menuAnim.SetBool("partidaGordeta", true);
     }
     else
     {
         print("ez duzu daturik gordeta");
         menuAnim.SetBool("partidaGordeta", false);
         int sceneToLoad = jokalariDatuak.Eszenatokia;
         backAnim.SetTrigger("start");
         fadeManager.FadeToScene(sceneToLoad);
     }
 }
示例#13
0
 // jokalariaren datuak kargatzen dira. JokalariKudetzaileak kargatzen ditu
 public void Kargatu(Data.PlayerData datuak)
 {
     if (datuak.suArgia)
     {
         Item suArgia = ScriptableObject.CreateInstance <Item>();
         //Item suArgia = new Item();
         suArgia.izena            = "SuArgia";
         suArgia.irudia           = suIrudia;
         suArgia.erabileraBakarra = false;
         AddItem(suArgia);
     }
     if (datuak.ezpata)
     {
         Item ezpata = ScriptableObject.CreateInstance <Item>();
         //Item ezpata = new Item();
         ezpata.izena            = "Ezpata";
         ezpata.irudia           = ezpataIrudia;
         ezpata.erabileraBakarra = false;
         AddItem(ezpata);
     }
     if (datuak.arkua)
     {
         Item arkua = ScriptableObject.CreateInstance <Item>();
         //Item arkua = new Item();
         arkua.izena            = "Arkua";
         arkua.irudia           = arkuIrudia;
         arkua.erabileraBakarra = false;
         AddItem(arkua);
     }
     geziKopurua            = datuak.geziKopurua;
     geziKopuruMax          = datuak.geziKopuruMax;
     bizitzaPuntuak         = datuak.bizitzaPuntuak;
     bizitzaPuntuMax        = datuak.bizitzaPuntuMax;
     txanponKopurua         = datuak.txanponKopurua;
     lortutakoTxaponGuztiak = datuak.lortutakoTxanponGuztiak;
     jokalariaHilZenbaketa  = datuak.lortutakoTxanponGuztiak;
     pasahitzak             = datuak.pasahitzak;
     UIEguneratu();
 }
示例#14
0
 // datuak gordetzen dira. JokalariKudetzailea arduratzen da
 public Data.PlayerData Gorde()
 {
     Data.PlayerData datuak = new Data.PlayerData();
     datuak.suArgia = false;
     datuak.ezpata  = false;
     datuak.arkua   = false;
     foreach (var item in items)
     {
         if (item.izena == "SuArgia")
         {
             datuak.suArgia = true;
         }
         if (item.izena == "Ezpata")
         {
             datuak.ezpata = true;
         }
         if (item.izena == "Arkua")
         {
             datuak.arkua = true;
         }
     }
     datuak.geziKopurua   = geziKopurua;
     datuak.geziKopuruMax = geziKopuruMax;
     // hil ostean jokua gordetzen da -> bizitza topera, ez 0
     if (bizitzaPuntuak <= 0)
     {
         datuak.bizitzaPuntuak = bizitzaPuntuMax;
     }
     else
     {
         datuak.bizitzaPuntuak = bizitzaPuntuak;
     }
     datuak.bizitzaPuntuMax         = bizitzaPuntuMax;
     datuak.txanponKopurua          = txanponKopurua;
     datuak.lortutakoTxanponGuztiak = lortutakoTxaponGuztiak;
     datuak.jokalariaHilZenbaketa   = jokalariaHilZenbaketa;
     datuak.pasahitzak = pasahitzak;
     return(datuak);
 }
示例#15
0
    // Use this for initialization
    void Start()
    {
        data     = Data.instantzia;
        ekintzak = new bool[tamaina];
        Data.PlayerData jokalariDatuak = data.JokalariDatuakKargatu();

        if (jokalariDatuak.datuakGordeta)
        {
            ekintzak = jokalariDatuak.ekintzak;
        }
        else
        {
            for (int i = 0; i < ekintzak.Length; i++)
            {
                ekintzak[i] = false;
            }
        }

        argibideak = new string[tamaina];

        argibideak[0]  = "Eskuma gezia zapaltzen bada, jokalaria eskumara mugitu behar da.\nMugitu eskumako pieza laukizuzen berdearen barnera.";
        argibideak[1]  = "Ezkerra gezia zapaltzen bada, jokalaria ezkerrera mugitu behar da.";
        argibideak[2]  = "Zuriune-barra zapaltzen bada, jokalariak salto egin behar du.";
        argibideak[3]  = "Zuriune-barra zapaltzen bada eta jokalaria lurrean badago, jokalariak salto egin behar du. \nErabili SaltoEginDaiteke() funtzioa jokalaria lurrean dagoen jakiteko.";
        argibideak[4]  = "Zuriune-barra zapaltzen bada eta jokalaria lurrean badago, jokalariak salto egin behar du.";
        argibideak[5]  = "Eskuma eta ezkerra geziak aldi berean zapaltzen badira jokalaria geldi mantendu behar da.";
        argibideak[6]  = "Jokalariak bihotz bat berreskuratu behar du.";
        argibideak[7]  = "Jokalariak bihotz erdia galdu behar du.";
        argibideak[8]  = "Jokalariak bihotz bat berreskuratu behar du. Ziurtatu bihotzak bizitza maximoa baino handiagoa ez izatea.";
        argibideak[9]  = "Jokalariak bihotz erdia galdu behar du. Bihotzak 0 edo txikiago badira jokalaria hil egiten da.";
        argibideak[10] = "Bihotz bat hartu aurretik ziurtatu bihotzak topera ez egotea.";
        argibideak[11] = "Shift tekla zapaltzen bada, jokalariaren abiadura 6 izango da eta bestela 4.";
        argibideak[12] = "Jokalaria lurrean dagoenean saltoEgin aldagaia egia izan behar da, bestela saltoEgin gezurra izan behar da.";
        argibideak[13] = "KorrikaEgin() exekutatzeko eskuma edo ezkerra geziak sakatuta egon behar dute, bestela jokalaria geldi mantendu behar da.";
        argibideak[14] = "Norabide geziak sakatu ostean, aurrean hormarik badago jokalaria gelditu egin behar da, bestela ikututako noranzkoan mugitu behar da.";
        argibideak[15] = "Funtzio honek bool motako informazio erantzun behar du. Jokalaria plataformaren gainean badago egia izan behar du eta bestela gezurra.";
        argibideak[16] = "Jokalaria plataformarekin batera mugitu behar da naiz eta geziak ez ikutu. Plataforma geldi badago jokalaria ere geldi mantenduko da.";
        argibideak[17] = "Aldatu baldintza plataforma hegalariez gain plataforma zeharkagarrien gainean gaudenean ere 'gainean' aldagaia egia izateko.";
        argibideak[18] = "Jokalaria behera jauzi behar da plataforma gainean badago eta sabaia zeharkatu salto egiten badu. " +
                         "Erabili ! eragigaia PlataformaGaineanDago() funtzioarekin jokalaria plataforma azpian dagoen jakiteko";
        argibideak[19] = "Jokalaria geldi mantendu behar da botoirik sakatzen ez denean.";
        argibideak[20] = "Salto botoia sakatzen denean, botoia sakatuta mantentzen bada indarra 8 izan behar da eta altuera maximoa lortu baino lehen askatzen bada 4 izan behar da.";
        argibideak[21] = "Funtzioak saltoa aldagaia erabiliko du salto egin dezakeen jakiteko. Gero, hormaren kontrako zentzuan salto egingo du.\nSaltoEgin() funtzio pieza bakarra dago, " +
                         "jarri toki egokian bi noranzkoetan funtzionatzeko.";
        argibideak[22] = "HormaSaltoa() funtzioak bool motako datua behar du funtzionatzeko. Datu hori SaltoEginDaiteke() funtzioak eskeiniko du.";
        argibideak[23] = "Jokalariak salto egin ahal izango du baldin eta lurrean badago edo hormari itsatsita badago. Funtzioak egia itzuli behar du salto egin badezake eta gezurra kontrako kasuan.";
        argibideak[24] = "Jokalaria lurrean badago salto normala egingo du. Bestela, airean badago eta pareta baten aurka itsatsita badago horma saltoa egingo du.";
        argibideak[25] = "Jokalariak bihotzak berreskuratu behar ditu. Kopurua bihotzKopurua aldagaiak adieraziko du. Ziurtatu bihotzak bizitza maximoa baino hadiagoa ez izatea.";
        argibideak[26] = "Jokalariak atea zeharkatu dezake behera gezia zapaltzen baldin eta atearen aurrean badago.";
        argibideak[27] = "Jokalaria eskilera gainean badago behera mugitu daiteke behera geziarekin. Eskilera azpian badago gora mugitu daiteke gora geziarekin. " +
                         "Eskilera erdian badago gora edo behera mugitu daiteke norabide gezi egokiak erabilita. Goian ez badago eta behean ere ez badago jokalaria erdian dago.";
        argibideak[28] = "Jokalariak noiz makurtu daitekeen erabaki behar da. Hasieran makurtu aldagaia egia izango da, eta airean, plataforma zeharkagarri baten gainean, eskileran edo ate baten aurrean badago " +
                         "makurtu aldagaia gezurra izango da.";
        argibideak[29] = "Behera gezia zapaltzen denean eta makurtu badaiteke, jokalariaren tamaina 2 aldiz txikiagoa izan behar da eta abiadura 2 izan behar da.";
        argibideak[30] = "Erabili EskumaraMugitu() eta EzkerreraMugitu() pieza berriak abiadura ezberdinekin funtzionatzeko. Deitu KorrikaEgin() eta makurtu() funtzioei abiadura aldatzeko.";
        argibideak[31] = "Jokalaria makurtuta dagoen bitartean abiadura 2 izan behar du. Makurtzeko botoia askatzean (edo zapalduta ez dagoenean) eta gainean oztoporik ez dagoenean makurtu gezurra izango da " +
                         "eta abiadura 4 izan behar du berriro";
        argibideak[32] = "Jokalaria korrika badago eta makurtu egiten bada makurtuta mugitu beharrean irristatu egingo da.";
        argibideak[33] = "Erabili begizta jokalariaren abiadura pixkanaka murrizteko. Erabili IF pieza eta makurtuta aldagaia tamaina aldaketa behin bakarrik gertatzeko. Irristatzen bukatu ondoren jokalaria makurtu egin behar da.";
        argibideak[34] = "Jokalaria aldapan badago eta behera gezia zapaltzen badu, aldapa behera irristatuko du oso abiadura handian. Aldapa bukatzean abiadura azkarra galduko du.";
        argibideak[35] = "Lortutako pasahitza atePasahitzaren berdina izan behar du atea zabaltzeko. Erabili '==' eragigaia string-ak berdinak diren zihurtatzeko.";
        argibideak[36] = "Batu lortutako bi hitzak '+' eragigaia erabilita atea zabaltzeko.";
        argibideak[37] = "ArgiDistantzia 5 da. Ctrl tekla zapaldu ondoren argiDistantzia 30 bihurtzen da eta 3 segundu pasatu ondoren argiDistantzia pixkanaka murrizten da berriro 5 izan arte.";
        argibideak[38] = "Kontrol tekla zapaltzean ingurunea argitu behar da eta etsaia gertu badago zerrendan gordeko da. Erabili pieza moreak zerrendekin lan egiteko. Erabili 'Add' eragigaia kolpatutako etsaiak zerrendan sartzeko.";
        argibideak[39] = "Erabaki zelan zeharkatuko dira zerrendako elementuak etsai guztiei bizitza kentzeko. 1.- Zenbatgarren elementuarekin hasiko da. 2.- Zein baldintzarekin geldituko da. 3.- Zenbatero ikusiko dira etsaiak eta gorako edo beherako ordenean";
        argibideak[40] = "Etsaiari minPuntuak kendu behar zaizkio bere bizitza puntuetatik. Bizitza dena galtzen badu etsai hiltzen da.";
        argibideak[41] = "ArgiDenakPiztuta aldagaia gezurra izango da argiren bat itzalita badago. Horrela bada, jarri 'break' eragiketa. ArgiDenakPiztuta egia bada gela argitu behar da.";
        argibideak[42] = "String-ak karaktere zerrendak dira. Zeharkatu esaldia letra kopurua zenbatzeko.";
        argibideak[43] = "Atea zabaltzeko behar den pasahitza lortzeko zeharkatu mezua atzekoz aurrera eta idatzi mezua alderantziz.";
        argibideak[44] = "Gorde aurkitutako pasahitzak zerrenda baten.";
        argibideak[45] = "Zeharkatu zerrenda eta konprobatu pasahitz denak atea zabaltzeko.";
        argibideak[46] = "Konprobatu pasahitz konbinaketa denak begizta bat beste begizta baten barruan jarriz. Zerrenda bakoitza bere luzeraren arabera zehakatu behar da.";
        argibideak[47] = "Kutxa ikutzen duen bitartean kutxaren aurka mugitzen bada kutxa bultzatuko du. Kutxa ikutzen dagoen bitartean kutxaren kontrako noranzkoan mugitzen bada ez da gehiago kutxa ikutzen egongo.";
        argibideak[48] = "KutxaDenakjarrita aldagaia gezurra izango da kutxetako bat txarto jarrita badago. Kutxa denak ondo badaude kutxaDenakJarrita aldagaia egia izango da eta atea zabalduko da.";
        argibideak[49] = "Ezpataren eraso distantzia lastarrgiaren bikoitza da. ErasoErradioa etsaiarekiko distantzia baino handiagoa bada funtzioak egia iztuli behar du eta gezurra bestela.";
        argibideak[50] = "Etsai guztiak kolpatu behar dira min puntu egokiekin. Erabiliko den itema itemZerrendako lehen postuan dago.";
        argibideak[51] = "Item zerrendan dagoen lehen elementua bigarrenarekin aldatu. Arazorik ez izateko sortu aldagai lagungarri bat zeinekin itema den galtzen.";
        argibideak[52] = "Jokalariak geziak baditu arkua erabili dezake. Gezia jaurti ostean geziKopurua murriztu behar da. Etsaia kolpatzen bada bizitza murriztu behar zaio.";
        argibideak[53] = "Bigarren eta hirugarren itema lehenengoarengatik aldatu behar dira. Sortu aldagai lagungarriak itemak ez galtzeko.";

        emaitzak = new string[tamaina][];

        emaitzak[0]  = new string[] { "ifabif" };
        emaitzak[1]  = new string[] { "ifabif" };
        emaitzak[2]  = new string[] { "ifabif" };
        emaitzak[3]  = new string[] { "ifaifacifif" };
        emaitzak[4]  = new string[] { "ifbkaandabif" };
        emaitzak[5]  = new string[] { "ifabififcdififbkeandefif" };
        emaitzak[6]  = new string[] { "a" };
        emaitzak[7]  = new string[] { "a" };
        emaitzak[8]  = new string[] { "aifb>cdif" };
        emaitzak[9]  = new string[] { "aifb<=cdif" };
        emaitzak[10] = new string[] { "ifb>acif", "ifa<bcif" };
        emaitzak[11] = new string[] { "aifbcifelsedelsee" };
        emaitzak[12] = new string[] { "aifbcifelsedelsee" };
        emaitzak[13] = new string[] { "ifbkaorbcifelsedelse", "ifbkboracifelsedelse" };
        emaitzak[14] = new string[] { "ifaifbcifelsedelseififeiffcifelsegelseif", "ifeiffcifelsegelseififaifbcifelsedelseif" };
        emaitzak[15] = new string[] { "abifcdifelseefelsegb" };
        emaitzak[16] = new string[] { "ifbkaandbifcgififdjififehififfiififelsekelse" };
        emaitzak[17] = new string[] { "aifbkcorbdifelseeelsef", "aifbkborcdifelseeelsef" };
        emaitzak[18] = new string[] { "ifaifcdifififbifbk!ceifif" };
        emaitzak[19] = new string[] { "ifbk!aand!bcif", "ifbk!band!acif" };
        emaitzak[20] = new string[] { "aifbkbandcifefifelseeelsegif" };
        emaitzak[21] = new string[] { "bifbkaandbifdgififceiffif", "bifbkaandbifdgiffifceifif", "bifbkaandbfifdgififceifif" };
        emaitzak[22] = new string[] { "ifehdif", "abcdifehbif", "abifecdhbif" };
        emaitzak[23] = new string[] { "aifbkborceifelsefelsegd", "aifbkcorbeifelsefelsegd" };
        emaitzak[24] = new string[] { "ifaifbcifelseifbkcordefifelseif", "ifaifbcifelseifbkdorcefifelseif" };
        emaitzak[25] = new string[] { "ifbka<bcdifelseefelse", "ifbka>befifelsecdelse" };
        emaitzak[26] = new string[] { "ifbkaandbcif", "ifbkbandacif" };
        emaitzak[27] = new string[] { "ifcifdifbfifififeifagifififbk!dand!eifafififbgififif", "ifcifdifbfifififeifagifififbk!eand!difafififbgififif" };
        emaitzak[28] = new string[] { "caif!dbififebififfbififgbifh" };
        emaitzak[29] = new string[] { "abifbkeandfgbghchzifi", "abifbkfandegbghchzifi" };
        emaitzak[30] = new string[] { "abifcdififefififghififijif" };
        emaitzak[31] = new string[] { "awhilebfifbk!cand!ceeeifwhilei", "awhilebifbk!cand!ceeeiffwhilei" };
        emaitzak[32] = new string[] { "ifbcifadifif" };
        emaitzak[33] = new string[] { "awhilebka>bdif!fccifwhileg", "awhilebka>bif!fccifdwhileg" };
        emaitzak[34] = new string[] { "aifbkbandheifwhilecdififgifwhile", "aifbkbandheifwhilecdifigfifwhile", "aifbkbandheifwhilecifigfifdwhile", "aifbkbandheifwhilecififgifdwhile" };
        emaitzak[35] = new string[] { "ifeqaeeqbif", "cpkdepkifeqadeqbif" };
        emaitzak[36] = new string[] { "aaapkbfepkifeqgeqdif" };
        emaitzak[37] = new string[] { "abcaifdefgehihifwhilebkf>cjwhile" };
        emaitzak[38] = new string[] { "abaifchifdegefifif", "abaifcifdegefifhif" };
        emaitzak[39] = new string[] { "aforbdfhbcjfor", "aforbegibcjfor" };
        emaitzak[40] = new string[] { "aifbk<=bkdif" };
        emaitzak[41] = new string[] { "abforckgmcdifieifforifjfif" };
        emaitzak[42] = new string[] { "anabforcifdeoe!=fdkbifforifgh==lgiif", "amabforcifdeoe==fdjbifforifgh==lgiif" };
        emaitzak[43] = new string[] { "abkbforcnhocdijdforifefif", "abkbforclgmcdjidforifefif" };
        emaitzak[44] = new string[] { "acabcdb" };
        emaitzak[45] = new string[] { "agabibforcifbke==hbkfiffor", "agabibforcdihdifbke==ibkfiffor" };
        emaitzak[46] = new string[] { "abcfordejmdforfglkfhionhifpqifforfor" };
        emaitzak[47] = new string[] { "difaeifwhilegifbkh&&ibkbifelsefelseifbkj&&kbkcifelsefelsewhile", "difaeifwhilegifbkh&&ibkbifelsefelseifbkk&&jbkcifelsefelsewhile",
                                      "difaeifwhilegifbki&&hbkbifelsefelseifbkk&&jbkcifelsefelsewhile", "difaeifwhilegifbki&&hbkbifelsefelseifbkj&&kbkcifelsefelsewhile" };
        emaitzak[48] = new string[] { "abforcjgmcifbkhdifforifieif" };
        emaitzak[49] = new string[] { "abcifd==jdeififfk==fgbbififh<hmifelselelsei", "abcifd==jdeififfk==fgbbififh>=hlifelsemelsei" };
        emaitzak[50] = new string[] { "abifcm==cdififeflfifforghn<jhgilifor" };
        emaitzak[51] = new string[] { "acifbdeif", "aifbcdeif" };
        emaitzak[52] = new string[] { "abbifcgandbi>jbcpdififfehif", "abbifcgandbi>jbcdpififfehif", "abbifcbi>jbandgcdpififfehif", "abbifcbi>jbandgcpdififfehif" };
        emaitzak[53] = new string[] { "aifbcjcdkdekeififfgmghmhioiif" };
    }
示例#16
0
 public PlayerEntity(Data.PlayerData playerData)
 {
     DefaultHP    = playerData.DefaultHP;
     BulletEntity = new BulletEntity(playerData.BulletData);
 }
 void DatuakKargatu()
 {
     Data.PlayerData datuak = jokalariDatuak.JokalariDatuakKargatu();
     CheckPointAldatu(datuak.checkPointZenbakia);
     inbentarioa.Kargatu(datuak);
 }