r14105 - packages/trunk/gunroar/debian/patches
Peter De Wachter
pdewacht-guest at alioth.debian.org
Mon May 20 17:43:56 UTC 2013
Author: pdewacht-guest
Date: 2013-05-20 17:43:56 +0000 (Mon, 20 May 2013)
New Revision: 14105
Removed:
packages/trunk/gunroar/debian/patches/gunroar-hot-iron.patch
Log:
gunroar: remove 'gunroar hot iron' patch
Deleted: packages/trunk/gunroar/debian/patches/gunroar-hot-iron.patch
===================================================================
--- packages/trunk/gunroar/debian/patches/gunroar-hot-iron.patch 2013-05-20 17:03:21 UTC (rev 14104)
+++ packages/trunk/gunroar/debian/patches/gunroar-hot-iron.patch 2013-05-20 17:43:56 UTC (rev 14105)
@@ -1,769 +0,0 @@
-# gunroar hot iron version
-# i¦ü¢ªÌà¾ÍöÉ èÜ·j
-
-# http://www.edit.ne.jp/~otoyan/soft/gr_hi.html
-
-# hot iron versionÉ¢Ä
-#
-# GunroarAÂlIɬUjªàÌ·²yµ¢Q[ÈÌÅ
-# ¬Uj§o[WƵÄüϵܵ½B
-# C䪱Á¿ðüOÉßâÄhJIÅ·æB
-# uSÍM¢¤¿É""ÄIvªRZvgB
-# ·Èí¿uSÍM¢¤¿ÉV
[eBOIvi¦[
-#
-# * ÏX_
-# @¥GD{¦ðÅ©çßÉÝèB
-# @@EÔÆ¤É¸ÁÄ¢ÌŬj·éƨ¾B
-# @¥GDÌ{¦Áû@ÌÇÁ
-# @@ECäjóBi±±Í{ÆÅÌÜÜj
-# @@EXðGDÌRAªÉÄéBinormal[hÌÝj
-# @¥NÆ{¦ÌØè£µ
-# @@EãÌå«¢ª{¦BºÌ¬³ÈªNB
-# @@E{¦Í¸µ±¯éB
-# @@EGDjóÉGD{¦É¶ÄÁB
-# @@EGDðæÊºÉ¦·ÆGD{¦É¶Ä¸B
-# @@EXN[Xs[hðã°½ÛÉÁ¬xIÉNªã¸µÈ¢æ¤ÉüÏ
-# @@E{XíÅNª¸µÈ¢æ¤ÉüÏB
-# @¥R{Q[WÌÇÁ
-# @@ER{Q[Wª éóÔÅÍ{¦¸¬xªÝéB
-# @@E¬^URG¨æÑGDCäðjó·éƵ¾¯Q[Wªñ·éB
-#
-# @{¦ÌÔ³ðÛ·éæ¤ÉvC·éÆ
-# @¾_ÉÈéæ¤È²®iɵ½ÂàèjÅ·B
-#
-# * ÏX_ÉÖ·éÓ©E¿â
-# @ÁÉêîͱ¿çÉAð¨è¢¢½µÜ·B
-# @otoyan at mx.edit.ne.jp
-#
-# * qXg
-# 060412 ver 0.30
-# @ENÁÌC³
-# @ER{Q[WÌÇÁÆ{¦¸ªÌC³
-# 060412 ver 0.21
-# @E^CgæÊÌXRAÌ
ÌC³
-# 060412 ver 0.2
-# @E{¦ã¸ãêèÔ{¦ªâ~·éæ¤C³
-# @EXRA[ð10
ÉÁ
-# 060410 ver 0.1
-# @E{öJ
-# (otoyan)
-
---- a/src/abagames/gr/enemy.d
-+++ b/src/abagames/gr/enemy.d
-@@ -86,6 +86,12 @@
- _state.addScore(s);
- }
-
-+//otoyan add start
-+ public void addMagStopCnt(float num) {
-+ _state.addMagStopCnt(num);
-+ }
-+//otoyan add end
-+
- public void remove() {
- _state.removeTurrets();
- exists = false;
-@@ -126,7 +132,8 @@
- };
- static const int TURRET_GROUP_MAX = 10;
- static const int MOVING_TURRET_GROUP_MAX = 4;
-- static const float MULTIPLIER_DECREASE_RATIO = 0.005f;
-+ static const float MULTIPLIER_DECREASE_RATIO = 0.021f;//otoyan change
-+
- int appType;
- Vector pos;
- Vector ppos;
-@@ -167,6 +174,12 @@
- StageManager stageManager;
- ScoreReel scoreReel;
-
-+//otoyan add start
-+ static const float MULTIPLIER_DECREASE_VEL = 0.005f;
-+ static const float MULTIPLIER_DECREASE_VEL_BOSS = 0.002f;
-+ static const float MULTIPLIER_DECREASE_LIMIT_BOSS = 15.0f;
-+//otoyan add end
-+
- invariant {
- assert(pos.x < 15 && pos.x > -15);
- assert(pos.y < 60 && pos.y > -30);
-@@ -315,7 +328,24 @@
- public bool move() {
- ppos.x = pos.x;
- ppos.y = pos.y;
-- multiplier -= MULTIPLIER_DECREASE_RATIO;
-+//otoyan change start
-+ if( spec.isBoss ){
-+ if( multiplier < MULTIPLIER_DECREASE_LIMIT_BOSS ){
-+ multiplier = MULTIPLIER_DECREASE_LIMIT_BOSS;
-+ } else {
-+ if( multiplier > 30 ){
-+ multiplier = multiplier - ( ( multiplier - 30 ) * MULTIPLIER_DECREASE_VEL_BOSS );
-+ }
-+ multiplier -= MULTIPLIER_DECREASE_RATIO;
-+ }
-+ } else {
-+ if( multiplier > 10 ){
-+ multiplier = multiplier - ( ( multiplier - 10 ) * MULTIPLIER_DECREASE_VEL );
-+ }
-+ multiplier -= MULTIPLIER_DECREASE_RATIO;
-+ }
-+//otoyan change end
-+
- if (multiplier < 1)
- multiplier = 1;
- if (destroyedCnt >= 0) {
-@@ -363,7 +393,20 @@
- setScoreIndicator(s, 1);
- }
-
-+//otoyan add start
-+ public void addMagStopCnt( float num ){
-+ stageManager.addMagStopCnt( num );
-+ }
-+//otoyan add end
-+
- public void addDamage(int n, Shot shot = null) {
-+//otoyan add start
-+ if( shot !is null ){
-+ if( shot.isLance ){
-+ increaseMultiplier( 1 );
-+ }
-+ }
-+//otoyan add end
- shield -= n;
- if (shield <= 0) {
- destroyed(shot);
-@@ -417,6 +460,7 @@
- if (spec.type == EnemySpec.EnemyType.SMALL) {
- SoundManager.playSe("small_destroyed.wav");
- r = false;
-+ addMagStopCnt( 0.05f ); //otoyan add
- } else {
- SoundManager.playSe("destroyed.wav");
- int bn = bullets.removeIndexedBullets(idx);
-@@ -435,6 +479,9 @@
- private void setScoreIndicator(int sc, float mp) {
- float ty = NumIndicator.getTargetY();
- if (mp > 1) {
-+//otoyan add start
-+ stageManager.addMagnification( mp - 1 );
-+//otoyan add end
- NumIndicator ni = numIndicators.getInstanceForced();
- ni.set(sc, NumIndicator.IndicatorType.SCORE, 0.5f, pos);
- ni.addTarget(8, ty, NumIndicator.FlyingToType.RIGHT, 1, 0.5f, sc, 40);
-@@ -548,8 +595,19 @@
- ox += 4;
- oy -= 1.25f;
- }
-+//otoyan change start
-+ float r, g, b;
-+ r = g = b = 1.0f;
-+ if( multiplier >= 25 ){
-+ g = 0;
-+ } else {
-+ g = ( 25 - multiplier ) / 25;
-+ }
-+ b = g;
- Letter.drawNumSign(cast(int) (multiplier * 1000),
-- pos.x + ox, pos.y + oy, 0.33f, 1, 33, 3);
-+ pos.x + ox, pos.y + oy, 0.33f, 1, 33, 3,
-+ true, r, g, b);
-+//otoyan change end
- }
- }
- }
-@@ -1195,7 +1253,16 @@
- if (rand.nextInt(2) == 0)
- es.trgDeg *= -1;
- es.turnCnt = 250 + rand.nextInt(150);
-+//otoyan change start
-+ es.multiplier = 100.0f;
-+ } else {
-+ if( shipClass == ShipClass.LARGE ){
-+ es.multiplier = 30.0f;
-+ } else {
-+ es.multiplier = 20.0f;
-+ }
- }
-+//otoyan change start
- return true;
- }
-
-@@ -1207,9 +1274,15 @@
- es.pos.x += sin(es.deg) * es.speed;
- es.pos.y += cos(es.deg) * es.speed;
- es.pos.y -= field.lastScrollY;
-+//otoyan change start
- if (es.pos.x <= -field.outerSize.x - size || es.pos.x >= field.outerSize.x + size ||
-- es.pos.y <= -field.outerSize.y - size)
-+ es.pos.y <= -field.outerSize.y - size){
-+ if( es.pos.y <= -field.outerSize.y - size ){
-+ es.stageManager.addMagnification( -1 * es.multiplier );
-+ }
- return false;
-+ }
-+//otoyan change end
- if (es.pos.y > field.outerSize.y * 2.2f + size)
- es.pos.y = field.outerSize.y * 2.2f + size;
- if (isBoss) {
-@@ -1363,6 +1436,7 @@
- es.pos.y = y;
- es.deg = d;
- es.speed = 0;
-+ es.multiplier = 20.0f; //otoyan add
- if (!es.checkFrontClear(true))
- return false;
- return true;
-@@ -1372,8 +1446,14 @@
- if (!super.move(es))
- return false;
- es.pos.y -= field.lastScrollY;
-- if (es.pos.y <= -field.outerSize.y)
-+//otoyan change start
-+ if (es.pos.y <= -field.outerSize.y){
-+ if( es.destroyedCnt < 0 ){
-+ es.stageManager.addMagnification( -1 * es.multiplier );
-+ }
- return false;
-+ }
-+//otoyan change end
- return true;
- }
-
---- a/src/abagames/gr/gamemanager.d
-+++ b/src/abagames/gr/gamemanager.d
-@@ -139,7 +139,7 @@
- ship.setShots(shots);
- ship.setEnemies(enemies);
- stageManager = new StageManager(field, enemies, ship, bullets,
-- sparks, smokes, fragments, wakes);
-+ sparks, smokes, fragments, wakes, this);
- ship.setStageManager(stageManager);
- field.setStageManager(stageManager);
- field.setShip(ship);
-@@ -275,6 +275,11 @@
- state.drawOrtho();
- screen.viewPerspective();
- }
-+
-+//otoyan add start
-+ public int getGameMode(){
-+ return inGameState.gameMode;
-+ }
- }
-
- /**
-@@ -476,7 +481,7 @@
- private void initGameState() {
- time = 0;
- left = 2;
-- scoreReel.clear(9);
-+ scoreReel.clear(10);
- NumIndicator.initTargetY();
- }
-
---- a/src/abagames/gr/letter.d
-+++ b/src/abagames/gr/letter.d
-@@ -21,6 +21,7 @@
- static const int LINE_COLOR = 2;
- static const int POLY_COLOR = 3;
- static const int COLOR_NUM = 4;
-+ static const int FREE_COLOR = 4; //otoyan add
- private:
- static const float[][] COLOR_RGB = [[1, 1, 1], [0.9, 0.7, 0.5]];
- static const int LETTER_NUM = 44;
-@@ -72,6 +73,28 @@
- glPopMatrix();
- }
-
-+//otoyan add start
-+ private static void drawLetterColor(int n, float x, float y, float s, float d,
-+ float r, float g, float b) {
-+ glPushMatrix();
-+ glTranslatef(x, y, 0);
-+ glScalef(s, s, s);
-+ glRotatef(d, 0, 0, 1);
-+ setLetter( n, FREE_COLOR, r, g, b );
-+ glPopMatrix();
-+ }
-+
-+ private static void drawLetterRevColor(int n, float x, float y, float s, float d,
-+ float r, float g, float b) {
-+ glPushMatrix();
-+ glTranslatef(x, y, 0);
-+ glScalef(s, -s, s);
-+ glRotatef(d, 0, 0, 1);
-+ setLetter( n, FREE_COLOR, r, g, b );
-+ glPopMatrix();
-+ }
-+//otoyan add end
-+
- public static enum Direction {
- TO_RIGHT, TO_DOWN, TO_LEFT, TO_UP,
- }
-@@ -153,9 +176,11 @@
- }
- }
-
-+//otoyan change start
- public static void drawNum(int num, float lx, float y, float s,
- int cl = 0, int dg = 0,
-- int headChar = -1, int floatDigit = -1) {
-+ int headChar = -1, int floatDigit = -1,
-+ bool cflg = false, float r = 0, float g = 0, float b = 0) {
- lx += LETTER_WIDTH * s / 2;
- y += LETTER_HEIGHT * s / 2;
- int n = num;
-@@ -165,10 +190,12 @@
- int fd = floatDigit;
- for (;;) {
- if (fd <= 0) {
-- drawLetter(n % 10, x, y, s, ld, cl);
-+ if( cflg ) drawLetterColor( n % 10, x, y, s, ld, r, g, b );
-+ else drawLetter(n % 10, x, y, s, ld, cl);
- x -= s * LETTER_WIDTH;
- } else {
-- drawLetter(n % 10, x, y + s * LETTER_WIDTH * 0.25f, s * 0.5f, ld, cl);
-+ if( cflg ) drawLetterColor( n % 10, x, y + s * LETTER_WIDTH * 0.25f, s * 0.5f, ld, r, g, b );
-+ else drawLetter(n % 10, x, y + s * LETTER_WIDTH * 0.25f, s * 0.5f, ld, cl);
- x -= s * LETTER_WIDTH * 0.5f;
- }
- n /= 10;
-@@ -187,17 +214,20 @@
- }
-
- public static void drawNumSign(int num, float lx, float ly, float s, int cl = 0,
-- int headChar = -1, int floatDigit = -1) {
-+ int headChar = -1, int floatDigit = -1,
-+ bool cflg = false, float r = 0, float g = 0, float b = 0) {
- float x = lx;
- float y = ly;
- int n = num;
- int fd = floatDigit;
- for (;;) {
- if (fd <= 0) {
-- drawLetterRev(n % 10, x, y, s, 0, cl);
-+ if( cflg ) drawLetterRevColor(n % 10, x, y, s, 0, r, g, b );
-+ else drawLetterRev(n % 10, x, y, s, 0, cl);
- x -= s * LETTER_WIDTH;
- } else {
-- drawLetterRev(n % 10, x, y - s * LETTER_WIDTH * 0.25f, s * 0.5f, 0, cl);
-+ if( cflg ) drawLetterRevColor(n % 10, x, y - s * LETTER_WIDTH * 0.25f, s * 0.5, 0, r, g, b );
-+ else drawLetterRev(n % 10, x, y - s * LETTER_WIDTH * 0.25f, s * 0.5f, 0, cl);
- x -= s * LETTER_WIDTH * 0.5f;
- }
- n /= 10;
-@@ -213,6 +243,7 @@
- drawLetterRev(headChar, x + s * LETTER_WIDTH * 0.2f, y - s * LETTER_WIDTH * 0.2f,
- s * 0.6f, 0, cl);
- }
-+//otoyan change end
-
- public static void drawTime(int time, float lx, float y, float s, int cl = 0) {
- int n = time;
-@@ -247,7 +278,9 @@
- }
- }
-
-- private static void setLetter(int idx, int c) {
-+//otoyan change start
-+ private static void setLetter(int idx, int c,
-+ float r = 0, float g = 0, float b = 0 ) {
- float x, y, length, size, t;
- float deg;
- for (int i = 0;; i++) {
-@@ -267,11 +300,15 @@
- setBoxLine(x, y, size, length, deg);
- else if (c == POLY_COLOR)
- setBoxPoly(x, y, size, length, deg);
-+ else if (c == FREE_COLOR)
-+ setBox(x, y, size, length, deg,
-+ r, g, b);
- else
- setBox(x, y, size, length, deg,
- COLOR_RGB[c][0], COLOR_RGB[c][1], COLOR_RGB[c][2]);
- }
- }
-+//otoyan change end
-
- private static void setBox(float x, float y, float width, float height, float deg,
- float r, float g, float b) {
---- a/src/abagames/gr/reel.d
-+++ b/src/abagames/gr/reel.d
-@@ -37,7 +37,7 @@
- digit = 1;
- }
-
-- public void clear(int digit = 9) {
-+ public void clear(int digit = 10) {
- score = targetScore = _actualScore = 0;
- this.digit = digit;
- for (int i = 0; i < digit; i++)
---- a/src/abagames/gr/shot.d
-+++ b/src/abagames/gr/shot.d
-@@ -236,6 +236,12 @@
- else
- return false;
- }
-+//otoyan add start
-+ public bool isLance(){
-+ return lance;
-+ }
-+
-+//otoyan add end
- }
-
- public class ShotPool: ActorPool!(Shot) {
---- a/src/abagames/gr/stagemanager.d
-+++ b/src/abagames/gr/stagemanager.d
-@@ -17,13 +17,17 @@
- private import abagames.gr.letter;
- private import abagames.gr.particle;
- private import abagames.gr.soundmanager;
-+private import abagames.gr.gamemanager; //otoyan add
-+private import opengl; //otoyan add
-+private import abagames.gr.screen; //otoyan add
-
- /**
- * Manage an enemys' appearance, a rank(difficulty) and a field.
- */
- public class StageManager {
- private:
-- static const float RANK_INC_BASE = 0.0018f;
-+ static const float RANK_INC_BASE = 0.0056f; //otoyan chage
-+ static const float RANK_INC_BASE_SCROLL = 0.0070f; //otoyan add
- static const int BLOCK_DENSITY_MIN = 0;
- static const int BLOCK_DENSITY_MAX = 3;
- Field field;
-@@ -35,7 +39,7 @@
- FragmentPool fragments;
- WakePool wakes;
- Rand rand;
-- float rank, baseRank, addRank, rankVel, rankInc;
-+ float rank, rankInc, rankIncScroll; //otoyan chage
- EnemyAppearance[] enemyApp;
- int _blockDensity;
- int batteryNum;
-@@ -45,18 +49,34 @@
- int bossAppTime, bossAppTimeBase;
- int bgmStartCnt;
-
-+//otoyan add start
-+ GameManager gameManager;
-+ static const float MAG_SUB_BASE = 0.009f;
-+ static const float MAG_VEL = 0.0100f;
-+ static const float MAG_SUB_BASE_BOSS = 0.0045f;
-+ static const float MAG_VEL_BOSS = 0.0050f;
-+ float magnification;
-+ float[] magnifiAdd;
-+ static const int MAG_STOP_CNT_MAX = 120;
-+ static const int MAG_STOP_CNT_MAX_NORMAL = 180;
-+ static const float MAG_STOP_VEL_MIN = 0.5f;
-+ int magStopCnt = 0;
-+ int shipDestroyCnt = 0;
-+//otoyan add end;
-+
- invariant {
- assert(rank >= 1);
-- assert(baseRank >= 1);
-- assert(addRank >= 0);
-- assert(rankVel <>= 0);
-+// assert(baseRank >= 1); //otoyan commnt out
-+// assert(addRank >= 0); //otoyan commnt out
-+// assert(rankVel <>= 0); //otoyan commnt out
- assert(rankInc <>= 0);
- assert(_blockDensity >= BLOCK_DENSITY_MIN && _blockDensity <= BLOCK_DENSITY_MAX);
- assert(batteryNum >= 0 && batteryNum < 50);
- }
-
-+//otoyan chage start
- public this(Field field, EnemyPool enemies, Ship ship, BulletPool bullets,
-- SparkPool sparks, SmokePool smokes, FragmentPool fragments, WakePool wakes) {
-+ SparkPool sparks, SmokePool smokes, FragmentPool fragments, WakePool wakes, GameManager gameManager) {
- this.field = field;
- this.enemies = enemies;
- this.ship = ship;
-@@ -65,28 +85,44 @@
- this.smokes = smokes;
- this.fragments = fragments;
- this.wakes = wakes;
-+ this.gameManager = gameManager;
- rand = new Rand;
- enemyApp = new EnemyAppearance[3];
- foreach (inout EnemyAppearance ea; enemyApp)
- ea = new EnemyAppearance;
- PlatformEnemySpec platformEnemySpec =
- new PlatformEnemySpec(field, ship, sparks, smokes, fragments, wakes);
-- rank = baseRank = 1;
-- addRank = rankVel = rankInc = 0;
-+ rank = 1;
-+ rankInc = rankIncScroll = 0;
- _blockDensity = 2;
-+
-+ magnification = 1;
-+ magnifiAdd = new float[ 10 ];
-+ foreach(inout float mag; magnifiAdd )
-+ mag = 0;
-+ magStopCnt = 0;
- }
-+//otoyan chage end
-
- public void setRandSeed(long seed) {
- rand.setSeed(seed);
- }
-
- public void start(float rankIncRatio) {
-- rank = baseRank = 1;
-- addRank = rankVel = 0;
-+//otoyan change start
-+ rank = 1;
-+ rankIncScroll = RANK_INC_BASE_SCROLL * rankIncRatio;
- rankInc = RANK_INC_BASE * rankIncRatio;
- _blockDensity = rand.nextInt(BLOCK_DENSITY_MAX - BLOCK_DENSITY_MIN + 1) + BLOCK_DENSITY_MIN;
- _bossMode = false;
- bossAppTimeBase = 60 * 1000;
-+
-+ magnification = 1;
-+ foreach(inout float mag; magnifiAdd )
-+ mag = 0;
-+ magStopCnt = -1;
-+//otoyan change end
-+
- resetBossMode();
- gotoNextBlockArea();
- bgmStartCnt = -1;
-@@ -97,7 +133,7 @@
- bossAppCnt = 2;
- SoundManager.fadeBgm();
- bgmStartCnt = 120;
-- rankVel = 0;
-+// rankVel = 0; //otoyan comment out
- }
-
- public void resetBossMode() {
-@@ -119,7 +155,7 @@
- SoundManager.nextBgm();
- }
- if (_bossMode) {
-- addRank *= 0.999f;
-+//otoyan change start
- if (!enemies.hasBoss && bossAppCnt <= 0)
- resetBossMode();
- } else {
-@@ -130,27 +166,72 @@
- startBossMode();
- }
- if (rv > 0) {
-- rankVel += rv * rv * 0.0004f * baseRank;
-+ rank += rankIncScroll;
-+ } else {
-+ rank += rankInc;
-+ }
-+ }
-+
-+ float subRate = 1.0f;
-+ if( magStopCnt > 0 ){
-+ int max = 1;
-+ if( gameManager.getGameMode == InGameState.GameMode.NORMAL ){
-+ max = MAG_STOP_CNT_MAX_NORMAL;
-+ } else {
-+ max = MAG_STOP_CNT_MAX;
-+ }
-+ float rate = cast(float)(cast(float)magStopCnt / max);
-+ if( rate < 0 ) rate = 0;
-+ if( rate > 1 ) rate = 1;
-+ subRate = MAG_STOP_VEL_MIN - ( MAG_STOP_VEL_MIN * rate );
-+
-+ magStopCnt--;
-+ magnification += magnifiAdd[ 0 ];
-+ if( magnification < 1f ){
-+ magnification = 1f;
-+ }
-+ }
-+
-+ if ( shipDestroyCnt <= 0 ){
-+ if (_bossMode) {
-+ if( magnification > ( rank / 2 ) ){
-+ magnification = magnification - ( ( ( magnification - ( rank / 2 ) ) * MAG_VEL_BOSS ) * subRate );
-+ }
-+ magnification = magnification + magnifiAdd[ 0 ] - ( MAG_SUB_BASE_BOSS * subRate );
-+ if( magnification < 1f ){
-+ magnification = 1f;
-+ }
- } else {
-- rankVel += rv * baseRank;
-- if (rankVel < 0)
-- rankVel = 0;
-+ if( magnification > ( rank / 2 ) ){
-+ magnification = magnification - ( ( ( magnification - ( rank / 2 ) ) * MAG_VEL ) * subRate );
-+ }
-+ magnification = magnification + magnifiAdd[ 0 ] - ( MAG_SUB_BASE * subRate );
-+ if( magnification < 1f ){
-+ magnification = 1f;
-+ }
- }
-- addRank += rankInc * (rankVel + 1);
-- addRank *= 0.999f;
-- baseRank += rankInc + addRank * 0.0001f;
-+ } else {
-+ shipDestroyCnt--;
-+ }
-+
-+ for( int i = 0; i < 9; i++ ){
-+ magnifiAdd[ i ] = magnifiAdd[ i + 1 ];
- }
-- rank = baseRank + addRank;
-+ magnifiAdd[ 9 ] = 0f;
-+//otoyan change end
-+
- foreach (EnemyAppearance ea; enemyApp)
- ea.move(enemies, field);
- }
-
- public void shipDestroyed() {
-- rankVel = 0;
-- if (!_bossMode)
-- addRank = 0;
-- else
-- addRank /= 2;
-+//otoyan change start
-+ magnification = rank / 2;
-+ foreach(inout float mag; magnifiAdd )
-+ mag = 0;
-+ shipDestroyCnt = 60;
-+ magStopCnt = 0;
-+//otoyan change end
- }
-
- public void gotoNextBlockArea() {
-@@ -279,13 +360,82 @@
- }
-
- public void draw() {
-- Letter.drawNum(cast(int) (rank * 1000), 620, 10, 10, 0, 0, 33, 3);
-+//otoyan change start
-+ float r, g, b;
-+ if( magStopCnt > 0 ){
-+ int max = 1;
-+ if( gameManager.getGameMode == InGameState.GameMode.NORMAL ){
-+ max = MAG_STOP_CNT_MAX_NORMAL;
-+ } else {
-+ max = MAG_STOP_CNT_MAX;
-+ }
-+ float rate = cast(float)(cast(float)magStopCnt / max);
-+ if( rate < 0 ) rate = 0;
-+ if( rate > 1 ) rate = 1;
-+ r = 1.0f;
-+ g = b = 1 - rate;
-+ glBegin(GL_LINE_STRIP);
-+ Screen.setColor( r, g, b, 1);
-+ glVertex2f( 555, 40 );
-+ Screen.setColor( r, g, b, 1);
-+ glVertex2f( cast( int )(555 + ( 75f * rate )), 40 );
-+ glEnd();
-+ }
-+
-+ Letter.drawNum(cast(int) (rank * 1000), 620, 50, 5, 0, 0, 33, 3);
-+ r = g = b = 1.0f;
-+ if( magnification > ( rank / 2 ) ){
-+ g = ( ( rank / 2 + 100.0f ) - magnification ) / 100.0f;
-+ if( g > 1 ) g = 1.0f;
-+ else if( g < 0 ) g = 0.0f;
-+ b = g;
-+ } else {
-+ g = magnification / ( rank / 2 );
-+ if( g > 1 ) g = 1.0f;
-+ else if( g < 0 ) g = 0.0f;
-+ r = g;
-+ }
-+ Letter.drawNum(cast(int) (magnification * 1000), 620, 10, 10, 0, 0, 33, 3,
-+ true, r, g, b);
-+
-+//otoyan change end
- Letter.drawTime(bossAppTime, 120, 20, 7);
- }
-
- public float rankMultiplier() {
-- return rank;
-+//otoyan change start
-+ return magnification;
-+//otoyan change end
-+ }
-+
-+//otoyan add start
-+ public void addMagnification( float num ) {
-+ if( num >= 0 ){
-+ if( gameManager.getGameMode == InGameState.GameMode.NORMAL ){
-+ magStopCnt = MAG_STOP_CNT_MAX_NORMAL;
-+ } else {
-+ magStopCnt = MAG_STOP_CNT_MAX;
-+ }
-+ }
-+
-+ num /= 10;
-+ foreach(inout float mag; magnifiAdd )
-+ mag += num;
-+ }
-+
-+ public void addMagStopCnt( float num ){
-+ if( _bossMode || magStopCnt <= 0 ) return;
-+
-+ int max = 1;
-+ if( gameManager.getGameMode == InGameState.GameMode.NORMAL ){
-+ max = MAG_STOP_CNT_MAX_NORMAL;
-+ } else {
-+ max = MAG_STOP_CNT_MAX;
-+ }
-+ magStopCnt += num * max;
-+ if( magStopCnt > max ) magStopCnt = max;
- }
-+//otoyan add end
-
- public bool bossMode() {
- return _bossMode;
---- a/src/abagames/gr/title.d
-+++ b/src/abagames/gr/title.d
-@@ -170,14 +170,14 @@
- glPopMatrix();
- if (cnt > 150) {
- Letter.drawString("HIGH", 3, 305, 4, Letter.Direction.TO_RIGHT, 1);
-- Letter.drawNum(prefManager.prefData.highScore(gameMode), 80, 320, 4, 0, 9);
-+ Letter.drawNum(prefManager.prefData.highScore(gameMode), 80, 320, 4, 0, 10);
- }
- if (cnt > 200) {
- Letter.drawString("LAST", 3, 345, 4, Letter.Direction.TO_RIGHT, 1);
- int ls = 0;
- if (_replayData)
- ls = _replayData.score;
-- Letter.drawNum(ls, 80, 360, 4, 0, 9);
-+ Letter.drawNum(ls, 80, 360, 4, 0, 10);
- }
- Letter.drawString(InGameState.gameModeText[gameMode], 3, 400, 5);
- }
---- a/src/abagames/gr/turret.d
-+++ b/src/abagames/gr/turret.d
-@@ -290,11 +290,13 @@
- case TurretSpec.TurretType.MAIN:
- parent.increaseMultiplier(2);
- parent.addScore(40);
-+ parent.addMagStopCnt(0.1f);
- break;
- case TurretSpec.TurretType.SUB:
- case TurretSpec.TurretType.SUB_DESTRUCTIVE:
- parent.increaseMultiplier(1);
- parent.addScore(20);
-+ parent.addMagStopCnt(0.1f);
- break;
- }
- }
---- a/src/abagames/gr/replay.d
-+++ b/src/abagames/gr/replay.d
-@@ -19,7 +19,7 @@
- */
- public class ReplayData {
- public:
-- static const int VERSION_NUM = 11;
-+ static const int VERSION_NUM = -11; //otoyan change
- InputRecord!(PadState) padInputRecord;
- InputRecord!(TwinStickState) twinStickInputRecord;
- InputRecord!(MouseAndPadState) mouseAndPadInputRecord;
More information about the Pkg-games-commits
mailing list