Register for your free account! | Forgot your password?

Go Back   elitepvpers > Other Online Games > Browsergames > Facebook
You last visited: Today at 22:02

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



Proracer file release

Discussion on Proracer file release within the Facebook forum part of the Browsergames category.

Reply
 
Old   #1
 
elite*gold: 0
Join Date: May 2013
Posts: 62
Received Thanks: 18
Proracer file release

This is my first release in this section, it's not so much a hack, but soon (once i read fully through it and make some edits) i'll release my way of getting the game to load this as a custom php file, for now, this is the php file at least XP

app link here


game here


server host


original js file location


some things i've noticed when just skimming this file
money seems client sided at app load time
cars can be purchased without changing money amount
Racer points and stat points can be modified
modify what time the game thinks it is to collect Property money over n over.

Code:
var TRUE = true;
var loading = '<div style="text-align: center"><h2>Loading..</h2></div>';
var mostRecentAjax;
var timeDiff = 0;

function initTimeOffset(){
	var curTime = new Date;
	//mconsole('JS time: ' + curTime.getTime() + ' Server time: ' + (pageVars.server_time * 1000));
	timeDiff = curTime.getTime() - (pageVars.server_time * 1000);
}

initTimeOffset();
function goto(path){
	top.location = pageVars.app_path + '/' + path;
}

function hashLink(){
	if(window.location != window.parent.location && $(this).attr('reddir')){
		if(pageVars.signed_request){
			var hasQuery = new RegExp("\\?", "g");
			var append = ($(this).attr('reddir').search(hasQuery) != -1 ? '&' : '?') + "signed_request=" + encodeURIComponent(pageVars.signed_request);
	  	document.location = $(this).attr('reddir') + append;
	  } else {
				document.location = $(this).attr('reddir');
			}
			top.location.hash = '/' + pageVars.fb_path + $(this).attr('reddir');
			return false;
	}
}

function reloadFrame(){
	document.location = document.location;
}
var initIng = false;
$(document).ready(function() { //TODO: Move some of these to proapps.js + obfuscate
	if(!initIng){
	initIng = true;
	setInterval('adjust();', 1000);
	start_load();
	$(document).ajaxSend(function(event, request, settings) {  //COOKIE FIXER?
		start_load();
		mconsole('appending auth to ajax request');
  if (typeof(pageVars.proapps_hash) == "undefined") return;
  // settings.data is a serialized string like "foo=bar&baz=boink" (ornull)
  settings.data = settings.data || "";
  settings.data += (settings.data ? "&" : "") + "proapps_hash=" + encodeURIComponent(pageVars.proapps_hash);
  settings.data += (settings.data ? "&" : "") + "proapps_uid=" + encodeURIComponent(pageVars.proapps_uid);
  //if there's a urlparam for code/state
  if(pageVars.signed_request){
  	settings.data += (settings.data ? "&" : "") + "signed_request=" + encodeURIComponent(pageVars.signed_request);
  }
}); 

	$('body').ajaxSuccess(function(event, request, options){
		    if (options.dataType == 'json') {
        var data = eval('(' + request.responseText + ')');
        // i has teh datas!
        //Global listeners--- commands to pass along with any ajax JSON response
        mconsole('Logging AJAXRESPONSE');
         if(data.drupal_messages){
        	$.each(data.drupal_messages.status, function(inx, msgtxt){
        			mconsole('System: ' + msgtxt);
        			popupMessage('<div class="system-message">' + msgtxt + '</span>', true, 'opaque');
        	});
        	
        }
        if(data.authlink){
        	console.log('authlink');
        	top.location = data.authlink;
        }
        mostRecentAjax = data; //for debugging
        if(data.goto){
        	console.log('goto');
        	goto(data.goto);
        }
        if(data.nextpage){
        	document.location = + '/' + data.nextpage;
        }
        if(data.money){
        	updateMoney(data.money);
        }
        if(data.user_unlocked){
        	   pageVars.user_unlocked = data.user_unlocked;
        }
        if(data.message){
        	messageInsert(data.message);
        }
        if(data.refresh_page){
        	mconsole('Whattttt');
        	document.location.reload();
        }
        	if(data.div1){
						$('#' + data.div1).html(data.fbml_div1_content);
					}
					if(data.div2){
						$('#' + data.div2).html(data.fbml_div2_content);
					}
					if(data.div3){
						$('#' + data.div3).html(data.fbml_div3_content);
					}
					if(data.div4){
						$('#' + data.div4).html(data.fbml_div4_content);
					}
					if(data.div5){
						$('#' + data.div5).html(data.fbml_div5_content);
					}
					if(data.div6){
						$('#' + data.div6).html(data.fbml_div6_content);
					}
					if(data.div7){
						$('#' + data.div7).html(data.fbml_div7_content);
					}
					if(data.div8){
						$('#' + data.div8).html(data.fbml_div8_content);
					}
					$('.racebutton').unbind('click').click(raceClick);
					$('.garage_car, .garage_top_current_image').unbind('click').click(carMenu);
					FB.XFBML.parse();
					fixtimezones();
					end_load();
    }
	});
if(pageVars.drupal_user){
	mconsole('Drupal user logged in, uid: ' + pageVars.drupal_user);
}

initPopups();
end_load();
}
});

