示例#1
0
    public void CreateArrow(string whatHand)
    {
        //create child
        GameObject arrowObject = Instantiate(m_ArrowPrefab, m_Socket);

        //orient
        arrowObject.transform.localScale      /= 6;
        arrowObject.transform.localPosition    = new Vector3(0, 0, 0);
        arrowObject.transform.localEulerAngles = Vector3.zero;

        if (whatHand == "Left")
        {
            arrowObject.transform.LookAt(rightArrowSetPos);
        }
        else if (whatHand == "Right")
        {
            arrowObject.transform.LookAt(leftArrowSetPos);
        }

        whatIsHand = whatHand;

        //set
        m_CurrentArrow = arrowObject.GetComponent <Arrow>();

        ObjStatus objStatus = arrowObject.GetComponent <ObjStatus>();

        objStatus.isGrip = true;
    }
示例#2
0
        public void AddStatus(ObjStatus objStatus)
        {
            var status = Map(objStatus);

            _statusRepository.Insert(status);
            _statusRepository.SaveChanges();
        }
示例#3
0
    public void OnGrip(string what)
    {
        //이미 잡은게 있다면
        if (isGrip == true && gripObj == null)
        {
            return;
        }

        //approachObj가 이미 잡힌 상태라면 return
        ObjStatus objStatus = approachObj.GetComponent <ObjStatus>();

        if (objStatus != null && objStatus.isGrip == true)
        {
            return;
        }
        objStatus.isGrip = true;

        //공통부분
        gripObj = approachObj;
        approachObj.GetComponent <Outline>().OutlineWidth = approachObj.GetComponent <Outline>().turnOffWidth;
        Rigidbody rb_girpObj = gripObj.GetComponent <Rigidbody>();
        Transform tr_girpObj = gripObj.GetComponent <Transform>();

        rb_girpObj.isKinematic = true;
        rb_girpObj.useGravity  = false;
        tr_girpObj.SetParent(tr);

        //세부부분
        if (what == "Bow")
        {
            tr_girpObj.position      = tr.position;
            tr_girpObj.localPosition = new Vector3(0f, 0f, 0f);
            tr_girpObj.localRotation = Quaternion.identity;
            BowGripSound.Post(gameObject);
            gripObj.GetComponent <BowBlend>().OnGripPose(skeleton);
            gripObj.GetComponent <Bow>().OnCollider();
            isGripBow = true;
        }
        else if (what == "Arrow")
        {
            ArrowSpawnSound.Post(gameObject);
            tr_girpObj.position      = tr.position;
            tr_girpObj.localPosition = new Vector3(0f, 0f, 0.0f);
            tr_girpObj.localRotation = Quaternion.identity;
            gripObj.GetComponent <ArrowBlend>().OnGripPose(skeleton);
            isGripArrow = true;
        }
        else if (what == "ThrowObj")
        {
            //여기에 grip pose 애니매이션 ㄲ

            isGripThrowObj = true;
        }


        isGrip = true;
    }
示例#4
0
 private Status Map(ObjStatus objStatus)
 {
     return(new Status()
     {
         Id = objStatus.Id,
         rootType = objStatus.rootType,
         Name = objStatus.Name,
         Description = objStatus.Description,
         Color = objStatus.Color,
         Position = objStatus.Position,
         IsRoot = objStatus.IsRoot,
         IsHide = objStatus.IsHide,
     });
 }
示例#5
0
    public void OffGrip(string what)
    {
        //잡은게 없다면
        if (isGrip == false && gripObj != null)
        {
            return;
        }

        ObjStatus objStatus = gripObj.GetComponent <ObjStatus>();

        objStatus.isGrip = false;

        //공통 부분
        Rigidbody rb_girpObj = gripObj.GetComponent <Rigidbody>();
        Transform tr_girpObj = gripObj.GetComponent <Transform>();

        rb_girpObj.isKinematic = true;
        rb_girpObj.useGravity  = false;
        tr_girpObj.SetParent(null);

        //추가부분
        if (what == "Bow")
        {
            gripObj.GetComponent <BowBlend>().OffGripPose(skeleton);
            gripObj.GetComponent <Bow>().OffCollider();
            BowGripSound.Post(gameObject);
            isGripBow = false;
        }
        else if (what == "Arrow")
        {
            gripObj.GetComponent <ArrowBlend>().OffGripPose(skeleton);
            BowGripSound.Post(gameObject);
            isGripArrow = false;
        }
        else if (what == "ThrowObj")
        {
            isGripThrowObj = false;
        }

        isGrip  = false;
        gripObj = null;
    }
示例#6
0
        public void Update(ObjStatus model)
        {
            var status = _statusRepository.Get(model.Id);


            status.Description = model.Description;
            status.Color       = model.Color;
            status.IsHide      = model.IsHide;
            //IsRoot не должен меняться
            if (!status.IsRoot)
            {
                status.Name     = model.Name;
                status.rootType = model.rootType;
                status.Position = model.Position;
            }


            _statusRepository.Update(status);
            _statusRepository.SaveChanges();
        }
示例#7
0
文件: Obj.cs 项目: wwo0oww/BaseGame
 public void DoStopMove()
 {
     m_status        = ObjStatus.NONE;
     m_direction     = ObjDirection.NONE;
     m_nextdirection = ObjDirection.NONE;
 }
示例#8
0
文件: Obj.cs 项目: wwo0oww/BaseGame
 public void DoMove(ObjDirection direction)
 {
     m_status        = ObjStatus.MOVE;
     m_direction     = direction;
     m_nextdirection = ObjDirection.NONE;
 }
示例#9
0
文件: Obj.cs 项目: wwo0oww/BaseGame
 public void AddStatus(ObjStatus status)
 {
     m_status |= status;
 }
示例#10
0
文件: Obj.cs 项目: wwo0oww/BaseGame
 public bool HasStatus(ObjStatus status)
 {
     return((Status & status) != 0);
 }
示例#11
0
 public ActionResult EditStatus(ObjStatus model)
 {
     _statusService.Update(model);
     return(RedirectToAction("Statuses"));
 }
示例#12
0
 public ActionResult AddStatus(ObjStatus objStatus)
 {
     _statusService.AddStatus(objStatus);
     return(RedirectToAction("Statuses"));
 }