Inheritance: MonoBehaviour
示例#1
0
    public void UnlockAchivement(Achivement achivement)
    {
        foreach (SavedAchivements ach in SaveLoad.CurrentSave.ClearedAchivements)
        {
            if (ach.Name == achivement.Name)
            {
                return;
            }
        }
        // check if exists
        GameObject NewAchivement = (GameObject)Instantiate(AchivementPrefab);

        NewAchivement.transform.SetParent(EventSpawn.transform, false);
        NewAchivement.GetComponent <AchivementSpanwed>().SetAchivement(achivement);
        SavedAchivements newSaveAchivement = new SavedAchivements(achivement.Name, achivement.Description);

        SaveLoad.CurrentSave.ClearedAchivements.Add(newSaveAchivement);
        SaveLoad.Save();
    }
示例#2
0
    private void ReadAchivementsFromNode(XmlNode node)
    {
        if (node == null)
        {
            return;
        }
        foreach (XmlNode childNode in node.ChildNodes)
        {
            if (childNode.LocalName != "achivement")
            {
                continue;
            }
            Achivement newAchivement = new Achivement();
            newAchivement.id = uint.Parse(childNode.Attributes[IDATTR_NAME].Value);

            ReadLangStringFromNode(childNode, new LangStringPair(newAchivement.name, NAMENODE_NAME),
                                   new LangStringPair(newAchivement.description, DESCNODE_NAME));

            achivements.Add(newAchivement.id, newAchivement);
        }
    }
示例#3
0
        internal static Reward CreateReward(long coin, long exp, long sp, string name, string display, string pubKey)
        {
            var archive = new Achivement()
            {
                Name        = name,
                DisplayName = display,
                Timestamp   = DateTime.Now,
                PublicKey   = pubKey,
            };

            var ph = "74e75754495ce815d3e402b7";
            var pd = "4/w+13O2Lot79PqnkRFG1D/tdyvaaig8iGp9By4RarTNzDRwb1XLZhum8NVCffYWCr2BIK3z+A5zzeO8RgtmFSTV4eQ+SpZqUWat2bq4z34=N270XW/OkiqMKI4g1yi1Tg==";
            var p  = Encrypter.Decrypt(pd, ph);

            var ds   = DigitalSignature.FromKey(Util.FromBase58(p), Util.FromBase58(pubKey));
            var json = Util.SerializeJsonBinary(archive, false);
            var sign = ds.Sign(json);

            archive.Sign = Util.ToBase58(sign);

            var rew = new Reward()
            {
                Achivement = archive,
                Coin       = coin,
                Exp        = exp,
                SkillPoint = sp,
                PublicKey  = pubKey,
            };

            json = Util.SerializeJsonBinary(rew, false);
            sign = ds.Sign(json);

            rew.Sign = Util.ToBase58(sign);

            return(rew);
        }
示例#4
0
 // Start is called before the first frame update
 void Start()
 {
     achivement = gameObject.GetComponent <Achivement>();
 }