function initPopups(){
	$('.popuplink').unbind('click').click(hiddenPopUp);
}

function hiddenPopUp(evt){
	var popupKey = $(this).attr('key');
	$('.popup_main_container').hide();
	if(popupKey){
		$(this).parents('div').eq(0).after($('#'+popupKey));
		var popup = $('#'+popupKey).show();
	
	  var pheight = popup.find('.popup_advanced').height();
	  var top = evt.pageY - parseInt(pheight/2);
	  if(top + pheight > $(document).height()){
	  	top = $(document).height() - pheight - 30;
	  }
	  console.log(top + ' ' + $(document).height() + ' ' + pheight)
	  popup.css('top', top);
	}
	adjust();
	return false;
}


function updateMoney(money){
	  var diff = parseInt(money) - parseInt($('.money').text().replace('$', '').replace(/\,/g, ''));
		mconsole('Money changed by ' + diff);
			$('.money').text('$' + number_format(money, 0, '.', ','));
		$('.money').textUp('$' + number_format(Math.abs(diff), 0, '.', ','), diff >  0 ? '#228622' : '#ff0000'); 
	
		pageVars.money = money;
}

//Single notification message
function popupMessage(message, modal, extraclass){
	var msgPopup = $('<div class="popupmsg ' + extraclass + '"></div>');
	msgPopup.html(message);
	$('.content-area').append(msgPopup);
	var closeButton = $('<div class="message-close">X</div>');
	msgPopup.append(closeButton);
	msgPopup.css('height', '1px');
	closeButton.click(closeParentPopup);
  msgPopup.find('.closeme').click(closeParentPopup);
	msgPopup.animate({'height' : Math.max(msgPopup.children().height(), 100) +'px' , 'opacity' : 1});
	
	if(!modal){
		//add timer  to close/fade
		msgPopup.oneTime(6000, 'popupclose', closePopUp);
	} //otherwise user will have to X out of it
	
}

function closeParentPopup(){
	$(this).parents('.popupmsg').animate({'height' : '1px', 'opacity' : .1}, 700, null, function(){
				$(this).remove();
			});
}

function closePopUp(){
	
	$(this).animate({'height' : '1px', 'opacity' : .1}, 700, null, function(){
				$(this).remove();
			});
}

function theme_image_remote(path){
	return '<img src="' + pageVars.image_root + '/' + path +'" />';
}

function captionTip(evt){ 
	showHTip(evt, $('<div>' + $(this).attr('caption') + '</div>'), $(this)); 
	}
	



function theme_like_button(pageurl){
	if(pageurl){
		return '<div class="littlelike"><fb:like href="' + pageurl + '" send="false" layout="button_count" width="150" show_faces="false" font="lucida grande"></fb:like></div>';	
	} else {
		return '';
	}
}

function number_format( number, decimals, dec_point, thousands_sep ) {
     
 
    var n = number, c = isNaN(decimals = Math.abs(decimals)) ? 2 : decimals;
    var d = dec_point == undefined ? "," : dec_point;
    var t = thousands_sep == undefined ? "." : thousands_sep, s = n < 0 ? "-" : "";
    var i = parseInt(n = Math.abs(+n || 0).toFixed(c)) + "", j = (j = i.length) > 3 ? j % 3 : 0;
    
    return s + (j ? i.substr(0, j) + t : "") + i.substr(j).replace(/(\d{3})(?=\d)/g, "$1" + t) + (c ? d + Math.abs(n - i).toFixed(c).slice(2) : "");
}


