Oolite 1.91.0.7604-240417-a536cbe
Loading...
Searching...
No Matches
OOBreakPatternEntity.h
Go to the documentation of this file.
1/*
2
3OOBreakPatternEntity.h
4
5Entity implementing tunnel effect for hyperspace and stations.
6
7
8Oolite
9Copyright (C) 2004-2013 Giles C Williams and contributors
10
11This program is free software; you can redistribute it and/or
12modify it under the terms of the GNU General Public License
13as published by the Free Software Foundation; either version 2
14of the License, or (at your option) any later version.
15
16This program is distributed in the hope that it will be useful,
17but WITHOUT ANY WARRANTY; without even the implied warranty of
18MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19GNU General Public License for more details.
20
21You should have received a copy of the GNU General Public License
22along with this program; if not, write to the Free Software
23Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
24MA 02110-1301, USA.
25
26*/
27
28#import "Entity.h"
29
30@class OOColor;
31
32
33enum
34{
37};
38
39
40#define BREAK_PATTERN_RING_SPACING 50.0
41#define BREAK_PATTERN_RING_SPEED 200.0
42
43
45{
46@private
47 Vector _vertexPosition[kOOBreakPatternMaxVertices];
48 GLfloat _vertexColor[kOOBreakPatternMaxVertices][4];
49 NSUInteger _vertexCount;
50 double _lifetime;
51}
52
53+ (instancetype) breakPatternWithPolygonSides:(NSUInteger)sides startAngle:(float)startAngleDegrees aspectRatio:(float)aspectRatio;
54
55- (void) setInnerColor:(OOColor *)color1 outerColor:(OOColor *)color2;
56
57- (void) setLifetime:(double)lifetime;
58
59@end
60
61
62@interface Entity (OOBreakPatternEntity)
63
64- (BOOL) isBreakPattern;
65
66@end
@ kOOBreakPatternMaxVertices
@ kOOBreakPatternMaxSides
GLfloat _vertexColor[kOOBreakPatternMaxVertices][4]
Vector _vertexPosition[kOOBreakPatternMaxVertices]