Созданные ответы форума
-
АвторСообщения
-
И еще меню сильно виснет, компьютер очень сильно нагружаетя
Забейте, я даун, переменная mSA не была обьявлена, было просто bool mSA, но вопрос почему в debug все работало…
Я же говорил глупый вопрос, как я не додумался просто в классе врага текст делать, спасибо!
А, я идиот забей, я понял
Но тогда если один массив пустой, то второй не будет работать, я проверил, если на карте нету врагов (пустой массив), то огонь не будет обновляться, визуально его просто нету. Этому есть какое-то решение или придется костыли делать?
Я не могу придумать как это сделать, у меня есть 50 кадров с анимацией огня, куда мне и как присваивать вообще, я хочу, чтобы я прописывал команду, например если враг умер, то я прописываю что-то (в моем понимании void должен быть) и задаю координаты появления этого огня, подскажи пожалуйста как сделать толковый класс
Вот класс с который я придумал, но неуверен, что я вообще правильно сделал:
C++123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172class Fire {public:float posx; float posy;Sprite deathFireSp;float deathFireFr;#pragma region texturesTexture f0;Texture f1;Texture f2;Texture f3;Texture f4;Texture f5;Texture f6;Texture f7;Texture f8;Texture f9;Texture f10;Texture f11;Texture f12;Texture f13;Texture f14;Texture f15;Texture f16;Texture f17;Texture f18;Texture f19;Texture f20;Texture f21;Texture f22;Texture f23;Texture f24;Texture f25;Texture f26;Texture f27;Texture f28;Texture f29;Texture f30;Texture f31;Texture f32;Texture f33;Texture f34;Texture f35;Texture f36;Texture f37;Texture f38;Texture f39;Texture f40;Texture f41;Texture f42;Texture f43;Texture f44;Texture f45;Texture f46;Texture f47;Texture f48;Texture f49;Texture f50;#pragma endregion texturesFire(float frame){deathFireFr = frame;f0.loadFromFile("images/normal/flame/flame_01.png");f1.loadFromFile("images/normal/flame/flame_02.png");f2.loadFromFile("images/normal/flame/flame_03.png");f3.loadFromFile("images/normal/flame/flame_04.png");f4.loadFromFile("images/normal/flame/flame_05.png");f5.loadFromFile("images/normal/flame/flame_06.png");f6.loadFromFile("images/normal/flame/flame_07.png");f7.loadFromFile("images/normal/flame/flame_08.png");f8.loadFromFile("images/normal/flame/flame_09.png");f9.loadFromFile("images/normal/flame/flame_10.png");f10.loadFromFile("images/normal/flame/flame_11.png");f11.loadFromFile("images/normal/flame/flame_12.png");f12.loadFromFile("images/normal/flame/flame_13.png");f13.loadFromFile("images/normal/flame/flame_14.png");f14.loadFromFile("images/normal/flame/flame_15.png");f15.loadFromFile("images/normal/flame/flame_16.png");f16.loadFromFile("images/normal/flame/flame_17.png");f17.loadFromFile("images/normal/flame/flame_18.png");f18.loadFromFile("images/normal/flame/flame_19.png");f19.loadFromFile("images/normal/flame/flame_20.png");f20.loadFromFile("images/normal/flame/flame_21.png");f21.loadFromFile("images/normal/flame/flame_22.png");f22.loadFromFile("images/normal/flame/flame_23.png");f23.loadFromFile("images/normal/flame/flame_24.png");f24.loadFromFile("images/normal/flame/flame_25.png");f25.loadFromFile("images/normal/flame/flame_26.png");f26.loadFromFile("images/normal/flame/flame_27.png");f27.loadFromFile("images/normal/flame/flame_28.png");f28.loadFromFile("images/normal/flame/flame_29.png");f29.loadFromFile("images/normal/flame/flame_30.png");f30.loadFromFile("images/normal/flame/flame_31.png");f31.loadFromFile("images/normal/flame/flame_32.png");f32.loadFromFile("images/normal/flame/flame_33.png");f33.loadFromFile("images/normal/flame/flame_34.png");f34.loadFromFile("images/normal/flame/flame_35.png");f35.loadFromFile("images/normal/flame/flame_36.png");f36.loadFromFile("images/normal/flame/flame_37.png");f37.loadFromFile("images/normal/flame/flame_38.png");f38.loadFromFile("images/normal/flame/flame_39.png");f39.loadFromFile("images/normal/flame/flame_40.png");f40.loadFromFile("images/normal/flame/flame_41.png");f41.loadFromFile("images/normal/flame/flame_42.png");f42.loadFromFile("images/normal/flame/flame_43.png");f43.loadFromFile("images/normal/flame/flame_44.png");f44.loadFromFile("images/normal/flame/flame_45.png");f45.loadFromFile("images/normal/flame/flame_46.png");f46.loadFromFile("images/normal/flame/flame_47.png");f47.loadFromFile("images/normal/flame/flame_48.png");f48.loadFromFile("images/normal/flame/flame_49.png");f49.loadFromFile("images/normal/flame/flame_50.png");f50.loadFromFile("images/normal/flame/flame_51.png");}void fireAnim(float time, float posX, float posY){if (deathFireFr < 51) deathFireFr += 0.05*time;else deathFireFr = 0;if (deathFireFr >= 0) deathFireSp.setTexture(f0);if (deathFireFr >= 1) deathFireSp.setTexture(f1);if (deathFireFr >= 2) deathFireSp.setTexture(f2);if (deathFireFr >= 3) deathFireSp.setTexture(f3);if (deathFireFr >= 4) deathFireSp.setTexture(f4);if (deathFireFr >= 5) deathFireSp.setTexture(f5);if (deathFireFr >= 6) deathFireSp.setTexture(f6);if (deathFireFr >= 7) deathFireSp.setTexture(f7);if (deathFireFr >= 8) deathFireSp.setTexture(f8);if (deathFireFr >= 9) deathFireSp.setTexture(f9);if (deathFireFr >= 10) deathFireSp.setTexture(f10);if (deathFireFr >= 11) deathFireSp.setTexture(f11);if (deathFireFr >= 12) deathFireSp.setTexture(f12);if (deathFireFr >= 13) deathFireSp.setTexture(f13);if (deathFireFr >= 14) deathFireSp.setTexture(f14);if (deathFireFr >= 15) deathFireSp.setTexture(f15);if (deathFireFr >= 16) deathFireSp.setTexture(f16);if (deathFireFr >= 17) deathFireSp.setTexture(f17);if (deathFireFr >= 18) deathFireSp.setTexture(f18);if (deathFireFr >= 19) deathFireSp.setTexture(f19);if (deathFireFr >= 20) deathFireSp.setTexture(f20);if (deathFireFr >= 21) deathFireSp.setTexture(f21);if (deathFireFr >= 22) deathFireSp.setTexture(f22);if (deathFireFr >= 23) deathFireSp.setTexture(f23);if (deathFireFr >= 24) deathFireSp.setTexture(f24);if (deathFireFr >= 25) deathFireSp.setTexture(f25);if (deathFireFr >= 26) deathFireSp.setTexture(f26);if (deathFireFr >= 27) deathFireSp.setTexture(f27);if (deathFireFr >= 28) deathFireSp.setTexture(f28);if (deathFireFr >= 29) deathFireSp.setTexture(f29);if (deathFireFr >= 30) deathFireSp.setTexture(f30);if (deathFireFr >= 31) deathFireSp.setTexture(f31);if (deathFireFr >= 32) deathFireSp.setTexture(f32);if (deathFireFr >= 33) deathFireSp.setTexture(f33);if (deathFireFr >= 34) deathFireSp.setTexture(f34);if (deathFireFr >= 35) deathFireSp.setTexture(f35);if (deathFireFr >= 36) deathFireSp.setTexture(f36);if (deathFireFr >= 37) deathFireSp.setTexture(f37);if (deathFireFr >= 38) deathFireSp.setTexture(f38);if (deathFireFr >= 39) deathFireSp.setTexture(f39);if (deathFireFr >= 40) deathFireSp.setTexture(f40);if (deathFireFr >= 41) deathFireSp.setTexture(f41);if (deathFireFr >= 42) deathFireSp.setTexture(f42);if (deathFireFr >= 43) deathFireSp.setTexture(f43);if (deathFireFr >= 44) deathFireSp.setTexture(f44);if (deathFireFr >= 45) deathFireSp.setTexture(f45);if (deathFireFr >= 46) deathFireSp.setTexture(f46);if (deathFireFr >= 47) deathFireSp.setTexture(f47);if (deathFireFr >= 48) deathFireSp.setTexture(f48);if (deathFireFr >= 49) deathFireSp.setTexture(f49);if (deathFireFr >= 50) deathFireSp.setTexture(f50);}};Я понимаю, что такое итератор, я пытаюсь реализовать его, но не понимаю как, я хочу чтобы в любом случае, каком я хочу, вызывать огонь на специальные координаты, но с одной анимацией я не смогу это сделать например если два врага сразу умрут, я же не смогу вызвать два огня сразу, чтобы у них была своя независимая от других огней анимация
Я сам когда столкнулся еле разобрался, но в моем случае все просто: я сначала решил подключить пустую карту, как только добавил какие-то элементы в карту сразу все заработало
Крч, я сделал как ты сказал:
C++1234567891011for (iter1 = enemyArray.begin(); iter1 != enemyArray.end();){(*iter1)->update(time);if ((*iter1)->life == false){enemyArray.erase(iter1);delete (*iter1);iter1++;}else { iter1++; }}Ничего не изменилось, враг все еще на карте при убийстве
Господи, это такой треш, короче я с того момента так ничего и не придумал, спрашивал на английских форумах, там все предлагали перепроверить либы, один вообще говорил, что у меня итератор удаляется слишком рано, вообщем я отчаялся, но вдруг пересматривая уже в последний раз код я заметил это, у меня было написано if (p.getRect().intersects((*iter1)->getRect()));
что-то подозрительная точка с запятой, ОНА МЕШАЛА ПРОВЕРКИ ПЕРЕСЕЧЕНИЯ и в итоге все команды снизу начинали выполняться обходя, жесть полная, столько было теорий, даже какие-то совсем непонятные вещи мне говорили
Расскажите, как пользоваться дебагом, потому что в интернете есть только вопроссы про компиляцию в проекте в режиме релиз и дебаг, что за отметки мне стоит выставлять? Я пока не очень понимаю
Спасибо, да, проблема была в слоях, я чет не додумался, что можно изменить в настройках именно уже сделаной карты (ну типо почему если в начале не было слоя, то потом он появится) оказывается появился, все сработало, спасибо
Скриншоты почему то не приходят, но если что, и mainmap.tmx и map.png у меня лежат в папке images, в коде прописано lvl.LoadFromFile(“images/mainmap.tmx”); В блокноте mainmap.tmx написано immage source=”map.png”; (image source=”images/map.png не работает), формт карты csv, может быьь мне стоит найти версию где есть xml формат? (Если добавить, я такую находку сделал, что ктдать в папку с проектом не сработает, нужно именно в подпапку (например: C:\Users\spoty\Documents\VisualStudio2013\Projects\Adventures\Adventures\images)
у меня формат csv, xml в этой версии нету, карта ортогональная, прото как бы в настройках карты в тайл мап едиторе можно выьрать было только csv! И в блокноте (mainmap.tmx) стоит <data encoding=”csv”>
Я что-то не понимаю, короче вот скрины
Это если я ставлю images/map.png то просто не видит карту tile map editor и пишет Bad map, no tile informatio found, НО если в пути написать просто image source=”map.png”, то tile map editor все видит, и в консоли пишет failed to load map.png, unable to open the file. Я чет ничего не понимаю
Вложения:
You must be logged in to view attached files. -
АвторСообщения