public void Execute(IBindingEnvironment environment)
        {
            AgentClass dynclass = new AgentClass(this.name);

            int k = 0;

            if (this.memberExpressions != null)
            {
                foreach (IExpression expression in this.memberExpressions)
                {
                    string name  = this.memberNames[k++];
                    object value = null;

                    if (expression != null)
                    {
                        value = expression.Evaluate(environment);
                    }

                    if (value is ICallable && !(value is AgentFunction))
                    {
                        value = new AgentFunction((ICallable)value);
                    }

                    dynclass.SetMember(name, value);
                }
            }

            Machine.Current.Environment.SetValue(this.name, dynclass);
        }
Beispiel #2
0
        /// <summary>
        /// 添加资源到迅雷
        /// </summary>
        /// <param name="src"></param>
        public static void AddTaskToThunder(MovieInfo info)
        {
            AgentClass agent = new AgentClass();

            agent.AddTask(info.Link, info.Title);
            agent.CommitTasks();
        }
Beispiel #3
0
        public void Fire()
        {
            AgentClass agent;

            try
            {
                agent = new AgentClass();
            }
            catch (Exception e)
            {
                ErrorDialog.Report(Strings.Call_Thunder_Error_Agent + "\n" + e.Message + "\n" + e.StackTrace);
                return;
            }
            try
            {
                Type type   = typeof(AgentClass);
                var  method = type.GetMethod("AddTask12");                      //only on x86
                method.Invoke(agent, new object[] { Url, FileName, "", PostData.ToString(), Refer, "", -1, 0, -1, Cookie, "", "", 0u, "rightup" });
            }
            catch (Exception)
            {
                try
                {
                    agent.AddTask5(bstrUrl: Url,
                                   bstrFileName: FileName,
                                   bstrCookie: Cookie,
                                   bstrReferUrl: Refer,
                                   bstrComments: PostData.ToString(),
                                   eCallType: _tag_Enum_CallType.ECT_Agent5);
                }
                catch (Exception)
                {
                    try
                    {
                        agent.AddTask(bstrUrl: Url,
                                      bstrFileName: FileName,
                                      bstrReferUrl: Refer,
                                      bstrComments: PostData.ToString());
                    }
                    catch (Exception e)
                    {
                        ErrorDialog.Report(Strings.Call_Thunder_Error_Agent + "\n" + e.Message + "\n" + e.StackTrace);
                        return;
                    }
                }
            }
            try
            {
                agent.CommitTasks4(1, 1);
            }
            catch (Exception e)
            {
                ErrorDialog.Report(Strings.Call_Thunder_Error_Agent + (Environment.Is64BitProcess?Strings.Recommand_32bit:"") + e.Message + "\n" + e.StackTrace);
                return;
            }
        }
 /// <summary>
 /// 将静态变量出栈
 /// </summary>
 public void LoadStaticValue()
 {
     if (StaticValueStack == null || StaticValueStack.Count == 0)
     {
         Console.WriteLine("StartNet->LoadStaticValue()");
         return;
     }
     AgentClass.GetStaticValue(StaticValueStack);
     ClassPublicValue.GetStaticValue(StaticValueStack);
     Adam.GetStackValue(StaticValueStack);
 }
Beispiel #5
0
 public bool Valid()
 {
     try
     {
         AgentClass agent = new AgentClass();
     }
     catch (Exception)
     {
         return(false);
     }
     return(true);
 }
 /// <summary>
 /// 将静态变量进栈
 /// </summary>
 public void SetStaticValue()
 {
     if (StaticValueStack == null)
     {
         StaticValueStack = new Stack <object>();
     }
     else
     {
         StaticValueStack.Clear();
     }
     StaticValueStack = Adam.SetStaticValue(StaticValueStack);
     StaticValueStack = ClassPublicValue.SetStaticValue(StaticValueStack);
     StaticValueStack = AgentClass.SetStaticValue(StaticValueStack);
 }
Beispiel #7
0
        public void Fire()
        {
            AgentClass agent;

            try
            {
                agent = new AgentClass();
            }
            catch (Exception e)
            {
                MessageBox.Show(Strings.Call_Thunder_Error_Agent + "\n" + e.Message + "\n" + e.StackTrace);
                return;
            }
            try
            {
                agent.AddTask3(bstrUrl: Url,
                               bstrFileName: FileName);
            }
            catch (Exception)
            {
                try
                {
                    agent.AddTask(bstrUrl: Url,
                                  bstrFileName: FileName);
                }
                catch (Exception e)
                {
                    MessageBox.Show(Strings.Call_Thunder_Error_Agent + "\n" + e.Message + "\n" + e.StackTrace);
                    return;
                }
            }
            try
            {
                agent.CommitTasks4(1, 0);
            }
            catch (Exception)
            {
                try { agent.CommitTasks(); }
                catch (Exception e)
                {
                    MessageBox.Show(Strings.Call_Thunder_Error_Agent + "\n" + e.Message + "\n" + e.StackTrace);
                    return;
                }
            }
        }