function countProperties(obj) {
  var prop;
  var propCount = 0;

  for (prop in obj) {
    propCount++;
  }
  return propCount;
}

jQuery.fn.blink = function(times) { 

$(this).each(function(key, val){
$(val).everyTime(500, function(){
	$(this).toggleClass('active');
}, times); 
});
   return this;
};  

jQuery.fn.textUp = function(text, color) { 
$(this).each(function(key, val){
	//get current item
	var sourceBlock = $(val);
	var container = sourceBlock.parent();
	container.css('overflow', 'visible'); //DANGEROUS
	var newThing = $('<span class="popblock">' + (text ? text : sourceBlock.text()) + '</span>');
  $(container).append(newThing);
 newThing.css(sourceBlock.position()).css({'z-index' : 100, 'opacity' : 1, 'margin-left' : '0em', 'color' : color ? color : '#ffffff'}).animate({'top' : sourceBlock.position().top - 40, 'opacity' : 0 }, 1300, 'linear', function(){$(this).remove() });
   
});
   return this;
};  

//Mouse tooltip showers and controllers



var hTip;
function showHTip(evt, content, thisAlt){
	var targetEl = thisAlt ? thisAlt : $(this);
//mconsole('hovertooltip init');
$('.tooltip').remove();
if(content){
	targetEl.click(hoverOut);
		hTip = $('<div class="tooltip"></div>');
		hTip.append($(content));
		$('body').append(hTip);
		hTip.attr('hTip', 'true');
	hTip.css('left', parseInt(evt.pageX) + 2);
	hTip.css('top', parseInt(evt.pageY) + 2);
	hTip.css('opacity', '0.9');
	hTip.css('display', 'none');
		hTip.attr('parentCell', targetEl.attr('id'));
   hTip.show();
	//hTip.fadeIn(100);	//Maybe this is slow

targetEl.mousemove(tipfollow);

//mconsole('htip finish');
}
}

function tipfollow(evt){
	
	//there already is one.. let's just make it follow the mouse
		hTip.css('left', parseInt(evt.pageX) + 2);
	hTip.css('top', parseInt(evt.pageY) + 2);
}

function hoverOut(){
	if(hTip){
		//mconsole('Out');
		$('#' + hTip.attr('parentCell')).unbind('mousemove').unbind('click', hoverOut);
		hTip.remove();
	}
}

function bucket_refillfp(){
	    $.ajax({
   type: "POST",
   url: "/ajax/bucketrefillfp",
   dataType : 'json',
   data : {'proracer' : true},
   success : function(data) {			
					loaderStop();
  			}
	});
}

function agent(){
	    $.ajax({
   type: "POST",
   url: "/ajax/agent",
   dataType : 'json',
   data : {'proracer' : true},
   success : function(data) {			
					loaderStop();
  			}
	});
}

function rpgetmoney(){
	    $.ajax({
   type: "POST",
   url: "/ajax/rpgetmoney",
   dataType : 'json',
   data : {'proracer' : true},
   success : function(data) {			
					loaderStop();
  			}
	});
}

function rpbuycar(ctid){
	    $.ajax({
   type: "POST",
   url: "/ajax/rpbuycar",
   dataType : 'json',
   data : {'ctid':ctid},
   success : function(data) {			
					loaderStop();
  			}
	});
}

function rpbuycarverify(ctid){
	    $.ajax({
   type: "POST",
   url: "/ajax/rpbuycarverify",
   dataType : 'json',
   data : {'ctid':ctid},
   success : function(data) {			
					loaderStop();
  			}
	});
}

function bucket_perm(){
	    $.ajax({
   type: "POST",
   url: "/ajax/bucketperm",
   dataType : 'json',
   data : {'proracer' : true},
   success : function(data) {			
					loaderStop();
  			}
	});
}

function teamcommentbox(tid){
	    $.ajax({
   type: "POST",
   url: "/ajax/teamcommentbox",
   dataType : 'json',
   data : {'tid' : tid},
   success : function(data) {			
					loaderStop();
  			}
	});
}
	
function bucket_temp(cat,cost){
	    $.ajax({
   type: "POST",
   url: "/ajax/buckettemp",
   dataType : 'json',
   data : {'cat' : cat,	'cost' : cost},
   success : function(data) {			
					loaderStop();
  			}
	});
}
	
	function output_news(uid){
	    $.ajax({
   type: "POST",
   url: "/ajax/loadnews",
   dataType : 'json',
   data : {'uid' : uid},
   success : function(data) {			
					loaderStop();
  			}
	});
}
	
	function gplatestraces(){
	    $.ajax({
   type: "POST",
   url: "/ajax/gplatestraces",
   dataType : 'json',
   data : {'proracer' : true},
   success : function(data) {			
					loaderStop();
  			}
	});
}
	
	function rendermodsection(mod,cid){
	    $.ajax({
   type: "POST",
   url: "/ajax/rendermodsection",
   dataType : 'json',
   data : {'mod' : mod,  'cid' : cid},
   success : function(data) {			
					loaderStop();
  			}
	});
}
	
	function grandprixrace(){
	    $.ajax({
   type: "POST",
   url: "/ajax/grandprixrace",
   dataType : 'json',
   data : {'proracer' : true},
   success : function(data) {			
					loaderStop();
					$('#' + 'racebutton').css('display', 'block');
  			}
	});
}

function userprofiledisplay(typed,uid){
	    $.ajax({
   type: "POST",
   url: "/ajax/userprofiledisplay",
   dataType : 'json',
   data : {'typed' : typed, 'uid' : uid},
   success : function(data) {			
					loaderStop();
  			}
	});
}

function refreshStatsgp(){
	    $.ajax({
   type: "POST",
   url: "/ajax/gpstats",
   dataType : 'json',
   data : {'proracer' : true},
   success : function(data) {			
					loaderStop();
  			}
	});
}
	
	function refreshgpcountdown(){
	    $.ajax({
   type: "POST",
   url: "/ajax/gpcountdown",
   dataType : 'json',
   data : {'proracer' : true},
   success : function(data) {			
					loaderStop();
  			}
	});
}
		function refreshStats(){
	    $.ajax({
   type: "POST",
   url: "/ajax/stats",
   dataType : 'json',
   data : {'proracer' : true},
   success : function(data) {			
					loaderStop();
  			}
	});
}
	
		function racingselectionbox(fcid,fuid){
	    $.ajax({
   type: "POST",
   url: "/ajax/racingselectionbox",
   dataType : 'json',
   data : {'fcid' : fcid, 'fuid' : fuid },
   success : function(data) {			
					loaderStop();
					$('#' + data.div1).show();
  			}
  			
	});
}
	
	var is_racing = false;
	function chooseoppapply(ouid,ocid,typed){
	   if(!is_racing){
	   is_racing = true;
	      $.ajax({
   type: "POST",
   url: "/ajax/chooseoppapply",
   dataType : 'json',
   data : { 'ouid' : ouid, 'ocid' : ocid, 'typed' : typed },
   success : function(data) {			
					loaderStop();
					$('#' + data.div1).show();
					is_racing = false;
  			}
	});
	}
	
	   
	}
	
	function raceClick(){
		var typed = $(this).attr('racetype');
		var ouid = $(this).parent().attr('ouid');
		var ocid = $(this).parent().attr('ocid');
		$(this).css('opacity', .1).css('cursor', 'default');
		$(this).siblings().css('cursor', 'default').unbind('click').css('opacity', 0.2);
		console.log(ocid);
		console.log(ouid);
		console.log(typed);
		chooseoppapply(ouid, ocid, typed);
	}
	
function trainskill(skill){
	    $.ajax({
   type: "POST",
   url: "/ajax/skilltrain",
   dataType : 'json',
   data : {'skill' : skill},
   success : function(data) {			
					loaderStop();
					$('#' + 'special_skill_pluses').css('display', 'block');
  			}
	});
}

