00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014 #ifndef __WORLDPROP_CLNT_H__
00015 #define __WORLDPROP_CLNT_H__
00016
00017
00018 #include <ltbasedefs.h>
00019 #include <ltengineobjectsclient.h>
00020 #include <iobjectplugin.h>
00021 #include <autoview/autoview.h>
00022 #include <ilttexinterface.h>
00023
00024
00026 enum EGameType
00027 {
00028 GT_FFA_DM = 0,
00029 GT_CTF,
00030 GT_UNITY_vs_HARM,
00031
00032 GT_NUM_TYPES
00033 };
00034
00035 const char g_aszGameTypes[GT_NUM_TYPES][16] =
00036 {
00037 "FFA DM",
00038 "CTF",
00039 "UNITY vs HARM"
00040 };
00041
00042
00044 class CWorldPropClnt : public BaseClassClient
00045 {
00046 public:
00047
00048 CWorldPropClnt();
00049 virtual ~CWorldPropClnt();
00050
00051 distr_class(CWorldPropClnt);
00052
00053 void Update();
00054
00055 LTRGB GetBackgroundColor();
00056
00057 private:
00058
00059
00060
00061 float m_fSkyPanCurXOffset;
00062 float m_fSkyPanCurZOffset;
00063 HTEXTURE m_hSkyPan;
00064 uint32 m_nSkyPanTexW;
00065 uint32 m_nSkyPanTexH;
00066
00067 void ApplyWorldProps(const bool& bOldVal);
00068
00069 distr_uint32( m_nFarZ, AVITEM_REG, 2, 10000);
00070 distr_vector( m_vBackgroundColor, AVITEM_REG, 2, LTVector3f(0, 0, 0));
00071
00072 distr_bool( m_bFogEnable, AVITEM_REG, 2, false);
00073 distr_vector( m_vFogColor, AVITEM_REG, 2, LTVector3f(0, 0, 0));
00074 distr_uint32( m_nFogNearZ, AVITEM_REG, 2, 0);
00075 distr_uint32( m_nFogFarZ, AVITEM_REG, 2, 2000);
00076
00077 distr_bool( m_bSkyFogEnable, AVITEM_REG, 2, false);
00078 distr_uint32( m_nSkyFogNearZ, AVITEM_REG, 2, 0);
00079 distr_uint32( m_nSkyFogFarZ, AVITEM_REG, 2, 2000);
00080
00081 distr_bool( m_bSkyPanEnable, AVITEM_REG, 2, false);
00082 distr_string( m_szSkyPanTexture, AVITEM_REG, 2, "");
00083 distr_int32( m_nSkyPanAutoPanX, AVITEM_REG, 2, 0);
00084 distr_int32( m_nSkyPanAutoPanZ, AVITEM_REG, 2, 0);
00085 distr_float( m_fSkyPanScaleX, AVITEM_REG, 2, 1.0f);
00086 distr_float( m_fSkyPanScaleZ, AVITEM_REG, 2, 1.0f);
00087
00088 distr_float( m_fSkyScale, AVITEM_REG, 2, 1.0f);
00089
00090 distr_string( m_szServerConString, AVITEM_REG, 2, "");
00091 distr_string( m_szClientConString, AVITEM_REG, 2, "");
00092 distr_uint32( m_eGameType, AVITEM_REG, 2, GT_FFA_DM);
00093
00094 distr_bool_callback_fn(CWorldPropClnt, m_bApply, ApplyWorldProps);
00095 distr_bool_callback(m_bApply, AVITEM_REG, 1, false);
00096 };
00097
00098
00099 #endif // __WORLDPROP_CLNT_H__