Mercurial > mm7
comparison mm7_3.cpp @ 303:3dcc9d945eeb
DamageMonsterFromParty
author | Nomad |
---|---|
date | Tue, 19 Feb 2013 15:39:50 +0200 |
parents | af7e848d6def |
children | cc8e4dc397ec 72faa54ff319 |
comparison
equal
deleted
inserted
replaced
296:af7e848d6def | 303:3dcc9d945eeb |
---|---|
1482 v40 = v8; | 1482 v40 = v8; |
1483 do | 1483 do |
1484 { | 1484 { |
1485 _46E44E_collide_against_faces_and_portals(0); | 1485 _46E44E_collide_against_faces_and_portals(0); |
1486 _46E0B2_collide_against_decorations(); | 1486 _46E0B2_collide_against_decorations(); |
1487 if ( (v1->field_58 & 7) != OBJECT_Player) | 1487 if ( (v1->field_58_pid & 7) != OBJECT_Player) |
1488 _46EF01_collision_chech_player(1); | 1488 _46EF01_collision_chech_player(1); |
1489 v13 = v1->field_58; | 1489 v13 = v1->field_58_pid; |
1490 v42 = v8; | 1490 v42 = v8; |
1491 if ( (v13 & 7) == OBJECT_Actor) | 1491 if ( (v13 & 7) == OBJECT_Actor) |
1492 { | 1492 { |
1493 if ( (signed int)uNumActors > v8 ) | 1493 if ( (signed int)uNumActors > v8 ) |
1494 { | 1494 { |
1497 { | 1497 { |
1498 //v41 = pActors[v1->field_58 >> 3].pMonsterInfo.uID - 1; | 1498 //v41 = pActors[v1->field_58 >> 3].pMonsterInfo.uID - 1; |
1499 //v14 = (signed __int64)((double)v41 * 0.3333333333333333); | 1499 //v14 = (signed __int64)((double)v41 * 0.3333333333333333); |
1500 //v41 = *(short *)(v39 - 38) - 1; | 1500 //v41 = *(short *)(v39 - 38) - 1; |
1501 //if ( v14 != (unsigned int)(signed __int64)((double)v41 * 0.3333333333333333) ) | 1501 //if ( v14 != (unsigned int)(signed __int64)((double)v41 * 0.3333333333333333) ) |
1502 if( pActors[v1->field_58 >> 3].pMonsterInfo.uID != v39b->pMonsterInfo.uID ) | 1502 if( pActors[v1->field_58_pid >> 3].pMonsterInfo.uID != v39b->pMonsterInfo.uID ) |
1503 //not sure: pMonsterList->pMonsters[v39b->word_000086_some_monster_id-1].uToHitRadius | 1503 //not sure: pMonsterList->pMonsters[v39b->word_000086_some_monster_id-1].uToHitRadius |
1504 _46DF1A_collide_against_actor(v42, *((short *)&pMonsterList->pMonsters[v39b->word_000086_some_monster_id] - 73)); | 1504 _46DF1A_collide_against_actor(v42, *((short *)&pMonsterList->pMonsters[v39b->word_000086_some_monster_id] - 73)); |
1505 ++v42; | 1505 ++v42; |
1506 ++v39b;// += 836; | 1506 ++v39b;// += 836; |
1507 } | 1507 } |
1986 v16 = WorldPosToGridCellZ(v1->vPosition.y); | 1986 v16 = WorldPosToGridCellZ(v1->vPosition.y); |
1987 v17 = v1->vPosition.x; | 1987 v17 = v1->vPosition.x; |
1988 v58 = v16; | 1988 v58 = v16; |
1989 v18 = WorldPosToGridCellX(v17); | 1989 v18 = WorldPosToGridCellX(v17); |
1990 _46E26D_collide_against_sprites(v18, v58); | 1990 _46E26D_collide_against_sprites(v18, v58); |
1991 if ( (v1->field_58 & 7) != OBJECT_Player) | 1991 if ( (v1->field_58_pid & 7) != OBJECT_Player) |
1992 _46EF01_collision_chech_player(0); | 1992 _46EF01_collision_chech_player(0); |
1993 if ( (v1->field_58 & 7) == OBJECT_Actor) | 1993 if ( (v1->field_58_pid & 7) == OBJECT_Actor) |
1994 { | 1994 { |
1995 v19 = v1->field_58 >> 3; | 1995 v19 = v1->field_58_pid >> 3; |
1996 if ( v19 >= 0 ) | 1996 if ( v19 >= 0 ) |
1997 { | 1997 { |
1998 if ( v19 < (signed int)(uNumActors - 1) ) | 1998 if ( v19 < (signed int)(uNumActors - 1) ) |
1999 { | 1999 { |
2000 v56 = 0; | 2000 v56 = 0; |
18185 a1.vPosition.x = fromx; | 18185 a1.vPosition.x = fromx; |
18186 a1.uAttributes = 16; | 18186 a1.uAttributes = 16; |
18187 a1.uSectorID = pIndoor->GetSector(fromx, fromy, fromz); | 18187 a1.uSectorID = pIndoor->GetSector(fromx, fromy, fromz); |
18188 a1.field_60_distance_related_prolly_lod = v55; | 18188 a1.field_60_distance_related_prolly_lod = v55; |
18189 a1.uSpriteFrameID = 0; | 18189 a1.uSpriteFrameID = 0; |
18190 a1.field_58 = 8002; | 18190 a1.field_58_pid = 8000 | OBJECT_Item; |
18191 a1.field_5C = 4; | 18191 a1.field_5C = 4; |
18192 a1.uSoundID = 0; | 18192 a1.uSoundID = 0; |
18193 for ( i = a7c / -2; i <= a7c / 2; i += a8b ) | 18193 for ( i = a7c / -2; i <= a7c / 2; i += a8b ) |
18194 { | 18194 { |
18195 a1.uFacing = i + yaw; | 18195 a1.uFacing = i + yaw; |
18226 a1.uAttributes = 16; | 18226 a1.uAttributes = 16; |
18227 a1.uSectorID = pIndoor->GetSector(fromx, fromy, fromz); | 18227 a1.uSectorID = pIndoor->GetSector(fromx, fromy, fromz); |
18228 a1.field_60_distance_related_prolly_lod = v55; | 18228 a1.field_60_distance_related_prolly_lod = v55; |
18229 v20 = yaw; | 18229 v20 = yaw; |
18230 a1.uSpriteFrameID = 0; | 18230 a1.uSpriteFrameID = 0; |
18231 a1.field_58 = 8002; | 18231 a1.field_58_pid = 8000 | OBJECT_Item; |
18232 a1.field_5C = 0; | 18232 a1.field_5C = 0; |
18233 a1.uFacing = yaw; | 18233 a1.uFacing = yaw; |
18234 a1.uSoundID = 0; | 18234 a1.uSoundID = 0; |
18235 v51 = 0; | 18235 v51 = 0; |
18236 v49 = pObjectList->pObjects[(signed __int16)a1.uObjectDescID].uSpeed; | 18236 v49 = pObjectList->pObjects[(signed __int16)a1.uObjectDescID].uSpeed; |
18280 a1.vPosition.x = fromx; | 18280 a1.vPosition.x = fromx; |
18281 a1.uAttributes = 16; | 18281 a1.uAttributes = 16; |
18282 a1.uSectorID = pIndoor->GetSector(fromx, fromy, fromz); | 18282 a1.uSectorID = pIndoor->GetSector(fromx, fromy, fromz); |
18283 a1.field_60_distance_related_prolly_lod = v55; | 18283 a1.field_60_distance_related_prolly_lod = v55; |
18284 a1.uSpriteFrameID = 0; | 18284 a1.uSpriteFrameID = 0; |
18285 a1.field_58 = 8002; | 18285 a1.field_58_pid = 8000 | OBJECT_Item; |
18286 a1.field_5C = 4; | 18286 a1.field_5C = 4; |
18287 a1.uSoundID = 0; | 18287 a1.uSoundID = 0; |
18288 for ( j = a7d / -2; j <= a7d / 2; j += a8c ) | 18288 for ( j = a7d / -2; j <= a7d / 2; j += a8c ) |
18289 { | 18289 { |
18290 a1.uFacing = j + yaw; | 18290 a1.uFacing = j + yaw; |
18436 a1.vPosition.x = fromx; | 18436 a1.vPosition.x = fromx; |
18437 a1.uAttributes = 16; | 18437 a1.uAttributes = 16; |
18438 a1.uSectorID = pIndoor->GetSector(fromx, fromy, fromz); | 18438 a1.uSectorID = pIndoor->GetSector(fromx, fromy, fromz); |
18439 a1.field_60_distance_related_prolly_lod = v55; | 18439 a1.field_60_distance_related_prolly_lod = v55; |
18440 a1.uSpriteFrameID = 0; | 18440 a1.uSpriteFrameID = 0; |
18441 a1.field_58 = 8002; | 18441 a1.field_58_pid = 8000 | OBJECT_Item; |
18442 a1.field_5C = 4; | 18442 a1.field_5C = 4; |
18443 a1.uSoundID = 0; | 18443 a1.uSoundID = 0; |
18444 v51 = 0; | 18444 v51 = 0; |
18445 v49 = pObjectList->pObjects[(signed __int16)a1.uObjectDescID].uSpeed; | 18445 v49 = pObjectList->pObjects[(signed __int16)a1.uObjectDescID].uSpeed; |
18446 v20 = yaw; | 18446 v20 = yaw; |