Compare commits
	
		
			30 Commits
		
	
	
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 4d28ef7ef5 | |||
| 5b7bc3ee86 | |||
| 9572cee415 | |||
| f29d498f68 | |||
| 5913d6be38 | |||
| dddbd69a3d | |||
| 8d041fbb34 | |||
| 7a252ce3e8 | |||
| 9cc907f653 | |||
| ba9d5563df | |||
| 7676f1c809 | |||
| dc8598a5c9 | |||
| 51c57cd932 | |||
| a7db3817a6 | |||
| 200b6a9347 | |||
| ad5d84cc8b | |||
| 9b181689d2 | |||
| 018cfa5846 | |||
| 42102b530b | |||
| 8d1588757e | |||
| e8a9278fc3 | |||
| 56c8a48510 | |||
| 00dcbfc9af | |||
| f3157ef0ea | |||
| 5961a12aa7 | |||
| e2978eac60 | |||
| 684b74e5a3 | |||
| e0151e558a | |||
| 16db95b196 | |||
| b93d2c1f2a | 
							
								
								
									
										3
									
								
								.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@ -0,0 +1,3 @@
 | 
			
		||||
marsxplr_build/
 | 
			
		||||
waf*/
 | 
			
		||||
.lock-waf*
 | 
			
		||||
							
								
								
									
										35
									
								
								Assembly_-_CSHarp_-_first_pass/wscript
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										35
									
								
								Assembly_-_CSHarp_-_first_pass/wscript
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,35 @@
 | 
			
		||||
## Assembly - CSharp - first pass
 | 
			
		||||
 | 
			
		||||
import os
 | 
			
		||||
import shutil
 | 
			
		||||
 | 
			
		||||
def post(bld):
 | 
			
		||||
	global outdir
 | 
			
		||||
	global out
 | 
			
		||||
	newout = os.path.join(outdir, 'Assembly - CSharp - first pass.dll')
 | 
			
		||||
	if os.path.exists(out):
 | 
			
		||||
		shutil.move(out, newout)
 | 
			
		||||
 | 
			
		||||
def build(bld):
 | 
			
		||||
	level = bld.path.abspath()
 | 
			
		||||
	SOURCES = \
 | 
			
		||||
		os.path.join(level, 'Properties', 'AssemblyInfo.cs') + ' ' + \
 | 
			
		||||
		os.path.join(level, '*.cs')
 | 
			
		||||
	
 | 
			
		||||
	global outdir
 | 
			
		||||
	outdir = os.path.join(bld.env.MBUILD, 'Mars Explorer_Data')
 | 
			
		||||
	if not os.path.exists(outdir):
 | 
			
		||||
		os.makedirs(outdir)
 | 
			
		||||
	global out
 | 
			
		||||
	out = os.path.join(outdir, '26998b3a9cbf54825a27e5f2d3cc4df1.dll')
 | 
			
		||||
 | 
			
		||||
	bld.env.REF_AsmCSfp = out
 | 
			
		||||
 | 
			
		||||
	bld(rule='\"${MCS}\" ' +
 | 
			
		||||
		SOURCES +
 | 
			
		||||
		' -out:\"' + out +
 | 
			
		||||
		'\" -sdk:' + bld.env.MONOSDK +
 | 
			
		||||
		' -langversion:' + bld.env.MONOLANGVERSION +
 | 
			
		||||
		' -target:library'
 | 
			
		||||
		' -reference:\"' + bld.env.REF_UnityEngine + '\"')
 | 
			
		||||
	bld.add_post_fun(post)
 | 
			
		||||
							
								
								
									
										35
									
								
								Assembly_-_CSharp/wscript
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										35
									
								
								Assembly_-_CSharp/wscript
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,35 @@
 | 
			
		||||
## Assembly - CSharp
 | 
			
		||||
 | 
			
		||||
import os
 | 
			
		||||
import shutil
 | 
			
		||||
 | 
			
		||||
def post(bld):
 | 
			
		||||
	global outdir
 | 
			
		||||
	global out
 | 
			
		||||
	newout = os.path.join(outdir, 'Assembly - CSharp.dll')
 | 
			
		||||
	if os.path.exists(out):
 | 
			
		||||
		shutil.move(out, newout)
 | 
			
		||||
 | 
			
		||||
def build(bld):
 | 
			
		||||
	bld.add_post_fun(post)
 | 
			
		||||
 | 
			
		||||
	level = bld.path.abspath()
 | 
			
		||||
	SOURCES = \
 | 
			
		||||
		os.path.join(level, 'Properties', 'AssemblyInfo.cs') + ' ' + \
 | 
			
		||||
		os.path.join(level, '*.cs')
 | 
			
		||||
	
 | 
			
		||||
	global outdir
 | 
			
		||||
	outdir = os.path.join(bld.env.MBUILD, 'Mars Explorer_Data')
 | 
			
		||||
	if not os.path.exists(outdir):
 | 
			
		||||
		os.makedirs(outdir)
 | 
			
		||||
	global out
 | 
			
		||||
	out = os.path.join(outdir, 'e36192721fc364533a8edf2aefd3b72c.dll')
 | 
			
		||||
	
 | 
			
		||||
	bld(rule='\"${MCS}\" ' +
 | 
			
		||||
		SOURCES +
 | 
			
		||||
		' -out:\"' + out +
 | 
			
		||||
		'\" -sdk:' + bld.env.MONOSDK +
 | 
			
		||||
		' -langversion:' + bld.env.MONOLANGVERSION +
 | 
			
		||||
		' -target:library'
 | 
			
		||||
		' -reference:\"' +
 | 
			
		||||
			bld.env.REF_UnityEngine + '\",\"' + 					bld.env.REF_AsmCSfp + '\"')
 | 
			
		||||
@ -9,7 +9,7 @@ public class BaseSimple : MonoBehaviour
 | 
			
		||||
 | 
			
		||||
	public void Start()
 | 
			
		||||
    {
 | 
			
		||||
        mat = (Material)((MeshRenderer)this.GetComponent(typeof(MeshRenderer))).material;
 | 
			
		||||
        mat = GetComponent<MeshRenderer>().material;
 | 
			
		||||
		Vector3 mts = mat.mainTextureScale;
 | 
			
		||||
		mts.x = 1;
 | 
			
		||||
		mts.y = 0.1f;
 | 
			
		||||
@ -22,7 +22,9 @@ public class BaseSimple : MonoBehaviour
 | 
			
		||||
			0.5f,
 | 
			
		||||
			Mathf.Min(
 | 
			
		||||
				10,
 | 
			
		||||
				Vector3.Distance(transform.position, Camera.main.transform.position) / 10f
 | 
			
		||||
				Vector3.Distance(
 | 
			
		||||
                    transform.position,
 | 
			
		||||
                    Camera.main.transform.position) / 10f
 | 
			
		||||
			)
 | 
			
		||||
		);
 | 
			
		||||
 | 
			
		||||
@ -44,10 +46,12 @@ public class BaseSimple : MonoBehaviour
 | 
			
		||||
        if (upMode)
 | 
			
		||||
        {
 | 
			
		||||
            mto.y += Time.deltaTime * 0.1f;
 | 
			
		||||
			if(mto.y < 0.4f)
 | 
			
		||||
            {
 | 
			
		||||
				upMode = true;
 | 
			
		||||
            if (mto.y > 0.6f) upMode = false;
 | 
			
		||||
        }
 | 
			
		||||
        else
 | 
			
		||||
        {
 | 
			
		||||
            mto.y -= Time.deltaTime * 0.1f;
 | 
			
		||||
            if (mto.y < 0.4f) upMode = true;
 | 
			
		||||
        }
 | 
			
		||||
		mat.mainTextureOffset = mto;
 | 
			
		||||
	}
 | 
			
		||||
@ -35,7 +35,7 @@ public class Buggy : MonoBehaviour
 | 
			
		||||
	private Transform[] bouyancyPoints;
 | 
			
		||||
	private float suspensionRange;
 | 
			
		||||
	private float friction;
 | 
			
		||||
	private float[] realComp;
 | 
			
		||||
	// /*UNUSED*/ private float[] realComp;
 | 
			
		||||
	private float[] hitDistance;
 | 
			
		||||
	private float[] hitCompress;
 | 
			
		||||
	private float[] hitFriction;
 | 
			
		||||
@ -51,7 +51,7 @@ public class Buggy : MonoBehaviour
 | 
			
		||||
	//Drivetrain Data
 | 
			
		||||
	private float motorTorque;
 | 
			
		||||
	private float motorSpeed;
 | 
			
		||||
	private float motorSpd;
 | 
			
		||||
	// /*UNUSED*/ private float motorSpd;
 | 
			
		||||
	private float motorInputSmoothed;
 | 
			
		||||
	private float wheelRadius;
 | 
			
		||||
	private float wheelCircumference;
 | 
			
		||||
@ -66,7 +66,7 @@ public class Buggy : MonoBehaviour
 | 
			
		||||
		wingState = 0f;
 | 
			
		||||
		//wingFlaps = 0;
 | 
			
		||||
		isInverted = false;
 | 
			
		||||
		realComp = new float[4];
 | 
			
		||||
		//realComp = new float[4];
 | 
			
		||||
		hitDistance = new float[4];
 | 
			
		||||
		hitCompress = new float[4];
 | 
			
		||||
		hitFriction = new float[4];
 | 
			
		||||
@ -76,7 +76,7 @@ public class Buggy : MonoBehaviour
 | 
			
		||||
		wheelMarkIndex = new int[4];
 | 
			
		||||
		isDynamic = false;
 | 
			
		||||
		motorSpeed = 0f;
 | 
			
		||||
		motorSpd = 0f;
 | 
			
		||||
		//motorSpd = 0f;
 | 
			
		||||
		motorInputSmoothed = 0f;
 | 
			
		||||
		wheelRadius = 0.3f;
 | 
			
		||||
		wheelCircumference = wheelRadius * (float)Math.PI * 2f;
 | 
			
		||||
@ -188,7 +188,7 @@ public class Buggy : MonoBehaviour
 | 
			
		||||
				leftTrail.localPosition = localPosition;
 | 
			
		||||
 | 
			
		||||
				localPosition = rightTrail.localPosition;
 | 
			
		||||
				float num4 = (localPosition.x = 0);
 | 
			
		||||
				localPosition.x = 0;
 | 
			
		||||
				rightTrail.localPosition = localPosition;
 | 
			
		||||
 | 
			
		||||
				wingState = 0f;
 | 
			
		||||
