QTfrontend/net/hwmapoptimizer.h
author Wuzzy <Wuzzy2@mail.ru>
Sat, 06 Jun 2020 15:40:51 +0200
changeset 15597 6e72bd61002e
parent 10256 b07288b729c4
permissions -rw-r--r--
Disable gfMoreWind for land objects on turn end only after a fixed-time delay 15s sounds much, but it's the average amount for gfMineStrike mines to settle naturally. And it would be very confusing to see falling mines suddenly not caring about gfMoreWind for no apparent reason. Note this whole thing is a giant hack anyway, to prevent a turn being blocked by infinitely bouncing mines. The better solution would be to help gfMoreWind-affected land objects settle naturally more reliably even under extreme wind. But this commit is "good enough" for now. If you don't like the delay, you can always tweak the constant.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
10256
b07288b729c4 Some further work on map optimizer
unc0rr
parents:
diff changeset
     1
#ifndef HWMAPOPTIMIZER_H
b07288b729c4 Some further work on map optimizer
unc0rr
parents:
diff changeset
     2
#define HWMAPOPTIMIZER_H
b07288b729c4 Some further work on map optimizer
unc0rr
parents:
diff changeset
     3
b07288b729c4 Some further work on map optimizer
unc0rr
parents:
diff changeset
     4
#include "tcpBase.h"
b07288b729c4 Some further work on map optimizer
unc0rr
parents:
diff changeset
     5
#include "drawmapscene.h"
b07288b729c4 Some further work on map optimizer
unc0rr
parents:
diff changeset
     6
b07288b729c4 Some further work on map optimizer
unc0rr
parents:
diff changeset
     7
class HWMapOptimizer : public TCPBase
b07288b729c4 Some further work on map optimizer
unc0rr
parents:
diff changeset
     8
{
b07288b729c4 Some further work on map optimizer
unc0rr
parents:
diff changeset
     9
    Q_OBJECT
b07288b729c4 Some further work on map optimizer
unc0rr
parents:
diff changeset
    10
public:
b07288b729c4 Some further work on map optimizer
unc0rr
parents:
diff changeset
    11
    explicit HWMapOptimizer(QObject *parent = 0);
b07288b729c4 Some further work on map optimizer
unc0rr
parents:
diff changeset
    12
b07288b729c4 Some further work on map optimizer
unc0rr
parents:
diff changeset
    13
    void optimizeMap(const Paths & paths);
b07288b729c4 Some further work on map optimizer
unc0rr
parents:
diff changeset
    14
    bool couldBeRemoved();
b07288b729c4 Some further work on map optimizer
unc0rr
parents:
diff changeset
    15
    
b07288b729c4 Some further work on map optimizer
unc0rr
parents:
diff changeset
    16
signals:    
b07288b729c4 Some further work on map optimizer
unc0rr
parents:
diff changeset
    17
    void optimizedMap(const Paths & paths);
b07288b729c4 Some further work on map optimizer
unc0rr
parents:
diff changeset
    18
    
b07288b729c4 Some further work on map optimizer
unc0rr
parents:
diff changeset
    19
public slots:
b07288b729c4 Some further work on map optimizer
unc0rr
parents:
diff changeset
    20
b07288b729c4 Some further work on map optimizer
unc0rr
parents:
diff changeset
    21
protected:
b07288b729c4 Some further work on map optimizer
unc0rr
parents:
diff changeset
    22
    QStringList getArguments();
b07288b729c4 Some further work on map optimizer
unc0rr
parents:
diff changeset
    23
    void onClientDisconnect();
b07288b729c4 Some further work on map optimizer
unc0rr
parents:
diff changeset
    24
    void SendToClientFirst();
b07288b729c4 Some further work on map optimizer
unc0rr
parents:
diff changeset
    25
b07288b729c4 Some further work on map optimizer
unc0rr
parents:
diff changeset
    26
private:
b07288b729c4 Some further work on map optimizer
unc0rr
parents:
diff changeset
    27
    Paths m_paths;
b07288b729c4 Some further work on map optimizer
unc0rr
parents:
diff changeset
    28
};
b07288b729c4 Some further work on map optimizer
unc0rr
parents:
diff changeset
    29
b07288b729c4 Some further work on map optimizer
unc0rr
parents:
diff changeset
    30
#endif // HWMAPOPTIMIZER_H