コード例 #1
0
ファイル: AddPoint.cs プロジェクト: Tori1243/Spring2020
    public void UpdateInfo(Transform t)
    {
        Vector3Data temp = ScriptableObject.CreateInstance <Vector3Data>();

        temp.value = t.position;
        points.Add(temp);
    }
コード例 #2
0
 public ColoredCubeData(Color color, Vector3 position, Vector3 scale, string name)
 {
     Color    = new ColorData(color);
     Position = new Vector3Data(position);
     Scale    = new Vector3Data(scale);
     Name     = name;
 }
コード例 #3
0
    public TileData(GameObject input)
    {
        Tile inputTile = input.GetComponent <Tile>();

        position   = new Vector3Data(input.transform.position);
        x          = inputTile.x;
        y          = inputTile.y;
        tileName   = input.name;
        prefabInfo = inputTile.prefabInfo;
        layerNum   = inputTile.GetLayerNum();

        isStructed = inputTile.GetStructed();
        isNonTile  = inputTile.GetNonTile();

        isBuildingArea = inputTile.GetBuildingAreaSave();
        isHuntingArea  = inputTile.GetHuntingAreaSave();
        isRoad         = inputTile.GetRoadSave();
        isActive       = inputTile.GetIsActive();

        Structure tileStructure = inputTile.GetStructure();

        if (tileStructure != null)
        {
            structureIndex = tileStructure.index;
        }
        else
        {
            structureIndex = -1;
        }
    }
コード例 #4
0
        private void FixedUpdate()
        {
            var lerpPercentage = (Time.time - timeStartedLerping) / timeToLerp;

            transform.position = Vector3.Lerp(lastRealPosition, realPosition, lerpPercentage);

            if (!SendMove)
            {
                return;
            }

            Debug.Log(Vector3.Angle(transform.forward, realPosition - lastRealPosition));

            if (Vector3.Distance(realPosition, lastRealPosition) < 0.01f)
            {
                MessageBus.SendMessage(SubscribeType.Channel, Channel.ChannelIds[SubscribeType.Channel],
                                       CommonMessage.Get(API.Messages.MOVE, Vector3Data.GetVector3Data(Vector3.zero)));
            }
            else
            {
                MessageBus.SendMessage(SubscribeType.Channel, Channel.ChannelIds[SubscribeType.Channel],
                                       CommonMessage.Get(API.Messages.MOVE,
                                                         Vector3Data.GetVector3Data(Quaternion.Inverse(transform.rotation) * (realPosition - lastRealPosition))));
            }
        }
コード例 #5
0
    public ActorData(GameObject input)
    {
        Actor inputActor = input.GetComponent <Actor>();

        superState = inputActor.GetSuperState();
        state      = inputActor.curState;
        position   = new Vector3Data(input.transform.position);

        prefabPath = inputActor.prefabPath;

        isActive = input.activeSelf;

        if (isActive)
        {
            if (inputActor.GetDestinationTile() != null)
            {
                destinationTile = new TileCoordinates(inputActor.GetDestinationTile());
            }
            if (inputActor.GetDestinationTileForMove() != null)
            {
                destinationTileForMove = new TileForMoveCoordinates(inputActor.GetDestinationTileForMove());
            }
            //curTile = new TileCoordinates(inputTraveler.GetCurTile());
            if (inputActor.GetCurTile() != null)
            {
                curTile = new TileCoordinates(inputActor.GetCurTile());
            }
            if (inputActor.GetCurTileForMove() != null)
            {
                curTileForMove = new TileForMoveCoordinates(inputActor.GetCurTileForMove());
            }
        }
    }
コード例 #6
0
    public void OnLook(Vector3Data obj)
    {
        transform.LookAt(obj.value);
        var y = obj.value.y -= 90;

        transform.rotation = Quaternion.Euler(0, y, 0);
    }
