| 123 | } |
| 124 | |
| 125 | LSError Detector::Serialize(ParamArchive& ar) |
| 126 | { |
| 127 | PARAM_CHECK(base::Serialize(ar)) |
| 128 | PARAM_CHECK(ar.Serialize("a", _a, 1)) |
| 129 | PARAM_CHECK(ar.Serialize("b", _b, 1)) |
| 130 | PARAM_CHECK(ar.Serialize("sinAngle", _sinAngle, 1)) |
| 131 | PARAM_CHECK(ar.Serialize("cosAngle", _cosAngle, 1, sqrt(1 - Square(_sinAngle)))) |
| 132 | |
| 133 | PARAM_CHECK(ar.Serialize("rectangular", _rectangular, 1)) |
| 134 | PARAM_CHECK(ar.SerializeEnum("activationBy", _activationBy, 1)) |
| 135 | PARAM_CHECK(ar.SerializeEnum("activationType", _activationType, 1)) |
| 136 | PARAM_CHECK(ar.Serialize("repeating", _repeating, 1)) |
| 137 | PARAM_CHECK(ar.Serialize("timeoutMin", _timeoutMin, 1)) |
| 138 | PARAM_CHECK(ar.Serialize("timeoutMid", _timeoutMid, 1)) |
| 139 | PARAM_CHECK(ar.Serialize("timeoutMax", _timeoutMax, 1)) |
| 140 | PARAM_CHECK(ar.Serialize("interruptable", _interruptable, 1)) |
| 141 | PARAM_CHECK(ar.SerializeEnum("action", _action, 1)) |
| 142 | PARAM_CHECK(ar.SerializeRef("assignedGroup", _assignedGroup, 1)) |
| 143 | PARAM_CHECK(ar.Serialize("assignedStatic", _assignedStatic, 1)) |
| 144 | PARAM_CHECK(ar.Serialize("assignedVehicle", _assignedVehicle, 1)) |
| 145 | PARAM_CHECK(ar.Serialize("text", _text, 1)) |
| 146 | PARAM_CHECK(ar.Serialize("expCond", _expCond, 1)) |
| 147 | PARAM_CHECK(ar.Serialize("expActiv", _expActiv, 1)) |
| 148 | PARAM_CHECK(ar.Serialize("expDesactiv", _expDesactiv, 1)) |
| 149 | PARAM_CHECK(ar.SerializeArray("synchronizations", _synchronizations, 1)) |
| 150 | |
| 151 | ParamArchive arSubcls; |
| 152 | if (!ar.OpenSubclass("Effects", arSubcls)) |
| 153 | { |
| 154 | return LSStructure; |
| 155 | } |
| 156 | PARAM_CHECK(_effects.WorldSerialize(arSubcls)) |
| 157 | |
| 158 | PARAM_CHECK(ar.Serialize("countdown", _countdown, 1)) |
| 159 | PARAM_CHECK(ar.Serialize("active", _active, 1)) |
| 160 | PARAM_CHECK(ar.Serialize("activeCountdown", _activeCountdown, 1)) |
| 161 | |
| 162 | if (ar.IsLoading() && ar.GetPass() == ParamArchive::PassFirst) |
| 163 | { |
| 164 | _e = sqrt(Square(_a) - Square(_b)); |
| 165 | _nextCheck = Glob.time - 1.0; |
| 166 | } |
| 167 | |
| 168 | return LSOK; |
| 169 | } |
| 170 | |
| 171 | NetworkMessageType Detector::GetNMType(NetworkMessageClass cls) const |
| 172 | { |
nothing calls this directly
no test coverage detected