Пятница, 19 Апреля 2024, 13:25

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Форум игроделов » Записи участника » Yraiv [7]
Результаты поиска
YraivДата: Понедельник, 18 Мая 2020, 08:52 | Сообщение # 1 | Тема: Как сделать удаление префаба, когда создаётся другой?
был не раз
Сейчас нет на сайте
есть код, но он как-то не так работает. Создаётся два префаба. Мне нужно, чтоб был список кнопок на сцене, у каждой кнопки свой номер и она спавнит своего моба из массива префабов. Всё работает, но мобы не удаляются, когда нажимаю на выбор другого, необходимо чтоб лишь 1 мог быть на сцене
Код

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

public class BuyMobs : MonoBehaviour
{
    public GameObject[] Mobs;
    public GameObject Canvas;
    public int MobsNomer;
    private GameObject cyrGameObject;

    public void OnMouseDown()
    {
        if (cyrGameObject != null) Destroy(cyrGameObject);
        cyrGameObject = Instantiate(Mobs[MobsNomer], new Vector3(125, 310, 0), Quaternion.identity);
        cyrGameObject.transform.SetParent(Canvas.transform);
    }

}
YraivДата: Воскресенье, 17 Мая 2020, 10:19 | Сообщение # 2 | Тема: Как заменить один префаб на другой?
был не раз
Сейчас нет на сайте
кинул
YraivДата: Воскресенье, 17 Мая 2020, 04:45 | Сообщение # 3 | Тема: Как заменить один префаб на другой?
был не раз
Сейчас нет на сайте
Я это к кнопке хотел привязать, но что-то ругается, когда нажми на кнопку, чтоб создать объект

MissingReferenceException: The variable Mobs of BuyMobs doesn't exist anymore.
You probably need to reassign the Mobs variable of the 'BuyMobs' script in the inspector.
YraivДата: Суббота, 16 Мая 2020, 10:10 | Сообщение # 4 | Тема: Как заменить один префаб на другой?
был не раз
Сейчас нет на сайте
В моей игре есть список разных объектов. У каждого есть описание с кнопкой, по нажатию на которую, должен загружаться префаб, а предыдущий удаляться.
Например. На сцене есть объект. Я открыл меню и выбрал в нём другой объект, первый объект должен удалиться, а второй встать на его место и точно также меняться должны другие, я думал сделать так :
Код

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

public class BuyMobs : MonoBehaviour
{
    public GameObject[] Mobs;
    public int MobsNomer;

    public void OnMouseDown()
    {
        Instantiate(Mobs[MobsNomer], Mobs[MobsNomer].transform.position, Quaternion.identity);
    }

}


Но как-то не работает. Хотел этим способом закинуть префабы в массив, чтоб потом выбирать, какие нужно загружать, но это какой-то не правильный путь видимо
YraivДата: Вторник, 14 Апреля 2020, 10:25 | Сообщение # 5 | Тема: Как сделать шаблон для улучшений ?
был не раз
Сейчас нет на сайте
какие уроки/курсы посоветовать можешь?
YraivДата: Вторник, 14 Апреля 2020, 10:17 | Сообщение # 6 | Тема: Как сделать шаблон для улучшений ?
был не раз
Сейчас нет на сайте
Поделись примером, а то из того, что проходил не особо помогло
YraivДата: Вторник, 14 Апреля 2020, 08:59 | Сообщение # 7 | Тема: Как сделать шаблон для улучшений ?
был не раз
Сейчас нет на сайте
Мне необходимо сделать шаблон, который я смогу в будущем менять.
Пример шаблона:
Есть кнопка UP1 в ней есть 1 кнопка и 2 текста.
Вложенная кнопка отвечает за покупку улучшения.
первый и второй текст - уровень и стоимость улучшения.
Я создал скрипт для сохранения изменений, тип, каждый новый уровень и стоимость сохраняется, а также даёт какой-то бонус игроку и все эти данные я сохраняю под ключом.
Но если мне нужно сделать допустим up2 и тд, то как быть? Сохранение идёт по ключу, это каждый раз разный ключ прописывать чтоль?

Вот скрипт покупки со всеми сохранениями:
[code]
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class LoadMoney : MonoBehaviour
{

public int money; // деньги
public int cost; // стоимость
public int bonus; // основной бонус
public int dopbonus; // доп бонус
public int lvl; // уровень

void Start()
{
Load();
LoadLvl();
LoadCost();
LoadBonus();

}

public void Load() // получил доступ к деньгам
{

string key = "MyChet";
this.money = PlayerPrefs.GetInt(key);

}


public void LoadBonus () // получил доступ к бонусу

{

string key = "bonus";
this.bonus = PlayerPrefs.GetInt(key);

}

public void LoadLvl() // загрузка уровня
{

string key = "lvl";
this.lvl = PlayerPrefs.GetInt(key);

}

public void LoadCost() // загрузка стоимости
{
string key = "cost";
this.cost = PlayerPrefs.GetInt(key);

}

public void Save() // сохранение стоимости
{
string key = "MyChet";
PlayerPrefs.SetInt(key, money);
PlayerPrefs.Save();
}

public void SaveLvl() // сохранение уровня
{
string key = "lvl";
PlayerPrefs.SetInt(key, lvl);
PlayerPrefs.Save();
}

public void SaveCost() // сохранение стоимости
{
string key = "cost";
PlayerPrefs.SetInt(key, cost);
PlayerPrefs.Save();
}

public void SaveBonus() // сохранение бонуса
{
string key = "bonus";
PlayerPrefs.SetInt(key, bonus);
PlayerPrefs.Save();
}

public void BuyUp() // покупка улучшений
{

if (money >= cost)
{
money = money - cost;
bonus = bonus + dopbonus;
lvl = lvl + 1;
cost = cost + 5;
Save();
SaveLvl();
SaveCost();
SaveBonus();


}
}

}

Форум игроделов » Записи участника » Yraiv [7]
  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг