x


Radar script help

Hi,

i wan't to make a minimap like GTA 4 and Red Dead Redemption i have the script already written but i hava a qeastion,

The Blips for a MissionObjective or Missionstartingpoint i wan't it that if the player is out of a specific range the blip will draw but on the edge of the radar.

If you don't know what i'am talking about watch this sample video of RDR begin at min 2.20 klik the linktext below

video RDR

This is part of the script that draws the GUI blip;

enter function drawBlip(go,aTexture){

centerPos=centerObject.position;
extPos=go.transform.position;

// first we need to get the distance of the enemy from the player
dist=Vector3.Distance(centerPos,extPos);

dx=centerPos.x-extPos.x; // how far to the side of the player is the enemy?
dz=centerPos.z-extPos.z; // how far in front or behind the player is the enemy?

// what's the angle to turn to face the enemy - compensating for the player's turning?
deltay=Mathf.Atan2(dx,dz)*Mathf.Rad2Deg - 270 - centerObject.eulerAngles.y;

// just basic trigonometry to find the point x,y (enemy's location) given the angle deltay
bX=dist*Mathf.Cos(deltay * Mathf.Deg2Rad);
bY=dist*Mathf.Sin(deltay * Mathf.Deg2Rad);

if(dist>=distnce){
    bX=bX*mapScale; // scales down the x-coordinate so that the plot stays within our radar
    bY=bY*mapScale; // scales down the y-coordinate so that the plot stays within our radar

    // this is the diameter of our largest radar circle
    GUI.DrawTexture(Rect(mapCenter.x+bX,mapCenter.y+bY,25,25),aTexture);
}
more ▼

asked Jun 01 '11 at 07:20 PM

StarrockGames gravatar image

StarrockGames
1 2 2 3

Hehe >:] The link dose not work. ;)

Jun 01 '11 at 07:27 PM OrangeLightning

yes i know editing it

Jun 01 '11 at 07:32 PM StarrockGames
(comments are locked)
10|3000 characters needed characters left

2 answers: sort newest

Thanks man! it worked

more ▼

answered Jun 03 '11 at 03:28 PM

StarrockGames gravatar image

StarrockGames
1 2 2 3

(comments are locked)
10|3000 characters needed characters left

If you just want to do a kind of "round clamp" in order to bring bx and by to the border of your round radar, do something like this:

  if (dist*mapScale>radarRadius){
    var k:float = radarRadius/(dist*mapScale);
    bx *= k;
    by *= k;
  }
  GUI.DrawTexture(...

where radarRadius is (obviously) the radius of your radar screen.

more ▼

answered Jun 01 '11 at 09:41 PM

aldonaletto gravatar image

aldonaletto
41.2k 16 42 195

(comments are locked)
10|3000 characters needed characters left
Your answer
toggle preview:

Up to 2 attachments (including images) can be used with a maximum of 524.3 kB each and 1.0 MB total.

Follow this question

By Email:

Once you sign in you will be able to subscribe for any updates here

By RSS:

Answers

Answers and Comments

Topics:

x3317
x210
x30
x3

asked: Jun 01 '11 at 07:20 PM

Seen: 1028 times

Last Updated: Jun 03 '11 at 03:28 PM