Beispiel #8
0
        private void btnDownload_Click(object sender, EventArgs e)
        {
            HttpWebRequest request      = (HttpWebRequest)WebRequest.Create(_url);
            HttpWebResponse response    = null;
            Stream receiveStream        = null;
            try
            {
            #if DEBUG
                FileStream fs = new FileStream(@"./test.xml", FileMode.Open);
                receiveStream = fs;
            #else
                request.MaximumAutomaticRedirections = 4;
                request.MaximumResponseHeadersLength = 4;
                request.Credentials = CredentialCache.DefaultCredentials;
                response = (HttpWebResponse)request.GetResponse();
                receiveStream = response.GetResponseStream();
            #endif

                XmlDocument xml = new XmlDocument();
                XmlNodeList xmllist = null;
                xml.Load(receiveStream);
                xmllist = xml.SelectNodes("//channel/item");
                AgentClass ac = new AgentClass();
                foreach (XmlNode node in xmllist)
                {
                    string url = node.SelectSingleNode("link").InnerText;
                    string[] temp = url.Split('/');
                    string fileName = temp[temp.Length - 1].Replace("m4v", "mp4");
                    if (File.Exists(_savePath + fileName))
                        continue;
                    ac.AddTask(url, fileName, @"F:\ENGLISH\StudentNews\", string.Empty, string.Empty, 0, 0, 0);
                }
                ac.CommitTasks();

            }
            finally
            {
                if (response != null)
                    response.Close();
                if (receiveStream != null)
                    receiveStream.Close();
            }
        }
        public void IGCUnpackInto(MyTuple <MyTuple <Vector3D, Vector3D, double>, MyTuple <string, long, float, int>, MyTuple <int, string, int, int, Vector3I>, MyTuple <long, int> > unpacked)
        {
            CurrentPosition      = unpacked.Item1.Item1;
            CurrentVelocity      = unpacked.Item1.Item2;
            CurrentCanonicalTime = TimeSpan.FromMilliseconds(unpacked.Item1.Item3);

            DisplayName = unpacked.Item2.Item1;
            ID          = unpacked.Item2.Item2;
            Radius      = unpacked.Item2.Item3;
            Rank        = unpacked.Item2.Item4;

            AcceptedTaskTypes = (TaskType)unpacked.Item3.Item1;
            CommandChannelTag = unpacked.Item3.Item2;
            AgentClass        = (AgentClass)unpacked.Item3.Item3;
            AgentStatus       = (AgentStatus)unpacked.Item3.Item4;
            HydroPowerInv     = unpacked.Item3.Item5;

            HomeID     = unpacked.Item4.Item1;
            HangarTags = (HangarTags)unpacked.Item4.Item2;
        }
Beispiel #10
0
        // Randozime Agent Creation Method
        public static int[] pickAgent(AgentClass agent_class)
        {
            int[]  result;
            Random rand = new Random();

            int agent_variation   = 1;
            int citizen_education = 1;
            int citizen_trait     = 1;
            int citizen_gender    = 1;
            int vehicle_type      = 1;

            //If Kid
            if (agent_class == AgentClass.Kid)
            {
                citizen_gender  = rand.Next(0, citizen_genders) + 1;
                agent_variation = rand.Next(0, kid_variations) + 1;
                citizen_trait   = rand.Next(0, citizen_traits) + 1;

                // Default Education
                citizen_education = (int)KidEducation.Uneducated;
            }

            //If Adult
            else if (agent_class == AgentClass.Adult)
            {
                citizen_gender  = rand.Next(0, citizen_genders) + 1;
                agent_variation = rand.Next(0, adult_variations) + 1;
                citizen_trait   = rand.Next(0, citizen_traits) + 1;

                // Default Education
                citizen_education = (int)AdultEducation.Uneducated;
            }

            //If Elder
            else if (agent_class == AgentClass.Elder)
            {
                citizen_gender  = rand.Next(0, citizen_genders) + 1;
                agent_variation = rand.Next(0, elder_variations) + 1;
                citizen_trait   = rand.Next(0, citizen_traits) + 1;

                // Default Education
                citizen_education = (int)ElderEducation.Uneducated;
            }

            //If Car
            else if (agent_class == AgentClass.Car)
            {
                vehicle_type    = rand.Next(0, car_types) + 1;
                agent_variation = rand.Next(0, car_variations) + 1;
            }

            //If Airplane
            else if (agent_class == AgentClass.Airplane)
            {
                vehicle_type    = rand.Next(0, airplane_types) + 1;
                agent_variation = rand.Next(0, airplane_variations) + 1;
            }

            //If Boat
            else if (agent_class == AgentClass.Boat)
            {
                vehicle_type    = rand.Next(0, boat_types) + 1;
                agent_variation = rand.Next(0, boat_variations) + 1;
            }

            // if vehicle
            if (agent_class == AgentClass.Car || agent_class == AgentClass.Airplane || agent_class == AgentClass.Boat)
            {
                result    = new int[2];
                result[0] = vehicle_type;
                result[1] = agent_variation;
            }
            else
            {
                result    = new int[4];
                result[0] = citizen_gender;
                result[1] = agent_variation;
                result[2] = citizen_trait;
                result[3] = citizen_education;
            }

            return(result);
        }
Beispiel #11
0
        public static Agent CreateAgent(AgentClass type_of_agent)
        {
            int[] agent_data = AgentHelper.pickAgent(type_of_agent);

            // If Kid
            if (type_of_agent == AgentClass.Kid)
            {
                // Instantiate prefab
                prefab    = Resources.Load(AgentUtils.getCitizenPath(type_of_agent)) as GameObject;
                agent_obj = GameObject.Instantiate(prefab) as GameObject;

                // Add component to new agent
                new_agent = Kid.CreateComponent(agent_obj,
                                                (CitizenGender)agent_data[0],
                                                (KidVariation)agent_data[1],
                                                (CitizenTraits)agent_data[2],
                                                (KidEducation)agent_data[3]);
            }

            // If Adult
            else if (type_of_agent == AgentClass.Adult)
            {
                // Instantiate prefab
                prefab    = Resources.Load(AgentUtils.getCitizenPath(type_of_agent)) as GameObject;
                agent_obj = GameObject.Instantiate(prefab) as GameObject;

                // Add component to new agent
                new_agent = Adult.CreateComponent(agent_obj,
                                                  (CitizenGender)agent_data[0],
                                                  (AdultVariation)agent_data[1],
                                                  (CitizenTraits)agent_data[2],
                                                  (AdultEducation)agent_data[3]);
            }

            // If Elder
            else if (type_of_agent == AgentClass.Elder)
            {
                // Instantiate prefab
                prefab    = Resources.Load(AgentUtils.getCitizenPath(type_of_agent)) as GameObject;
                agent_obj = GameObject.Instantiate(prefab) as GameObject;

                // Add component to new agent
                new_agent = Elder.CreateComponent(agent_obj,
                                                  (CitizenGender)agent_data[0],
                                                  (ElderVariation)agent_data[1],
                                                  (CitizenTraits)agent_data[2],
                                                  (ElderEducation)agent_data[3]);
            }

            // If Car
            else if (type_of_agent == AgentClass.Car)
            {
                // Instantiate prefab
                prefab    = Resources.Load(AgentUtils.getCarPath(agent_data[0])) as GameObject;
                agent_obj = GameObject.Instantiate(prefab) as GameObject;

                // Add component to new agent
                new_agent = Car.CreateComponent(agent_obj, (CarVariation)agent_data[1]);
            }

            // If Airplane
            else if (type_of_agent == AgentClass.Airplane)
            {
                // Instantiate prefab
                prefab    = Resources.Load(AgentUtils.getAirplanePath(agent_data[0])) as GameObject;
                agent_obj = GameObject.Instantiate(prefab) as GameObject;

                // Add component to new agent
                new_agent = Airplane.CreateComponent(agent_obj, (AirplaneVariation)agent_data[1]);
            }

            // If Boat
            else if (type_of_agent == AgentClass.Boat)
            {
                // Instantiate prefab
                prefab    = Resources.Load(AgentUtils.getBoatPath(agent_data[0])) as GameObject;
                agent_obj = GameObject.Instantiate(prefab) as GameObject;

                // Add component to new agent
                new_agent = Boat.CreateComponent(agent_obj, (BoatVariation)agent_data[1]);
            }

            return(new_agent);
        }
Beispiel #12
0
 // Overloaded Citizen
 public static string getCitizenPath(AgentClass size)
 {
     return(getCitizenPath((int)size));
 }
 public AgentSubsystem(IIntelProvider intelProvider, AgentClass agentClass)
 {
     IntelProvider = intelProvider;
     IntelProvider.AddIntelMutator(this);
     AgentClass = agentClass;
 }