… | |
… | |
1604 | partylist *party = owner->contr->party; |
1604 | partylist *party = owner->contr->party; |
1605 | |
1605 | |
1606 | #ifdef PARTY_KILL_LOG |
1606 | #ifdef PARTY_KILL_LOG |
1607 | add_kill_to_party (party, query_name (owner), query_name (op), exp); |
1607 | add_kill_to_party (party, query_name (owner), query_name (op), exp); |
1608 | #endif |
1608 | #endif |
1609 | for (pl = first_player; pl != NULL; pl = pl->next) |
1609 | for_all_players (pl) |
1610 | if (party && pl->ob->contr->party == party && on_same_map (pl->ob, owner)) |
1610 | if (party && pl->ob->contr->party == party && on_same_map (pl->ob, owner)) |
1611 | { |
1611 | { |
1612 | count++; |
1612 | count++; |
1613 | shares += (pl->ob->level + 4); |
1613 | shares += (pl->ob->level + 4); |
1614 | } |
1614 | } |
… | |
… | |
1617 | change_exp (owner, exp, skill, SK_EXP_TOTAL); |
1617 | change_exp (owner, exp, skill, SK_EXP_TOTAL); |
1618 | else |
1618 | else |
1619 | { |
1619 | { |
1620 | int share = exp / shares, given = 0, nexp; |
1620 | int share = exp / shares, given = 0, nexp; |
1621 | |
1621 | |
1622 | for (pl = first_player; pl != NULL; pl = pl->next) |
1622 | for_all_players (pl) |
1623 | if (party && pl->ob->contr->party == party && on_same_map (pl->ob, owner)) |
1623 | if (party && pl->ob->contr->party == party && on_same_map (pl->ob, owner)) |
1624 | { |
1624 | { |
1625 | nexp = (pl->ob->level + 4) * share; |
1625 | nexp = (pl->ob->level + 4) * share; |
1626 | change_exp (pl->ob, nexp, skill, SK_EXP_TOTAL); |
1626 | change_exp (pl->ob, nexp, skill, SK_EXP_TOTAL); |
1627 | given += nexp; |
1627 | given += nexp; |