11#include " BulletHelper.h"
2- #include " HugeBullet.h"
3- #include " CircleBullet.h"
4- #include " RiceBullet.h"
2+ #include " CircleTypeBullet.h"
53#include " ../../XCInterpreter/ScriptLoader.h"
6- Bullet * BulletHelper::getNewBulletObject (std::string bulletType, int bulletColor , glm::vec4 divideInfo, glm::vec3 scaleInfo, glm::vec3 initCoord
4+ Bullet * BulletHelper::getNewBulletObject (std::string bulletImage,std::string bulletType , glm::vec4 divideInfo, glm::vec3 scaleInfo, glm::vec3 initCoord
75 , float velocity, float acceleration, float angle, float increateAngle, int reboundTime, bool aimPlayer)
86{
97 Bullet *bullet = nullptr ;
10- if (bulletType == " circleBullet" ) {
11- bullet = new CircleBullet (bulletColor, divideInfo, scaleInfo, initCoord, velocity, acceleration, angle, increateAngle, reboundTime, aimPlayer);
12- }
13- else if (bulletType == " riceBullet" ) {
14- bullet = new RiceBullet (bulletColor, divideInfo, scaleInfo, initCoord, velocity, acceleration, angle, increateAngle, reboundTime, aimPlayer);
15- }
16- else if (bulletType == " hugeBullet" ) {
17- bullet = new HugeBullet (bulletColor, divideInfo, scaleInfo, initCoord, velocity, acceleration, angle, increateAngle, reboundTime, aimPlayer);
8+ if (bulletType == " circleTypeBullet" ) {
9+ bullet = new CircleTypeBullet (bulletImage, divideInfo, scaleInfo, initCoord, velocity, acceleration, angle, increateAngle, reboundTime, aimPlayer);
1810 }
1911 return bullet;
2012}
@@ -25,23 +17,20 @@ Bullet * BulletHelper::parseBulletObject(PyObject * bulletObject)
2517
2618 if (bulletObject != nullptr ) {
2719 auto imageInfo = PyObject_CallMethod (bulletObject, " _cpp_getInitRenderInfo" , NULL );
28- auto bulletColorInfo = PyObject_CallMethod (bulletObject, " _cpp_getBulletColor" , NULL );
2920 auto bulletGenerateInfo = PyObject_CallMethod (bulletObject, " _cpp_getGenerateInfo" , NULL );
3021 auto bulletCoordInfo = PyObject_CallMethod (bulletObject, " _cpp_getInitCoord" , NULL );
3122
32- const char * bulletType; int divideInfo[4 ]; float scaleInfo[3 ];
33- PyArg_ParseTuple (imageInfo, " s (iiii)(fff)" , &bulletType, ÷Info[0 ], ÷Info[1 ], ÷Info[2 ], ÷Info[3 ], &scaleInfo[0 ], &scaleInfo[1 ], &scaleInfo[2 ]);
23+ const char * bulletImage, * bulletType; int divideInfo[4 ]; float scaleInfo[3 ];
24+ PyArg_ParseTuple (imageInfo, " ss (iiii)(fff)" , &bulletImage , &bulletType, ÷Info[0 ], ÷Info[1 ], ÷Info[2 ], ÷Info[3 ], &scaleInfo[0 ], &scaleInfo[1 ], &scaleInfo[2 ]);
3425
35- int bulletColor;
36- PyArg_Parse (bulletColorInfo, " i" , &bulletColor);
3726
3827 float velocity, acceleration, angle, increaseAngle; int aimPlayer, reboundTime;
3928 PyArg_ParseTuple (bulletGenerateInfo, " ffffip" , &velocity, &acceleration, &angle, &increaseAngle, &reboundTime, &aimPlayer);
4029
4130 float initCoord[3 ];
4231 PyArg_ParseTuple (bulletCoordInfo, " fff" , &initCoord[0 ], &initCoord[1 ], &initCoord[2 ]);
4332
44- bullet = BulletHelper::getNewBulletObject (bulletType, bulletColor , glm::vec4 (divideInfo[0 ], divideInfo[1 ], divideInfo[2 ], divideInfo[3 ])
33+ bullet = BulletHelper::getNewBulletObject (bulletImage, bulletType , glm::vec4 (divideInfo[0 ], divideInfo[1 ], divideInfo[2 ], divideInfo[3 ])
4534 , glm::vec3 (scaleInfo[0 ], scaleInfo[1 ], scaleInfo[2 ]), glm::vec3 (initCoord[0 ], initCoord[1 ], initCoord[2 ])
4635 , velocity, acceleration, angle, increaseAngle, reboundTime, aimPlayer);
4736 if (bullet != nullptr ) {
0 commit comments