@ -588,7 +588,7 @@ public class Buggy : MonoBehaviour
 | 
			
		||||
							);
 | 
			
		||||
							//motorSpeed += -motorSpeed * motorDrag / motorTorque * Time.fixedDeltaTime;
 | 
			
		||||
						}
 | 
			
		||||
						motorSpd = (frictionTotal - Game.Settings.buggyPower * 3) / (Game.Settings.buggyPower * 3 / Game.Settings.buggySpeed);
 | 
			
		||||
						//motorSpd = (frictionTotal - Game.Settings.buggyPower * 3) / (Game.Settings.buggyPower * 3 / Game.Settings.buggySpeed);
 | 
			
		||||
 | 
			
		||||
						wheelsAreTouchingGround = true;
 | 
			
		||||
						isDynamic = (
 | 
			
		||||
@ -23,6 +23,8 @@ public class CameraVehicle : MonoBehaviour
 | 
			
		||||
	public GlowEffect glowEffect;
 | 
			
		||||
	public ColorCorrectionEffect colorEffect;
 | 
			
		||||
	public float worldTime;
 | 
			
		||||
    public GameObject camTarget;
 | 
			
		||||
    public Vehicle camTargetVeh;
 | 
			
		||||
 | 
			
		||||
	public CameraVehicle()
 | 
			
		||||
    {
 | 
			
		||||
@ -56,6 +58,18 @@ public class CameraVehicle : MonoBehaviour
 | 
			
		||||
			return;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
        //QuarryCam
 | 
			
		||||
        camTarget = Game.Player;
 | 
			
		||||
        camTargetVeh = Game.PlayerVeh;
 | 
			
		||||
        if (
 | 
			
		||||
            Game.Settings.quarryCam &&
 | 
			
		||||
            (bool)Game.QuarryVeh &&
 | 
			
		||||
            (bool)Game.QuarryVeh.ridePos)
 | 
			
		||||
        {
 | 
			
		||||
            camTarget = Game.QuarryVeh.gameObject;
 | 
			
		||||
            camTargetVeh = Game.QuarryVeh;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
		//Blur
 | 
			
		||||
		if (mb.enabled)
 | 
			
		||||
        {
 | 
			
		||||
@ -70,7 +84,7 @@ public class CameraVehicle : MonoBehaviour
 | 
			
		||||
		if (Game.Settings.useHypersound == 1)
 | 
			
		||||
        {
 | 
			
		||||
			Game.Settings.gameMusic.pitch = Mathf.Clamp(
 | 
			
		||||
				-0.5f + Game.Player.rigidbody.velocity.magnitude / 15f,
 | 
			
		||||
				-0.5f + camTarget.rigidbody.velocity.magnitude / 15f,
 | 
			
		||||
				0.8f,
 | 
			
		||||
				1.5f
 | 
			
		||||
			);
 | 
			
		||||
@ -133,10 +147,10 @@ public class CameraVehicle : MonoBehaviour
 | 
			
		||||
		arrow.rotation = Quaternion.Lerp(
 | 
			
		||||
			arrow.rotation, 
 | 
			
		||||
			Quaternion.LookRotation(
 | 
			
		||||
				((Game.PlayerVeh.isIt != 0 || !Game.QuarryVeh) ?
 | 
			
		||||
				((camTargetVeh.isIt != 0 || !Game.QuarryVeh) ?
 | 
			
		||||
					World.baseTF :
 | 
			
		||||
					Game.QuarryVeh.gameObject.transform
 | 
			
		||||
				).position - Game.Player.transform.position
 | 
			
		||||
				).position - camTarget.transform.position
 | 
			
		||||
			),
 | 
			
		||||
			Time.deltaTime * 15f
 | 
			
		||||
		);
 | 
			
		||||
@ -192,7 +206,7 @@ public class CameraVehicle : MonoBehaviour
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		//Constants
 | 
			
		||||
		float camDist = (float)Game.PlayerVeh.camOffset + Game.Settings.camDist;
 | 
			
		||||
		float camDist = (float)camTargetVeh.camOffset + Game.Settings.camDist;
 | 
			
		||||
 | 
			
		||||
		//World Entry Effect
 | 
			
		||||
		if (worldTime < 7f)
 | 
			
		||||
@ -200,11 +214,11 @@ public class CameraVehicle : MonoBehaviour
 | 
			
		||||
			worldTime = Time.time - Game.Controller.worldLoadTime;
 | 
			
		||||
			transform.position = Vector3.Lerp(
 | 
			
		||||
				transform.position,
 | 
			
		||||
				Game.Player.transform.position,
 | 
			
		||||
				camTarget.transform.position,
 | 
			
		||||
				Time.deltaTime * 1f
 | 
			
		||||
			);
 | 
			
		||||
			wr = Quaternion.LookRotation(
 | 
			
		||||
				Game.Player.transform.position - transform.position,
 | 
			
		||||
				camTarget.transform.position - transform.position,
 | 
			
		||||
				Vector3.up
 | 
			
		||||
			);
 | 
			
		||||
			if (worldTime > 1f)
 | 
			
		||||
@ -224,7 +238,7 @@ public class CameraVehicle : MonoBehaviour
 | 
			
		||||
			(Input.GetButton("Snipe") && !Game.Messaging.chatting)
 | 
			
		||||
		)
 | 
			
		||||
        {
 | 
			
		||||
			transform.position = Game.PlayerVeh.ridePos.position;
 | 
			
		||||
			transform.position = camTargetVeh.ridePos.position;
 | 
			
		||||
			
 | 
			
		||||
			if (Input.GetButtonDown("Fire2") || Input.GetKeyDown(KeyCode.Alpha1))
 | 
			
		||||
            {
 | 
			
		||||
@ -234,7 +248,7 @@ public class CameraVehicle : MonoBehaviour
 | 
			
		||||
                {
 | 
			
		||||
					gyroTation = Quaternion.Euler(
 | 
			
		||||
						0f,
 | 
			
		||||
						Game.PlayerVeh.ridePos.rotation.eulerAngles.y,
 | 
			
		||||
						camTargetVeh.ridePos.rotation.eulerAngles.y,
 | 
			
		||||
						0f
 | 
			
		||||
					);
 | 
			
		||||
				}
 | 
			
		||||
@ -246,7 +260,7 @@ public class CameraVehicle : MonoBehaviour
 | 
			
		||||
			}
 | 
			
		||||
			else
 | 
			
		||||
            {
 | 
			
		||||
				transform.rotation = Game.PlayerVeh.ridePos.rotation;
 | 
			
		||||
				transform.rotation = camTargetVeh.ridePos.rotation;
 | 
			
		||||
			}
 | 
			
		||||
			
 | 
			
		||||
			rotationX += Input.GetAxis("Mouse X") * (Input.GetButton("Snipe") ? 0.5f : 2f);
 | 
			
		||||
@ -291,9 +305,9 @@ public class CameraVehicle : MonoBehaviour
 | 
			
		||||
            {
 | 
			
		||||
				transform.position = Vector3.Lerp(
 | 
			
		||||
					transform.position,
 | 
			
		||||
					Game.Player.transform.position - Vector3.Normalize(
 | 
			
		||||
						Game.Player.transform.position - transform.position
 | 
			
		||||
					) * camDist + Vector3.one * (Game.PlayerVeh.camSmooth ?
 | 
			
		||||
					camTarget.transform.position - Vector3.Normalize(
 | 
			
		||||
						camTarget.transform.position - transform.position
 | 
			
		||||
					) * camDist + Vector3.one * (camTargetVeh.camSmooth ?
 | 
			
		||||
						0f :
 | 
			
		||||
						Mathf.Lerp(0f, 15f, camDist / 30f)
 | 
			
		||||
					),
 | 
			
		||||
@ -302,9 +316,9 @@ public class CameraVehicle : MonoBehaviour
 | 
			
		||||
				transform.rotation = Quaternion.Slerp(
 | 
			
		||||
					transform.rotation,
 | 
			
		||||
					Quaternion.LookRotation(
 | 
			
		||||
						Game.Player.transform.position - transform.position,
 | 
			
		||||
						camTarget.transform.position - transform.position,
 | 
			
		||||
						(Game.Settings.flightCam ?
 | 
			
		||||
							Game.Player.transform.up :
 | 
			
		||||
							camTarget.transform.up :
 | 
			
		||||
							Vector3.up
 | 
			
		||||
						)
 | 
			
		||||
					),
 | 
			
		||||
@ -329,15 +343,15 @@ public class CameraVehicle : MonoBehaviour
 | 
			
		||||
			else if (Game.Settings.camChase == 1)
 | 
			
		||||
            {
 | 
			
		||||
				if (
 | 
			
		||||
					(bool)Game.Player.transform.gameObject.rigidbody &&
 | 
			
		||||
					Game.Player.transform.gameObject.rigidbody.velocity.sqrMagnitude > 0.1f &&
 | 
			
		||||
					Game.Player.transform.gameObject.rigidbody.velocity.normalized.y < 0.8f &&
 | 
			
		||||
					Game.Player.transform.gameObject.rigidbody.velocity.normalized.y > -0.8f
 | 
			
		||||
					(bool)camTarget.transform.gameObject.rigidbody &&
 | 
			
		||||
					camTarget.transform.gameObject.rigidbody.velocity.sqrMagnitude > 0.1f &&
 | 
			
		||||
					camTarget.transform.gameObject.rigidbody.velocity.normalized.y < 0.8f &&
 | 
			
		||||
					camTarget.transform.gameObject.rigidbody.velocity.normalized.y > -0.8f
 | 
			
		||||
				)
 | 
			
		||||
                {
 | 
			
		||||
					lastDir = Vector3.Lerp(
 | 
			
		||||
						lastDir,
 | 
			
		||||
						Game.Player.transform.gameObject.rigidbody.velocity.normalized,
 | 
			
		||||
						camTarget.transform.gameObject.rigidbody.velocity.normalized,
 | 
			
		||||
						0.1f
 | 
			
		||||
					);
 | 
			
		||||
				}
 | 
			
		||||
@ -350,12 +364,12 @@ public class CameraVehicle : MonoBehaviour
 | 
			
		||||
					);
 | 
			
		||||
				}
 | 
			
		||||
				Vector3 newPos = (
 | 
			
		||||
					Game.Player.transform.position + 
 | 
			
		||||
					camTarget.transform.position + 
 | 
			
		||||
					lastDir * -(camDist) + 
 | 
			
		||||
					Vector3.up * (camDist / 3f)
 | 
			
		||||
				);
 | 
			
		||||
				Vector3 tpos = transform.position;
 | 
			
		||||
				float y = tpos.y + (Game.Player.transform.position.y - lastY) * Time.deltaTime;
 | 
			
		||||
				float y = tpos.y + (camTarget.transform.position.y - lastY) * Time.deltaTime;
 | 
			
		||||
				tpos.y = y;
 | 
			
		||||
				transform.position = tpos;
 | 
			
		||||
				transform.position = Vector3.Lerp(
 | 
			
		||||
@ -363,13 +377,13 @@ public class CameraVehicle : MonoBehaviour
 | 
			
		||||
					newPos,
 | 
			
		||||
					Time.deltaTime * 4f
 | 
			
		||||
				);
 | 
			
		||||
				lastY = Game.Player.transform.position.y;
 | 
			
		||||
				lastY = camTarget.transform.position.y;
 | 
			
		||||
				transform.rotation = Quaternion.Slerp(
 | 
			
		||||
					transform.rotation,
 | 
			
		||||
					Quaternion.LookRotation(
 | 
			
		||||
						Game.Player.transform.position - transform.position,
 | 
			
		||||
						camTarget.transform.position - transform.position,
 | 
			
		||||
						(Game.Settings.flightCam ?
 | 
			
		||||
							Game.Player.transform.up :
 | 
			
		||||
							camTarget.transform.up :
 | 
			
		||||
							Vector3.up
 | 
			
		||||
						)
 | 
			
		||||
					),
 | 
			
		||||
@ -395,13 +409,13 @@ public class CameraVehicle : MonoBehaviour
 | 
			
		||||
			//Arcade
 | 
			
		||||
			else if (
 | 
			
		||||
				Game.Settings.camChase == 2 &&
 | 
			
		||||
				Game.Player.transform.rigidbody.velocity.magnitude > 0f
 | 
			
		||||
				camTarget.transform.rigidbody.velocity.magnitude > 0f
 | 
			
		||||
			)
 | 
			
		||||
            {
 | 
			
		||||
				float heightDamping = 3f;
 | 
			
		||||
				float rotationDamping = 3f;
 | 
			
		||||
				float wantedRotationAngle = Quaternion.LookRotation(
 | 
			
		||||
					Game.Player.transform.rigidbody.velocity
 | 
			
		||||
					camTarget.transform.rigidbody.velocity
 | 
			
		||||
				).eulerAngles.y;
 | 
			
		||||
				wantedRotationAngle += Mathf.Lerp(
 | 
			
		||||
					30f,
 | 
			
		||||
@ -409,7 +423,7 @@ public class CameraVehicle : MonoBehaviour
 | 
			
		||||
					camDist / 30f
 | 
			
		||||
				) * Input.GetAxis("Horizontal");
 | 
			
		||||
				float wantedHeight = (
 | 
			
		||||
					Game.Player.transform.position.y +
 | 
			
		||||
					camTarget.transform.position.y +
 | 
			
		||||
					Mathf.Lerp(0.1f, 15f, camDist / 30f) +
 | 
			
		||||
					heightBoost
 | 
			
		||||
				);
 | 
			
		||||
@ -432,7 +446,7 @@ public class CameraVehicle : MonoBehaviour
 | 
			
		||||
					currentRotationAngle,
 | 
			
		||||
					0f
 | 
			
		||||
				);
 | 
			
		||||
				Vector3 pos = Game.Player.transform.position;
 | 
			
		||||
				Vector3 pos = camTarget.transform.position;
 | 
			
		||||
				pos.y += targetHeight; //Look ABOVE the target
 | 
			
		||||
				transform.position = pos;
 | 
			
		||||
				transform.position -= currentRotation * Vector3.forward * camDist;
 | 
			
		||||
@ -455,7 +469,7 @@ public class CameraVehicle : MonoBehaviour
 | 
			
		||||
                { //We are under terrain
 | 
			
		||||
					Physics.Linecast( //Determine how far forward we need to go to be out of it
 | 
			
		||||
						transform.position,
 | 
			
		||||
						Game.Player.transform.position + Vector3.up * currentHeight,
 | 
			
		||||
						camTarget.transform.position + Vector3.up * currentHeight,
 | 
			
		||||
						out hit,
 | 
			
		||||
						1 << 8
 | 
			
		||||
					);
 | 
			
		||||
@ -476,11 +490,11 @@ public class CameraVehicle : MonoBehaviour
 | 
			
		||||
        {
 | 
			
		||||
			transform.position = Vector3.Lerp(
 | 
			
		||||
				transform.position,
 | 
			
		||||
				Game.Player.transform.position + Vector3.up * 40f,
 | 
			
		||||
				camTarget.transform.position + Vector3.up * 40f,
 | 
			
		||||
				Time.deltaTime * 0.3f
 | 
			
		||||
			);
 | 
			
		||||
			wr = Quaternion.LookRotation(
 | 
			
		||||
				Game.Player.transform.position - transform.position,
 | 
			
		||||
				camTarget.transform.position - transform.position,
 | 
			
		||||
				Vector3.up
 | 
			
		||||
			);
 | 
			
		||||
			transform.rotation = Quaternion.Slerp(
 | 
			
		||||
@ -495,7 +509,7 @@ public class CameraVehicle : MonoBehaviour
 | 
			
		||||
        {
 | 
			
		||||
			transform.rotation = Quaternion.Slerp(
 | 
			
		||||
				transform.rotation,
 | 
			
		||||
				Quaternion.LookRotation(Game.Player.transform.position - transform.position),
 | 
			
		||||
				Quaternion.LookRotation(camTarget.transform.position - transform.position),
 | 
			
		||||
				Time.deltaTime * 1.5f
 | 
			
		||||
			);
 | 
			
		||||
			transform.Translate(new Vector3(
 | 
			
		||||
@ -1,16 +1,8 @@
 | 
			
		||||
using System;
 | 
			
		||||
using CompilerGenerated;
 | 
			
		||||
 | 
			
		||||
namespace System.Runtime.CompilerServices
 | 
			
		||||
{
 | 
			
		||||
	[AttributeUsage(AttributeTargets.Assembly | AttributeTargets.Class
 | 
			
		||||
		 | AttributeTargets.Method)]
 | 
			
		||||
	public sealed class ExtensionAttribute : Attribute { }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
public static class CompilerGeneratedExtensions
 | 
			
		||||
{
 | 
			
		||||
	//[Extension]
 | 
			
		||||
	public static IAsyncResult BeginInvoke(
 | 
			
		||||
		this adaptableMethod self,
 | 
			
		||||
		AsyncCallback callback
 | 
			
		||||
@ -19,7 +11,6 @@ public static class CompilerGeneratedExtensions
 | 
			
		||||
		return self.BeginInvoke(callback, null);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	//[Extension]
 | 
			
		||||
	public static IAsyncResult BeginInvoke(
 | 
			
		||||
		this adaptableMethod self
 | 
			
		||||
	)
 | 
			
		||||
@ -8,9 +8,9 @@ public class EntryPoint : MonoBehaviour
 | 
			
		||||
{
 | 
			
		||||
    public IEnumerator Start() 
 | 
			
		||||
    {
 | 
			
		||||
        yield return new WaitForSeconds(15.0f);
 | 
			
		||||
        yield return new WaitForSeconds(15f);
 | 
			
		||||
 | 
			
		||||
        ParticleEmitter pe = (ParticleEmitter)GetComponent(typeof(ParticleEmitter));
 | 
			
		||||
        ParticleEmitter pe = this.GetComponent<ParticleEmitter>();
 | 
			
		||||
        pe.emit = true;
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@ -111,7 +111,7 @@ public class Game : MonoBehaviour
 | 
			
		||||
	public bool serverHidden = false;
 | 
			
		||||
	[NonSerialized]
 | 
			
		||||
	public Hashtable authenticatedPlayers = new Hashtable();
 | 
			
		||||
	private ArrayList authenticatingPlayers = new ArrayList();
 | 
			
		||||
	//private ArrayList authenticatingPlayers = new ArrayList();
 | 
			
		||||
	[NonSerialized]
 | 
			
		||||
	public static Hashtable Players;
 | 
			
		||||
	public List<unauthPlayer> unauthPlayers = new List<unauthPlayer>();
 | 
			
		||||
@ -289,7 +289,8 @@ public class Game : MonoBehaviour
 | 
			
		||||
            0,
 | 
			
		||||
            (isHost ? 1 : 0),
 | 
			
		||||
            0,
 | 
			
		||||
            0);
 | 
			
		||||
            0,
 | 
			
		||||
            false);
 | 
			
		||||
 | 
			
		||||
        if (isHost)
 | 
			
		||||
        {
 | 
			
		||||
@ -1098,7 +1099,8 @@ public class Game : MonoBehaviour
 | 
			
		||||
                veh.isBot ? 1 : 0,
 | 
			
		||||
                veh.isIt,
 | 
			
		||||
                veh.score,
 | 
			
		||||
                veh.specialInput ? 1 : 0);
 | 
			
		||||
                veh.specialInput ? 1 : 0,
 | 
			
		||||
                veh.zorbBall);
 | 
			
		||||
            veh.networkView.RPC(
 | 
			
		||||
                "sC",
 | 
			
		||||
                player,
 | 
			
		||||
@ -1254,7 +1256,6 @@ public class Game : MonoBehaviour
 | 
			
		||||
                            ": ";
 | 
			
		||||
                        try
 | 
			
		||||
                        {
 | 
			
		||||
                            float boo = Convert.ToSingle(thread.Value);
 | 
			
		||||
                            threadList +=
 | 
			
		||||
                                Mathf.RoundToInt(
 | 
			
		||||
                                    Convert.ToSingle(thread.Value) *
 | 
			
		||||
@ -1599,7 +1600,8 @@ public class Game : MonoBehaviour
 | 
			
		||||
            1,
 | 
			
		||||
            0,
 | 
			
		||||
            0,
 | 
			
		||||
            0);
 | 
			
		||||
            0,
 | 
			
		||||
            PlayerVeh.zorbBall);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	public IEnumerator axeBot()
 | 
			
		||||
@ -1635,6 +1637,7 @@ public class Game : MonoBehaviour
 | 
			
		||||
		int score = PlayerVeh.score;
 | 
			
		||||
		int specialInput = (PlayerVeh.specialInput ? 1 : 0);
 | 
			
		||||
		string name = Player.name;
 | 
			
		||||
        bool zorbBall = PlayerVeh.zorbBall;
 | 
			
		||||
		Network.Destroy(Player.rigidbody.networkView.viewID);
 | 
			
		||||
		networkView.RPC(
 | 
			
		||||
            "iV",
 | 
			
		||||
@ -1646,7 +1649,8 @@ public class Game : MonoBehaviour
 | 
			
		||||
            0,
 | 
			
		||||
            isIt,
 | 
			
		||||
            score,
 | 
			
		||||
            specialInput);
 | 
			
		||||
            specialInput,
 | 
			
		||||
            zorbBall);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	[RPC]
 | 
			
		||||
@ -1808,7 +1812,8 @@ public class Game : MonoBehaviour
 | 
			
		||||
        int isBot,
 | 
			
		||||
        int isIt,
 | 
			
		||||
        int score,
 | 
			
		||||
        int specialInput)
 | 
			
		||||
        int specialInput,
 | 
			
		||||
        bool zorbBall)
 | 
			
		||||
    {
 | 
			
		||||
		//while(worldLoaded == false) yield return null;
 | 
			
		||||
 | 
			
		||||
@ -1867,8 +1872,10 @@ public class Game : MonoBehaviour
 | 
			
		||||
        plyVeh.isIt = isIt;
 | 
			
		||||
        plyVeh.score = score;
 | 
			
		||||
        plyVeh.specialInput = (specialInput == 1);
 | 
			
		||||
        plyVeh.zorbBall = zorbBall;
 | 
			
		||||
 | 
			
		||||
        if (viewID.isMine && isBot == 0) Player = plyObj;
 | 
			
		||||
        if (plyVeh.isIt == 1) QuarryVeh = plyVeh;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	[RPC]
 | 
			
		||||
@ -2048,7 +2055,7 @@ public class Game : MonoBehaviour
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	[RPC]
 | 
			
		||||
	public void sSH(string sname, string sworld, string swelcome, string sblacklist, string spassword, float gVersion, bool shidden, NetworkMessageInfo info)
 | 
			
		||||
	public void sSH(string sname, string sworld, string swelcome, string sblacklist, string spassword, SemVer gVersion, bool shidden, NetworkMessageInfo info)
 | 
			
		||||
    {
 | 
			
		||||
		serverName = sname;
 | 
			
		||||
		Settings.serverWelcome = swelcome;
 | 
			
		||||
@ -2140,9 +2147,12 @@ public class Game : MonoBehaviour
 | 
			
		||||
 | 
			
		||||
	public static string LanguageFilter(string str)
 | 
			
		||||
    {
 | 
			
		||||
		string patternMild = " crap | prawn |d4mn| damn | turd ";
 | 
			
		||||
		/*string patternMild = " crap | prawn |d4mn| damn | turd ";
 | 
			
		||||
		str = Regex.Replace(str, patternMild, ".", RegexOptions.IgnoreCase);
 | 
			
		||||
		string pattern = "anus|ash0le|ash0les|asholes| ass |Ass Monkey|Assface|assh0le|assh0lez|bastard|bastards|bastardz|basterd|suka|asshole|assholes|assholz|asswipe|azzhole|bassterds|basterdz|Biatch|bitch|bitches|Blow Job|blowjob|in bed|butthole|buttwipe|c0ck|c0cks|c0k|Clit|cnts|cntz|cockhead| cock |cock-head|CockSucker|cock-sucker| cum |cunt|cunts|cuntz|dick|dild0|dild0s|dildo|dildos|dilld0|dilld0s|dominatricks|dominatrics|dominatrix|f.u.c.k|f u c k|f u c k e r|fag|fag1t|faget|fagg1t|faggit|faggot|fagit|fags|fagz|faig|faigs|fuck|fucker|fuckin|mother fucker|fucking|fucks|Fudge Packer|fuk|Fukah|Fuken|fuker|Fukin|Fukk|Fukkah|Fukken|Fukker|Fukkin|gay|gayboy|gaygirl|gays|gayz|God-dam|God dam|h00r|h0ar|h0re|jackoff|jerk-off|jizz|kunt|kunts|kuntz|Lesbian|Lezzian|Lipshits|Lipshitz|masochist|masokist|massterbait|masstrbait|masstrbate|masterbaiter|masterbate|masterbates|Motha Fucker|Motha Fuker|Motha Fukkah|Motha Fukker|Mother Fucker|Mother Fukah|Mother Fuker|Mother Fukkah|Mother Fukker|mother-fucker|Mutha Fucker|Mutha Fukah|Mutha Fuker|Mutha Fukkah|Mutha Fukker|orafis|orgasim|orgasm|orgasum|oriface|orifice|orifiss|packi|packie|packy|paki|pakie|peeenus|peeenusss|peenus|peinus|pen1s|penas|penis|penis-breath|penus|penuus|Phuc|Phuck|Phuk|Phuker|Phukker|polac|polack|polak|Poonani|pr1c|pr1ck|pr1k|pusse|pussee|pussy|puuke|puuker|queer|queers|queerz|qweers|qweerz|qweir|recktum|rectum|retard|sadist|scank|schlong|screwing| sex |sh1t|sh1ter|sh1ts|sh1tter|sh1tz|shit|shits|shitter|Shitty|Shity|shitz|Shyt|Shyte|Shytty|Shyty|skanck|skank|skankee| sob |skankey|skanks|Skanky|slut|sluts|Slutty|slutz|son-of-a-bitch|va1jina|vag1na|vagiina|vagina|vaj1na|vajina|vullva|vulva|xxx|b!+ch|bitch|blowjob|clit|arschloch|fuck|shit|asshole|b!tch|b17ch|b1tch|bastard|bi+ch|boiolas|buceta|c0ck|cawk|chink|clits|cunt|dildo|dirsa|ejakulate|fatass|fcuk|fuk|fux0r|l3itch|lesbian|masturbate|masterbat*|motherfucker|s.o.b.|mofo|nigga|nigger|n1gr|nigur|niiger|niigr|nutsack|phuck|blue balls|blue_balls|blueballs|pussy|scrotum|shemale|sh!t|slut|smut|teets|tits|boobs|b00bs|testical|testicle|titt|jackoff|whoar|whore|fuck|shit|arse|bi7ch|bitch|bollock|breasts|cunt|dick|fag |feces|fuk|futkretzn|gay|jizz|masturbat*|piss|poop|porn|p0rn|pr0n|shiz|splooge|b00b|testicle|titt|wank";
 | 
			
		||||
		return Regex.Replace(str, pattern, "#", RegexOptions.IgnoreCase);
 | 
			
		||||
		return Regex.Replace(str, pattern, "#", RegexOptions.IgnoreCase);*/
 | 
			
		||||
 | 
			
		||||
        // the kids that played this game back then are no longer kids. little need to babysit them anymore
 | 
			
		||||
        return str;
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
@ -4,7 +4,8 @@ using UnityEngine;
 | 
			
		||||
[Serializable]
 | 
			
		||||
public class GameData : MonoBehaviour
 | 
			
		||||
{
 | 
			
		||||
	public static float gameVersion = 2.22f;
 | 
			
		||||
	//public static float gameVersion = 4.0f;
 | 
			
		||||
    public static SemVer gameVersion = new SemVer("4.0.1");
 | 
			
		||||
	public static float serverVersion = 0.2f;
 | 
			
		||||
	public static string gameName = "marsxplr";
 | 
			
		||||
	public static string userName = "";
 | 
			
		||||
@ -17,21 +17,21 @@ public class JumpPoint : MonoBehaviour
 | 
			
		||||
        {
 | 
			
		||||
            return;
 | 
			
		||||
        }
 | 
			
		||||
        if ((bool)whirldObject.parameters["JumpTime"])
 | 
			
		||||
        if (whirldObject.parameters["JumpTime"] != null)
 | 
			
		||||
        {
 | 
			
		||||
            time = (int)whirldObject.parameters["JumpTime"];
 | 
			
		||||
            time = (int)float.Parse((String)whirldObject.parameters["JumpTime"]);
 | 
			
		||||
        }
 | 
			
		||||
        if ((bool)whirldObject.parameters["JumpRandMin"])
 | 
			
		||||
        if (whirldObject.parameters["JumpRandMin"] != null)
 | 
			
		||||
        {
 | 
			
		||||
            randMin = (int)whirldObject.parameters["JumpRandMin"];
 | 
			
		||||
            randMin = (int)float.Parse((String)whirldObject.parameters["JumpRandMin"]);
 | 
			
		||||
        }
 | 
			
		||||
        if ((bool)whirldObject.parameters["JumpRandMax"])
 | 
			
		||||
        if (whirldObject.parameters["JumpRandMax"] != null)
 | 
			
		||||
        {
 | 
			
		||||
            randMax = (int)whirldObject.parameters["JumpRandMax"];
 | 
			
		||||
            randMax = (int)float.Parse((String)whirldObject.parameters["JumpRandMax"]);
 | 
			
		||||
        }
 | 
			
		||||
        if ((bool)whirldObject.parameters["JumpVelocity"])
 | 
			
		||||
        if (whirldObject.parameters["JumpVelocity"] != null)
 | 
			
		||||
        {
 | 
			
		||||
            velocity = (int)whirldObject.parameters["JumpVelocity"];
 | 
			
		||||
            velocity = (int)float.Parse((String)whirldObject.parameters["JumpVelocity"]);
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
@ -58,6 +58,12 @@ public class JumpPoint : MonoBehaviour
 | 
			
		||||
                transform.up * velocity,
 | 
			
		||||
                ForceMode.VelocityChange);
 | 
			
		||||
        }
 | 
			
		||||
        /*other.attachedRigidbody.AddExplosionForce(
 | 
			
		||||
            UnityEngine.Random.Range(randMin, randMax),
 | 
			
		||||
            transform.position,
 | 
			
		||||
            0f,
 | 
			
		||||
            2f,
 | 
			
		||||
            ForceMode.VelocityChange);*/
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@ -86,22 +86,6 @@ public class Lobby : MonoBehaviour
 | 
			
		||||
	private bool dedicatedNAT;
 | 
			
		||||
	// /*UNUSED*/ private int dedicatedHostAttempts;
 | 
			
		||||
 | 
			
		||||
    private bool showAds = false;
 | 
			
		||||
    adDesc[] gameAds;
 | 
			
		||||
    class adDesc : UnityEngine.Object
 | 
			
		||||
    {
 | 
			
		||||
        public String url = "";
 | 
			
		||||
        public String title = "";
 | 
			
		||||
        public String desc = "";
 | 
			
		||||
 | 
			
		||||
        public adDesc(String u, String t, String d)
 | 
			
		||||
        {
 | 
			
		||||
            this.url = u;
 | 
			
		||||
            this.title = t;
 | 
			
		||||
            this.desc = d;
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
	public void Awake()
 | 
			
		||||
	{
 | 
			
		||||
		QualitySettings.currentLevel = QualityLevel.Fantastic;
 | 
			
		||||
@ -111,9 +95,6 @@ public class Lobby : MonoBehaviour
 | 
			
		||||
 | 
			
		||||
    public IEnumerator Start()
 | 
			
		||||
    {
 | 
			
		||||
        String adBrightUrl = "";
 | 
			
		||||
        String adSenseUrl = "";
 | 
			
		||||
 | 
			
		||||
        userPassword = PlayerPrefs.GetString("userPassword", "");
 | 
			
		||||
        userCode = PlayerPrefs.GetString("userCode", "");
 | 
			
		||||
        userRemembered = (PlayerPrefs.GetInt("userRemembered", 0) == 1 ? true : false);
 | 
			
		||||
@ -155,11 +136,8 @@ public class Lobby : MonoBehaviour
 | 
			
		||||
                String[] val = tmp.ToArray();
 | 
			
		||||
 | 
			
		||||
                if (
 | 
			
		||||
                    val[0] == "v" &&
 | 
			
		||||
                    float.Parse(
 | 
			
		||||
                        val[1],
 | 
			
		||||
                        CultureInfo.InvariantCulture.NumberFormat
 | 
			
		||||
                    ) > (float)GameData.gameVersion)
 | 
			
		||||
                    val[0] == "sv" &&
 | 
			
		||||
                    SemVer.Parse(val[1]) > GameData.gameVersion)
 | 
			
		||||
                {
 | 
			
		||||
                    outdated = val[1];
 | 
			
		||||
                }
 | 
			
		||||
@ -167,10 +145,6 @@ public class Lobby : MonoBehaviour
 | 
			
		||||
                {
 | 
			
		||||
                    hostDedicated = (val[1] == "1" || val[1] == "true");
 | 
			
		||||
                }
 | 
			
		||||
                else if (val[0] == "a")
 | 
			
		||||
                {
 | 
			
		||||
                    showAds = (val[1] == "1" || val[1] == "true");
 | 
			
		||||
                }
 | 
			
		||||
                else if (val[0] == "m") msgs.Add(val[1]);
 | 
			
		||||
                else if (val[0] == "w")
 | 
			
		||||
                {
 | 
			
		||||
@ -228,14 +202,6 @@ public class Lobby : MonoBehaviour
 | 
			
		||||
                {
 | 
			
		||||
                    GameData.networkMode = int.Parse(val[1]);
 | 
			
		||||
                }
 | 
			
		||||
                else if (val[0] == "adbr")
 | 
			
		||||
                {
 | 
			
		||||
                    adBrightUrl = val[1];
 | 
			
		||||
                }
 | 
			
		||||
                else if (val[0] == "adsn")
 | 
			
		||||
                {
 | 
			
		||||
                    adSenseUrl = val[1];
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
        else
 | 
			
		||||
@ -247,60 +213,6 @@ public class Lobby : MonoBehaviour
 | 
			
		||||
        messages = msgs.ToArray();
 | 
			
		||||
 | 
			
		||||
        MasterServer.RequestHostList(gameName);
 | 
			
		||||
 | 
			
		||||
        if (showAds)
 | 
			
		||||
        { 
 | 
			
		||||
            List<adDesc> ads = new List<adDesc>();
 | 
			
		||||
 | 
			
		||||
            //Adbrite
 | 
			
		||||
            www = new WWW(adBrightUrl);
 | 
			
		||||
            yield return www;
 | 
			
		||||
            if (www.error == null)
 | 
			
		||||
            {
 | 
			
		||||
                MatchCollection matches = Regex.Matches(
 | 
			
		||||
                    www.data.Replace(
 | 
			
		||||
                        "\\\"",
 | 
			
		||||
                        "\""),
 | 
			
		||||
                    "<a[^>]*?class=\\\"adHeadline\\\"[^>]*?href=\\\"(.*?)\\\"[^>]*?>(.*?)</a>[^.]*?<a[^>]*?class=\\\"adText\\\"[^>]*?>(.*?)</a>");
 | 
			
		||||
                foreach (Match match in matches)
 | 
			
		||||
                {
 | 
			
		||||
                    adDesc ad = new adDesc(
 | 
			
		||||
                        match.Groups[1].ToString(),
 | 
			
		||||
                        htmlDecode(match.Groups[2].ToString()),
 | 
			
		||||
                        htmlDecode(match.Groups[3].ToString()));
 | 
			
		||||
                    if (UnityEngine.Random.value > .5) ads.Add(ad);
 | 
			
		||||
                    else ads.Insert(0, ad);
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            //Adsense
 | 
			
		||||
            www = new WWW(adSenseUrl);
 | 
			
		||||
            yield return www;
 | 
			
		||||
            if (www.error == null)
 | 
			
		||||
            {
 | 
			
		||||
                MatchCollection matches = Regex.Matches(
 | 
			
		||||
                    www.data.Replace(
 | 
			
		||||
                        "\\\"",
 | 
			
		||||
                        "\""),
 | 
			
		||||
                    "<a[^>]*?class=adt[^>]*?href=\\\"(.*?)\\\"[^>]*?>(.*?)</a>[^.]*?<div[^>]*?class=adb[^>]*?>(.*?)</div>");
 | 
			
		||||
                foreach (Match match in matches)
 | 
			
		||||
                {
 | 
			
		||||
                    adDesc ad = new adDesc(
 | 
			
		||||
                        "http://googleads.g.doubleclick.net" +
 | 
			
		||||
                            match.Groups[1].ToString(),
 | 
			
		||||
                        htmlDecode(match.Groups[2].ToString()),
 | 
			
		||||
                        htmlDecode(match.Groups[3].ToString()));
 | 
			
		||||
                    if (ad.url.IndexOf("&nh=1") == -1) ad.url += "&nh=1";
 | 
			
		||||
                    ads.Insert(0, ad);
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            //Tally
 | 
			
		||||
            if (ads.Count > 0)
 | 
			
		||||
            {
 | 
			
		||||
                gameAds = ads.ToArray();
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
    
 | 
			
		||||
	public void OnFailedToConnectToMasterServer(NetworkConnectionError info)
 | 
			
		||||
@ -992,7 +904,7 @@ public class Lobby : MonoBehaviour
 | 
			
		||||
                HostData[] data = MasterServer.PollHostList();
 | 
			
		||||
 | 
			
		||||
                String[] serverData;
 | 
			
		||||
                float gameVersion;
 | 
			
		||||
                SemVer gameVersion;
 | 
			
		||||
                float serverVersion;
 | 
			
		||||
 | 
			
		||||
                //Precull Data
 | 
			
		||||
@ -1007,13 +919,13 @@ public class Lobby : MonoBehaviour
 | 
			
		||||
                        if (filterNATHosts && element.useNat) continue;
 | 
			
		||||
 | 
			
		||||
                        serverData = element.comment.Split(";"[0]);
 | 
			
		||||
                        gameVersion = 0.0f;
 | 
			
		||||
                        gameVersion = new SemVer(0);
 | 
			
		||||
                        serverVersion = 0.0f;
 | 
			
		||||
                        foreach (String dat in serverData)
 | 
			
		||||
                        {
 | 
			
		||||
                            if (dat == "") continue;
 | 
			
		||||
                            vals = dat.Split("="[0]);
 | 
			
		||||
                            if (vals[0] == "v") gameVersion = float.Parse(vals[1]);
 | 
			
		||||
                            if (vals[0] == "v") gameVersion = SemVer.Parse(vals[1]);
 | 
			
		||||
                            if (vals[0] == "d") serverVersion = float.Parse(vals[1]);
 | 
			
		||||
                        }
 | 
			
		||||
 | 
			
		||||
@ -1041,44 +953,16 @@ public class Lobby : MonoBehaviour
 | 
			
		||||
                    System.Array.Sort(data, sortHostArray);
 | 
			
		||||
 | 
			
		||||
                    int i = 0;
 | 
			
		||||
                    float adCounter = 0.000f;
 | 
			
		||||
                    int adTicker = 0;
 | 
			
		||||
                    foreach (HostData element in data)
 | 
			
		||||
                    { 
 | 
			
		||||
                        //Ads
 | 
			
		||||
                        if (showAds)
 | 
			
		||||
                        {
 | 
			
		||||
                            adCounter += (float)gameAds.Length / (float)data.Length;
 | 
			
		||||
                            if ((float)adTicker < adCounter && adTicker < gameAds.Length)
 | 
			
		||||
                            {
 | 
			
		||||
                                if (
 | 
			
		||||
                                    GUILayout.Button(
 | 
			
		||||
                                        gameAds[adTicker].title +
 | 
			
		||||
                                            "   ~   " +
 | 
			
		||||
                                            gameAds[adTicker].desc,
 | 
			
		||||
                                        "lobbyAd"))
 | 
			
		||||
                                {
 | 
			
		||||
                                    OpenURL(gameAds[adTicker].url);
 | 
			
		||||
                                }
 | 
			
		||||
                                if (
 | 
			
		||||
                                    Event.current.type != EventType.Layout &&
 | 
			
		||||
                                    mouseInServerList &&
 | 
			
		||||
                                    GUILayoutUtility.GetLastRect().Contains(Event.current.mousePosition))
 | 
			
		||||
                                {
 | 
			
		||||
                                    serverDetails = "This advertisement helps bring Mars Explorer to you for free!\n\nIf you are interested in one of our sponsor's offers,\nplease be sure to check it out.";
 | 
			
		||||
                                }
 | 
			
		||||
                                adTicker++;
 | 
			
		||||
                            }
 | 
			
		||||
                        }
 | 
			
		||||
 | 
			
		||||
                        masterServerConFailures = 0;
 | 
			
		||||
                        masterServerMessage = "";
 | 
			
		||||
                        serverData = element.comment.Split(";"[0]);
 | 
			
		||||
                        gameVersion = 0.0f;
 | 
			
		||||
                        gameVersion = new SemVer(0);
 | 
			
		||||
                        serverVersion = 0.0f;
 | 
			
		||||
                        String serverWorld = "";
 | 
			
		||||
                        String serverPlayers = "";
 | 
			
		||||
                        String serverWorldURL = "";
 | 
			
		||||
                        // /*UNUSED*/ String serverWorldURL = "";
 | 
			
		||||
                        String bannedIPs = "";
 | 
			
		||||
                        String serverLag = "";
 | 
			
		||||
                        bool isLocked = false;
 | 
			
		||||
@ -1086,11 +970,11 @@ public class Lobby : MonoBehaviour
 | 
			
		||||
                        {
 | 
			
		||||
                            if (dat == "") continue;
 | 
			
		||||
                            vals = dat.Split("="[0]);
 | 
			
		||||
                            if (vals[0] == "v") gameVersion = float.Parse(vals[1]);
 | 
			
		||||
                            if (vals[0] == "v") gameVersion = SemVer.Parse(vals[1]);
 | 
			
		||||
                            if (vals[0] == "d") serverVersion = float.Parse(vals[1]);
 | 
			
		||||
                            else if (vals[0] == "w") serverWorld = vals[1];
 | 
			
		||||
                            else if (vals[0] == "p") serverPlayers = vals[1];
 | 
			
		||||
                            else if (vals[0] == "u") serverWorldURL = vals[1];
 | 
			
		||||
                            //else if (vals[0] == "u") serverWorldURL = vals[1];
 | 
			
		||||
                            else if (vals[0] == "b") bannedIPs = vals[1];
 | 
			
		||||
                            else if (vals[0] == "s") serverLag = vals[1];
 | 
			
		||||
                            else if (vals[0] == "l") isLocked = true;
 | 
			
		||||
@ -1179,21 +1063,6 @@ public class Lobby : MonoBehaviour
 | 
			
		||||
                                (serverVersion != 0.0 ? " (» Dedicated Host Server)" : "");
 | 
			
		||||
                        }
 | 
			
		||||
                        i++;
 | 
			
		||||
 | 
			
		||||
                        //"Advertise Here" Ad
 | 
			
		||||
                        if (showAds && i == data.Length)
 | 
			
		||||
                        {
 | 
			
		||||
                            if (GUILayout.Button("» Advertise on Mars Explorer! «", "lobbyAd"))
 | 
			
		||||
                            {
 | 
			
		||||
                                OpenURL("http://www.adbrite.com/mb/commerce/purchase_form.php?opid=1509409&&nr=1");
 | 
			
		||||
                            }
 | 
			
		||||
                            if (Event.current.type != EventType.Layout &&
 | 
			
		||||
                                mouseInServerList &&
 | 
			
		||||
                                GUILayoutUtility.GetLastRect().Contains(Event.current.mousePosition))
 | 
			
		||||
                            {
 | 
			
		||||
                                serverDetails = "That's right - you can bid directly to advertise inside Mars Explorer!\n\nPresent YOUR message to an audience\nof friendly Martians everywhere.";
 | 
			
		||||
                            }
 | 
			
		||||
                        }
 | 
			
		||||
                    }
 | 
			
		||||
                }
 | 
			
		||||
				if (activePlayersVisible == 0)
 | 
			
		||||
@ -1532,12 +1401,12 @@ public class Lobby : MonoBehaviour
 | 
			
		||||
		GUILayout.Label("A new Mars Explorer version is now available on the Discord Server:");
 | 
			
		||||
		GUILayout.Space(10f);
 | 
			
		||||
		if (
 | 
			
		||||
            GUILayout.Button(">> Ask in the #marsxplr channel to Download Mars Explorer version " +
 | 
			
		||||
            GUILayout.Button(">> Go to the Gitea Releases page to Download MarsXPLR version " +
 | 
			
		||||
                outdated +
 | 
			
		||||
                "! <<",
 | 
			
		||||
            GUILayout.Height(40f)))
 | 
			
		||||
		{
 | 
			
		||||
            OpenURL("https://discord.gg/dxTFZRM");
 | 
			
		||||
            OpenURL("https://gitea.moe/VIA256/marsxplr-decomp/releases");
 | 
			
		||||
		}
 | 
			
		||||
		GUILayout.Space(30f);
 | 
			
		||||
		GUILayout.BeginHorizontal();
 | 
			
		||||
@ -284,7 +284,7 @@ public class MeshSerializer : MonoBehaviour
 | 
			
		||||
            float xx = ((float)(int)ix - 128f) / 127f;
 | 
			
		||||
            float yy = ((float)(int)iy - 128f) / 127f;
 | 
			
		||||
            float zz = ((float)(int)iz - 128f) / 127f;
 | 
			
		||||
            float ww = ((float)(int)iz - 128f) / 127f;
 | 
			
		||||
            float ww = ((float)(int)iw - 128f) / 127f;
 | 
			
		||||
            arr[i] = new Vector4(xx, yy, zz, ww);
 | 
			
		||||
        }
 | 
			
		||||
	}
 | 
			
		||||
@ -297,7 +297,7 @@ public class MeshSerializer : MonoBehaviour
 | 
			
		||||
            byte ix = (byte)Mathf.Clamp(v.x * 127f + 128f, 0f, 255f);
 | 
			
		||||
            byte iy = (byte)Mathf.Clamp(v.y * 127f + 128f, 0f, 255f);
 | 
			
		||||
            byte iz = (byte)Mathf.Clamp(v.z * 127f + 128f, 0f, 255f);
 | 
			
		||||
            byte iw = (byte)Mathf.Clamp(v.z * 127f + 128f, 0f, 255f);
 | 
			
		||||
            byte iw = (byte)Mathf.Clamp(v.w * 127f + 128f, 0f, 255f);
 | 
			
		||||
            buf.Write(ix);
 | 
			
		||||
            buf.Write(iy);
 | 
			
		||||
            buf.Write(iz);
 | 
			
		||||
@ -130,10 +130,10 @@ public class Messaging : MonoBehaviour
 | 
			
		||||
                        RPCMode.All,
 | 
			
		||||
                        !Game.PlayerVeh.zorbBall);
 | 
			
		||||
					Game.Controller.msg(
 | 
			
		||||
                        "XORB " + ((!Game.PlayerVeh.zorbBall) ?
 | 
			
		||||
                            "Deactivated" :
 | 
			
		||||
                            "Activated"),
 | 
			
		||||
                        2);
 | 
			
		||||
                        "XORB " + (Game.PlayerVeh.zorbBall ?
 | 
			
		||||
                            "Activated" :
 | 
			
		||||
                            "Deactivated"),
 | 
			
		||||
                        (int)chatOrigins.Server);
 | 
			
		||||
				}
 | 
			
		||||
				else
 | 
			
		||||
				{
 | 
			
		||||
@ -39,7 +39,7 @@ public class SeaData : MonoBehaviour
 | 
			
		||||
            whirldObject == null ||
 | 
			
		||||
            whirldObject.parameters == null ||
 | 
			
		||||
            seaObject == null ||
 | 
			
		||||
            !(bool)whirldObject.parameters["Mode"])
 | 
			
		||||
            whirldObject.parameters["Mode"] == null)
 | 
			
		||||
        {
 | 
			
		||||
            return;
 | 
			
		||||
        }
 | 
			
		||||
							
								
								
									
										115
									
								
								Assembly_-_UnityScript/SemVer.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										115
									
								
								Assembly_-_UnityScript/SemVer.cs
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,115 @@
 | 
			
		||||
using System;
 | 
			
		||||
 | 
			
		||||
public class SemVer
 | 
			
		||||
{
 | 
			
		||||
    public byte maj;
 | 
			
		||||
    public byte min;
 | 
			
		||||
    public byte patch;
 | 
			
		||||
 | 
			
		||||
    public SemVer(byte mj, byte mn, byte pt)
 | 
			
		||||
    {
 | 
			
		||||
        maj = mj;
 | 
			
		||||
        min = mn;
 | 
			
		||||
        patch = pt;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public SemVer(byte mj, byte mn)
 | 
			
		||||
    {
 | 
			
		||||
        maj = mj;
 | 
			
		||||
        min = mn;
 | 
			
		||||
        patch = 0;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public SemVer(byte mj)
 | 
			
		||||
    {
 | 
			
		||||
        maj = mj;
 | 
			
		||||
        min = 0;
 | 
			
		||||
        patch = 0;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public SemVer(String str)
 | 
			
		||||
    {
 | 
			
		||||
        SemVer sv = SemVer.Parse(str);
 | 
			
		||||
        maj = sv.maj;
 | 
			
		||||
        min = sv.min;
 | 
			
		||||
        patch = sv.patch;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public static bool operator ==(SemVer a, SemVer b)
 | 
			
		||||
    {
 | 
			
		||||
        return (
 | 
			
		||||
            a.maj == b.maj &&
 | 
			
		||||
            a.min == b.min &&
 | 
			
		||||
            a.patch == b.patch);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public static bool operator !=(SemVer a, SemVer b)
 | 
			
		||||
    {
 | 
			
		||||
        return (
 | 
			
		||||
            a.maj != b.maj ||
 | 
			
		||||
            a.min != b.min ||
 | 
			
		||||
            a.patch != b.patch);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public static bool operator >(SemVer a, SemVer b)
 | 
			
		||||
    {
 | 
			
		||||
        return a.maj > b.maj ? true :
 | 
			
		||||
            a.min > b.min ? true :
 | 
			
		||||
                a.patch > b.patch ? true :
 | 
			
		||||
                    false;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public static bool operator >=(SemVer a, SemVer b)
 | 
			
		||||
    {
 | 
			
		||||
        return a.maj >= b.maj ? true :
 | 
			
		||||
            a.min >= b.min ? true :
 | 
			
		||||
                a.patch >= b.patch ? true :
 | 
			
		||||
                    false;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public static bool operator <=(SemVer a, SemVer b)
 | 
			
		||||
    {
 | 
			
		||||
        return b > a;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public static bool operator <(SemVer a, SemVer b)
 | 
			
		||||
    {
 | 
			
		||||
        return b >= a;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public override string ToString()
 | 
			
		||||
    {
 | 
			
		||||
        if (patch == 0) return maj.ToString() + "." + min.ToString();
 | 
			
		||||
        return maj.ToString() + "." + min.ToString() + "." + patch.ToString();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public static SemVer Parse(String str)
 | 
			
		||||
    {
 | 
			
		||||
        String[] sv = str.Split("."[0]);
 | 
			
		||||
        if (sv.Length == 3) return new SemVer(
 | 
			
		||||
            byte.Parse(sv[0]),
 | 
			
		||||
            byte.Parse(sv[1]),
 | 
			
		||||
            byte.Parse(sv[2]));
 | 
			
		||||
        if (sv.Length == 2) return new SemVer(
 | 
			
		||||
            byte.Parse(sv[0]),
 | 
			
		||||
            byte.Parse(sv[1]));
 | 
			
		||||
        if (sv.Length == 1) return new SemVer(
 | 
			
		||||
            byte.Parse(sv[0]));
 | 
			
		||||
        throw new FormatException();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public override int GetHashCode()
 | 
			
		||||
    {
 | 
			
		||||
        return maj.GetHashCode() ^ (min.GetHashCode() << 2) ^ (patch.GetHashCode() >> 2);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public override bool Equals(object other)
 | 
			
		||||
    {
 | 
			
		||||
        if (!(other is SeaData)) return false;
 | 
			
		||||
        SemVer osv = (SemVer)other;
 | 
			
		||||
        return (
 | 
			
		||||
            osv.maj == maj &&
 | 
			
		||||
            osv.min == min &&
 | 
			
		||||
            osv.patch == patch);
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@ -71,6 +71,7 @@ public class Settings : MonoBehaviour
 | 
			
		||||
	public float camDist = 0;
 | 
			
		||||
	public bool flightCam = false;
 | 
			
		||||
	public bool gyroCam = false;
 | 
			
		||||
    public bool quarryCam = false;
 | 
			
		||||
 | 
			
		||||
	public float worldGrav = -9.81f;
 | 
			
		||||
	public float worldFog = 0.001f;
 | 
			
		||||
@ -154,19 +155,17 @@ public class Settings : MonoBehaviour
 | 
			
		||||
		renderViewCap = PlayerPrefs.GetFloat("viewCap", 1000f);
 | 
			
		||||
		Application.targetFrameRate = (int)PlayerPrefs.GetFloat("targetFrameRate", 100f);
 | 
			
		||||
		renderAutoAdjust = false;
 | 
			
		||||
		showHints = ((PlayerPrefs.GetInt("showHints", 1) != 0) ? true : false);
 | 
			
		||||
		showHints = PlayerPrefs.GetInt("showHints", 1) != 0;
 | 
			
		||||
		useMusic = PlayerPrefs.GetInt("useMusic", 1);
 | 
			
		||||
		useSfx = ((PlayerPrefs.GetInt("useSfx", 1) != 0) ? true : false);
 | 
			
		||||
		useSfx = PlayerPrefs.GetInt("useSfx", 1) != 0;
 | 
			
		||||
		useHypersound = PlayerPrefs.GetInt("useHypersound", 0);
 | 
			
		||||
		useMinimap = ((PlayerPrefs.GetInt("useMinimap", 1) != 0) ? true : false);
 | 
			
		||||
		bool flag = ((PlayerPrefs.GetInt("superCam", 1) != 0) ? true : false);
 | 
			
		||||
		flightCam = ((PlayerPrefs.GetInt("flightCam", 1) != 0) ? true : false);
 | 
			
		||||
		gyroCam = ((PlayerPrefs.GetInt("gyroCam", 0) != 0) ? true : false);
 | 
			
		||||
		useMinimap = PlayerPrefs.GetInt("useMinimap", 1) != 0;
 | 
			
		||||
		camMode = PlayerPrefs.GetInt("cam", 1);
 | 
			
		||||
		camChase = PlayerPrefs.GetInt("camChase", 1);
 | 
			
		||||
		camDist = PlayerPrefs.GetFloat("camDist", 0.01f);
 | 
			
		||||
		flightCam = ((PlayerPrefs.GetInt("flightCam", 0) != 0) ? true : false);
 | 
			
		||||
		gyroCam = ((PlayerPrefs.GetInt("gyroCam", 0) != 0) ? true : false);
 | 
			
		||||
		flightCam = PlayerPrefs.GetInt("flightCam", 0) != 0;
 | 
			
		||||
		gyroCam = PlayerPrefs.GetInt("gyroCam", 0) != 0;
 | 
			
		||||
        quarryCam = PlayerPrefs.GetInt("quarryCam", 0) != 0;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	public void showDialogGame()
 | 
			
		||||
@ -486,6 +485,12 @@ public class Settings : MonoBehaviour
 | 
			
		||||
			PlayerPrefs.SetInt("flightCam", flightCam ? 1 : 0);
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
        if (GUILayout.Toggle(quarryCam, "QuarryCam Enabled") != quarryCam)
 | 
			
		||||
        {
 | 
			
		||||
            quarryCam = !quarryCam;
 | 
			
		||||
            PlayerPrefs.SetInt("quarryCam", quarryCam ? 1 : 0);
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
		float cg;
 | 
			
		||||
		if (camMode == 0)
 | 
			
		||||
		{
 | 
			
		||||
@ -926,7 +931,7 @@ public class Settings : MonoBehaviour
 | 
			
		||||
                ramoSpheres != 0f,
 | 
			
		||||
                "RORBs Enabled") != (ramoSpheres != 0f))
 | 
			
		||||
			{
 | 
			
		||||
				ramoSpheres = ((ramoSpheres == 0f) ? 0.5f : 0f);
 | 
			
		||||
				ramoSpheres = ((ramoSpheres != 0f) ? 0f : 0.5f);
 | 
			
		||||
				if (ramoSpheres != 0f)
 | 
			
		||||
				{
 | 
			
		||||
					zorbSpeed = 7f;
 | 
			
		||||
@ -954,7 +959,7 @@ public class Settings : MonoBehaviour
 | 
			
		||||
                    zorbSpeed != 0f,
 | 
			
		||||
                    "XORBs Available") != (zorbSpeed != 0f))
 | 
			
		||||
				{
 | 
			
		||||
					zorbSpeed = ((zorbSpeed == 0f) ? 7 : 0);
 | 
			
		||||
					zorbSpeed = ((zorbSpeed != 0f) ? 0 : 7);
 | 
			
		||||
					updateServerPrefs();
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
@ -123,7 +123,7 @@ public class TerrainController : MonoBehaviour
 | 
			
		||||
                if (trnAlt < seaLevel)
 | 
			
		||||
                {
 | 
			
		||||
                    submerged = true;
 | 
			
		||||
                    float depth = seaLevel + trnAlt;
 | 
			
		||||
                    // /*UNUSED*/ float depth = seaLevel + trnAlt;
 | 
			
		||||
                }
 | 
			
		||||
 | 
			
		||||
                //Update AlphaMap Array
 | 
			
		||||
@ -308,20 +308,28 @@ public class Vehicle : MonoBehaviour
 | 
			
		||||
		GUI.depth = -1;
 | 
			
		||||
		if (networkView.isMine && !isBot)
 | 
			
		||||
		{
 | 
			
		||||
            Rigidbody targetRigidbody = myRigidbody;
 | 
			
		||||
            if (
 | 
			
		||||
                Game.Settings.quarryCam &&
 | 
			
		||||
                (bool)Game.QuarryVeh &&
 | 
			
		||||
                (bool)Game.QuarryVeh.myRigidbody)
 | 
			
		||||
            {
 | 
			
		||||
                targetRigidbody = Game.QuarryVeh.myRigidbody;
 | 
			
		||||
            }
 | 
			
		||||
			GUI.Button(
 | 
			
		||||
                new Rect(
 | 
			
		||||
                    (float)Screen.width * 0.5f - 75f,
 | 
			
		||||
                    (float)Screen.height - 30f,
 | 
			
		||||
                    150f,
 | 
			
		||||
                    20f),
 | 
			
		||||
                (myRigidbody.velocity.magnitude < 0.05f ?
 | 
			
		||||
                    Mathf.RoundToInt(myRigidbody.velocity.magnitude * 2.23f) +
 | 
			
		||||
                        " MPH" :
 | 
			
		||||
                    "Static") +
 | 
			
		||||
                (targetRigidbody.velocity.magnitude < 0.05f ?
 | 
			
		||||
                    "Static" :
 | 
			
		||||
                    Mathf.RoundToInt(targetRigidbody.velocity.magnitude * 2.23f) +
 | 
			
		||||
                        " MPH") +
 | 
			
		||||
                    "     " +
 | 
			
		||||
                    Mathf.RoundToInt(myRigidbody.transform.position.y) +
 | 
			
		||||
                    Mathf.RoundToInt(targetRigidbody.transform.position.y) +
 | 
			
		||||
                    " ALT" +
 | 
			
		||||
                    ((isIt != 0) ?
 | 
			
		||||
                    ((isIt != 0 || Game.Settings.quarryCam) ?
 | 
			
		||||
                        "" :
 | 
			
		||||
                        ("     " +
 | 
			
		||||
                            Mathf.RoundToInt(Game.Controller.quarryDist) +
 | 
			
		||||
@ -330,21 +338,24 @@ public class Vehicle : MonoBehaviour
 | 
			
		||||
		}
 | 
			
		||||
		GUI.depth = 5;
 | 
			
		||||
		Vector3 pos = Camera.main.WorldToScreenPoint(transform.position);
 | 
			
		||||
		if (
 | 
			
		||||
            (!networkView.isMine || isBot &&
 | 
			
		||||
                Game.Settings.hideNames &&
 | 
			
		||||
                (Vector3.Distance(
 | 
			
		||||
                    new Vector3(pos.x, pos.y, 0f),
 | 
			
		||||
                    Input.mousePosition) >= 40f ||
 | 
			
		||||
                Physics.Linecast(
 | 
			
		||||
                    transform.position,
 | 
			
		||||
                    Camera.main.transform.position,
 | 
			
		||||
                    1 << 8))) ||
 | 
			
		||||
            (pos.z <= 0f) &&
 | 
			
		||||
            (!networkView.isMine || isBot))
 | 
			
		||||
        bool mainTag = networkView.isMine && !isBot;
 | 
			
		||||
        if(Game.Settings.quarryCam && (bool)Game.QuarryVeh)
 | 
			
		||||
        {
 | 
			
		||||
			return;
 | 
			
		||||
            mainTag = (this == Game.QuarryVeh);
 | 
			
		||||
        }
 | 
			
		||||
        if (
 | 
			
		||||
            mainTag ||
 | 
			
		||||
            !Game.Settings.hideNames ||
 | 
			
		||||
            (
 | 
			
		||||
                Vector3.Distance(
 | 
			
		||||
                    new Vector3(pos.x, pos.y, 0),
 | 
			
		||||
                    Input.mousePosition) < 40 &&
 | 
			
		||||
                !Physics.Linecast(
 | 
			
		||||
                    transform.position,
 | 
			
		||||
                    Camera.main.transform.position, 1 << 8)))
 | 
			
		||||
        {
 | 
			
		||||
            if (pos.z > 0 || mainTag)
 | 
			
		||||
            {
 | 
			
		||||
                if (pos.z < 0f)
 | 
			
		||||
                {
 | 
			
		||||
                    pos.z = 0f;
 | 
			
		||||
@ -359,7 +370,7 @@ public class Vehicle : MonoBehaviour
 | 
			
		||||
                        pos.z * 0.2f);
 | 
			
		||||
                if (
 | 
			
		||||
                    (pos.z <= 1f || pos.y < sizeY * 1.9f) &&
 | 
			
		||||
            networkView.isMine && !isBot)
 | 
			
		||||
                        mainTag)
 | 
			
		||||
                {
 | 
			
		||||
                    if (pos.z <= 1f)
 | 
			
		||||
                    {
 | 
			
		||||
@ -384,6 +395,8 @@ public class Vehicle : MonoBehaviour
 | 
			
		||||
                            "" :
 | 
			
		||||
                            "_it"));
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
    public IEnumerator OnPrefsUpdated()
 | 
			
		||||
    {
 | 
			
		||||
@ -401,7 +414,7 @@ public class Vehicle : MonoBehaviour
 | 
			
		||||
                    transform.position,
 | 
			
		||||
                    transform.rotation);
 | 
			
		||||
                ramoSphere.transform.parent = transform;
 | 
			
		||||
                Collider[] colliders = (Collider[])vehObj.GetComponentsInChildren(typeof(Collider));
 | 
			
		||||
                Collider[] colliders = (Collider[])vehObj.GetComponentsInChildren<Collider>();
 | 
			
		||||
                foreach (Collider cldr in colliders)
 | 
			
		||||
                {
 | 
			
		||||
                    Physics.IgnoreCollision(ramoSphere.collider, cldr);
 | 
			
		||||
@ -410,15 +423,16 @@ public class Vehicle : MonoBehaviour
 | 
			
		||||
            ramoSphere.active = false; //DRAGONHERE - MAJOR UNITY BUG: We need to set this all the time, as colliders that are instantiated using a prefab and are then thrown inside of rightbodies are not properly initialized until some of their settings are toggled
 | 
			
		||||
            ramoSphereScale = (((Game.Settings.ramoSpheres) * 15) +
 | 
			
		||||
                camOffset * 1);
 | 
			
		||||
            zorbBall = Game.Settings.zorbSpeed != 0f ? zorbBall : false;
 | 
			
		||||
            if (ramoSphere.collider.isTrigger == zorbBall)
 | 
			
		||||
            {
 | 
			
		||||
                ramoSphere.collider.isTrigger = !zorbBall;
 | 
			
		||||
                ramoSphere.transform.localScale = Vector3.zero;
 | 
			
		||||
                ramoSphere.active = true;
 | 
			
		||||
                ((RamoSphere)ramoSphere.GetComponent(typeof(RamoSphere)))
 | 
			
		||||
                    .colorSet(zorbBall);
 | 
			
		||||
                ramoSphere.collider.active = true;
 | 
			
		||||
                ramoSphere.SendMessage("colorSet", zorbBall); //ANOTHER UNITY BUG - for some reason, SendMessage isn't working like it should...
 | 
			
		||||
                ramoSphere.GetComponent<RamoSphere>().colorSet(zorbBall);
 | 
			
		||||
            }
 | 
			
		||||
            else ramoSphere.active = true;
 | 
			
		||||
            else ramoSphere.collider.active = true;
 | 
			
		||||
            rigidbody.inertiaTensor = tnsor;
 | 
			
		||||
            rigidbody.centerOfMass = cg;
 | 
			
		||||
        }
 | 
			
		||||
@ -217,4 +217,30 @@ public class VehicleBot : MonoBehaviour
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
    public void FixedUpdate()
 | 
			
		||||
    {
 | 
			
		||||
        if (
 | 
			
		||||
            (bool)vehicle.ramoSphere &&
 | 
			
		||||
            vehicle.zorbBall &&
 | 
			
		||||
            (vehicle.input.y != 0f || vehicle.input.x != 0f))
 | 
			
		||||
        {
 | 
			
		||||
            rigidbody.AddForce(
 | 
			
		||||
                Vector3.Scale(
 | 
			
		||||
                    new Vector3(1f, 0f, 1f),
 | 
			
		||||
                    Camera.main.transform.TransformDirection(new Vector3(
 | 
			
		||||
                        vehicle.input.x * Mathf.Max(
 | 
			
		||||
                            0f,
 | 
			
		||||
                            Game.Settings.zorbSpeed + Game.Settings.zorbAgility),
 | 
			
		||||
                        0f,
 | 
			
		||||
                        vehicle.input.y * Game.Settings.zorbSpeed))),
 | 
			
		||||
                ForceMode.Acceleration);
 | 
			
		||||
            rigidbody.AddTorque(
 | 
			
		||||
                Camera.main.transform.TransformDirection(new Vector3(
 | 
			
		||||
                    vehicle.input.y,
 | 
			
		||||
                    0f,
 | 
			
		||||
                    vehicle.input.x * -1f)) * Game.Settings.zorbSpeed,
 | 
			
		||||
                ForceMode.Acceleration);
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@ -841,7 +841,7 @@ public class WhirldIn : System.Object
 | 
			
		||||
        String tSpmp = null;
 | 
			
		||||
        String tSpmp2 = null;
 | 
			
		||||
        String[] tTxts = null;
 | 
			
		||||
        String tDtmp = null;
 | 
			
		||||
        // /*UNUSED*/ String tDtmp = null;
 | 
			
		||||
 | 
			
		||||
        for (int i2 = 1; i2 < vS2.Length; i2++)
 | 
			
		||||
        {
 | 
			
		||||
@ -852,7 +852,7 @@ public class WhirldIn : System.Object
 | 
			
		||||
            else if (str[0] == "s") tSpmp = GetURL(str[1]);
 | 
			
		||||
            else if (str[0] == "s2") tSpmp2 = GetURL(str[1]);
 | 
			
		||||
            else if (str[0] == "t") tTxts = str[1].Split(","[0]);
 | 
			
		||||
            else if (str[0] == "d") tDtmp = GetURL(str[1]);
 | 
			
		||||
            //else if (str[0] == "d") tDtmp = GetURL(str[1]);
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        String thread = tName;
 | 
			
		||||
							
								
								
									
										36
									
								
								Assembly_-_UnityScript/wscript
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										36
									
								
								Assembly_-_UnityScript/wscript
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,36 @@
 | 
			
		||||
## Assembly - UnityScript
 | 
			
		||||
 | 
			
		||||
import os
 | 
			
		||||
import shutil
 | 
			
		||||
 | 
			
		||||
def post(bld):
 | 
			
		||||
	global outdir
 | 
			
		||||
	global out
 | 
			
		||||
	newout = os.path.join(outdir, 'Assembly - UnityScript.dll')
 | 
			
		||||
	if os.path.exists(out):
 | 
			
		||||
		shutil.move(out, newout)
 | 
			
		||||
 | 
			
		||||
def build(bld):
 | 
			
		||||
	level = bld.path.abspath()
 | 
			
		||||
	SOURCES = \
 | 
			
		||||
		os.path.join(level, 'Properties', 'AssemblyInfo.cs') + ' ' + \
 | 
			
		||||
		os.path.join(level, 'CompilerGenerated', 'GUIAdaptor.cs') + ' ' + \
 | 
			
		||||
		os.path.join(level, '*.cs')
 | 
			
		||||
	
 | 
			
		||||
	global outdir
 | 
			
		||||
	outdir = os.path.join(bld.env.MBUILD, 'Mars Explorer_Data')
 | 
			
		||||
	if not os.path.exists(outdir):
 | 
			
		||||
		os.makedirs(outdir)
 | 
			
		||||
	global out
 | 
			
		||||
	out = os.path.join(outdir, '58cc2f0ae478d40e7a89c7ba576c3586.dll')
 | 
			
		||||
	
 | 
			
		||||
	bld(rule='\"${MCS}\" ' +
 | 
			
		||||
		SOURCES +
 | 
			
		||||
		' -out:\"' + out +
 | 
			
		||||
		'\" -sdk:' + bld.env.MONOSDK +
 | 
			
		||||
		' -langversion:' + bld.env.MONOLANGVERSION +
 | 
			
		||||
		' -target:library'
 | 
			
		||||
		' -reference:\"' +
 | 
			
		||||
			bld.env.REF_UnityEngine + '\",\"' +
 | 
			
		||||
			bld.env.REF_AsmCSfp + '\"',)
 | 
			
		||||
	bld.add_post_fun(post)
 | 
			
		||||
							
								
								
									
										41
									
								
								Game/.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										41
									
								
								Game/.gitignore
									
									
									
									
										vendored
									
									
								
							@ -1,41 +0,0 @@
 | 
			
		||||
Assembly - UnityScript/obj/
 | 
			
		||||
Assembly - UnityScript/bin/
 | 
			
		||||
Assembly - UnityScript/.vs/
 | 
			
		||||
Assembly - UnityScript/Assembly---UnityScript.suo
 | 
			
		||||
Assembly - CSharp - first pass/obj/
 | 
			
		||||
Assembly - CSharp - first pass/bin/
 | 
			
		||||
Assembly - CSharp - first pass/.vs/
 | 
			
		||||
Assembly - CSharp - first pass/Assembly---CSharp---first-pass.suo
 | 
			
		||||
Assembly - CSharp/obj/
 | 
			
		||||
Assembly - CSharp/bin/
 | 
			
		||||
Assembly - CSharp/.vs/
 | 
			
		||||
Assembly - CSharp/Assembly---CSharp.suo
 | 
			
		||||
Assembly - UnityScript - first pass/obj/
 | 
			
		||||
Assembly - UnityScript - first pass/bin/
 | 
			
		||||
Assembly - UnityScript - first pass/.vs/
 | 
			
		||||
Assembly - UnityScript - first pass/Assembly---UnityScript---first-pass.suo
 | 
			
		||||
Ionic.Zlib/obj/
 | 
			
		||||
Ionic.Zlib/bin/
 | 
			
		||||
Ionic.Zlib/.vs/
 | 
			
		||||
Ionic.Zlib/Ionic.Zlib.suo
 | 
			
		||||
TerrainControllerData/obj/
 | 
			
		||||
TerrainControllerData/bin/
 | 
			
		||||
TerrainControllerData/.vs/
 | 
			
		||||
TerrainControllerData/TerrainControllerData.suo
 | 
			
		||||
marsxplr_build/
 | 
			
		||||
UnityEngine/obj/
 | 
			
		||||
UnityEngine/bin/
 | 
			
		||||
UnityEngine/.vs/
 | 
			
		||||
UnityEngine/UnityEngine.suo
 | 
			
		||||
Boo.Lang/obj/
 | 
			
		||||
Boo.Lang/bin/
 | 
			
		||||
Boo.Lang/.vs/
 | 
			
		||||
Boo.Lang/Boo.Lang.suo
 | 
			
		||||
UnityScript.Lang/obj/
 | 
			
		||||
UnityScript.Lang/bin/
 | 
			
		||||
UnityScript.Lang/.vs/
 | 
			
		||||
UnityScript.Lang/UnityScript.Lang.suo
 | 
			
		||||
UnityDomainLoad/obj/
 | 
			
		||||
UnityDomainLoad/bin/
 | 
			
		||||
UnityDomainLoad/.vs/
 | 
			
		||||
UnityDomainLoad/UnityDomainLoad.suo
 | 
			
		||||
@ -1,66 +0,0 @@
 | 
			
		||||
<?xml version="1.0" encoding="utf-8"?>
 | 
			
		||||
<Project ToolsVersion="3.5" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
 | 
			
		||||
  <PropertyGroup>
 | 
			
		||||
    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
 | 
			
		||||
    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
 | 
			
		||||
    <ProductVersion>9.0.21022</ProductVersion>
 | 
			
		||||
    <SchemaVersion>2.0</SchemaVersion>
 | 
			
		||||
    <OutputType>library</OutputType>
 | 
			
		||||
    <AppDesignerFolder>Properties</AppDesignerFolder>
 | 
			
		||||
    <RootNamespace>Assembly - CSharp - first pass</RootNamespace>
 | 
			
		||||
    <AssemblyName>26998b3a9cbf54825a27e5f2d3cc4df1</AssemblyName>
 | 
			
		||||
    <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
 | 
			
		||||
    <FileAlignment>512</FileAlignment>
 | 
			
		||||
    <GenerateAssemblyInfo>False</GenerateAssemblyInfo>
 | 
			
		||||
    <ProjectGuid>{93A8D6B3-DD52-4C21-A101-AF360DAFC096}</ProjectGuid>
 | 
			
		||||
  </PropertyGroup>
 | 
			
		||||
  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
 | 
			
		||||
    <DebugSymbols>true</DebugSymbols>
 | 
			
		||||
    <DebugType>full</DebugType>
 | 
			
		||||
    <Optimize>false</Optimize>
 | 
			
		||||
    <DefineConstants>DEBUG;TRACE</DefineConstants>
 | 
			
		||||
    <ErrorReport>prompt</ErrorReport>
 | 
			
		||||
    <WarningLevel>4</WarningLevel>
 | 
			
		||||
  </PropertyGroup>
 | 
			
		||||
  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
 | 
			
		||||
    <DebugType>pdbonly</DebugType>
 | 
			
		||||
    <Optimize>true</Optimize>
 | 
			
		||||
    <DefineConstants>TRACE</DefineConstants>
 | 
			
		||||
    <ErrorReport>prompt</ErrorReport>
 | 
			
		||||
    <WarningLevel>4</WarningLevel>
 | 
			
		||||
  </PropertyGroup>
 | 
			
		||||
  <PropertyGroup>
 | 
			
		||||
    <AllowUnsafeBlocks>True</AllowUnsafeBlocks>
 | 
			
		||||
    <OutputPath>bin</OutputPath>
 | 
			
		||||
    <AppendTargetFrameworkToOutputPath>False</AppendTargetFrameworkToOutputPath>
 | 
			
		||||
  </PropertyGroup>
 | 
			
		||||
  <ItemGroup>
 | 
			
		||||
    <Reference Include="UnityEngine">
 | 
			
		||||
      <HintPath>..\UnityEngine\bin\UnityEngine.dll</HintPath>
 | 
			
		||||
    </Reference>
 | 
			
		||||
  </ItemGroup>
 | 
			
		||||
  <ItemGroup>
 | 
			
		||||
    <Compile Include="ActivateTrigger.cs" />
 | 
			
		||||
    <Compile Include="BlurEffect.cs" />
 | 
			
		||||
    <Compile Include="ColorCorrectionEffect.cs" />
 | 
			
		||||
    <Compile Include="CombineChildren.cs" />
 | 
			
		||||
    <Compile Include="ContrastStretchEffect.cs" />
 | 
			
		||||
    <Compile Include="EdgeDetectEffect.cs" />
 | 
			
		||||
    <Compile Include="GlowEffect.cs" />
 | 
			
		||||
    <Compile Include="GrayscaleEffect.cs" />
 | 
			
		||||
    <Compile Include="ImageEffectBase.cs" />
 | 
			
		||||
    <Compile Include="ImageEffects.cs" />
 | 
			
		||||
    <Compile Include="MeshCombineUtility.cs" />
 | 
			
		||||
    <Compile Include="MotionBlur.cs" />
 | 
			
		||||
    <Compile Include="MouseLook.cs" />
 | 
			
		||||
    <Compile Include="NoiseEffect.cs" />
 | 
			
		||||
    <Compile Include="Properties\AssemblyInfo.cs" />
 | 
			
		||||
    <Compile Include="SepiaToneEffect.cs" />
 | 
			
		||||
    <Compile Include="SSAOEffect.cs" />
 | 
			
		||||
    <Compile Include="TwirlEffect.cs" />
 | 
			
		||||
    <Compile Include="VortexEffect.cs" />
 | 
			
		||||
    <Compile Include="Water.cs" />
 | 
			
		||||
    <Compile Include="WaterSimple.cs" />
 | 
			
		||||
  </ItemGroup>
 | 
			
		||||
  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
 | 
			
		||||
</Project>
 | 
			
		||||
@ -1,49 +0,0 @@
 | 
			
		||||
<?xml version="1.0" encoding="utf-8"?>
 | 
			
		||||
<Project ToolsVersion="3.5" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
 | 
			
		||||
  <PropertyGroup>
 | 
			
		||||
    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
 | 
			
		||||
    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
 | 
			
		||||
    <ProductVersion>9.0.21022</ProductVersion>
 | 
			
		||||
    <SchemaVersion>2.0</SchemaVersion>
 | 
			
		||||
    <OutputType>library</OutputType>
 | 
			
		||||
    <AppDesignerFolder>Properties</AppDesignerFolder>
 | 
			
		||||
    <RootNamespace>Assembly - CSharp</RootNamespace>
 | 
			
		||||
    <AssemblyName>e36192721fc364533a8edf2aefd3b72c</AssemblyName>
 | 
			
		||||
    <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
 | 
			
		||||
    <FileAlignment>512</FileAlignment>
 | 
			
		||||
    <GenerateAssemblyInfo>False</GenerateAssemblyInfo>
 | 
			
		||||
  </PropertyGroup>
 | 
			
		||||
  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
 | 
			
		||||
    <DebugSymbols>true</DebugSymbols>
 | 
			
		||||
    <DebugType>full</DebugType>
 | 
			
		||||
    <Optimize>false</Optimize>
 | 
			
		||||
    <DefineConstants>DEBUG;TRACE</DefineConstants>
 | 
			
		||||
    <ErrorReport>prompt</ErrorReport>
 | 
			
		||||
    <WarningLevel>4</WarningLevel>
 | 
			
		||||
  </PropertyGroup>
 | 
			
		||||
  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
 | 
			
		||||
    <DebugType>pdbonly</DebugType>
 | 
			
		||||
    <Optimize>true</Optimize>
 | 
			
		||||
    <DefineConstants>TRACE</DefineConstants>
 | 
			
		||||
    <ErrorReport>prompt</ErrorReport>
 | 
			
		||||
    <WarningLevel>4</WarningLevel>
 | 
			
		||||
  </PropertyGroup>
 | 
			
		||||
  <PropertyGroup>
 | 
			
		||||
    <AllowUnsafeBlocks>True</AllowUnsafeBlocks>
 | 
			
		||||
	<OutputPath>bin</OutputPath>
 | 
			
		||||
	<AppendTargetFrameworkToOutputPath>False</AppendTargetFrameworkToOutputPath>
 | 
			
		||||
  </PropertyGroup>
 | 
			
		||||
  <ItemGroup>
 | 
			
		||||
    <Reference Include="UnityEngine">
 | 
			
		||||
      <HintPath>..\UnityEngine\bin\UnityEngine.dll</HintPath>
 | 
			
		||||
    </Reference>
 | 
			
		||||
    <Reference Include="26998b3a9cbf54825a27e5f2d3cc4df1">
 | 
			
		||||
      <HintPath>..\Assembly - CSharp - first pass\bin\26998b3a9cbf54825a27e5f2d3cc4df1.dll</HintPath>
 | 
			
		||||
    </Reference>
 | 
			
		||||
  </ItemGroup>
 | 
			
		||||
  <ItemGroup>
 | 
			
		||||
    <Compile Include="*.cs" />
 | 
			
		||||
    <Compile Include="Properties\AssemblyInfo.cs" />
 | 
			
		||||
  </ItemGroup>
 | 
			
		||||
  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
 | 
			
		||||
</Project>
 | 
			
		||||
@ -1,103 +0,0 @@
 | 
			
		||||
<?xml version="1.0" encoding="utf-8"?>
 | 
			
		||||
<Project ToolsVersion="3.5" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
 | 
			
		||||
  <PropertyGroup>
 | 
			
		||||
    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
 | 
			
		||||
    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
 | 
			
		||||
    <ProductVersion>9.0.21022</ProductVersion>
 | 
			
		||||
    <SchemaVersion>2.0</SchemaVersion>
 | 
			
		||||
    <OutputType>library</OutputType>
 | 
			
		||||
    <AppDesignerFolder>Properties</AppDesignerFolder>
 | 
			
		||||
    <RootNamespace>Assembly - UnityScript</RootNamespace>
 | 
			
		||||
    <AssemblyName>58cc2f0ae478d40e7a89c7ba576c3586</AssemblyName>
 | 
			
		||||
    <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
 | 
			
		||||
    <FileAlignment>512</FileAlignment>
 | 
			
		||||
    <GenerateAssemblyInfo>False</GenerateAssemblyInfo>
 | 
			
		||||
    <ProjectGuid>{084E81A6-3376-4976-B642-4C6443C97C36}</ProjectGuid>
 | 
			
		||||
  </PropertyGroup>
 | 
			
		||||
  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
 | 
			
		||||
    <DebugSymbols>true</DebugSymbols>
 | 
			
		||||
    <DebugType>full</DebugType>
 | 
			
		||||
    <Optimize>false</Optimize>
 | 
			
		||||
    <DefineConstants>DEBUG;TRACE</DefineConstants>
 | 
			
		||||
    <ErrorReport>prompt</ErrorReport>
 | 
			
		||||
    <WarningLevel>4</WarningLevel>
 | 
			
		||||
  </PropertyGroup>
 | 
			
		||||
  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
 | 
			
		||||
    <DebugType>pdbonly</DebugType>
 | 
			
		||||
    <Optimize>true</Optimize>
 | 
			
		||||
    <DefineConstants>TRACE</DefineConstants>
 | 
			
		||||
    <ErrorReport>prompt</ErrorReport>
 | 
			
		||||
    <WarningLevel>4</WarningLevel>
 | 
			
		||||
  </PropertyGroup>
 | 
			
		||||
  <PropertyGroup>
 | 
			
		||||
    <AllowUnsafeBlocks>True</AllowUnsafeBlocks>
 | 
			
		||||
    <OutputPath>bin</OutputPath>
 | 
			
		||||
    <AppendTargetFrameworkToOutputPath>False</AppendTargetFrameworkToOutputPath>
 | 
			
		||||
  </PropertyGroup>
 | 
			
		||||
  <ItemGroup>
 | 
			
		||||
    <Reference Include="System" />
 | 
			
		||||
    <Reference Include="UnityEngine">
 | 
			
		||||
      <HintPath>..\UnityEngine\bin\UnityEngine.dll</HintPath>
 | 
			
		||||
    </Reference>
 | 
			
		||||
    <Reference Include="26998b3a9cbf54825a27e5f2d3cc4df1">
 | 
			
		||||
      <HintPath>..\Assembly - CSharp - first pass\bin\26998b3a9cbf54825a27e5f2d3cc4df1.dll</HintPath>
 | 
			
		||||
    </Reference>
 | 
			
		||||
  </ItemGroup>
 | 
			
		||||
  <ItemGroup>
 | 
			
		||||
    <Compile Include="BaseSimple.cs" />
 | 
			
		||||
    <Compile Include="Buggy.cs" />
 | 
			
		||||
    <Compile Include="CameraVehicle.cs" />
 | 
			
		||||
    <Compile Include="ColliderAtach.cs" />
 | 
			
		||||
    <Compile Include="CompilerGeneratedExtensions.cs" />
 | 
			
		||||
    <Compile Include="CompilerGenerated\GUIAdaptor.cs" />
 | 
			
		||||
    <Compile Include="CustomCursor.cs" />
 | 
			
		||||
    <Compile Include="EntryPoint.cs" />
 | 
			
		||||
    <Compile Include="FloorController.cs" />
 | 
			
		||||
    <Compile Include="Game.cs" />
 | 
			
		||||
    <Compile Include="GameData.cs" />
 | 
			
		||||
    <Compile Include="GameWorldDesc.cs" />
 | 
			
		||||
    <Compile Include="Hovercraft.cs" />
 | 
			
		||||
    <Compile Include="HoverThrustClustOfDust.cs" />
 | 
			
		||||
    <Compile Include="HoverThrustMoonOrBust.cs" />
 | 
			
		||||
    <Compile Include="Init.cs" />
 | 
			
		||||
    <Compile Include="Jet.cs" />
 | 
			
		||||
    <Compile Include="JetThruster.cs" />
 | 
			
		||||
    <Compile Include="JumpPoint.cs" />
 | 
			
		||||
    <Compile Include="Lobby.cs" />
 | 
			
		||||
    <Compile Include="LobbyDecor.cs" />
 | 
			
		||||
    <Compile Include="LobbyStarfield.cs" />
 | 
			
		||||
    <Compile Include="MeshSerializer.cs" />
 | 
			
		||||
    <Compile Include="Messaging.cs" />
 | 
			
		||||
    <Compile Include="MiniMap.cs" />
 | 
			
		||||
    <Compile Include="MonoBehaviourScript.cs" />
 | 
			
		||||
    <Compile Include="PrefabHere.cs" />
 | 
			
		||||
    <Compile Include="Properties\AssemblyInfo.cs" />
 | 
			
		||||
    <Compile Include="RamoSphere.cs" />
 | 
			
		||||
    <Compile Include="Rocket.cs" />
 | 
			
		||||
    <Compile Include="SeaData.cs" />
 | 
			
		||||
    <Compile Include="Settings.cs" />
 | 
			
		||||
    <Compile Include="Skidmarks.cs" />
 | 
			
		||||
    <Compile Include="SoundEffect.cs" />
 | 
			
		||||
    <Compile Include="Tank.cs" />
 | 
			
		||||
    <Compile Include="TankMe.cs" />
 | 
			
		||||
    <Compile Include="TankTrack.cs" />
 | 
			
		||||
    <Compile Include="TankTrackSimple.cs" />
 | 
			
		||||
    <Compile Include="TerrainController.cs" />
 | 
			
		||||
    <Compile Include="ThrustCone.cs" />
 | 
			
		||||
    <Compile Include="Vehicle.cs" />
 | 
			
		||||
    <Compile Include="VehicleBot.cs" />
 | 
			
		||||
    <Compile Include="VehicleData.cs" />
 | 
			
		||||
    <Compile Include="VehicleLocal.cs" />
 | 
			
		||||
    <Compile Include="VehicleMe.cs" />
 | 
			
		||||
    <Compile Include="VehicleNet.cs" />
 | 
			
		||||
    <Compile Include="VehicleTrigger.cs" />
 | 
			
		||||
    <Compile Include="WaterLightmapFog.cs" />
 | 
			
		||||
    <Compile Include="WhirldData.cs" />
 | 
			
		||||
    <Compile Include="WhirldIn.cs" />
 | 
			
		||||
    <Compile Include="WhirldLibrary.cs" />
 | 
			
		||||
    <Compile Include="WhirldLOD.cs" />
 | 
			
		||||
    <Compile Include="WhirldObject.cs" />
 | 
			
		||||
    <Compile Include="World.cs" />
 | 
			
		||||
  </ItemGroup>
 | 
			
		||||
  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
 | 
			
		||||
</Project>
 | 
			
		||||
@ -1,47 +0,0 @@
 | 
			
		||||
<details closed>
 | 
			
		||||
<summary><h2>Assembly - UnityScript</h2></summary>
 | 
			
		||||
<h3>About</h3>
 | 
			
		||||
<ul>
 | 
			
		||||
  <li>(almost) all of the games compiled unityscripts</li>
 | 
			
		||||
  <li>Used ILSpy to decompile dll from marsxplr 2.22 win32 into C#</li>
 | 
			
		||||
  <li>Updated upd3 address (Lobby.cs)</li>
 | 
			
		||||
  <li>Updated game version from 2.22 to 2.3 (GameData.cs)</li>
 | 
			
		||||
  <li>changed max bots from 10 to 25</li>
 | 
			
		||||
</ul>
 | 
			
		||||
</details>
 | 
			
		||||
<hr>
 | 
			
		||||
<details closed>
 | 
			
		||||
<summary><h2>Assembly - CSharp</h2></summary>
 | 
			
		||||
<h3>About</h3>
 | 
			
		||||
<ul>
 | 
			
		||||
  <li>(almost) all of the games compiled C# scripts</li>
 | 
			
		||||
  <li>decompiled with ilspy</li>
 | 
			
		||||
</ul>
 | 
			
		||||
</details>
 | 
			
		||||
<hr>
 | 
			
		||||
<details closed>
 | 
			
		||||
<summary><h2>Assembly - CSharp - first pass</h2></summary>
 | 
			
		||||
<h3>About</h3>
 | 
			
		||||
<ul>
 | 
			
		||||
  <li>some of the games compiled C# scripts</li>
 | 
			
		||||
  <li>decompiled with ilspy</li>
 | 
			
		||||
</ul>
 | 
			
		||||
</details>
 | 
			
		||||
<hr>
 | 
			
		||||
<details closed>
 | 
			
		||||
<summary><h2>UnityEngine</h2></summary>
 | 
			
		||||
<h3>About</h3>
 | 
			
		||||
<ul>
 | 
			
		||||
  <li>Unity Engine functionality</li>
 | 
			
		||||
  <li>decomipled with ilspy</li>
 | 
			
		||||
</ul>
 | 
			
		||||
</details>
 | 
			
		||||
<hr>
 | 
			
		||||
<details closed>
 | 
			
		||||
<summary><h2>UnityDomainLoad</h2></summary>
 | 
			
		||||
<h3>About</h3>
 | 
			
		||||
<ul>
 | 
			
		||||
  <li>UnityDomainLoad.exe</li>
 | 
			
		||||
  <li>decompiled with ilspy</li>
 | 
			
		||||
</ul>
 | 
			
		||||
</details>
 | 
			
		||||
@ -1,42 +0,0 @@
 | 
			
		||||
<?xml version="1.0" encoding="utf-8"?>
 | 
			
		||||
<Project ToolsVersion="3.5" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
 | 
			
		||||
  <PropertyGroup>
 | 
			
		||||
    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
 | 
			
		||||
    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
 | 
			
		||||
    <ProductVersion>9.0.21022</ProductVersion>
 | 
			
		||||
    <SchemaVersion>2.0</SchemaVersion>
 | 
			
		||||
    <OutputType>Exe</OutputType>
 | 
			
		||||
    <AppDesignerFolder>Properties</AppDesignerFolder>
 | 
			
		||||
    <RootNamespace>UnityDomainLoad</RootNamespace>
 | 
			
		||||
    <AssemblyName>UnityDomainLoad</AssemblyName>
 | 
			
		||||
    <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
 | 
			
		||||
    <FileAlignment>512</FileAlignment>
 | 
			
		||||
    <GenerateAssemblyInfo>False</GenerateAssemblyInfo>
 | 
			
		||||
  </PropertyGroup>
 | 
			
		||||
  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
 | 
			
		||||
    <DebugSymbols>true</DebugSymbols>
 | 
			
		||||
    <DebugType>full</DebugType>
 | 
			
		||||
    <Optimize>false</Optimize>
 | 
			
		||||
    <DefineConstants>DEBUG;TRACE</DefineConstants>
 | 
			
		||||
    <ErrorReport>prompt</ErrorReport>
 | 
			
		||||
    <WarningLevel>4</WarningLevel>
 | 
			
		||||
  </PropertyGroup>
 | 
			
		||||
  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
 | 
			
		||||
    <DebugType>pdbonly</DebugType>
 | 
			
		||||
    <Optimize>true</Optimize>
 | 
			
		||||
    <DefineConstants>TRACE</DefineConstants>
 | 
			
		||||
    <ErrorReport>prompt</ErrorReport>
 | 
			
		||||
    <WarningLevel>4</WarningLevel>
 | 
			
		||||
  </PropertyGroup>
 | 
			
		||||
  <PropertyGroup>
 | 
			
		||||
    <AllowUnsafeBlocks>True</AllowUnsafeBlocks>
 | 
			
		||||
	<OutputPath>bin</OutputPath>
 | 
			
		||||
	<AppendTargetFrameworkToOutputPath>False</AppendTargetFrameworkToOutputPath>
 | 
			
		||||
  </PropertyGroup>
 | 
			
		||||
  
 | 
			
		||||
  <ItemGroup>
 | 
			
		||||
    <Compile Include="UnityEngine\UnityDomainLoad.cs" />
 | 
			
		||||
    <Compile Include="Properties\AssemblyInfo.cs" />
 | 
			
		||||
  </ItemGroup>
 | 
			
		||||
  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
 | 
			
		||||
</Project>
 | 
			
		||||
@ -1,42 +0,0 @@
 | 
			
		||||
<?xml version="1.0" encoding="utf-8"?>
 | 
			
		||||
<Project ToolsVersion="3.5" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
 | 
			
		||||
  <PropertyGroup>
 | 
			
		||||
    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
 | 
			
		||||
    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
 | 
			
		||||
    <ProductVersion>9.0.21022</ProductVersion>
 | 
			
		||||
    <SchemaVersion>2.0</SchemaVersion>
 | 
			
		||||
    <OutputType>library</OutputType>
 | 
			
		||||
    <AppDesignerFolder>Properties</AppDesignerFolder>
 | 
			
		||||
    <RootNamespace>UnityEngine</RootNamespace>
 | 
			
		||||
    <AssemblyName>UnityEngine</AssemblyName>
 | 
			
		||||
    <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
 | 
			
		||||
    <FileAlignment>512</FileAlignment>
 | 
			
		||||
    <GenerateAssemblyInfo>False</GenerateAssemblyInfo>
 | 
			
		||||
    <ProjectGuid>{C67F4835-3976-49D0-AA05-3487C9FD57A2}</ProjectGuid>
 | 
			
		||||
  </PropertyGroup>
 | 
			
		||||
  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
 | 
			
		||||
    <DebugSymbols>true</DebugSymbols>
 | 
			
		||||
    <DebugType>full</DebugType>
 | 
			
		||||
    <Optimize>false</Optimize>
 | 
			
		||||
    <DefineConstants>DEBUG;TRACE</DefineConstants>
 | 
			
		||||
    <ErrorReport>prompt</ErrorReport>
 | 
			
		||||
    <WarningLevel>4</WarningLevel>
 | 
			
		||||
  </PropertyGroup>
 | 
			
		||||
  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
 | 
			
		||||
    <DebugType>pdbonly</DebugType>
 | 
			
		||||
    <Optimize>true</Optimize>
 | 
			
		||||
    <DefineConstants>TRACE</DefineConstants>
 | 
			
		||||
    <ErrorReport>prompt</ErrorReport>
 | 
			
		||||
    <WarningLevel>4</WarningLevel>
 | 
			
		||||
  </PropertyGroup>
 | 
			
		||||
  <PropertyGroup>
 | 
			
		||||
    <AllowUnsafeBlocks>True</AllowUnsafeBlocks>
 | 
			
		||||
    <OutputPath>bin</OutputPath>
 | 
			
		||||
    <AppendTargetFrameworkToOutputPath>False</AppendTargetFrameworkToOutputPath>
 | 
			
		||||
  </PropertyGroup>
 | 
			
		||||
  <ItemGroup>
 | 
			
		||||
    <Compile Include="UnityEngine\*.cs" />
 | 
			
		||||
    <Compile Include="Properties\AssemblyInfo.cs" />
 | 
			
		||||
  </ItemGroup>
 | 
			
		||||
  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
 | 
			
		||||
</Project>
 | 
			
		||||
@ -1,50 +0,0 @@
 | 
			
		||||
@echo off
 | 
			
		||||
 | 
			
		||||
set "flags=/p:Configuration=Debug /p:Platform=Win32"
 | 
			
		||||
 | 
			
		||||
echo ----------------
 | 
			
		||||
echo   BUILDING ALL
 | 
			
		||||
echo ----------------
 | 
			
		||||
 | 
			
		||||
msbuild %flags% "UnityEngine\UnityEngine.csproj"
 | 
			
		||||
if %errorlevel% neq 0 exit /b %errorlevel%
 | 
			
		||||
msbuild %flags% "Assembly - CSharp - first pass\Assembly---CSharp---first-pass.csproj"
 | 
			
		||||
if %errorlevel% neq 0 exit /b %errorlevel%
 | 
			
		||||
msbuild %flags% "Assembly - UnityScript\Assembly---UnityScript.csproj"
 | 
			
		||||
if %errorlevel% neq 0 exit /b %errorlevel%
 | 
			
		||||
msbuild %flags% "Assembly - CSharp\Assembly---CSharp.csproj"
 | 
			
		||||
if %errorlevel% neq 0 exit /b %errorlevel%
 | 
			
		||||
msbuild %flags% "UnityDomainLoad\UnityDomainLoad.csproj"
 | 
			
		||||
if %errorlevel% neq 0 exit /b %errorlevel%
 | 
			
		||||
 | 
			
		||||
echo -----------------
 | 
			
		||||
echo   COPYING FILES
 | 
			
		||||
echo -----------------
 | 
			
		||||
 | 
			
		||||
if exist "marsxplr_build\Mars Explorer_Data\lib" rd /S /Q "marsxplr_build\Mars Explorer_Data\lib"
 | 
			
		||||
if %errorlevel% neq 0 exit /b %errorlevel%
 | 
			
		||||
if exist "marsxplr_build\Mars Explorer_Data" rd /S /Q "marsxplr_build\Mars Explorer_Data"
 | 
			
		||||
if %errorlevel% neq 0 exit /b %errorlevel%
 | 
			
		||||
if exist marsxplr_build rd /S /Q marsxplr_build
 | 
			
		||||
if %errorlevel% neq 0 exit /b %errorlevel%
 | 
			
		||||
md marsxplr_build
 | 
			
		||||
if %errorlevel% neq 0 exit /b %errorlevel%
 | 
			
		||||
md "marsxplr_build\Mars Explorer_Data"
 | 
			
		||||
if %errorlevel% neq 0 exit /b %errorlevel%
 | 
			
		||||
md "marsxplr_build\Mars Explorer_Data\lib"
 | 
			
		||||
if %errorlevel% neq 0 exit /b %errorlevel%
 | 
			
		||||
 | 
			
		||||
copy "Assembly - CSharp\bin\e36192721fc364533a8edf2aefd3b72c.dll" "marsxplr_build\Mars Explorer_Data\Assembly - CSharp.dll"
 | 
			
		||||
if %errorlevel% neq 0 exit /b %errorlevel%
 | 
			
		||||
copy "Assembly - CSharp - first pass\bin\26998b3a9cbf54825a27e5f2d3cc4df1.dll" "marsxplr_build\Mars Explorer_Data\Assembly - CSharp - first pass.dll"
 | 
			
		||||
if %errorlevel% neq 0 exit /b %errorlevel%
 | 
			
		||||
copy "Assembly - UnityScript\bin\58cc2f0ae478d40e7a89c7ba576c3586.dll" "marsxplr_build\Mars Explorer_Data\Assembly - UnityScript.dll"
 | 
			
		||||
if %errorlevel% neq 0 exit /b %errorlevel%
 | 
			
		||||
copy "UnityEngine\bin\UnityEngine.dll" "marsxplr_build\Mars Explorer_Data\lib\UnityEngine.dll"
 | 
			
		||||
if %errorlevel% neq 0 exit /b %errorlevel%
 | 
			
		||||
copy "UnityDomainLoad\bin\UnityDomainLoad.exe" "marsxplr_build\Mars Explorer_Data\lib\UnityDomainLoad.exe"
 | 
			
		||||
if %errorlevel% neq 0 exit /b %errorlevel%
 | 
			
		||||
 | 
			
		||||
echo -----------------
 | 
			
		||||
echo   BUILD SUCCESS
 | 
			
		||||
echo -----------------
 | 
			
		||||
@ -1,16 +0,0 @@
 | 
			
		||||
------------LISTING/DERIVED BUILD ORDER------------------
 | 
			
		||||
 | 
			
		||||
UnityEngine:
 | 
			
		||||
 | 
			
		||||
Assembly - CSharp - first pass:
 | 
			
		||||
	UnityEngine
 | 
			
		||||
 | 
			
		||||
Assembly - UnityScript:
 | 
			
		||||
	Assembly - CSharp - first pass
 | 
			
		||||
	UnityEngine
 | 
			
		||||
 | 
			
		||||
Assembly - CSharp:
 | 
			
		||||
	Assembly CSharp - first pass
 | 
			
		||||
	UnityEngine
 | 
			
		||||
 | 
			
		||||
UnityDomainLoad:
 | 
			
		||||
@ -1,18 +0,0 @@
 | 
			
		||||
@echo off
 | 
			
		||||
 | 
			
		||||
set "flags=/p:Configuration=Debug /p:Platform=Win32"
 | 
			
		||||
 | 
			
		||||
echo -------------------
 | 
			
		||||
echo   CLEANING BUILDS
 | 
			
		||||
echo -------------------
 | 
			
		||||
 | 
			
		||||
msbuild /t:Clean %flags% "Assembly - CSharp\Assembly---CSharp.csproj"
 | 
			
		||||
if %errorlevel% neq 0 exit /b %errorlevel%
 | 
			
		||||
msbuild /t:Clean %flags% "Assembly - CSharp - first pass\Assembly---CSharp---first-pass.csproj"
 | 
			
		||||
if %errorlevel% neq 0 exit /b %errorlevel%
 | 
			
		||||
msbuild /t:Clean %flags% "Assembly - UnityScript\Assembly---UnityScript.csproj"
 | 
			
		||||
if %errorlevel% neq 0 exit /b %errorlevel%
 | 
			
		||||
msbuild /t:Clean %flags% "UnityEngine\UnityEngine.csproj"
 | 
			
		||||
if %errorlevel% neq 0 exit /b %errorlevel%
 | 
			
		||||
msbuild /t:Clean %flags% "UnityDomainLoad\UnityDomainLoad.csproj"
 | 
			
		||||
if %errorlevel% neq 0 exit /b %errorlevel%
 | 
			
		||||
							
								
								
									
										10
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										10
									
								
								README.md
									
									
									
									
									
								
							@ -4,7 +4,9 @@ My amatuer attempt at decompiling Mars Explorer so that it can be improved to ru
 | 
			
		||||
<hr>
 | 
			
		||||
<h1>building</h1>
 | 
			
		||||
Pretty much all of the game in terms of functionality has compilable source now, but the platform specific code is still a work in progress.<br>
 | 
			
		||||
I have setup a quick and dirty build system for all said targets in the single build_all.cmd script (and clean_all.cmd).<br>
 | 
			
		||||
At the moment the way the project is built is compiling each targets's respective .csproj using Command Line For Visual Studio 2008<br>
 | 
			
		||||
If the build is successful, you should be able to find a bunch of dlls in the directory marsxplr_build\Mars Explorer_Data.<br>
 | 
			
		||||
To test the build, can copy the dlls from that directory into the Mars Explorer_Data directory of your own personal Mars Explorer install in place of the original files.<br>
 | 
			
		||||
Building the project requires the mono mcs compiler and python.<br>
 | 
			
		||||
1. configure the project: <pre>python waf configure [--mono_home=...]</pre>
 | 
			
		||||
2. build the project: <pre>python waf build</pre>
 | 
			
		||||
2.5: rebuilding the project: <pre>python waf clean build</pre>
 | 
			
		||||
If the build is successful, you should be able to find a bunch of dlls in the directory Game\marsxplr_build\Mars Explorer_Data.<br>
 | 
			
		||||
To test the build, can copy the contents of the built Mars Explorer_Data dir into the Mars Explorer_Data dir of your own personal Mars Explorer install in place of the original files.<br>
 | 
			
		||||
 | 
			
		||||
Some files were not shown because too many files have changed in this diff Show More
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user