File: weapon_angle.cpp

package info (click to toggle)
rafkill 1.2.2-3.3
  • links: PTS
  • area: main
  • in suites: wheezy
  • size: 13,268 kB
  • sloc: cpp: 13,508; makefile: 64; sh: 14
file content (88 lines) | stat: -rw-r--r-- 1,636 bytes parent folder | download | duplicates (12)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
#include "weaponobj.h"
#include "weapon_angle.h"
#include "hull.h"
#include "trigtable.h"

Angle::Angle( int qx, int qy, double kx, double ky, double _speed, HullObject * hnew, int al, int _ang ):
WeaponNode(qx,qy,kx,ky,hnew,al),
ang_vel( (_ang+90)%360 ),
ang_accel( (_ang+180) % 360 ),
speed( _speed ){

	/*
	setDX( Tcos(ang_vel) * speed );
	setDY( Tsine(ang_vel) * speed );
	*/

	/*
	center_x = getX();
	center_y = getY();
	*/
}
	
void Angle::MoveMe( vector< SpaceObject * > * Ammo, const vector< SpaceObject * > * fight, Section * onscreen ){

	/*
	center_x += getDX();
	center_y += getDY();

	setX( center_x );
	setY( center_y );

	MoveReal();

	double fx, fy;

	fx = center_x + Tcos(ang_vel) * speed;
	fy = center_y + Tsine(ang_vel) * speed;
	ang_vel = (ang_vel + 20 ) % 360;

	setX( fx );
	setY( fy );
	*/
	
	setOffsetX( (int)( Tcos(ang_vel) * speed ) );
	setOffsetY( (int)( Tsine(ang_vel) * speed ) );
	ang_vel = (ang_vel + 20 ) % 360;

	MoveReal();

	/*
	fx = getDX();
	fy = getDY();

	int ix = (int)fx;
	int iy = (int)fy;
	int sang = gang( 0, 0, ix, iy );
	ang_vel = (sang+5) % 360;

	fx = Tcos( ang_vel ) * speed;
	fy = Tsine( ang_vel ) * speed;
	setDX( fx );
	setDY( fy );
	// ang = (ang+5)%360;
	*/
	
	if ( hull ) hull->Moved( this->getDX(), this->getDY(), this->getAccelX(), this->getAccelY() );

}

/*
void Angle::MoveReal() {

	//virtualx += dx + tcos[ ang ];
	//virtualy += dy + tsine[ ang ];
	//actualx = (int)virtualx;
	//actualy = (int)virtualy;

	/ *
	virtualx += dx;
	virtualy += dy;
	actualx = (int)(virtualx + tcos[ang] * 25 );
	actualy = (int)(virtualy + tsine[ang] * 25 );
	* /

	ang = ( ang + 2 ) % 360;

}
*/