1 | /* |
1 | /* |
2 | * This file is part of Deliantra, the Roguelike Realtime MMORPG. |
2 | * This file is part of Deliantra, the Roguelike Realtime MMORPG. |
3 | * |
3 | * |
4 | * Copyright (©) 2005,2006,2007 Marc Alexander Lehmann / Robin Redeker / the Deliantra team |
4 | * Copyright (©) 2005,2006,2007,2008 Marc Alexander Lehmann / Robin Redeker / the Deliantra team |
5 | * Copyright (©) 2002,2007 Mark Wedel & Crossfire Development Team |
5 | * Copyright (©) 2002,2007 Mark Wedel & Crossfire Development Team |
6 | * Copyright (©) 1992,2007 Frank Tore Johansen |
6 | * Copyright (©) 1992,2007 Frank Tore Johansen |
7 | * |
7 | * |
8 | * Deliantra is free software: you can redistribute it and/or modify |
8 | * Deliantra is free software: you can redistribute it and/or modify |
9 | * it under the terms of the GNU General Public License as published by |
9 | * it under the terms of the GNU General Public License as published by |
… | |
… | |
373 | op = op->head; |
373 | op = op->head; |
374 | |
374 | |
375 | x = op->x + freearr_x[dir]; |
375 | x = op->x + freearr_x[dir]; |
376 | y = op->y + freearr_y[dir]; |
376 | y = op->y + freearr_y[dir]; |
377 | |
377 | |
378 | if (!QUERY_FLAG (op, FLAG_CAN_ROLL) || (op->weight && random_roll (0, op->weight / 50000 - 1, pusher, PREFER_LOW) > pusher->stats.Str)) |
378 | if (!QUERY_FLAG (op, FLAG_CAN_ROLL) |
|
|
379 | || (op->weight && random_roll (0, op->weight / 50000 - 1, pusher, PREFER_LOW) |
|
|
380 | > pusher->stats.Str)) |
379 | return 0; |
381 | return 0; |
380 | |
382 | |
381 | m = op->map; |
383 | m = op->map; |
382 | flags = get_map_flags (m, &m, x, y, &x, &y); |
384 | flags = get_map_flags (m, &m, x, y, &x, &y); |
383 | |
385 | |