It was the Bitcointalk forum that inspired us to create Bitcointalksearch.org - Bitcointalk is an excellent site that should be the default page for anybody dealing in cryptocurrency, since it is a virtual gold-mine of data. However, our experience and user feedback led us create our site; Bitcointalk's search is slow, and difficult to get the results you need, because you need to log in first to find anything useful - furthermore, there are rate limiters for their search functionality.
The aim of our project is to create a faster website that yields more results and faster without having to create an account and eliminate the need to log in - your personal data, therefore, will never be in jeopardy since we are not asking for any of your data and you don't need to provide them to use our site with all of its capabilities.
We created this website with the sole purpose of users being able to search quickly and efficiently in the field of cryptocurrency so they will have access to the latest and most accurate information and thereby assisting the crypto-community at large.
/**
* Script written by OMA [FPSPrefab1.3]
**/
var isRemotePlayer = true;
var proneSpeed = 1.0;
var crouchSpeed = 2.0;
var walkSpeed = 8.0;
var runSpeed = 20.0;
var runSkillLevel : float = 0.0;
var gravitySkillLevel : float = 0.0;
var fallDamageMultiplier : int = 2;
var fallAnimGO : GameObject;
var inAirControl = 0.1;
var gravity = 20.0;
var maxVelocityChange = 10.0;
var canJump = true;
var jumpHeight = 2.0;
var fallSound : AudioClip;
var playerWeapons : GameObject;
//@HideInInspector
var grounded = false;
private var sliding : boolean = false;
private var speed = 10.0;
private var limitDiagonalSpeed = true;
private var normalHeight : float = 0.5;
private var crouchHeight : float = -0.2;
private var crouchingHeight = 0.3;
var proneHeight : float = -0.7;
private var hit : RaycastHit;
private var myTransform : Transform;
private var rayDistance : float;
private var mainCameraGO : GameObject;
private var weaponCameraGO : GameObject;
var state : int = 0;
var moveSpeed : float = 2.0;
var targetVelocity : Vector3 = Vector3.zero;
var onLadder : boolean = false;
var climbSpeed : float = 10.0;
var canClimb : boolean = false;
@script RequireComponent(Rigidbody, CapsuleCollider)
function Awake (){
rigidbody.freezeRotation = true;
rigidbody.useGravity = false;
myTransform = transform;
mainCameraGO = gameObject.FindWithTag("MainCamera");
weaponCameraGO = gameObject.FindWithTag("WeaponCamera");
rayDistance = collider.height * .5 + collider.radius;
playerWeapons.animation.wrapMode = WrapMode.Loop;
}
function FixedUpdate (){
if(isRemotePlayer)return;
var inputX = Input.GetAxis("Horizontal");
var inputY = Input.GetAxis("Vertical");
var inputModifyFactor = (inputX != 0.0 && inputY != 0.0 && limitDiagonalSpeed)? .7071 : 1.0;
if (grounded){
if(state == 0){
if ( Physics.Raycast(myTransform.position, -Vector3.up, hit, rayDistance)) {
if (Vector3.Angle(hit.normal, Vector3.up) > 30){
sliding = true;
rigidbody.AddRelativeForce (-Vector3.up * 500);
}else{
sliding = false;
}
}
}
// Calculate how fast we should be moving
targetVelocity = new Vector3(inputX * inputModifyFactor, 0.0, inputY * inputModifyFactor);
targetVelocity = myTransform.TransformDirection(targetVelocity);
targetVelocity *= speed;
// Apply a force that attempts to reach our target velocity
var velocity = rigidbody.velocity;
var velocityChange = (targetVelocity - velocity);
velocityChange.x = Mathf.Clamp(velocityChange.x, -maxVelocityChange, maxVelocityChange);
velocityChange.z = Mathf.Clamp(velocityChange.z, -maxVelocityChange, maxVelocityChange);
velocityChange.y = 0.0;
rigidbody.AddForce(velocityChange, ForceMode.VelocityChange);
if (canJump && Input.GetButtonDown("Jump") && state == 0){
rigidbody.velocity = Vector3(velocity.x, CalculateJumpVerticalSpeed(), velocity.z);
}
if(Input.GetButton("Use") && onLadder){
canClimb = true;
rigidbody.velocity = Vector3(velocity.x, CalculateJumpVerticalSpeed(), velocity.z);
}
if(state == 0){
if (grounded && Input.GetButton("Run") && Input.GetKey("w")){
speed = runSpeed + runSkillLevel;
}else{
speed = walkSpeed;
}
}else if(state == 1){
speed = crouchSpeed;
}else if(state == 2){
speed = proneSpeed;
}
}else{
if(onLadder && canClimb){
//if(Input.GetAxis("Vertical")){
targetVelocity = new Vector3(0.0, Input.GetAxis("Vertical") * inputModifyFactor, 0.0 );
targetVelocity *= climbSpeed;
targetVelocity = myTransform.TransformDirection(targetVelocity);
var velChange = (targetVelocity - rigidbody.velocity);
velChange.x = Mathf.Clamp(velChange.x, -maxVelocityChange, maxVelocityChange);
velChange.y = Mathf.Clamp(velChange.y, -maxVelocityChange, maxVelocityChange);
velChange.z = 0.0;
rigidbody.AddForce(velChange, ForceMode.VelocityChange);
//}
/*
// Calculate how fast we should be moving
targetVelocity = new Vector3(inputX * inputModifyFactor, inputY * inputModifyFactor, 0.0);
targetVelocity = myTransform.TransformDirection(targetVelocity);
targetVelocity *= climbSpeed;
// Apply a force that attempts to reach our target velocity
var velChange = (targetVelocity - rigidbody.velocity);
velChange.x = Mathf.Clamp(velChange.x, -maxVelocityChange, maxVelocityChange);
velChange.y = Mathf.Clamp(velChange.y, -maxVelocityChange, maxVelocityChange);
velChange.z = 0.0;
rigidbody.AddForce(velChange, ForceMode.VelocityChange);
*/
}else{
// AirControl
targetVelocity = new Vector3(Input.GetAxis("Horizontal"), 0.0, Input.GetAxis("Vertical"));
targetVelocity = transform.TransformDirection(targetVelocity) * inAirControl;
rigidbody.AddForce(targetVelocity, ForceMode.VelocityChange);
}
}
if(onLadder == false){
canClimb = false;
}
if(canClimb == false){
// Gravity
rigidbody.AddForce(Vector3 (0, (-gravity + gravitySkillLevel) * rigidbody.mass, 0));
}
grounded = false;
onLadder = false;
}
function OnCollisionStay (col : Collision){
for(var contact : ContactPoint in col.contacts){
if(Vector3.Angle(contact.normal, Vector3.up) < 45){
grounded = true;
}
}
}
function OnTriggerStay(other : Collider){
if (other.gameObject.tag == "Ladder") {
onLadder = true;
grounded = false;
}
}
function HitJumpPad(velocity : float) {
rigidbody.velocity.z += velocity;
}
function OnCollisionEnter (collision : Collision){
if(grounded == false){
fallAnimGO.animation.CrossFadeQueued("Fall", 0.3, QueueMode.PlayNow);
var currSpeed : float = collision.relativeVelocity.magnitude;
if (currSpeed > 25) {
var damage : float = currSpeed * fallDamageMultiplier;
Debug.Log ("FallDamage" + damage);
SendMessage ("PlayerDamage", damage, SendMessageOptions.DontRequireReceiver);
}
}
}
function CalculateJumpVerticalSpeed (){
return Mathf.Sqrt(2 * jumpHeight * gravity);
}
function Update(){
if(isRemotePlayer)return;
if(grounded){
if ( rigidbody.velocity.magnitude < (walkSpeed+2) && rigidbody.velocity.magnitude > (walkSpeed-2) && !Input.GetButton("Fire2")){
playerWeapons.animation.CrossFade("Walk");
}else if (rigidbody.velocity.magnitude > (runSpeed -2)){
playerWeapons.animation.CrossFade("Run");
}else if (rigidbody.velocity.magnitude < (crouchSpeed+1) && rigidbody.velocity.magnitude > (crouchSpeed-1) && Input.GetButton("Fire2")){
playerWeapons.animation.CrossFade("CrouchAim");
}else{
playerWeapons.animation.CrossFade("IdleAnim");
}
}else{
playerWeapons.animation.CrossFade("IdleAnim");
}
if(mainCameraGO.transform.localPosition.y > normalHeight){
mainCameraGO.transform.localPosition.y = normalHeight;
} else if(mainCameraGO.transform.localPosition.y < proneHeight){
mainCameraGO.transform.localPosition.y = proneHeight;
}
weaponCameraGO.transform.localPosition.y = mainCameraGO.transform.localPosition.y;
if (Input.GetButtonDown("Crouch")) {
if(state == 0 || state == 2){
state = 1;
} else if(state == 1){
state = 0;
}
}
if(state == 0){ //Stand Position
collider.direction = 1;
collider.height = 2.0;
collider.center = Vector3 (0, 0, 0);
if(mainCameraGO.transform.localPosition.y < normalHeight){
mainCameraGO.transform.localPosition.y += Time.deltaTime * moveSpeed;
}
}else if(state == 1){ //Crouch Position
collider.direction = 1;
collider.height = 1.5;
collider.center = Vector3 (0, -0.25, 0);
if(mainCameraGO.transform.localPosition.y > crouchHeight){
if(mainCameraGO.transform.localPosition.y - (crouchingHeight * Time.deltaTime/.1) < crouchHeight){
mainCameraGO.transform.localPosition.y = crouchHeight;
} else {
mainCameraGO.transform.localPosition.y -= crouchingHeight * Time.deltaTime/.1;
}
}
if(mainCameraGO.transform.localPosition.y < crouchHeight){
if(mainCameraGO.transform.localPosition.y - (crouchingHeight * Time.deltaTime/.1) > crouchHeight){
mainCameraGO.transform.localPosition.y = crouchHeight;
} else {
mainCameraGO.transform.localPosition.y += crouchingHeight * Time.deltaTime/.1;
}
}
if (Input.GetButtonDown("Jump")){
state = 0;
}
} else if(state == 2){ //Prone Position
collider.direction = 2;
collider.height = 0.5;
collider.center = Vector3 (0, -0.5, 0);
if(mainCameraGO.transform.localPosition.y > proneHeight){
mainCameraGO.transform.localPosition.y += proneHeight * Time.deltaTime * (moveSpeed + rigidbody.velocity.magnitude);
}
if (Input.GetButtonDown("Jump")){
state = 1;
}
}
if (Input.GetButtonDown("GoProne")){
if(state == 0 || state == 1){
state = 2;
} else if(state == 2){
state = 0;
}
}
}
function Accelerate (accelerateY : float, accelerateZ : float){
grounded = false;
rigidbody.AddRelativeForce (0, accelerateY, accelerateZ);
}
function OnGUI(){
if(onLadder && !canClimb)
GUI.Label(Rect(Screen.width - (Screen.width/1.7),Screen.height - (Screen.height/1.4),800,100),"Press key >>E<< to Climb");
}
using UnityEngine;
using System.Collections;
using System.Collections.Generic;
public class RigidController2 : MonoBehaviour {
/**
* Script written by OMA [FPSPrefab1.3]
**/
public bool isRemotePlayer = true;
public float proneSpeed = 1.0f;
public float crouchSpeed = 2.0f;
public float walkSpeed = 8.0f;
public float runSpeed = 20.0f;
public float runSkillLevel = 0.0f;
public float gravitySkillLevel = 0.0f;
public int fallDamageMultiplier = 2;
GameObject fallAnimGO;
public float inAirControl = 0.1f;
public float gravity = 20.0f;
public float maxVelocityChange = 10.0f;
public bool canJump = true;
public float jumpHeight = 2.0f;
AudioClip fallSound;
GameObject playerWeapons;
//@HideInInspector
public bool grounded = false;
private bool sliding = false;
private float speed = 10.0f;
private bool limitDiagonalSpeed = true;
private float normalHeight = 0.5f;
private float crouchHeight = -0.2f;
private float crouchingHeight = 0.3f;
public float proneHeight = -0.7f;
private RaycastHit hit;
private Transform myTransform;
private float rayDistance;
private GameObject mainCameraGO;
private GameObject weaponCameraGO;
int state = 0;
float moveSpeed = 2.0f;
Vector3 targetVelocity = Vector3.zero;
bool onLadder = false;
float climbSpeed = 10.0f;
bool canClimb = false;
//[RequireComponent(Rigidbody, CapsuleCollider)]
void Awake (){
rigidbody.freezeRotation = true;
rigidbody.useGravity = false;
myTransform = transform;
mainCameraGO = GameObject.FindWithTag("MainCamera");
weaponCameraGO = GameObject.FindWithTag("WeaponCamera");
rayDistance = collider.height * .5 + collider.radius;
playerWeapons.animation.wrapMode = WrapMode.Loop;
}
void FixedUpdate (){
if(isRemotePlayer)return;
double inputX = Input.GetAxis("Horizontal");
double inputY = Input.GetAxis("Vertical");
double inputModifyFactor = (inputX != 0.0f && inputY != 0.0f && limitDiagonalSpeed)? .7071 : 1.0f;
if (grounded){
if(state == 0)
{
if ( Physics.Raycast(myTransform.position, -Vector3.up, hit, rayDistance))
{
if (Vector3.Angle(hit.normal, Vector3.up) > 30)
{
sliding = true;
rigidbody.AddRelativeForce (-Vector3.up * 500);
}
else
{
sliding = false;
}
}
}
// Calculate how fast we should be moving
targetVelocity = new Vector3(inputX * inputModifyFactor, 0.0f, inputY * inputModifyFactor);
targetVelocity = myTransform.TransformDirection(targetVelocity);
targetVelocity *= speed;
// Apply a force that attempts to reach our target velocity
Vector3 velocity = rigidbody.velocity;
Vector3 velocityChange = (targetVelocity - velocity);
velocityChange.x = Mathf.Clamp(velocityChange.x, -maxVelocityChange, maxVelocityChange);
velocityChange.z = Mathf.Clamp(velocityChange.z, -maxVelocityChange, maxVelocityChange);
velocityChange.y = 0.0f;
rigidbody.AddForce(velocityChange, ForceMode.VelocityChange);
if (canJump && Input.GetButtonDown("Jump") && state == 0){
rigidbody.velocity = Vector3(velocity.x, CalculateJumpVerticalSpeed(), velocity.z);
}
if(Input.GetButton("Use") && onLadder){
canClimb = true;
rigidbody.velocity = Vector3(velocity.x, CalculateJumpVerticalSpeed(), velocity.z);
}
if(state == 0){
if (grounded && Input.GetButton("Run") && Input.GetKey("w")){
speed = runSpeed + runSkillLevel;
}else{
speed = walkSpeed;
}
}else if(state == 1){
speed = crouchSpeed;
}else if(state == 2){
speed = proneSpeed;
}
}else{
if(onLadder && canClimb){
//if(Input.GetAxis("Vertical")){
targetVelocity = new Vector3(0.0f, Input.GetAxis("Vertical") * inputModifyFactor, 0.0f );
targetVelocity *= climbSpeed;
targetVelocity = myTransform.TransformDirection(targetVelocity);
Vector3 velChange = (targetVelocity - rigidbody.velocity);
velChange.x = Mathf.Clamp(velChange.x, -maxVelocityChange, maxVelocityChange);
velChange.y = Mathf.Clamp(velChange.y, -maxVelocityChange, maxVelocityChange);
velChange.z = 0.0f;
rigidbody.AddForce(velChange, ForceMode.VelocityChange);
//}
/*
// Calculate how fast we should be moving
targetVelocity = new Vector3(inputX * inputModifyFactor, inputY * inputModifyFactor, 0.0f);
targetVelocity = myTransform.TransformDirection(targetVelocity);
targetVelocity *= climbSpeed;
// Apply a force that attempts to reach our target velocity
FIXME_VAR_TYPE velChange= (targetVelocity - rigidbody.velocity);
velChange.x = Mathf.Clamp(velChange.x, -maxVelocityChange, maxVelocityChange);
velChange.y = Mathf.Clamp(velChange.y, -maxVelocityChange, maxVelocityChange);
velChange.z = 0.0f;
rigidbody.AddForce(velChange, ForceMode.VelocityChange);
*/
}else{
// AirControl
targetVelocity = new Vector3(Input.GetAxis("Horizontal"), 0.0f, Input.GetAxis("Vertical"));
targetVelocity = transform.TransformDirection(targetVelocity) * inAirControl;
rigidbody.AddForce(targetVelocity, ForceMode.VelocityChange);
}
}
if(onLadder == false){
canClimb = false;
}
if(canClimb == false){
// Gravity
rigidbody.AddForce(Vector3 (0, (-gravity + gravitySkillLevel) * rigidbody.mass, 0));
}
grounded = false;
onLadder = false;
}
void OnCollisionStay ( Collision col ){
foreach(ContactPoint contact in col.contacts){
if(Vector3.Angle(contact.normal, Vector3.up) < 45){
grounded = true;
}
}
}
void OnTriggerStay ( Collider other ){
if (other.gameObject.tag == "Ladder") {
onLadder = true;
grounded = false;
}
}
void HitJumpPad ( float velocity ){
rigidbody.velocity.z += velocity;
}
void OnCollisionEnter ( Collision collision ){
if(grounded == false){
fallAnimGO.animation.CrossFadeQueued("Fall", 0.3f, QueueMode.PlayNow);
float currSpeed = collision.relativeVelocity.magnitude;
if (currSpeed > 25) {
float damage = currSpeed * fallDamageMultiplier;
Debug.Log ("FallDamage" + damage);
SendMessage ("PlayerDamage", damage, SendMessageOptions.DontRequireReceiver);
}
}
}
void CalculateJumpVerticalSpeed (){
return Mathf.Sqrt(2 * jumpHeight * gravity);
}
void Update (){
if(isRemotePlayer)return;
if(grounded){
if ( rigidbody.velocity.magnitude < (walkSpeed+2) && rigidbody.velocity.magnitude > (walkSpeed-2) && !Input.GetButton("Fire2")){
playerWeapons.animation.CrossFade("Walk");
}else if (rigidbody.velocity.magnitude > (runSpeed -2)){
playerWeapons.animation.CrossFade("Run");
}else if (rigidbody.velocity.magnitude < (crouchSpeed+1) && rigidbody.velocity.magnitude > (crouchSpeed-1) && Input.GetButton("Fire2")){
playerWeapons.animation.CrossFade("CrouchAim");
}else{
playerWeapons.animation.CrossFade("IdleAnim");
}
}else{
playerWeapons.animation.CrossFade("IdleAnim");
}
if(mainCameraGO.transform.localPosition.y > normalHeight){
mainCameraGO.transform.localPosition.y = normalHeight;
} else if(mainCameraGO.transform.localPosition.y < proneHeight){
mainCameraGO.transform.localPosition.y = proneHeight;
}
weaponCameraGO.transform.localPosition.y = mainCameraGO.transform.localPosition.y;
if (Input.GetButtonDown("Crouch")) {
if(state == 0 || state == 2){
state = 1;
} else if(state == 1){
state = 0;
}
}
if(state == 0){ //Stand Position
collider.direction = 1;
collider.height = 2.0f;
collider.center = Vector3 (0, 0, 0);
if(mainCameraGO.transform.localPosition.y < normalHeight){
mainCameraGO.transform.localPosition.y += Time.deltaTime * moveSpeed;
}
}else if(state == 1){ //Crouch Position
collider.direction = 1;
collider.height = 1.5f;
collider.center = Vector3 (0, -0.25f, 0);
if(mainCameraGO.transform.localPosition.y > crouchHeight){
if(mainCameraGO.transform.localPosition.y - (crouchingHeight * Time.deltaTime/.1) < crouchHeight){
mainCameraGO.transform.localPosition.y = crouchHeight;
} else {
mainCameraGO.transform.localPosition.y -= crouchingHeight * Time.deltaTime/.1;
}
}
if(mainCameraGO.transform.localPosition.y < crouchHeight)
{
if(mainCameraGO.transform.localPosition.y - (crouchingHeight * Time.deltaTime/.1) > crouchHeight)
{
mainCameraGO.transform.localPosition.y = crouchHeight;
}
else
{
mainCameraGO.transform.localPosition.y += crouchingHeight * Time.deltaTime/.1;
}
}
if (Input.GetButtonDown("Jump")){
state = 0;
}
} else if(state == 2){ //Prone Position
collider.direction = 2;
collider.height = 0.5f;
collider.center = Vector3 (0, -0.5f, 0);
if(mainCameraGO.transform.localPosition.y > proneHeight){
mainCameraGO.transform.localPosition.y += proneHeight * Time.deltaTime * (moveSpeed + rigidbody.velocity.magnitude);
}
if (Input.GetButtonDown("Jump")){
state = 1;
}
}
if (Input.GetButtonDown("GoProne")){
if(state == 0 || state == 1){
state = 2;
} else if(state == 2){
state = 0;
}
}
}
void Accelerate ( float accelerateY , float accelerateZ ){
grounded = false;
rigidbody.AddRelativeForce (0, accelerateY, accelerateZ);
}
void OnGUI (){
if(onLadder && !canClimb)
GUI.Label( new Rect(Screen.width - (Screen.width/1.7f),Screen.height - (Screen.height/1.4f),800,100),"Press key >>E<< to Climb");
}
}