function markraceregister(uid){
	    $.ajax({
   type: "POST",
   url: "ajax/markraceregister",
   dataType : 'json',
   data : {'uid' : uid},
   success : function(data) {			
					loaderStop();
					//$('#' + 'markrace_output_box').css('display', 'block');
  			}
	});
}

function markraceunregister(uid){
	    $.ajax({
   type: "POST",
   url: "ajax/markraceunregister",
   dataType : 'json',
   data : {'uid' : uid},
   success : function(data) {			
					loaderStop();
					//$('#' + 'markrace_output_box').css('display', 'block');
  			}
	});
}


	
	function trainskillfifty(skill){
	    $.ajax({
   type: "POST",
   url: "/ajax/skilltrainfifty",
   dataType : 'json',
   data : {'skill' : skill},
   success : function(data) {			
					loaderStop();
					$('#' + 'special_skill_pluses_fifty').css('display', 'block');
  			}
	});
}
	
function modifycarcolor(cid,image,ctid,iii){
	$.ajax({
	   type: "POST",
	   url: "/ajax/modifycarcolor",
	   dataType : 'json',
	   data : {'cid' : cid, 'image' : image, 'ctid' : ctid, 'iii' : iii},
	   success : function(data) {			
				loaderStop();
  	 }
	});
}

	function buynewcarbutton(ctid){
	    $.ajax({
   type: "POST",
   url: "/ajax/buynewcar",
   dataType : 'json',
   data : {'ctid' : ctid},
   success : function(data) {			
					loaderStop();
  			}
	});
}
	
	function buynewcarbuttonverify(ctid,price){
	    $.ajax({
   type: "POST",
   url: "/ajax/buynewcarverify",
   dataType : 'json',
   data : {'ctid' : ctid, 'price' : price},
   success : function(data) {			
					loaderStop();
  			}
	});
}

function buyluxuryverify(iid){
	    $.ajax({
   type: "POST",
   url: "/ajax/buyluxuryverify",
   dataType : 'json',
   data : {'iid' : iid},
   success : function(data) {			
					loaderStop();
  			}
	});
}
	
	function buyluxury(iid){
	    $.ajax({
   type: "POST",
   url: "/ajax/buyluxury",
   dataType : 'json',
   data : {'iid' : iid},
   success : function(data) {			
					loaderStop();
  			}
	});
}
	
	function buymissionaccess(tid,cid,sid){
	    $.ajax({
   type: "POST",
   url: "/ajax/buymissionaccess",
   dataType : 'json',
   data : {'tid' : tid, 'cid' : cid, 'sid' : sid},
   success : function(data) {			
					loaderStop();
  			}
	});
}
	
		function selltodealer(cid,last){
	    $.ajax({
   type: "POST",
   url: "/ajax/sellcardealer",
   dataType : 'json',
   data : {'cid' : cid, 'last' : last},
   success : function(data) {			
					loaderStop();
  			}
	});
}
	
	function tuneupgradebuy(cid,fid){
	    $.ajax({
   type: "POST",
   url: "/ajax/tuneupgradebuy",
   dataType : 'json',
   data : {'cid' : cid, 'fid' : fid},
   success : function(data) {			
					loaderStop();
  			}
	});
}
	
		function tuneupgradesell(cid,fid){
	    $.ajax({
   type: "POST",
   url: "/ajax/tuneupgradesell",
   dataType : 'json',
   data : {'cid' : cid, 'fid' : fid},
   success : function(data) {			
					loaderStop();
  			}
	});
}

	function selltodealerverify(cid,last,valued){
	    $.ajax({
   type: "POST",
   url: "/ajax/sellcardealerverify",
   dataType : 'json',
   data : {'cid' : cid, 'last' : last, 'valued' : valued},
   success : function(data) {			
					loaderStop();
  			}
	});
}

function marketlistcar(cid){
	var price = $('#price').val();
	$.ajax({
	   type: "POST",
	   url: "/ajax/marketlistcar",
	   dataType : 'json',
	   
	   data : {'cid' : cid, 'price' : price },
	   success : function(data) {			
						loaderStop();
	  			}
		});
}

function teambankdonate(tid,money){
	$.ajax({
	   type: "POST",
	   url: "/ajax/teambankdonate",
	   dataType : 'json',
	   data : {'tid' : tid, 'money' : money },
	   success : function(data) {			
						loaderStop();
	  			}
		});
}

