Unity 3d silah kodu weapon script


Unity 3d silah kodu weapon script

özellik olarak;
herşey fonksiyonlara bölünmüştür. 
örneğin;
--sarsordegistir();  // yazdığınız jarjörü değiştirir
--ateset(); //ateşeder
--raycasts sistemi ile daha kolay
--mermi yi ekrana yazdırır


  1.  private var atesedebilirmi=true;
  2. var cikmayeri:Transform;
  3. var alevvv: GameObject;
  4. var sarsorsayisi=5;
  5. var birsarsordekimermi=30;
  6. var atisAraligi=0.5;
  7. var eksican:int=20;
  8. var mermiUI:UI.Text;
  9. var atessesi:AudioClip;
  10. var doldursesi:AudioClip;

  11. private var ilksarsor:int;
  12. var kan:GameObject;
  13. var toprak:GameObject;

  14. function Start () {
  15. GetComponent.<Animation>().Play("idle");
  16. alevvv.SetActiveRecursively(false);
  17. ilksarsor=birsarsordekimermi;
  18. }
  19. function Update () {
  20. if(Input.GetKeyDown("r")){
  21. sarsordegistir();
  22. }
  23. if(Input.GetButtonDown("Fire2")){
  24. if(Camera.main.fieldOfView==60){
  25. Camera.main.fieldOfView=10;

  26. }else{
  27. Camera.main.fieldOfView=60;

  28. }

  29. }



  30. if(Input.GetButton("Fire1")){
  31. ateset();}
  32. mermiUI.text=birsarsordekimermi+"/"+sarsorsayisi+"#";
  33. }
  34. function sarsordegistir(){
  35. if(sarsorsayisi!=0){
  36. GetComponent.<Animation>().Play("reload");
  37. GetComponent.<AudioSource>().clip=doldursesi;
  38. GetComponent.<AudioSource>().Play(70000);

  39. yield WaitForSeconds(4);
  40. birsarsordekimermi=ilksarsor;
  41. atesedebilirmi=true;
  42. GetComponent.<Animation>().Stop();
  43. sarsorsayisi--;
  44. }}
  45. function ateset(){
  46. if(atesedebilirmi){
  47. atesedebilirmi=false;
  48. GetComponent.<Animation>().Play("shoot");
  49. GetComponent.<AudioSource>().clip=atessesi;
  50. GetComponent.<AudioSource>().Play();
  51. birsarsordekimermi--;
  52. alevefek();
  53. var hit : RaycastHit;
  54. var fwd = cikmayeri.TransformDirection (Vector3.forward);
  55. if (Physics.Raycast (cikmayeri.transform.position, fwd,hit, 100)) {
  56. Debug.DrawLine (fwd, hit.point);
  57. if(hit.transform.gameObject.tag=="vucut"){
  58. Instantiate(kan,hit.point, Quaternion.identity);
  59. }
  60. if(hit.transform.gameObject.tag=="Untagged"){
  61. Instantiate(toprak,hit.point, Quaternion.identity);
  62. }
  63. if(hit.transform.gameObject.GetComponent.<can>()){
  64. hit.transform.gameObject.GetComponent.<can>().can-=eksican;
  65. }
  66. }
  67. yield WaitForSeconds(atisAraligi);
  68. GetComponent.<Animation>().Stop();
  69. if(birsarsordekimermi <= 0){
  70. sarsordegistir();
  71. atesedebilirmi=false;}

  72. else{
  73. atesedebilirmi=true;
  74. }
  75. }
  76. }

  77. function alevefek(){alevvv.SetActiveRecursively(true);yield WaitForSeconds(0.2);alevvv.SetActiveRecursively(false);}

Yorumlar

Popüler Yayınlar