• R/O
  • SSH
  • HTTPS

Commit

Frequently used words (click to add to your profile)

javac++androidlinuxc#objective-cqtwindows誰得cocoapythonphprubygameguibathyscaphec翻訳omegat計画中(planning stage)frameworktwittertestdomvb.netdirectxbtronarduinopreviewerゲームエンジン

X operations(XOPS)に非常に近いFPSゲームを制作・リメイクし、成果物をオープンソースとして公開することを目的としたプロジェクトです。


Commit MetaInfo

Revision210 (tree)
Zeit2018-11-05 22:29:55
Autorxops-mikan

Log Message

発砲時の誤差計算を修正

Ändern Zusammenfassung

Diff

--- trunk/objectmanager.cpp (revision 209)
+++ trunk/objectmanager.cpp (revision 210)
@@ -1934,27 +1934,24 @@
19341934 ry = armrotation_y;
19351935
19361936 //誤差を決定
1937- int ErrorRange_x, ErrorRange_y;
1938- if( (ErrorRange - ParamData.ErrorRangeMIN) == 0 ){
1939- ErrorRange_x = ErrorRange;
1940- ErrorRange_y = ErrorRange;
1941- }
1942- else{
1943- ErrorRange_x = GetRand(ErrorRange - ParamData.ErrorRangeMIN) + ParamData.ErrorRangeMIN;
1944- ErrorRange_y = GetRand(ErrorRange - ParamData.ErrorRangeMIN) + ParamData.ErrorRangeMIN;
1945- }
1946- if( GetRand(2) == 0 ){ ErrorRange_x *= -1; }
1947- if( GetRand(2) == 0 ){ ErrorRange_y *= -1; }
1937+ if( ErrorRange != 0 ){
1938+ int ErrorRange_x, ErrorRange_y;
19481939
1949- //発射誤差の角度を求める
1950- float a, r;
1951- a = atan2((float)ErrorRange_y, (float)ErrorRange_x);
1952- r = sqrt((float)(ErrorRange_x*ErrorRange_x + ErrorRange_y*ErrorRange_y));
1940+ ErrorRange_x = GetRand(ErrorRange+1);
1941+ ErrorRange_y = GetRand(ErrorRange+1);
1942+ if( GetRand(2) == 0 ){ ErrorRange_x *= -1; }
1943+ if( GetRand(2) == 0 ){ ErrorRange_y *= -1; }
19531944
1954- //誤差分 角度に加算
1955- rx += cos(a)*r * DegreeToRadian(0.15f);
1956- ry += sin(a)*r * DegreeToRadian(0.15f);
1945+ //発射誤差の角度を求める
1946+ float a, r;
1947+ a = atan2((float)ErrorRange_y, (float)ErrorRange_x);
1948+ r = sqrt((float)(ErrorRange_x*ErrorRange_x + ErrorRange_y*ErrorRange_y));
19571949
1950+ //誤差分 角度に加算
1951+ rx += cos(a)*r * DegreeToRadian(0.15f);
1952+ ry += sin(a)*r * DegreeToRadian(0.15f);
1953+ }
1954+
19581955 //手榴弾でなければ
19591956 if( grenadeflag == false ){
19601957 class bullet* newbullet;
@@ -1974,7 +1971,7 @@
19741971
19751972 //さらに誤差を増やして拡散させる
19761973 int len;
1977- a = DegreeToRadian(10) * GetRand(36);
1974+ float a = DegreeToRadian(10) * GetRand(36);
19781975 len = GetRand(5)*2+5;
19791976 rx2 = rx + cos(a)*len * DegreeToRadian(0.15f);
19801977 ry2 = ry + sin(a)*len * DegreeToRadian(0.15f);