function rpmarketlistcar(cid){
	var price = $('#rpprice').val();
	$.ajax({
	   type: "POST",
	   url: "/ajax/rpmarketlistcar",
	   dataType : 'json',
	   
	   data : {'cid' : cid, 'price' : price },
	   success : function(data) {			
						loaderStop();
	  			}
		});
}

function removefrommarket(cid){
	$.ajax({
	   type: "POST",
	   url: "/ajax/removefrommarket",
	   dataType : 'json',
	   data : {'cid' : cid},
	   success : function(data) {			
						loaderStop();
	  			}
		});
}

function buyrpmarket(cid,price){
	$.ajax({
	   type: "POST",
	   url: "/ajax/buyrpmarket",
	   dataType : 'json',
	   data : {'cid' : cid, 'price' : price},
	   success : function(data) {			
						loaderStop();
	  			}
		});
}

function buymarket(cid,price){
	$.ajax({
	   type: "POST",
	   url: "/ajax/buymarket",
	   dataType : 'json',
	   data : {'cid' : cid, 'price' : price},
	   success : function(data) {			
						loaderStop();
	  			}
		});
}

		function untrainskill(skill){
	    $.ajax({
   type: "POST",
   url: "/ajax/skilluntrain",
   dataType : 'json',
   data : {'skill' : skill},
   success : function(data) {			
					loaderStop(); 
					$('#' + 'special_skill_minuses').show();
  			}
	});
}

		function untrainskillfifty(skill){
	    $.ajax({
   type: "POST",
   url: "/ajax/skilluntrainfifty",
   dataType : 'json',
   data : {'skill' : skill},
   success : function(data) {			
					loaderStop(); 
					$('#' + 'special_skill_minuses_fifty').show();
  			}
	});
}

			function garagerendercars(section){
	    $.ajax({
   type: "POST",
   url: "/ajax/garagerendercars",
   dataType : 'json',
   data : {'section' : section},
   success : function(data) {			
					loaderStop();				
					$('#garageloaderimage').hide();
					$('#garagecontent').show();
					
					
  			}
	});
}

function fbPop(content){
$('#jspopup').remove();
var popUp =	$('<div class="popup_main_container" id="jspopup"><div class="popup_generic" style="width: 500px;">	<div class="popup_advanced"><div style="direction: ltr; outline: medium none;"><h2 class="popup_header"><span>' + title + '</span></h2><div class="popup_main_content"><div class="popup_body_content"><div>' + content + '</div></div>	<div class="popup_bottom_container"><label class="popup_close_button_label"><input class="popup_button cancel" type="button" name="button1" value="Cancel"></label></div></div></div></div></div></div>');

$('body').append(popUp);

}

function contextMenu(options, position){
	$('.context-menu').remove();
	var menu = $('<div class="context-menu"><ul class="context-list"></ul></div>');
	var list = menu.children('ul');
	$.each(options, function(inx, val){
		var newLI = $('<li></li>');
		newLI.append($(val));
	  list.append(newLI);
	});
	$('body').append(menu);
	if(position){
		menu.css(position);
	}
	return menu;
}

