public void Tick(CSharpInstance instance, long delta)
 {
     if (delta > 0)
     {
         m_Delegate(instance, instance.SkillTime, delta);
     }
 }
        public IInstance Clone()
        {
            CSharpInstance instance = new CSharpInstance();

            foreach (var handler in m_MessageHandlers)
            {
                instance.m_MessageHandlers.Add(handler.Clone());
                string msgId = handler.MessageId;
                if (!instance.m_MessageQueues.ContainsKey(msgId))
                {
                    instance.m_MessageQueues.Add(msgId, new Queue <MessageInfo>());
                }
            }

            /*
             * foreach (StoryMessageHandler handler in m_MessageHandlers) {
             * instance.m_MessageHandlers.Add(handler.Clone());
             * }*/
            instance.m_Id = m_Id;
            return(instance);
        }
 public void Trigger(CSharpInstance instance, object[] args)
 {
 }
 public void Analyze(CSharpInstance instance)
 {
 }