giganciprogramowania

PaddleMove l15

Jun 16th, 2023
96
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. using System.Collections;
  2. using System.Collections.Generic;
  3. using UnityEngine;
  4.  
  5. public class PaddleMove : MonoBehaviour
  6. {
  7.     public float speed = 5f;
  8.     public GameObject bullet;
  9.     public int fireRate;
  10.     float timeFromLastShoot = 0;
  11.  
  12.     void Update()
  13.     {
  14.         Move();
  15.         Shoot();
  16.     }
  17.  
  18.     //funkcja odpowiedzialna za ruch
  19.     void Move()
  20.     {
  21.         //Zczytujemy z GetAxisRaw w którą stronę chcemy się poruszać
  22.         float x = Input.GetAxisRaw("Horizontal");
  23.         //wyliczamy prędkość w wbranym kierunku
  24.         float speedDir = x * speed * Time.deltaTime;
  25.         transform.position += new Vector3(speedDir, 0, 0);
  26.     }
  27.  
  28.     void Shoot()
  29.     {
  30.         //liczymy kidy ostatnio wystrzeliliśmy
  31.         timeFromLastShoot += Time.deltaTime;
  32.         //wyliczamy gdzie ma się pojawić pocisk
  33.         Vector3 pos = transform.position + new Vector3(0, 1, 0);
  34.         //jeżeli czas od ostatniego wystrzału jest wystarczająco duży
  35.         if (timeFromLastShoot >= (1 / fireRate))
  36.         {
  37.             //Po naciśnięciu klawisza
  38.             if (Input.GetButtonDown("Fire1"))
  39.             {
  40.                 //tworzymy pocisk
  41.                 Instantiate(bullet, pos, Quaternion.identity);
  42.                 //zerujemy czas od wystrzelenia
  43.                 timeFromLastShoot = 0;
  44.             }
  45.         }
  46.     }
  47.  
  48.  
  49. }
  50.  
Add Comment
Please, Sign In to add comment