yasinseker02
Decapat
- Katılım
- 29 Temmuz 2020
- Mesajlar
- 288
- Çözümler
- 1
Şimdi sanırım doğru anlamışımdır. İlk önce sandığa bir collider verelim. Tabi ki karakterimizede. Sandığa verdiğimiz colliderin Tag'ını sandık yapalım. Ve sandığın collider'ının is trigger adlı yerin tikini aktif hale getirelim. Sonra aşağıda verdiğim kodu yeni bir script oluştur ve içine at. Sonra bu scripti karakterine sürüke bırak.
[CODE title="code"]using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class SandıkSistemi : MonoBehaviour.
{
public bool anahtar; //burası senin anahtarının olup olmadığınını belirtiyor.
public bool sandıkAçılabilir;
void Update(){
if(Input.GetKeyDown(KeyCode.E)){ //Buradaki e tuşuna istediğin tuşu atıyabilirsin.
if(sandıkAçılabilir == true){
if(anahtar == true){
SandıkAçılma();
}
}
}
}
void OnTriggerEnter2D(Collider2D karakter)
if(karakter.gameObject.tag == "sandık"){
sandıkAçılabilir = true;
}
}
void OnTriggerExit2D(Collider2D karakter)
if(karakter.gameObject.tag == "sandık"){
sandıkAçılabilir = false;
}
}
void SandıkAçılma(){
//buraya sandık açılınca ne olacak onu yaz.
}
}
[/CODE]
Sandığın 1 birim yanına coin instantiate et. Direkt fonksiyonu var. Sandığa bir animatör ekle. Default olan animasyon sabit duran animasyon olsun. Ve bu animatöre giderek bir değişken oluştur atıyorum bool bir değişken. Kullanıcı sandığın trigger bölgesine girdiğinde bu bool değişkeni değişsin. Animasyonlar arası şartlı geçiş yapıp defaulttan açılma animasyonu şartına bu bool değişkenini verirsen yapabilirsin.Çok sağ ol deneyeceğim 1 saate geri dönerim.
Bir şey daha soracağim oraya sandık açılınca ne olacagini yaz demissin de ben icinden para çıksin istiyorum bende hazır coin var ve son olarak bende sandık açılma animasyonu var onu nasıl aktifleştireceğim sandık yanına gidince?
Teşekkürler tekrar.
Sandığın 1 birim yanına coin instantiate et. Direkt fonksiyonu var. Sandığa bir animatör ekle. Default olan animasyon sabit duran animasyon olsun. Ve bu animatöre giderek bir değişken oluştur atıyorum bool bir değişken. Kullanıcı sandığın trigger bölgesine girdiğinde bu bool değişkeni değişsin. Animasyonlar arası şartlı geçiş yapıp defaulttan açılma animasyonu şartına bu bool değişkenini verirsen yapabilirsin.
Sandığın 1 birim yanına coin instantiate et. Direkt fonksiyonu var. Sandığa bir animatör ekle. Default olan animasyon sabit duran animasyon olsun. Ve bu animatöre giderek bir değişken oluştur atıyorum bool bir değişken. Kullanıcı sandığın trigger bölgesine girdiğinde bu bool değişkeni değişsin. Animasyonlar arası şartlı geçiş yapıp defaulttan açılma animasyonu şartına bu bool değişkenini verirsen yapabilirsin.
Boola ne isim verdiğinizi bilmiyorum. Bu yüzde sandıkBool diyeceğim. İlk önce sandık sabit'ten sandık'a bir şerit çek. Sonra şeridin üstüne tıkla ve alt taraflarındaki yerden + işaretine tıkla. Otomatik olarak sandıkBool seçili olacaktır. Sonra yandaki yere tıkla ve true yap. Şimdi gelelim kod kısmına. Tüm kodu atıyorum. Önceden attığım kodu boş ver. Aşağıdakini kopyala yapıştır.Tammamdır becerebilirsem çok güzel olur ben sana gene takıldığım yerin fotoğranı atarım.
Kod kısmını sonra hallederim daha nahatar falan eklemedim çünkü. Şurda takıldım bu animasyonları nasıl halledeceğim?
Sandıksabit = normal sandık duruyor.
Sandık = açılma animasyonu.
Boolu oluşturdum ve ben bunları koda yazacak miyım?
Boola ne isim verdiğinizi bilmiyorum. Bu yüzde sandıkbool diyeceğim. İlk önce sandık Sabit'ten sandık'a bir şerit çek. Sonra şeridin üstüne tıkla ve alt taraflarındaki yerden + işaretine tıkla. Otomatik olarak sandıkbool seçili olacaktır. Sonra yandaki yere tıkla ve true yap. Şimdi gelelim kod kısmına. Tüm kodu atıyorum. Önceden attığım kodu boş ver. Aşağıdakini kopyala yapıştır.
[CODE title="code"]using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class SandıkSistemi : MonoBehaviour.
{
public bool anahtar; //burası senin anahtarının olup olmadığınını belirtiyor.
public bool sandıkAçılabilir;
public Animator animator; // animaasyonun bulunduğu objeyi atabilirsin.
void Start(){
animator = animator.GetComponent<Animator>();
}
void Update(){
if(Input.GetKeyDown(KeyCode.E)){ //Buradaki e tuşuna istediğin tuşu atıyabilirsin.
if(sandıkAçılabilir == true){
if(anahtar == true){
SandıkAçılma();
}
}
}
}
void OnTriggerEnter2D(Collider2D karakter)
if(karakter.gameObject.tag == "sandık"){
sandıkAçılabilir = true;
}
}
void OnTriggerExit2D(Collider2D karakter)
if(karakter.gameObject.tag == "sandık"){
sandıkAçılabilir = false;
}
}
void SandıkAçılma(){
animator.SetBool("sandıkBool",true); //buraya boolun adını gireceksin.
}
}[/CODE]
Boola ne isim verdiğinizi bilmiyorum. Bu yüzde sandıkbool diyeceğim. İlk önce sandık Sabit'ten sandık'a bir şerit çek. Sonra şeridin üstüne tıkla ve alt taraflarındaki yerden + işaretine tıkla. Otomatik olarak sandıkbool seçili olacaktır. Sonra yandaki yere tıkla ve true yap. Şimdi gelelim kod kısmına. Tüm kodu atıyorum. Önceden attığım kodu boş ver. Aşağıdakini kopyala yapıştır.
[CODE title="code"]using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class SandıkSistemi : MonoBehaviour.
{
public bool anahtar; //burası senin anahtarının olup olmadığınını belirtiyor.
public bool sandıkAçılabilir;
public Animator animator; // animaasyonun bulunduğu objeyi atabilirsin.
void Start(){
animator = animator.GetComponent<Animator>();
}
void Update(){
if(Input.GetKeyDown(KeyCode.E)){ //Buradaki e tuşuna istediğin tuşu atıyabilirsin.
if(sandıkAçılabilir == true){
if(anahtar == true){
SandıkAçılma();
}
}
}
}
void OnTriggerEnter2D(Collider2D karakter)
if(karakter.gameObject.tag == "sandık"){
sandıkAçılabilir = true;
}
}
void OnTriggerExit2D(Collider2D karakter)
if(karakter.gameObject.tag == "sandık"){
sandıkAçılabilir = false;
}
}
void SandıkAçılma(){
animator.SetBool("sandıkBool",true); //buraya boolun adını gireceksin.
}
}[/CODE]
Sağ ol vallahi yordum seni de akşam aksam.
Platformu Android'e geciriyorum bitsin hemen yapacağım.
Kopyala yapistir yaptim.
Kopyala yapistir yaptim boolun ismini senin dedigin sekil yaptim fakat bir şey olmadi. Player'in icine attim scripti. Anahtar ve sandik acilabilir var ikisi de tikli degil altindaki animatorada sandiki koydum. Sandik surekli açılıp kapaniyor resime biraktim.
Sağ ol vallahi yordum seni de akşam aksam
Platformu Android'e geciriyorum bitsin hemen yapacağım.
Kopyala yapistir yaptim.
Kopyala yapistir yaptim boolun ismini senin dedigin sekil yaptim fakat bir şey olmadi. Player'in icine attim scripti. Anahtar ve sandik acilabilir var ikisi de tikli degil altindaki animatorada sandiki koydum. Sandik surekli açılıp kapaniyor resime biraktim.
Istersen Instagram'ini ver oradan konusalim.