Changeset 311 for trunk/monsterz/piece.cpp
- Timestamp:
- Jan 30, 2011, 6:31:14 PM (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/monsterz/piece.cpp
r303 r311 65 65 data->id = id; 66 66 data->state = PieceData::IDLE; 67 data->timer = RandF(DELAY_IDLE); 67 68 } 68 69 … … 237 238 { 238 239 case PieceData::IDLE: 239 break;240 case PieceData::BLINK:241 240 data->timer -= deltams; 242 241 if (data->timer < 0.0f) 242 data->timer = DELAY_IDLE; 243 break; 244 case PieceData::BLINK: 245 data->timer -= deltams; 246 if (data->timer < 0.0f) 247 { 243 248 data->state = PieceData::IDLE; 249 data->timer = RandF(DELAY_IDLE); 250 } 244 251 break; 245 252 case PieceData::GRAB: … … 265 272 } 266 273 if (data->timer > moving_time + 200.0f) 274 { 267 275 data->state = PieceData::IDLE; 276 data->timer = RandF(DELAY_IDLE); 277 } 268 278 break; 269 279 } … … 273 283 { 274 284 float3 pos(data->pos.x + 24, data->pos.y + 177, 5); 275 int start = data->id + 1 0;276 int stop = data->id + 1 3;285 int start = data->id + 12; 286 int stop = data->id + 15; 277 287 for (int id = start; id < stop; id++) 278 288 { 279 float3 vel(RandF(-0.3f, 0.3f), RandF(0.2f, 0.3f), 0.0f); 289 float angle = RandF(-1.2f, 1.2f); 290 float speed = RandF(0.3f, 0.5f); 291 float3 vel(speed * sinf(angle), speed * cosf(angle), 0.0f); 280 292 data->emitter->AddParticle(id, pos, vel); 281 293 } … … 303 315 { 304 316 case PieceData::IDLE: 305 break; 306 case PieceData::BLINK: 307 id = data->id + 1; 308 break; 309 case PieceData::GRAB: 310 id = data->id + 1; 317 { 318 int off = data->timer * 3 / DELAY_IDLE; 319 if (off < 0) off = 0; 320 if (off > 2) off = 2; 321 id = data->id + off; 322 break; 323 } 324 case PieceData::BLINK: 325 id = data->id + 3; 326 break; 327 case PieceData::GRAB: 328 id = data->id + 3; 311 329 z = 4; 312 330 break; 313 331 case PieceData::UNGRAB: 314 332 if ((data->cell * 48 - data->src).sqlen() > 24 * 24) 315 id = data->id + 5;333 id = data->id + 7; 316 334 z = 4; 317 335 break; … … 324 342 if (off < 0) off = 0; 325 343 if (off > 4) off = 4; 326 id = data->id + 5+ off;344 id = data->id + 7 + off; 327 345 break; 328 346 }
Note: See TracChangeset
for help on using the changeset viewer.