function carMenu(){
	var cid = $(this).attr('cid');
	var ctid = $(this).attr('ctid');
	var status = parseInt($(this).attr('status'));
	var menuOptions = [];
	menuOptions.push('<a href="'+ pageVars.app_path +'/modcar/body/' + cid +'" target="_top"><img class="action-icon" src="http://img.grgventures.com/PRicons/BodyShopIcon.png" title="Body Shop"> Body Shop</a>');
	menuOptions.push('<a href="'+ pageVars.app_path +'/modcar/tune/' + cid +'" target="_top"><img class="action-icon" src="http://img.grgventures.com/PRicons/UpgradeIcon.png" title="Tune Shop"> Tune Shop</a>');
	menuOptions.push('<a href="'+ pageVars.app_path +'/marketplace/ctid/' + ctid + '" target="_top"><img class="action-icon" src="http://img.grgventures.com/proracer/SellOnMarketIcon.png" title="Check Market"> Check Market</a>');
	menuOptions.push('<a href="'+ pageVars.app_path +'/carselect/' + cid +'" target="_top"><img class="action-icon" src="http://img.grgventures.com/PRicons/CarDetailIcon.png" title="Car Details"> Car Details</a>');
	menuOptions.push('<a href="'+ pageVars.app_path +'/car/profile/' + ctid + '" target="_top"><img class="action-icon" src="http://img.grgventures.com/PRicons/cardetailsIcon.png"> Car Profile</a>');
  if(status == 0){
  	var tourneylink = $('#popuplink-useintourneys-' + cid).clone();
  	menuOptions.push(tourneylink);
  	var gplink = $('#popuplink-useingrandprix-' + cid).clone();
  	menuOptions.push(gplink);
    var uselink = $('#popuplink-usecar-' + cid).clone();
  	menuOptions.push(uselink);
  }
  
  var menu = contextMenu(menuOptions, $(this).offset());
  
  initPopups();
}
	
	function teambuyluxuryverify(tid,iid,tier,named){
	    $.ajax({
   type: "POST",
   url: "/ajax/teambuyluxuryverify",
   dataType : 'json',
   data : {'tid' : tid, 'iid' : iid, 'tier' : tier, 'named' : named},
   success : function(data) {			
					loaderStop();
  			}
	});
}
	
	function teambuyluxury(tid,iid,tier,named){
	    $.ajax({
   type: "POST",
   url: "/ajax/teambuyluxury",
   dataType : 'json',
   data : {'tid' : tid, 'iid' : iid, 'tier' : tier, 'named' : named},
   success : function(data) {			
					loaderStop();
  			}
	});
}
	
	//george help
		function loaderInit(){
	    $('body').addClass('wait');
    }
    function loaderStop(){
	    $('body').removeClass('wait');
    }
    function gpcountdown_counter(id, time_left, totaltime, restart, callback){
			var targetobj = $('#' + id);
			if(!targetobj.hasClass('running')){ //prevents it from running 2 different timers
				setTimeout(function(){rungpProgressCounter(targetobj, time_left - 1, totaltime, restart, callback); }, 1000);
				targetobj.addClass('running');
			}
		}
		function rungpProgressCounter(iObj, time, totaltime, reset, callback) { 
			var displaytime = Math.max(time, 0);
			var hours = displaytime/3600;
			var minutes = Math.floor((displaytime % 3600) / 60);
		  var timeLeft = parseInt(hours)+':'+parseInt(minutes)+':'+numPad(parseInt(displaytime%60), 2);
		  iObj.text(timeLeft);
		  if(iObj.hasClass('running')){  
		  if(time >= 0) { 
		    setTimeout(function() { rungpProgressCounter(iObj, time-1, totaltime, reset, callback); }, 1000); 
		  } else if(totaltime && reset){
		  	if(callback){
		  	callback();
		  }
		  iObj.removeClassName('running');
		  	//setTimeout(function() { runProgressCounter(iObj, totaltime, totaltime, reset, callback) }, 1000);
		  }
		}
		}
		function ttHide(tooltipKey){
			$.ajax({
	  		type: 'POST',
	  		url: '/ajax/ttHide/' + tooltipKey,
	  		data: {},
	  		success : function(){
	  			console.log('Tooltip got hid');
	  		}
			});
        $('#' + tooltipKey).animate({'height' : '0px', 'opacity': 0});
    }
    
	
		function usecar(cid,ctid){
	    $.ajax({
   type: "POST",
   url: "/ajax/usecar",
   dataType : 'json',
   data : {'cid' : cid, 'ctid' : ctid},
   success : function(data) {			
					loaderStop();
  			}
  
	});
}


		function usecargp(cid){
	    $.ajax({
   type: "POST",
   url: "/ajax/usecargp",
   dataType : 'json',
   data : {'cid' : cid},
   success : function(data) {			
					loaderStop();
  			}

	});
}

		function usecartourney(cid){
	    $.ajax({
   type: "POST",
   url: "/ajax/usecartourney",
   dataType : 'json',
   data : {'cid' : cid},
   success : function(data) {			
					loaderStop();
  			}

	});
}

		function enabledisablerace(cid,racetype,actions){
	    $.ajax({
   type: "POST",
   url: "/ajax/enabledisablerace",
   dataType : 'json',
   data : {'cid' : cid, 'racetype' : racetype, 'actions' : actions},
   success : function(data) {			
					loaderStop();
  			}

	});
}

