Unity PlayerPrefs Kullanımı (Veri Kaydetme)

A+
A-
Unity PlayerPrefs Kullanımı (Veri Kaydetme)

Unity PlayerPrefs kullanımı hakkında sizlere bir video hazırladık video :

Unity PlayerPrefs ile veri ekleme

PlayerPrefs.SetInt(“anahtar_ismi”,int değer); // integer veri tipinde bir anahtar kaydetmek için kullanılır.

PlayerPrefs.SetFloat(“anahtar_ismi”,float değer); float veri tipinde bir anahtar kaydetmek için kullanılır.

PlayerPrefs.SetString(“anahtar_ismi”,”string değer”); string veri tipinde bir anahtar kaydetmek için kullanılır.Diğerlerinde farkı string ifade kayıt ettiğimiz için değer kısmınıda tırnak içinde yazıyoruz.

Unity PlayerPrefs ile veri çekme (görüntüleme)

PlayerPrefs.GetInt(“anahtar_ismi”); // kaydettiğimiz integer değeri hangi anahtar ismi ile kayıt ettiysek onunla çekiyoruz. (Bu değeri bir değişkene atayabilir ve istediğimiz şekilde kullanabiliriz.)

PlayerPrefs.GetString(“anahtar_ismi”);// kaydettiğimiz string değeri hangi anahtar ismi ile kayıt ettiysek onunla çekiyoruz. (Bu değeri bir değişkene atayabilir ve istediğimiz şekilde kullanabiliriz.)

PlayerPrefs.GetFloat(“anahtar_ismi”);// kaydettiğimiz float değeri hangi anahtar ismi ile kayıt ettiysek onunla çekiyoruz. (Bu değeri bir değişkene atayabilir ve istediğimiz şekilde kullanabiliriz.)

Unity PlayerPrefs ile veri silme

PlayerPrefs.DeleteAll(); // kayıt ettiğimiz tüm playerprefs keylerini siler (sıfırlamaz komple siler.)

PlayerPrefs.DeleteKey(“anahtar_ismi”); // kayıt ettiğimiz ve istediğimiz bir playerprefs keyini siler bunun için tırnak içinde silmek istediğimiz anahtar ismini belirtmeliyiz.

Unity PlayerPrefs ile varlık kontrolü

PlayerPrefs.Haskey(“anahtar_ismi”); // bu kod ile anahtar ismini girdiğimiz verinin var olup olmadığını test edebiliyoruz . Bize true ya da false değeri döndürür.

Dipnot: örneğin para isminde bir keyimiz olsun ve içinde 0 değeri olsun . Bu durumda haskey komutundan bize true döner 0 olması yok olduğu anlamına gelmiyor .

Burada  yoktan kasıt o anahtar isminin kullanıp kullanılmadığı diyebiliriz.

Unity PlayerPrefs ile verileri kaydetme

PlayerPrefs.Save(); // komutu bu iş için var fakat kullanılmasına gerek yok. Çünkü oyun kapanırken unity otomatik olarak bizim için playerprefslerimizi kayıt ediyor ayrıca bir save kodu yazmamıza gerek kalmıyor yani.

Bu tarz konular için youtube kanalımıza abone olmayı ve yazılım kategorimize göz atmayı unutmayın 🙂

Videoda kullandığımız script’in içeriği :

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;

public class veriler : MonoBehaviour
{
    int skor;
    public Text skor_text,best_skor_text;
    // Start is called before the first frame update
    void Start()
    {     
        if(PlayerPrefs.HasKey("skor"))// skor verisi var mı kontrol ettik.
        {
            skor = PlayerPrefs.GetInt("skor");// skor verisini çektik.
            skor_text.text = skor.ToString();
        }
        else
        {
            PlayerPrefs.SetInt("skor",0); // skor verisine 0 değerini atadık.
            skor_text.text = PlayerPrefs.GetInt("skor").ToString(); 
        }
        
    }

    // Update is called once per frame
    void Update()
    {
        
    }
    public void arttir()
    {
        skor += 1; 
        PlayerPrefs.SetInt("skor", skor); // para verisine 10 eklenmiş halini ekledik.
        skor_text.text = skor.ToString();
        
    }
    public void azalt()
    {
        skor -= 10;
        PlayerPrefs.SetInt("skor", skor);
        skor_text.text = skor.ToString();
    }
    public void bitir()
    {
        
    }
}

ZİYARETÇİ YORUMLARI - 1 YORUM
  1. Erol Ş. dedi ki:

    Gayet temiz ve güzel bir anlatım. Teşekkürler