1 #pragma once
2 
3 #include "TCollisionComponent.h"
4 #include "TEdgeManager.h"
5 
6 struct ramp_plane_type;
7 
8 class TRamp :
9 	public TCollisionComponent
10 {
11 public:
12 	TRamp(TPinballTable* table, int groupIndex);
13 	void put_scoring(int index, int score) override;
14 	int get_scoring(int index) override;
15 	void Collision(TBall* ball, vector_type* nextPosition, vector_type* direction, float coef,
16 	               TEdgeSegment* edge) override;
17 	int FieldEffect(TBall* ball, vector_type* vecDst) override;
18 	void port_draw() override;
19 
20 	int Scores[4]{};
21 	field_effect_type Field{};
22 	int CollisionGroup;
23 	int RampFlag1;
24 	int RampPlaneCount;
25 	float BallFieldMult;
26 	ramp_plane_type* RampPlane;
27 	TEdgeSegment* Line2;
28 	TEdgeSegment* Line3;
29 	TEdgeSegment* Line1;
30 	int Wall1PointFirst;
31 	int Wall2PointFirst;
32 	float Wall1PointLast;
33 	float Wall2PointLast;
34 };
35