function propcollectrent(){
	$.ajax({
   type: "POST",
   url: "/ajax/propcollectrent",
   dataType : 'json',
   data : {'proracer' : true},
   success : function(data) {			
			loaderStop();
	 }
	});
}

		function removerpmarket(cid,locations){
	    $.ajax({
   type: "POST",
   url: "/ajax/removerpmarket",
   dataType : 'json',
   data : {'cid' : cid,'locations' : locations},
   success : function(data) {			
					loaderStop();
  			}

	});
}

		function propertyupgrade(pid){
	    $.ajax({
   type: "POST",
   url: "/ajax/propertyupgrade",
   dataType : 'json',
   data : {'pid' : pid},
   success : function(data) {			
					loaderStop();
  			}

	});
}

	function propbuy(pid){
	    $.ajax({
   type: "POST",
   url: "/ajax/propbuy",
   dataType : 'json',
   data : {'pid' : pid},
   success : function(data) {			
					loaderStop();
  			}

	});
}

    function postBuy(ctid)
    {
    	
        FB.api('/me/proracer:buy' + 
                    '?car=http://apps.facebook.com/proracer/car/profile/' + ctid,'post',
                    function(response) {
            if (!response || response.error) {
                    alert('Error occured');
            } else {
                alert('Post was successful! Action ID: ' + response.id);
                }
        });
    }
i have many things to release here coming soon (car town streets and more) but they will be in tutorial form as i can't really just straight hack the game and give you a file. my stuff is all done in flash and swf and fla files will be provided
kaptinboxxi is offline  
Old 01/28/2014, 05:01   #2




 
Elsastylez's Avatar
 
elite*gold: 32
The Black Market: 160/0/0
Join Date: Jul 2010
Posts: 8,279
Received Thanks: 4,430
Hey,

please add a virustotal scan.
Elsastylez is offline  
Old 01/28/2014, 05:27   #3
 
elite*gold: 0
Join Date: May 2013
Posts: 62
Received Thanks: 18
Quote:
Originally Posted by Elsastylez View Post
Hey,

please add a virustotal scan.
why? there's no attachment...
kaptinboxxi is offline  
Old 01/28/2014, 05:34   #4


 
Requi's Avatar
 
elite*gold: 3570
The Black Market: 244/0/0
Join Date: Dec 2012
Posts: 13,044
Received Thanks: 8,252
But it's kinda a download.
Even if it's open source, you could add malicious code and newbies don't recognize it.
Requi is offline  
Old 01/29/2014, 00:06   #5
 
elite*gold: 0
Join Date: May 2013
Posts: 62
Received Thanks: 18
Quote:
Originally Posted by Requi View Post
But it's kinda a download.
Even if it's open source, you could add malicious code and newbies don't recognize it.
how's it an upload if i put it in a code tag? how is it an upload if i'm linking to an original file that i can't get to to modify? how is it an upload if i'm linking to the app on facebook where you can get all this information?
kaptinboxxi is offline  
Reply


Similar Threads Similar Threads
Is it possible to hack Proracer on facebook
06/17/2013 - Facebook - 0 Replies
Is it possible to hack Proracer on facebook i would like to see a program or a trainer for like money or something or the games Cartown or Cartown EX or even motorcycle madness or car madness?????
[RELEASE]Lv. 255 Game-File *HOT*
09/28/2010 - Metin2 PServer Guides & Strategies - 86 Replies
So Leute, jetzt reichts, ich sehe hier immer wieder Leute die mit ihrer 255er Game-File angeben, da denke ich mir eigentlich immer, was soll das, ist es denn wirklich so schwer mal was mit der Community zu teilen? Ich glaub ihr wisst schon wen ich da meine, es sind nämlich bestimmte Personen die sich nur um ihren Ars*h kümmern und allen anderen irgendwie zeigen, ich bin besser und du hast keine Ahnung, da ich in der UG Section bin und Vorteile hab. UGS, schön und gut, doch tut es weh einfach...



All times are GMT +1. The time now is 22:04.


Powered by vBulletin®
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2026 elitepvpers All Rights Reserved.