Поставь уже геймвер , и забудь про чекеры ))))@Kaidoz, скинь ссылку на программу свою для проверок, в ЛС.
Стоит он, только он же не защищает от приваток лицензии стимПоставь уже геймвер , и забудь про чекеры ))))
Я на счёт пиратов не переживаю а вот с лизензии даПоставь уже геймвер , и забудь про чекеры ))))
Это CheckerPlus. Я решил так,что маленькие обновления смысла нет выкладывать. Поправлю все баги,добавлю много всего и потом выкладываю обновление.@Kaidoz, скинь ссылку на программу свою для проверок, в ЛС.
Не пробовал другими фреим форками пользоваться?Это CheckerPlus. Я решил так,что маленькие обновления смысла нет выкладывать. Поправлю все баги,добавлю много всего и потом выкладываю обновление.
Вот скрин новой версии:
Но мне пока что нужны читы и все в таком роде,чтобы посмотреть чем их накрывают и добавить их сигнатуры в чекер. Поиск по маскам это ж вообще х*ета полнейшая,только максимум макросы можно найти и то если повезет.
Мне сейчас дизайн более менее уже нравится. Достаточно приятный,только с шрифтами надо поработать. А так не хочется что-то юзать,потому что накинут пару мб. к программе,а я хочу очень компактную программу. Всю красоту можно через xaml сделать,главное научиться. Да и я уже давно писал,что на дизайне не хочу концертировать внимание.Не пробовал другими фреим форками пользоваться?
Что бы разнообразить стиль и дизайн программы?
Уже лучше)@Aliluya, сделал, но мне прошлый цветовая гамма чем-то гугле напоминал:c
Да и вообще тема для другого была создана) мне нужно базу читов пополнить.
Посмотреть вложение 2944
using UnityEngine;
using System;
using System.Collections.Generic;
public class Cheats : MonoBehaviour {
private readonly float MAX_DELAY = 1f;
// (cheat_code, effect_id), add as many codes as you like, with any effect id you like, in any order you like!
// cheat codes only allow characters from a to z though, no spaces, nor symbols, nor numbers
private readonly Tuple<string, int>[] cheats = new Tuple<string, int>[] {
Tuple.Create("chucknorris", 2),
Tuple.Create("explosionman", 0),
Tuple.Create("blackhole", 1),
Tuple.Create("funkyattractor", 1),
Tuple.Create("godmode", 2),
Tuple.Create("smiteandignite", 0)
};
private List<Tuple<string, int>> possibleCheats = new List<Tuple<string, int>>();
private List<int> indexesToRemove = new List<int>();
private int currentCheatCharIndex = -1;
private float currentDelay = 0f;
void Update () {
// check if keystroke timed out
if (currentDelay > MAX_DELAY) {
Restart();
}
currentDelay += Time.deltaTime;
if (Input.anyKeyDown) {
// if currently entering cheat
if (possibleCheats.Count > 0) {
bool typedTheNextChar = false;
// check if the keystroke is the next char in every currently possible cheat
// iterate through the list backwards because we need to remove elements from higher to lower index
for (int i = possibleCheats.Count - 1; i >= 0; i--) {
// Clamp to allow only keycodes from a - 1 (96) to z + 1 (123) (to avoid exceptions on extreme keycodes)
if (Input.GetKeyDown((KeyCode)Mathf.Clamp(possibleCheats[i].Item1[currentCheatCharIndex], 96, 123))) {
typedTheNextChar = true;
if (currentCheatCharIndex == possibleCheats[i].Item1.Length - 1) {
Cheat(possibleCheats[i].Item2);
Restart();
// return here to avoid the bug where the last keystroke of a successful cheat counts as the first keystroke in another cheat (were applicable)
return;
}
} else
// this keystroke wasn't the next in this cheat so we will remove it from possible cheats
indexesToRemove.Add(i);
}
// if keystroke was the next one in at least one of the currently possible cheats
if (typedTheNextChar) {
currentDelay = 0f;
currentCheatCharIndex++;
// discard cheats were keystroke was not the next one
foreach (int i in indexesToRemove)
possibleCheats.RemoveAt(i);
indexesToRemove.Clear();
} else
Restart();
}
// if NOT currently entering cheat
if (possibleCheats.Count == 0) {
for (int i = 0; i < cheats.Length; i++) {
// check if player stroke the first character of any cheat so we can start processing the rest of keystrokes
if (Input.GetKeyDown((KeyCode)Mathf.Clamp(cheats[i].Item1[0], 96, 123))) {
possibleCheats.Add(cheats[i]);
currentCheatCharIndex = 1;
currentDelay = 0f;
}
}
}
}
}
void Cheat(int effect) {
switch (effect) {
case 0:
print("Explosion!");
break;
case 1:
print("Black hole!");
break;
case 2:
print("God mode!");
break;
}
}
private void Restart() {
currentCheatCharIndex = -1;
indexesToRemove.Clear();
possibleCheats.Clear();
}
}
Гейм вер создал идиот который не шарит не в чем кроме как в своем ЧСВ его обойти как 2 пальца нет уж..Поставь уже геймвер , и забудь про чекеры ))))