コード例 #7
0
        private void Move(Message msg)
        {
            var axis = (msg.Data as Vector3Data).Value;

            axis = axis.normalized;

            //Rotate move in camera space
            //            axis = Quaternion.Euler(0, 0 - transform.eulerAngles.y +
            //                Camera.main.transform.parent.transform.eulerAngles.y, 0) * axis;
            //
            //            axis.x *=  _transformData.MovementConfig.SideSpeed;
            _curSpeed = Mathf.Lerp(_curSpeed, _speedMode[(int)_transformData.CurrentSpeedMode], Time.deltaTime * 10);
            //            axis.z *= axis.z > 0 ? _curSpeed :  _transformData.MovementConfig.SideSpeed;
            //
            //            transform.Translate(axis * Time.deltaTime);

            var pos = transform.position;

            pos = pos +
                  transform.forward * axis.z * Time.deltaTime *
                  (axis.z > 0 ? _curSpeed : _transformData.MovementConfig.SideSpeed);

            var sign = Vector3.Angle(transform.forward, Camera.main.gameObject.transform.forward) > 80 ? -1 : 1;

            pos = pos +
                  transform.right * axis.x * sign * Time.deltaTime * _transformData.MovementConfig.SideSpeed;

            transform.position = Vector3.Lerp(transform.position, pos, Time.deltaTime * 500);

            MessageBus.SendMessage(SubscribeType.Channel, Channel.ChannelIds[SubscribeType.Channel],
                                   CommonMessage.Get(API.Messages.UPDATE_POSITION,
                                                     Vector3Data.GetVector3Data(transform.position)));
        }
コード例 #8
0
 public void SaveAll()
 {
     health   = player.Health;
     stamina  = player.Stamina.Value;
     position = new Vector3Data(player.transform.position);
     rotation = new QuaternionData(player.transform.rotation);
 }
コード例 #9
0
        public ParticleScaleControl(ParticleScaleControlConstructionParams csParam)
            : base(csParam)
        {
            InitConstruction();

            NodeName = csParam.NodeName;

            //csParam.SetHostNodesContainerEvent -= InitGraphEvent;
            //csParam.SetHostNodesContainerEvent += InitGraphEvent;

            //InitGraphEvent();

            if (string.IsNullOrEmpty(NodeName))
            {
                NodeName = "ParticleScale";
            }

            IsOnlyReturnValue = true;
            AddLinkPinInfo("ParticleScaleControlDown", mCtrlValueLinkHandleDown, null);
            AddLinkPinInfo("ParticleScaleControlUp", mCtrlValueLinkHandleUp, null);

            mCtrlValueLinkHandleDown.ResetDefaultFilter("ParticleScaleControlUp");

            DataGradient = new ParticleDataGradient("Float3");

            Vector3Data v3 = DataGradient.VectorData as Vector3Data;

            v3.Max = EngineNS.Vector3.UnitXYZ;
            v3.Min = EngineNS.Vector3.UnitXYZ;
        }
コード例 #10
0
    public void OnGetinResponse(List <PlayerData> PlayerDataList, List <Queue <Actions> > ActionQueueList)
    {
        int             i   = 0;
        Vector3Data     Pos = new Vector3Data();
        string          Username;
        Queue <Actions> ActionQueue = new Queue <Actions>();

        //得到其他客户端的Player角色
        foreach (PlayerData playerData in PlayerDataList)
        {
            //初始位置
            Pos = playerData.Pos;
            //用户名
            Username = playerData.Username;
            //动作队列
            ActionQueue = ActionQueueList[i];
            i++;

            /*
             *
             * 下面实例化其他客户端的角色当前方位
             *
             */
            OnNewPlayerEvent(Username, Pos);
            OnMove(Username, ActionQueue);
        }
    }
コード例 #11
0
 public ParticleData(ParticleData left, ParticleData right, float factor)
 {
     position        = new Vector3Data(left.position.Lerp(right.position, factor));
     velocity        = new Vector3Data(left.velocity.Lerp(right.velocity, factor));
     rotation        = Mathf.Lerp(left.rotation, right.rotation, factor);
     angularVelocity = Mathf.Lerp(left.angularVelocity, right.angularVelocity, factor);
     lifeTime        = Mathf.Lerp(left.lifeTime, right.lifeTime, factor);
 }
コード例 #12
0
 public ParticleData(ParticleSystem.Particle source)
 {
     position        = new Vector3Data(source.position);
     velocity        = new Vector3Data(source.velocity);
     rotation        = source.rotation;
     angularVelocity = source.angularVelocity;
     lifeTime        = source.remainingLifetime;
 }
コード例 #13
0
 public ParticleData(ParticleData source)
 {
     position        = source.position.Clone();
     velocity        = source.velocity.Clone();
     rotation        = source.rotation;
     angularVelocity = source.angularVelocity;
     lifeTime        = source.lifeTime;
 }
コード例 #14
0
 public void DropAllChildren(Vector3Data dropoffPoint)
 {
     foreach (Transform child in transform)
     {
         child.position = dropoffPoint.value;
         child.parent   = null;
     }
 }
コード例 #15
0
ファイル: GyroscopeService.cs プロジェクト: rphuang/riot
        private void Gyroscope_ReadingChanged(object sender, GyroscopeChangedEventArgs e)
        {
            GyroscopeData reading = e.Reading;
            Vector3Data   data    = AngularVelocity;

            data.TimeStamp = DateTime.UtcNow;
            data.Value     = reading.AngularVelocity;
            data.SendNotification();
        }
コード例 #16
0
ファイル: SpawnNotes.cs プロジェクト: afo27/Project_VRoom
    void ReadVectors()
    {
        BinaryFormatter bf   = new BinaryFormatter();
        FileStream      file = File.Open(Directory.GetCurrentDirectory() + @"\assets\resources\notepossiblelocations.save", FileMode.Open);
        Vector3Data     vec  = (Vector3Data)bf.Deserialize(file);

        Debug.Log(vec.data[0]);
        file.Close();
    }
コード例 #17
0
        private void Accelerometer_ReadingChanged(object sender, AccelerometerChangedEventArgs e)
        {
            Xamarin.Essentials.AccelerometerData reading = e.Reading;
            Vector3Data data = Acceleration;

            data.Value     = reading.Acceleration;
            data.TimeStamp = DateTime.UtcNow;
            data.SendNotification();
        }
コード例 #18
0
        public override void OnOperationRequest(OperationRequest operationRequest, SendParameters sendParameters, ClientPeer peer)
        {
            Vector3Data pos = (Vector3Data)DictTool.GetValue <byte, object>(operationRequest.Parameters, (byte)ParameterCode.Position);
            float       x   = (float)DictTool.GetValue <byte, object>(operationRequest.Parameters, (byte)ParameterCode.X);
            float       y   = (float)DictTool.GetValue <byte, object>(operationRequest.Parameters, (byte)ParameterCode.Y);
            float       z   = (float)DictTool.GetValue <byte, object>(operationRequest.Parameters, (byte)ParameterCode.Z);

            peer.x = x; peer.y = y; peer.z = z;
        }
コード例 #19
0
    public void OnLook(Vector3Data obj)
    {
        transform.LookAt(obj.value);
        var transformRotation = transform.eulerAngles;

        transformRotation.x  = 0;
        transformRotation.y -= 90;
        transform.rotation   = Quaternion.Euler(transformRotation);
    }
コード例 #20
0
ファイル: MagnetometerService.cs プロジェクト: rphuang/riot
        private void Magnetometer_ReadingChanged(object sender, MagnetometerChangedEventArgs e)
        {
            MagnetometerData reading = e.Reading;
            Vector3Data      data    = MagneticField;

            data.TimeStamp = DateTime.UtcNow;
            data.Value     = reading.MagneticField;
            data.SendNotification();
        }
コード例 #21
0
    public void OnLook(Vector3Data obj)
    {
        transform.LookAt(obj.myValue);
        var rotationDirection = transform.eulerAngles;

        rotationDirection.x  = 0;
        rotationDirection.y -= 90f;
        transform.rotation   = Quaternion.Euler(rotationDirection);
    }
コード例 #22
0
 public override void Reset()
 {
     base.Reset();
     code          = "item-coin";
     type          = BaseDataObjectKeys.item;
     data_type     = GameSpawnType.randomType;
     position_data = new Vector3Data(0, 0, 0);
     scale_data    = new Vector3Data(1, 1, 1);
     rotation_data = new Vector3Data(0, 0, 0);
 }
コード例 #23
0
    //新用户登录事件
    public void OnNewPlayerEvent(string username, Vector3Data Pos)
    {
        Vector3 pos = new Vector3(Pos.x, Pos.y, Pos.z);
        //Quaternion qu=Pos.direction;
        GameObject go = Instantiate(Enemy_player, pos, Quaternion.identity);

        go.GetComponent <Enemy_player>().Enemy_name = username;
        // Enemy_player en=go.GetComponent<Enemy_player> ();
        playerDict.Add(username, go);
    }
