-
Автор темы
- #1
Решил попрактиковаться во взломе unity3d игр. Получилась какая-то херня. Показывает цифры по игроков.
А поиграть стоит, в этой игре дропаються кейсы из которых дропаются шмотки ценой до 0.5$
C#:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using UnityEngine;
public class Hacks : MonoBehaviour
{
void Start()
{
}
Vector3 target;
Vector3 w2s;
public Camera camera;
public string nameToAdd = "bone_rhand";
public GUIStyle guiStyle = new GUIStyle();
public List<Camera> badguys = new List<Camera>();
void Update()
{
/* if (Input.GetKey(KeyCode.LeftAlt)) //Fov changer + zoom
{
camera.fieldOfView = 60;
}
else camera.fieldOfView = 130;*/
}
void OnGUI()
{
foreach (Camera camera2 in Camera.allCameras)
{
if (!badguys.Contains(camera2))
{
badguys.Add(camera2);
if (camera2.name.Length == 6)
{
camera = camera2;
}
}
}
foreach (GameObject go in GameObject.FindObjectsOfType(typeof(GameObject)))
{
if (go.name.Contains(nameToAdd))
{
target = go.transform.position;
var distance = Vector3.Distance(camera.transform.position, target);
GUI.contentColor = Color.red;
if (!go.transform.parent.name.Contains(" "))
{
if (distance > 1 && distance < 300)
{
if (go.transform.parent.name.Length == 17 || go.transform.parent.name.Length == 18)
{
if (target.y < camera.transform.position.y + 30)
{
if (w2s.x < Screen.width / 4.6f && (Screen.height - w2s.y) < Screen.height / 4.2f)
{
GUI.Label(new Rect((int)w2s.x - 1, Screen.height - w2s.y, 100, 100), "o");
}
else
{
if (go.transform.parent.parent.name.Length > 4)
{
var rend = go.transform.root.GetComponentsInChildren<Renderer>();
foreach (Renderer renderer in rend)
{
// renderer.material.shader = null;
renderer.material.SetColor("_Color", Color.magenta);
var enemy = renderer.transform.root.GetChild(2).GetChild(0).GetComponent<Renderer>();
var distance2 = Vector3.Distance(camera.transform.position, renderer.transform.root.GetChild(2).GetChild(0).transform.position);
var w2s2 = camera.WorldToScreenPoint(new Vector3(renderer.transform.root.GetChild(2).GetChild(0).transform.position.x, renderer.transform.root.GetChild(2).GetChild(0).position.y + 2, renderer.transform.root.GetChild(2).GetChild(0).transform.position.z));
if (w2s2.z < -40) return;
GUI.contentColor = Color.red;
GUI.Label(new Rect((int)w2s2.x - 3, Screen.height - w2s2.y, 100, 100), ((int)distance2).ToString());
}
}
}
}
}
}
}
}
}
Последнее редактирование: