Example #1
0
        protected override void Execute(CodeActivityContext context)
        {
            string        api_url         = ApiUrl.Get(context);
            string        api_token       = ApiToken.Get(context);
            List <string> allowed_classes = AllowedClasses.Get(context);
            string        image           = Image.Get(context);

            var ac = String.Join(",", allowed_classes.ToArray());

            HttpClient client = new HttpClient();

            client.DefaultRequestHeaders.TryAddWithoutValidation("Accept", "application/json");
            client.DefaultRequestHeaders.TryAddWithoutValidation("Authorization", "Token " + api_token);
            MultipartFormDataContent form = new MultipartFormDataContent();

            FileStream    fs = File.Open(image, FileMode.Open);
            StreamContent sc = new StreamContent(fs);

            form.Add(sc, "image", Path.GetFileName(image));
            form.Add(new StringContent(ac), "text");

            HttpResponseMessage response = client.PostAsync(api_url, form).Result;

            if (response.IsSuccessStatusCode)
            {
                var json = response.Content.ReadAsStringAsync().Result;
                Documents.Set(context, json);
            }
            else
            {
                Documents.Set(context, "");
            }

            client.Dispose();
        }
Example #2
0
        /// <summary>
        /// Saves the item definition
        /// </summary>
        /// <param name="writer">Xml writer handle</param>
        /// <returns>True if saved, or false</returns>
        public bool Save(XmlWriter writer)
        {
            if (writer == null)
            {
                throw new ArgumentNullException("writer");
            }

            writer.WriteStartElement("item");
            writer.WriteAttributeString("name", Name);



            writer.WriteStartElement("tile");
            writer.WriteAttributeString("name", TileSetName);
            writer.WriteAttributeString("inventory", TileID.ToString());
            writer.WriteAttributeString("ground", GroundTileID.ToString());
            writer.WriteAttributeString("incoming", IncomingTileID.ToString());
            writer.WriteAttributeString("moveaway", ThrowTileID.ToString());
            writer.WriteEndElement();

            writer.WriteStartElement("type");
            writer.WriteAttributeString("value", Type.ToString());
            writer.WriteEndElement();

            writer.WriteStartElement("damagetype");
            writer.WriteAttributeString("value", DamageType.ToString());
            writer.WriteEndElement();

            writer.WriteStartElement("ac");
            writer.WriteAttributeString("value", ArmorClass.ToString());
            writer.WriteEndElement();

            writer.WriteStartElement("slot");
            writer.WriteAttributeString("value", Slot.ToString());
            writer.WriteEndElement();

            writer.WriteStartElement("classes");
            writer.WriteAttributeString("value", AllowedClasses.ToString());
            writer.WriteEndElement();


            writer.WriteStartElement("weight");
            writer.WriteAttributeString("value", Weight.ToString());
            writer.WriteEndElement();

            Damage.Save("damage", writer);
            DamageVsBig.Save("damagevsbig", writer);
            DamageVsSmall.Save("damagevssmall", writer);

            writer.WriteStartElement("critical");
            writer.WriteAttributeString("min", Critical.X.ToString());
            writer.WriteAttributeString("max", Critical.Y.ToString());
            writer.WriteAttributeString("multiplier", CriticalMultiplier.ToString());
            writer.WriteEndElement();

            Script.Save("script", writer);

            if (IsCursed)
            {
                writer.WriteStartElement("iscursed");
                writer.WriteAttributeString("value", IsCursed.ToString());
                writer.WriteEndElement();
            }

            if (IsIdentified)
            {
                writer.WriteStartElement("isidentified");
                writer.WriteAttributeString("value", IsCursed.ToString());
                writer.WriteEndElement();
            }

            if (CanIdentify)
            {
                writer.WriteStartElement("canidentify");
                writer.WriteAttributeString("value", IsCursed.ToString());
                writer.WriteEndElement();
            }

            if (IsBig)
            {
                writer.WriteStartElement("isbig");
                writer.WriteAttributeString("value", IsBig.ToString());
                writer.WriteEndElement();
            }

            writer.WriteStartElement("allowedhands");
            writer.WriteAttributeString("value", AllowedHands.ToString());
            writer.WriteEndElement();

            writer.WriteElementString("shortname", ShortName);
            writer.WriteElementString("identifiedname", IdentifiedName);


            writer.WriteStartElement("speed");
            writer.WriteAttributeString("value", AttackSpeed.TotalMilliseconds.ToString());
            writer.WriteEndElement();

            writer.WriteEndElement();

            return(true);
        }
Example #3
0
 public void AddAllowedClass(Type type) => AllowedClasses.Add(type);