コード例 #24
0
    public static Vector3Data Serialize(this Vector3 v)
    {
        Vector3Data vectorData = new Vector3Data
        {
            x = v.x,
            y = v.y,
            z = v.z,
        };

        return(vectorData);
    }
コード例 #25
0
    public static Vector3Data ReadVectors()
    {
        BinaryFormatter bf   = new BinaryFormatter();
        FileStream      file = File.Open(Directory.GetCurrentDirectory() + @"\assets\Resources\note_possible_locations_rainbow_road_v2.save", FileMode.Open);
        Vector3Data     vec  = (Vector3Data)bf.Deserialize(file);

        Debug.Log(vec.data[0]);
        file.Close();

        return(vec);
    }
コード例 #26
0
 public void MoveAwayFromDirection(Vector3Data direction)
 {
     if (!useRangeCheck || rangeCheck.value > 0)
     {
         if (!canMove)
         {
             return;
         }
         rigidbodyObj.MovePosition(rigidbodyObj.position - Time.deltaTime * speed * direction.vector3Value);
     }
 }
コード例 #27
0
    public void start(Vector3Data obj)

    {
        /// "turret"///

        transform.LookAt(obj.value);
        var transformRotation = transform.eulerAngles;

        transformRotation.x  = 0;
        transformRotation.y -= 90;
        transform.rotation   = Quaternion.Euler(transformRotation);
    }
コード例 #28
0
    public RigidbodyData(Rigidbody body)
    {
        this.position = new Vector3Data(body.transform.position);
        this.rotation = new QuaternionData(body.transform.rotation);

        this.sleeping = body.IsSleeping();
        if (!sleeping)
        {
            this.velocity        = new Vector3Data(body.velocity);
            this.angularVelocity = new Vector3Data(body.angularVelocity);
        }
    }
コード例 #29
0
 public void MoveAwayFromDirection(Vector3Data direction)
 {
     if (!useRangeCheck || rangeCheck.value > 0)
     {
         rigidbodyObj.useGravity = false;
         rigidbodyObj.MovePosition(rigidbodyObj.position - Time.deltaTime * speed * direction.value);
     }
     else
     {
         rigidbodyObj.useGravity = true;
     }
 }
コード例 #30
0
ファイル: MapScript.cs プロジェクト: kurisu9az/FlyingGameDemo
        private void LoadGameObject(List <CommonEntity> mapPart, Vector3Data startPositon, GameObjectData data)
        {
            CommonEntity entity = EntityFactory.InstanceEntity <CommonEntity>();

            entity.Create(m_container, data.path);

            TransformData transformData = new TransformData(AddVector3Data(startPositon, data.transformData.position),
                                                            data.transformData.rotation, data.transformData.scale);

            entity.InitTransform(transformData);

            mapPart.Add(entity);
        }
コード例 #31
0
ファイル: Package.cs プロジェクト: florisdh/LCPiratesOnline
 public RigidData(Vector3 position, Vector3 angle, Vector3 velo)
 {
     Positioning = new PositioningData(position, angle);
     Velocity = new Vector3Data(velo);
 }
コード例 #32
0
ファイル: Package.cs プロジェクト: florisdh/LCPiratesOnline
 public void FromBytes(byte[] data, ref int offset)
 {
     Positioning = new PositioningData(data, ref offset);
     Velocity = new Vector3Data(data, ref offset);
 }
コード例 #33
0
ファイル: Package.cs プロジェクト: florisdh/LCPiratesOnline
 public RigidData()
 {
     Positioning = new PositioningData();
     Velocity = new Vector3Data();
 }
コード例 #34
0
ファイル: Package.cs プロジェクト: florisdh/LCPiratesOnline
 public void FromBytes(byte[] data, ref int offset)
 {
     Position = new Vector3Data(data, ref offset);
     Angle = new Vector3Data(data, ref offset);
 }
コード例 #35
0
ファイル: Package.cs プロジェクト: florisdh/LCPiratesOnline
 public PositioningData(Vector3 position, Vector3 angle)
 {
     Position = new Vector3Data(position);
     Angle = new Vector3Data(angle);
 }
コード例 #36
0
ファイル: Package.cs プロジェクト: florisdh/LCPiratesOnline
 public PositioningData()
 {
     Position = new Vector3Data();
     Angle = new Vector3Data();
 }