Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also .

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also .
base repository: CleverRaven/Cataclysm-DDA
Choose a Base Repository
CleverRaven/Cataclysm-DDA
1942rob/Cataclysm-DDA
8Z/Cataclysm-DDA
Abalieno/Cataclysm-DDA
Alpha16/Cataclysm-DDA
AnderHammer/Cataclysm-DDA
Angular-Angel/Cataclysm-DDA
BDR1985/Cataclysm-DDA
BevapDin/Cataclysm-DDA
BigD145/Cataclysm-DDA
BlueMoonDude/Cataclysm-DDA
Brian-Otten/Cataclysm-DDA
BurnZeZ/Cataclysm-DDA
CIB/Cataclysm-DDA
CNXTEoEorg/Cataclysm-DDA
Caleneledh/Cataclysm-DDA
Catacstone/Cataclysm-DDA
CepheidVar/Cataclysm-DDA
Chezzo/Cataclysm-DDA
CliffsDover/Cataclysm-DDA
CoZarctan/Cataclysm-DDA
Coolthulhu/Cataclysm
DeathIndustry/Cataclysm-DDA
DennisCavy/Cataclysm-DDA
Dirkkun/Cataclysm-DDA
Doohl/Cataclysm-DDA
Erifdex/Cataclysm-DDA
ExLeper/Cataclysm-DDA
Falconne/Cataclysm-DDA
FunnyMan3595/Cataclysm-DDA
GalenEvil/Cataclysm-DDA-1
GlyphGryph/Cataclysm-DDA
GreyZebra/Cataclysm-DDA
Icariamis/Cataclysm-DDA
Idorobots/Cataclysm-DDA
InfernoZeus/Cataclysm-DDA
Ioncloud9/Cataclysm-DDA-Voxel
Isylwin/Cataclysm-DDA
JonahDes/Cataclysm-DDA
KantoJolto/Cataclysm-DDA
Karethoth/Cataclysm-DDA
Keksike/Cataclysm-DDA
KorGgenT/Cataclysm-DDA
Liberman/Cataclysm-DDA
MSinit/Cataclysm-DDA
Majesty911/Cataclysm-DDA
Maldaris/Cataclysm-DDA
Malkeus/Cataclysm-DDA
MattAmmann/Cataclysm-DDA
MehMuffin/Cataclysm-DDA
MetroidHunter/Cataclysm-DDA
MisterFelixFox/Cataclysm-DDA
MonoSoftwareKor/Cataclysm-DDA
NaturesWitness/Cataclysm-DDA
NecroBanana/Cataclysm-DDA
NickJ1984/Cataclysm-DDA
Nickboom1/Cataclysm-DDA
Nimbie310/Cataclysm-DDA
Obsol/Cataclysm-DDA
Oddzball/Cataclysm-DDA
OzoneH3/Cataclysm-DDA
Phenomphear/Cataclysm-DDA
PrinnyDoodman/Cataclysm-DDA
Pthalocy/Cataclysm-DDA
Pux1/Cataclysm-DDA
Redstonize/Cataclysm-DDA
RexWolf163ru/Cataclysm-DDA
RianAshes/Cataclysm-DDA
Rivet-the-Zombie/Cataclysm-DDA
SailingStoph/Cataclysm-DDA
SamoulY/Cataclysm-DDA
Savidiy/Cataclysm-DDA
ShadowZero/Cataclysm-DDA
ShinQuickMan/Cataclysm-DDA
SidMeier/Cataclysm-DDA
Sodah-/Cataclysm-DDA
Someone65/Cataclysm-DDA
Spamcat/Cataclysm-DDA
SpencerMichaels/Cataclysm-DDA
Stevensonz/Cataclysm-DDA
StraySilverFox/Cataclysm-DDA
SweeperM/CataclysmMod
TGITS-Solutions/Cataclysm-DDA
ThatOneGuy42/Cataclysm-DDA
The13thRonin/Cataclysm-DDA
TheDarklingWolf/Cataclysm-DDA
TheGrifter/Cataclysm-DDA
TireExaminer/Cataclysm-DDA
Treniac/Cataclysm-DDA
USH008/Cataclysm-DDA
Vengarr/Cataclysm-DDA
VlasovVitaly/Cataclysm-DDA
Voker57/Cataclysm-DDA
Wedlor/Cataclysm-DDA
Xantrim/Cataclysm-DDA
Xommers/Cataclysm-DDA
ZhilkinSerg/Cataclysm-DDA
a1studmuffin/Cataclysm-DDA
aapo/Cataclysm-DDA
acidia/Cataclysm-DDA
adiputra6/Cataclysm-DDA
amenelen/Cataclysm-DDA
atomicdryad/Cataclysm-DDA
auto-load/Cataclysm-DDA
axujen/Cataclysm-DDA
batu-bacan/Cataclysm-DDA
bdragon28/Cataclysm-DDA
bigbrotherx52/Cataclysm-DDA
bigdiaozhang/Cataclysm-DDA
bodysna7cher/Cataclysm-DDA
cake-pie/Cataclysm-DDA
cataclysmbnteam/Cataclysm-BN
cburns2017/Group6CSE
cloudyrads/Cataclysm-DDA
codename-rinzler/Cataclysm-DDA
creidieki/Cataclysm-DDA
cryptonaut/Cataclysm-DDA
darth-servo/Cataclysm-DDA
dholmes215/Cataclysm-DDA
dombrock-archive/Cataclysm-DDA
dreamlx/Cataclysm-DDA
ecroffleps/Cataclysm-DDA
eiennohito/Cataclysm-DDA
ejseto/Cataclysm-DDA
emrsmsrli/Cataclysm-DDA
emusilent/Cataclysm-DDA
ethankaminski/Cataclysm-DDA
fiddlerwoaroof/Cataclysm-DDA
fuchs87/Cataclysm-DDA
funkdat25z/Cataclysm-DDA
geffrod/Cataclysm-DDA
gelas4/Cataclysm-DDA
gordallott/Cataclysm-DDA
goron111/Cataclysm-DDA
hovatterz/Cataclysm-DDA
i2amroy/Cataclysm-DDA
idshibanov/Cataclysm-DDA
ikapelyukhin/Cataclysm-DDA
iodineJack/Cataclysm-DDA
jesusmod/Cataclysm-DDA
jjs2/Cataclysm-DDA
joneskun/Cataclysm-DDA
jubirr88/Cataclysm-DDA
justiceyan/Cataclysm-DDA
kenoxite/Cataclysm-DDA
kevingranade/Cataclysm-DDA
lethosor/Cataclysm-DDA
lucasw/Cataclysm-DDA
madjake/Cataclysm-DDA
masecknotrealname/Cataclysm-DDA
meyar/Cataclysm-DDA
minakitty/Cataclysm-DDA
minang/Cataclysm-DDA
minmul117/Cataclysm-DDA
multimark/Cataclysm-DDA
mytinylab/Cataclysm-DDA
nommi/Cataclysm-DDA
ofw150/Cataclysm-DDA
omersyuksel/Cataclysm-DDA
origamiwolf/DinoCataclysm
palm3r/Cataclysm-DDA-I18N
pipehat/Cataclysm-DDA
pitrdevries/Cataclysm-DDA
placeybordeaux/Cataclysm-DDA
poklj/Cataclysm-DDA
pouar/Cataclysm-DDA
raycrasher/Cataclysm-DDA
rays2004/Cataclysm-DDA
remyroy/Cataclysm-DDA
richardyangran/Cataclysm-DDA
sabanano/Cataclysm-DDA
shivnetra/Cataclysm-DDA
smmck/Cataclysm-DDA
snoopying/Cataclysm-DDA
squimmy/Cataclysm-DDA
strangie/Cataclysm-DDA
teh-sam/Cataclysm-DDA
theMIj/Cataclysm-DDA
tivec/Cataclysm-DDA
tsuma534/Cataclysm-DDA
tung/Cataclysm-DDA
tytyebo/Cataclysm-DDA
utunnels/Cataclysm-DDA
vache/Cataclysm-DDA
velddrinn/Cataclysm-DDA
veryinky/Cataclysm-DDA
vulkans22/Cataclysm-DDA
vytarrus/Cataclysm-DDA
wangxun159123/Cataclysm-DDA
wazxhy/Cataclysm-DDA
web-hijacker/Cataclysm-DDA
webadict/Cataclysm-DDA
wigtitit/Cataclysm-DDA
xiamingliang/Cataclysm-DDA
xuwenzhe0000/Cataclysm-DDA
ymber/Cataclysm-DDA
yusiwen/Cataclysm-DDA
zikong/Cataclysm-DDA
zmdb/Cataclysm-DDA
zpmorgan/Cataclysm-DDA
Nothing to show
base: 0.7.1
head repository: CleverRaven/Cataclysm-DDA
Choose a Head Repository
CleverRaven/Cataclysm-DDA
1942rob/Cataclysm-DDA
8Z/Cataclysm-DDA
Abalieno/Cataclysm-DDA
Alpha16/Cataclysm-DDA
AnderHammer/Cataclysm-DDA
Angular-Angel/Cataclysm-DDA
BDR1985/Cataclysm-DDA
BevapDin/Cataclysm-DDA
BigD145/Cataclysm-DDA
BlueMoonDude/Cataclysm-DDA
Brian-Otten/Cataclysm-DDA
BurnZeZ/Cataclysm-DDA
CIB/Cataclysm-DDA
CNXTEoEorg/Cataclysm-DDA
Caleneledh/Cataclysm-DDA
Catacstone/Cataclysm-DDA
CepheidVar/Cataclysm-DDA
Chezzo/Cataclysm-DDA
CliffsDover/Cataclysm-DDA
CoZarctan/Cataclysm-DDA
Coolthulhu/Cataclysm
DeathIndustry/Cataclysm-DDA
DennisCavy/Cataclysm-DDA
Dirkkun/Cataclysm-DDA
Doohl/Cataclysm-DDA
Erifdex/Cataclysm-DDA
ExLeper/Cataclysm-DDA
Falconne/Cataclysm-DDA
FunnyMan3595/Cataclysm-DDA
GalenEvil/Cataclysm-DDA-1
GlyphGryph/Cataclysm-DDA
GreyZebra/Cataclysm-DDA
Icariamis/Cataclysm-DDA
Idorobots/Cataclysm-DDA
InfernoZeus/Cataclysm-DDA
Ioncloud9/Cataclysm-DDA-Voxel
Isylwin/Cataclysm-DDA
JonahDes/Cataclysm-DDA
KantoJolto/Cataclysm-DDA
Karethoth/Cataclysm-DDA
Keksike/Cataclysm-DDA
KorGgenT/Cataclysm-DDA
Liberman/Cataclysm-DDA
MSinit/Cataclysm-DDA
Majesty911/Cataclysm-DDA
Maldaris/Cataclysm-DDA
Malkeus/Cataclysm-DDA
MattAmmann/Cataclysm-DDA
MehMuffin/Cataclysm-DDA
MetroidHunter/Cataclysm-DDA
MisterFelixFox/Cataclysm-DDA
MonoSoftwareKor/Cataclysm-DDA
NaturesWitness/Cataclysm-DDA
NecroBanana/Cataclysm-DDA
NickJ1984/Cataclysm-DDA
Nickboom1/Cataclysm-DDA
Nimbie310/Cataclysm-DDA
Obsol/Cataclysm-DDA
Oddzball/Cataclysm-DDA
OzoneH3/Cataclysm-DDA
Phenomphear/Cataclysm-DDA
PrinnyDoodman/Cataclysm-DDA
Pthalocy/Cataclysm-DDA
Pux1/Cataclysm-DDA
Redstonize/Cataclysm-DDA
RexWolf163ru/Cataclysm-DDA
RianAshes/Cataclysm-DDA
Rivet-the-Zombie/Cataclysm-DDA
SailingStoph/Cataclysm-DDA
SamoulY/Cataclysm-DDA
Savidiy/Cataclysm-DDA
ShadowZero/Cataclysm-DDA
ShinQuickMan/Cataclysm-DDA
SidMeier/Cataclysm-DDA
Sodah-/Cataclysm-DDA
Someone65/Cataclysm-DDA
Spamcat/Cataclysm-DDA
SpencerMichaels/Cataclysm-DDA
Stevensonz/Cataclysm-DDA
StraySilverFox/Cataclysm-DDA
SweeperM/CataclysmMod
TGITS-Solutions/Cataclysm-DDA
ThatOneGuy42/Cataclysm-DDA
The13thRonin/Cataclysm-DDA
TheDarklingWolf/Cataclysm-DDA
TheGrifter/Cataclysm-DDA
TireExaminer/Cataclysm-DDA
Treniac/Cataclysm-DDA
USH008/Cataclysm-DDA
Vengarr/Cataclysm-DDA
VlasovVitaly/Cataclysm-DDA
Voker57/Cataclysm-DDA
Wedlor/Cataclysm-DDA
Xantrim/Cataclysm-DDA
Xommers/Cataclysm-DDA
ZhilkinSerg/Cataclysm-DDA
a1studmuffin/Cataclysm-DDA
aapo/Cataclysm-DDA
acidia/Cataclysm-DDA
adiputra6/Cataclysm-DDA
amenelen/Cataclysm-DDA
atomicdryad/Cataclysm-DDA
auto-load/Cataclysm-DDA
axujen/Cataclysm-DDA
batu-bacan/Cataclysm-DDA
bdragon28/Cataclysm-DDA
bigbrotherx52/Cataclysm-DDA
bigdiaozhang/Cataclysm-DDA
bodysna7cher/Cataclysm-DDA
cake-pie/Cataclysm-DDA
cataclysmbnteam/Cataclysm-BN
cburns2017/Group6CSE
cloudyrads/Cataclysm-DDA
codename-rinzler/Cataclysm-DDA
creidieki/Cataclysm-DDA
cryptonaut/Cataclysm-DDA
darth-servo/Cataclysm-DDA
dholmes215/Cataclysm-DDA
dombrock-archive/Cataclysm-DDA
dreamlx/Cataclysm-DDA
ecroffleps/Cataclysm-DDA
eiennohito/Cataclysm-DDA
ejseto/Cataclysm-DDA
emrsmsrli/Cataclysm-DDA
emusilent/Cataclysm-DDA
ethankaminski/Cataclysm-DDA
fiddlerwoaroof/Cataclysm-DDA
fuchs87/Cataclysm-DDA
funkdat25z/Cataclysm-DDA
geffrod/Cataclysm-DDA
gelas4/Cataclysm-DDA
gordallott/Cataclysm-DDA
goron111/Cataclysm-DDA
hovatterz/Cataclysm-DDA
i2amroy/Cataclysm-DDA
idshibanov/Cataclysm-DDA
ikapelyukhin/Cataclysm-DDA
iodineJack/Cataclysm-DDA
jesusmod/Cataclysm-DDA
jjs2/Cataclysm-DDA
joneskun/Cataclysm-DDA
jubirr88/Cataclysm-DDA
justiceyan/Cataclysm-DDA
kenoxite/Cataclysm-DDA
kevingranade/Cataclysm-DDA
lethosor/Cataclysm-DDA
lucasw/Cataclysm-DDA
madjake/Cataclysm-DDA
masecknotrealname/Cataclysm-DDA
meyar/Cataclysm-DDA
minakitty/Cataclysm-DDA
minang/Cataclysm-DDA
minmul117/Cataclysm-DDA
multimark/Cataclysm-DDA
mytinylab/Cataclysm-DDA
nommi/Cataclysm-DDA
ofw150/Cataclysm-DDA
omersyuksel/Cataclysm-DDA
origamiwolf/DinoCataclysm
palm3r/Cataclysm-DDA-I18N
pipehat/Cataclysm-DDA
pitrdevries/Cataclysm-DDA
placeybordeaux/Cataclysm-DDA
poklj/Cataclysm-DDA
pouar/Cataclysm-DDA
raycrasher/Cataclysm-DDA
rays2004/Cataclysm-DDA
remyroy/Cataclysm-DDA
richardyangran/Cataclysm-DDA
sabanano/Cataclysm-DDA
shivnetra/Cataclysm-DDA
smmck/Cataclysm-DDA
snoopying/Cataclysm-DDA
squimmy/Cataclysm-DDA
strangie/Cataclysm-DDA
teh-sam/Cataclysm-DDA
theMIj/Cataclysm-DDA
tivec/Cataclysm-DDA
tsuma534/Cataclysm-DDA
tung/Cataclysm-DDA
tytyebo/Cataclysm-DDA
utunnels/Cataclysm-DDA
vache/Cataclysm-DDA
velddrinn/Cataclysm-DDA
veryinky/Cataclysm-DDA
vulkans22/Cataclysm-DDA
vytarrus/Cataclysm-DDA
wangxun159123/Cataclysm-DDA
wazxhy/Cataclysm-DDA
web-hijacker/Cataclysm-DDA
webadict/Cataclysm-DDA
wigtitit/Cataclysm-DDA
xiamingliang/Cataclysm-DDA
xuwenzhe0000/Cataclysm-DDA
ymber/Cataclysm-DDA
yusiwen/Cataclysm-DDA
zikong/Cataclysm-DDA
zmdb/Cataclysm-DDA
zpmorgan/Cataclysm-DDA
Nothing to show
compare: master
This comparison is big! We’re only showing the most recent 250 commits
Commits on Jul 07, 2019
restore accidental deletions
moving pike to better place at the same time
Merge pull request #32238 from KorGgenT/invalid-spell-id
Magiclysm: remove invalid spell id from spellbook
Merge pull request #32235 from BrettDong/i18n
Routine i18n updates on 7 Jul 2019
Add (tri)point::to_string() and tripoint::xy()
Some convenience member functions for these types.

And some tests.
Refactor generic_inbounds
Rather than having a free function for generic_inbounds, have two member
functions on each of rectangle and box to test bounds.

Rather than having an optional 'clearance' parameter, have two names for
the two common bounds types (inclusive and half-open ranges).

Refactor all uses to this new API.

The main goal here is to make it easier to use these bounds tests in
fewer lines of code for common cases.  I also think the member function
form reads more smoothly in code.
Commits on Jul 08, 2019
Fix durations of longer than 248 days displaying as "forever"
The 1 second turns change made the upper limit for turns stored in a
time_duration equal to only 248 days. This change introduces a new
constant that is roughly 24800 days in length but can not be converted
to moves without overflowing. This new constant is used when converting
long durations into strings.

fixes #31918
Merge pull request #32219 from KorGgenT/magiclysm-used-bookstore
Magiclysm:  used bookstore and Nothic
scent_block_defer: wait until committing modifications to test inbounds
removed unnecessary 'assignable' member since we are now testing as
needed instead of all at once in the constructor.
Merge pull request #32234 from ifreund/better-list
Introduce a faster linked list implementation
Merge pull request #32242 from jbytheway/generic_inbounds_overhaul
point / tripoint / rectangle / box refactoring and enhancements
Commits on Jul 09, 2019
Adds skeletal shocker zombies (#32115)
* Adds entry for shocker skeletons
* Adds skeletal shocker to shocker evolution group
Add a better knife spear (#32222)
* reorder melee weaponry a bit

* A couple other move-arounds

* Add reinforced knife spear

* adjust name, add a bunch of knives to recipe

* Add an upgrade recipe version

* tweak stats and requirements

* Update recipe_weapon.json

* Update home_improvement.json

* restore incorrectly removed stuff

* restore incorrectly deleted stuff

* fix incorrect deletions

* restore accidental deletions

moving pike to better place at the same time

* Add spike spear, adjust descriptions and details

* add small knives to spike spear options

* the blade of exact zero
Remove vehicle name changes on ownership - Just append owner string t…
…o vehicle display (#32241)

* made the owner append to vehicle name
[CR] Balancing makeshift grenades
#### Summary
SUMMARY: Balance "Balances to makeshift grenades and makes them explode in fire."

#### Purpose of change
To preserve realism and to balance the makeshift grenade that is now no longer useless ( #31462 this pull request made the grenade work).

#### Describe the solution
-Change values to reflect a more realistic weight of fragments
-Making the makeshift grenade explode in fire. 
-Increase the weight of the grenade to reflect the crafting recipe.
-Adding the ability to radio-mod the grenade since its player made (like the pipe bomb or nail bomb).
-There is a discrepancy between random charges, on the base grenade the charges are from 2-10 and on the active grenade they are from 2-7 I think this is a typo or something so I reduced the initial random charges from 2-10 to 2-7 , also added max_charges to 7 ( so you should get "(4/7)" or "(7/7)" not "(7/5)" as it could have been before because the value was taken from the normal active grenade with the "copy-from" function now it uses the base of the makeshift grenade to create the active version so the value is defined ).
-Also add a "Tick." sound when the grenade is active like the normal grenade ( this is because from what the crafting recipes suggests it is similar to a normal in-game grenade using a pilot light ).

#### Describe alternatives you've considered
Changing only the necessary, like : the weight of the fragments, the random charges and exploding in fire behavior ( because of realism and consistency ).

#### Additional context
This is something of a continuation of #31462 were I made the grenade work, after looking at the nail bomb and discovering it had a bigger issue I decided to balance the makeshift grenade more by adding what it missed like a sound when active ( the sound code was taken form the grenade it doesn't work and might merit a different pull request fixing all explosives with this behavior ) and exploding in fire ( I didn't add the behavior in the normal grenade because I don't know what grenade is supposed to represent it might merit an open pull request or issue ).
The crafting recipe is weird 72 black gunpowder has a weight of 0.36kg and 72 gunpowder has has a weight of 0.07kg not to mention the container that can be used to house the grenade can be different from aluminium to clay to tin cans, so i only added 50 grams to the grenade because it reflects an average and to be closer to the weight of a normal in-game grenade. This could merit a separate issue or pull request, but it should be for all makeshift explosives like the nail bomb ( I am working on fixing the nail bomb I'll add the pull request number here when I am done ).
Balance times on heavy bombs
Balance times on heavy bombs so that you can get away and not suffer extensive damage.
You can still get hurt by fragments but you shouldn't die now.
Merge pull request #32244 from brannamm/indefinitely_long_update
Fix durations of longer than 248 days displaying as "forever"
Enable readability-uppercase-literal-suffix
Enable this clang-tidy check.  It suggests capitalization of literal
suffixes, such as 16l -> 16L.

Configure it to only care about suffixes containing an 'l', because
those are the most potentially confusing ones.  By default it also
complains about e.g. 1u and 1.0f, which we probably don't want.

Also enable the alias cert-dcl16-c.
Update various literal suffixes
Update all integer literal suffixes containing a lower-case 'l'.

In some cases the suffix was unnecessary, in which case remove it.

In others, capitalize it.

These were found by clang-tidy's uppercase-literal-suffix check.
Commits on Jul 10, 2019
monattack calls cast_all_effects
instead of using its very own if else ladder
Consolidate mathematical constants (#32268)
* Consolidate mathematical constants

We had various different pieces of code defining pi and sqrt(2)
constants.  Consolidate them all in math_defines.h.

Ideally we would get them from cmath, but unfortunately that doesn't
work on some platforms, so we have our own fallback definitions too.
Merge pull request #32285 from jbytheway/clang_tidy_uppercase_literal…
…_suffix

clang-tidy readability-uppercase-literal-suffix
Merge pull request #32286 from KorGgenT/spell-fields
add Spell fields as new members of spell_type
Npc optimization (#32212)
* Use active item submap cache

* Add cache for player values and populate it with weapon value.

* Cache state of reloadable weapons

* Use submap active item cache when looking for corpses to pulp.

* Optomize NPC threat assessment

Avoid checking visibility of friendly NPCs and monsters.
Bail out of threat evaluation early if there are no threats.

* Remove dead code

* Optimize NPC heal decision making.

* Short-circuit out of npc::can_reload_current

* Exit early from address_needs if it's dangerous

* Optimize martial arts autolearn

* Make has_artifact_with() virtual and stub it for NPCs
check if player pointer isn't null before proceeding (#32295)
* check if player pointer isn't null before proceeding

* add %s argument in spell_type::check_consistency
Update data/mods/Aftershock/items/afs__items.json
Co-Authored-By: BevapDin <tho_ki@gmx.de>
add roofs to dairy farm
also merged some of the maps
Commits on Jul 11, 2019
adjust-survivor-headlamp-price
Changed the survivor headlamp price from 40$ to 65%
Enable clang-tidy readability-string-compare (#32303)
* Replace simple string::compare with operators

string::compare is only needed for full three-way comparison.  We can
use just overloaded comparison operators for most cases.

Fixes by clang-tidy's readability-string-compare check.

* Enable clang-tidy readability-string-compare
Overmapbuffer function refactoring (#32300)
* Typo

* Add some point / tripoint overloads for APIs

A bunch of map / overmap functions take x, y, z coordinates.  Add
overloads to (some of) those taking a point or tripoint.

For now, those overloads just forward to the original function, but the
ultimate goal is to remove the originals and only have the new
overloads.

* Overhaul overmapbuffer APIs

Remove almost all (x, y, z) APIs and replace wityh point / tripoint
APIs.

This is a first step towards making these APIs type-safe (#32017).

A couple of APIs remain because they're more complex to change and this
commit was already very big.
Merge pull request #32278 from NeviNovat/patch-3
Balance times on pipe bombs and RDX sand bombs
Merge pull request #32315 from ZhilkinSerg/sa-2019-07-11
Code optimizations reported by static code analysis (2019-07-11)
Unified overmap terrain matching in mx_roadblock
Prior work in #31883 unified overmap terrain matching.  However, it
looks like the mx_roadblock code was missed because it was implemented
differently from everything else.

Refactor to use the same newly unified terrain matching feature and same
variable names as other map_extras examples.
Avoid crash on selecting empty inventory item
When selecting on the inventory screen, if no item was selected (which
can happen if the player has no items or none which match the current
search filter) then the game would crash with an assertion error.

Check the entry for validity before processing it.

Fixes #32083.
Commits on Jul 12, 2019
Merge pull request #32323 from jbytheway/map_extras_overmap_terrain_m…
…atching

Unify overmap terrain matching in mx_roadblock
Merge pull request #32274 from NeviNovat/patch-1
Balancing makeshift grenades
Merge pull request #32316 from ymber/range_fix
return nullptr from ammo_data if ammo item is null
When prerequisite mutations fail, try other prerequisites (#32299)
* Better argument names in rng declaration

* Rework attempted mutation

player::mutate_towards will (amongst other things) try to mutate the
player towards a prerequisite if the initially passed mutation requires
that.

Previously, it would pick one prerequisite at random, try mutating
towards it, and if that failed then it would stop.

This changes it to keep trying with other prerequisites until all have
been attempted.

This makes some mutations more likely to occur (specifically, those with
threshold mutations for prerequisites, which are the common source of
failure in this context).

A side-effect of this is that the "You feel something straining deep
inside you, yearning to be free..." message may occur multiple times in
a single attempted mutation, and will occur more often in combination
with a successful mutation.  This might seem a bit strange, but I don't
think it's a big problem.

This seems more consistent; it's not obvious that such mutations ought
to be less probable.

However, I was not motivated by gameplay balance; I made this change as
a result of investigating a test failure in the mutation tests.  This
makes those tests more consistent.

If we don't want to change the gameplay balance here, then a simpler
change will be to just make the tests try more times.
Merge pull request #32324 from jbytheway/inventory_ui_crash
Avoid crash on selecting empty inventory item
Merge pull request #32328 from misterprimus/master
chance downed choppers spawn ammo in minigun
Make the laptop deal bash damage (#32287)
* Make the laptop do damage to stuff
Military maps no longer reveal farm silos and animal shelters (#32310)
* Allow usage of om_terrain_match_type in items with reveal_map use action
Reorganize furniture.json, part 1 (#32321)
* remove many entries from furniture.json

* Create furniture-plumbing.json

* Create furniture-appliances.json

* Create furniture-sleep.json

* Create furniture-rural.json

* Create furniture-barriers.json

* move water heater and purifier to plumbing

* move water heater and purifier to plumbing

* Update and rename data/json/furniture-sleep.json to data/json/furniture_and_terrain/furniture-sleep.json

* Rename data/json/furniture-appliances.json to data/json/furniture_and_terrain/furniture-appliances.json

* Rename data/json/furniture-barriers.json to data/json/furniture_and_terrain/furniture-barriers.json

* Rename data/json/furniture-plumbing.json to data/json/furniture_and_terrain/furniture-plumbing.json

* Rename data/json/furniture-rural.json to data/json/furniture_and_terrain/furniture-rural.json
show map notes by default
as used to be before the switch appeared
fixes #32313
Magiclysm - Updated the conjured weapons to be magic focus items (#32318
)

* Updated the conjured weapons to be magic focus items

spellcaster items should be magic focus items by default, this is to correct that now that the functionality exists

* linted

* Update ethereal_items.json

* Update ethereal_items.json

* change order of flags back to original
Appease clang (2019-07-12) (#32336)
* Used string equality operator directly
Merge pull request #32337 from ZhilkinSerg/jsonize-mutation-modifiers
Jsonize memory-related mutation modifiers
Merge pull request #32339 from l29ah/floor-trunk-hinges
use hinges instead of clockworks in the floor trunk recipe
Commits on Jul 13, 2019
[CR] Fix nail bombs
Summary
SUMMARY: Bugfixes "Fix nail bombs"

Purpose of change
Right now ( in build 9296 ) nail bombs can't kill a normal zombie even if they are directly under the target, this is the same issue that I encountered in #31462 for the makeshift grenades. But this time its different because the nail bomb doesn't appear to respect the convention of having an active item like the rest of the explosives on the page. Not only that, it lacks flags like the other grenade. 

Steps to replicate:
Spawn zombies using debug commands,
Spawn nail bomb activate and drop it in the middle of the horde. Wait and see that no zombie died.

Describe the solution
-Adding the active variant of the nail bomb and changing the shrapnel line to something that works based on already working explosives.
-Changing the values to make the nail bomb different from the makeshift grenade to prevent redundant items.
-Adding missing flags like NO_REPAIR and TRADER_AVOID. ( NO_REPAIR because its made out of glass, I don't like this, and I'll maybe open a different pull request that deals with the crafting and material aspect of this old grenade )

Describe alternatives you've considered
Removing the bomb since the makeshift grenade can do the same thing and consumes nearly the same materials.
Only changing the necessary like the line of code that is obsolete and flags ( like in #31462 ) and not adding the active variant of the bomb that other explosives.

Additional context
This bomb is an old grenade type weapon if I remember correctly, the addition of the makeshift grenade #29636 made it somewhat obsolete this change should make it see some use not only by making it work but by having a niche. This grenade has high fragment mass and a small number of fragments this results in an unpredictable grenade that can miss close targets but with a nice hit can do up to 300+ damage but its very random. I don't know how it might be used ( maybe a grenade for armored opponents ? ) but its this way or we remove it since the makeshift grenade already dose the same thing, or we can change the crafting requirements making one better but harder to construct so that one is the intermediary of the other.
I don't like the fact that its made of glass I see this as a bug ( even if it was this way for a long time since if you trow a nail bomb that is not active it will shatter in-game but if its active it dose not ) and I wanted to change this but when I looked at the crafting recipe the nail bomb I saw the same weird requirements like the makeshift grenade this is explained in #32274 (as an example 72 black gunpowder has a weight of 0.36kg and 72 gunpowder has has a weight of 0.07kg and the amount is small in my opinion at least for normal gunpowder ) as said in that pull request this could merit a different pull request.
Merge pull request #32325 from I-am-Erk/reorg-furniture2
Reorganize furniture.json, part 2
Npc optimization part two (#32342)
* Only recalculate encumbrance when changing clothes, bionics or mutations.

* Defer invisibility check until it is needed

* Override is_fleeing for fearless monsters

* Throttle npc body updates to once every ten seconds

* Random style fix

* Overhaul player::process_active_items to avoid expensive abstractions

* Refactor monster::stumble for speed

Chose a target and then test it's validity instead of testing validity of every alternative.
Also force the movement since we've checked already.
Merge pull request #32355 from l29ah/fix-infection-intensity
Corrected infection duration factor to 8h
Remove BOM from "src/overmap.cpp"
No other source file has it.
Make all file writing exclusive:
Instead of having two function (one for exclusive writes and one for non-exclusive writes), we now only have one function that does exclusive writing.
Change file writing to go via a temporary file.
Instead of writing to the target file, write to a temporary file and upon success (including successfully closing the file), move the temporary file to the target file (overriding the existing file).

This ensures there are no partially written files. If writing fails, the partially written(temporary!) file is removed again.
Add overload of write_to_file that throws.
This is for the few places that expect errors to trigger exceptions.
Replace direct usage of ofstream with write_to_file.
`write_to_file` with three parameters is the catching overload. (The third parameter can be nullptr.)
The overload with two parameters throws.
Move fclose_exclusive and fopen_exclusive into ofstream_wrapper_exclu…
…sive

`fopen_exclusive` is now `ofstream_wrapper_exclusive::open` with the additional code for passing the mode and the error reporting taken from the constructor of `ofstream_wrapper_exclusive`.

`fopen_exclusive` is now `ofstream_wrapper_exclusive::open` with additional code from the original `close` function for error reporting and for moving the temporary file to its final destination.
Remove declarations of locking related functions from header.
They are not needed outside of the cpp file that contains their actual definition.

Changed the functions to be static as to avoid compiler warnings about undeclared functions.
Add proper temporary path name for Windows systems.
Analog to Linux systems it uses the process id.

Moved the comment for this behavior up so it's not Linux-specific anymore.
Remove dubious cast:
The result of the expression is casted to int, but than stored in a double. That's just losing the precision without any need for it.
Merge pull request #32370 from BevapDin/eas
Remove dubious cast:
Merge pull request #32371 from BevapDin/xfd
Translate wind speed descriptions
Merge pull request #32365 from NeviNovat/patch-4
Fix size and weight of black powder.
Merge pull request #32360 from BevapDin/alq
Ensure translation of string
Fix "Mining upstairs does not create a downstairs on the upper floor" (
…#32359)

* Fix point not being absolute.

First: the input to this function is a local point, see the usage in the other `done_*` functions.

Second: a few lines down, it is used for `map::getlocal` which requires an absolute value.

* Use map::can_put_items instead of game::is_empty

Second one also checks for creatures, which is completely irrelevant here.
Overhauls and adds missing CBM descriptions (#32335)
* CBM description overhaul

* Applies Fris0uman's suggestions

* Nanobot desc
Commits on Jul 14, 2019
Update data/mods/Aftershock/items/afs__items.json
Co-Authored-By: ZhilkinSerg <ZhilkinSerg@users.noreply.github.com>
Adds more mi-go to spawn in their camp (#32073)
* remove mi-go from monsters.json
* Create basic files for mi-go
* add mi go slaver beam as a "spell"
Remove mi-go from normal nether spawns. Still spaws with captured nether creatures.
Adds mi-go spawn groups for base.
Fior Di Battaglia requires weapon to activate (#32357)
* Fior Di Battaglia requires weapon
* Techniques now display armed req.
Merge pull request #32292 from aoae23/patch-11
Changes basins to metal and allows them to heat up food
Magiclysm Wands (#32158)
* Enchanted - Wands and stuff

Wands, tools, unarmed weapons.

* Update enchanted_tools.json

* Moved obsolete wands

Obsoleted fireball and magic missile wands moved to obsolete.json file.

* Fixes

Filled in proper descriptive text and corrected assorted grammar issues.

* Delete enchanted_tools.json

* Create itemgroups.json

* magic wands abstracted

* prices updated

* wand bugfix

check the no_mana bool before checking spell::can_cast() which calls a debugmsg if you use a wand for it; and so it doesn't display a "you don't have enough %s to cast" message in the log
Magiclysm - added a druid spell to purify water (#32305)
* added purification seed

* Update druid.json

* lint itemgroups/spellbooks.json

* lint comestibles.json

* Update druid.json

* change workings of seed item, adjust costs/duration/casting time
Fix title and window width calculation
Prevent the creation of a string with a negative number of characters.
Get the length of the title without color tags.
Commits on Jul 15, 2019
Make surgery a player_activity (#31763)
* under_operation effect
* under_operation_do_turn
* under operation effect
* ACT_OPERATION_REMOVE
* moves uninstal_bionic to activity
* player under narcosis effect don't feel pain
* Make the activity work for NPC
* move power modification to activity
* no message if u can't see
* no narcosis for characters that feel no pain
* uses pl_skill and recalculate adjusted_skill within the activity, remove float from player_activity
* damage is body part specific
* bodypart specific messages
* Aborted eye operation makes blind for 1 hour
* bleedinbg propotional to surgery difficulty
* Damage only happens if the activity is canceled instead of happening live during the surgery
* removal failure/success happens mid surgery
* not being on autodoc couch cancel operation
* destroying autodoc cancel activity
* NPc under operation don't fight monsters
* can't be dragged from autodoc
* If autodoc disappear during operation patient takes difficulty*20 damage
* no pain under narcosis
Merge pull request #32141 from ymber/battery
Implement battery item type
Merge pull request #32358 from BevapDin/afp
Fix corrupting saves upon crash during saving
Merge pull request #32390 from AMurkin/init-units-with-wrapper
Define some mass and volume units using literals
Merge pull request #32392 from AMurkin/fix-crash-trade-neg-string
Fix crash while trading items with health bars
Update and simplify scenarios, attempt 2 (#31661)
Update and simplify scenarios, attempt 2
Merge pull request #32297 from rtizzy/comcheckplayer
Fix oversights for checking vision on various computerized equipment
Replace usage of std::string::compare with operator==
To make the clang-tidy happy.
Merge pull request #32394 from kevingranade/fix-enc-on-load
Recalculate player and NPC encumbrance at load time
Fix coordinate handling re submaps_with_active_items (#32376)
This was using abs_sub inapropriately to convert between absolute and local coordinates.
Only x and y coordinates need conversion, z does not.
Also map::get_active_items_in_radius() was failing to convert entirely.
Updated martial arts valid_weapon check (#32363)
* Updated martial arts valid_weapon check

* Astyle fix
Merge pull request #32407 from BevapDin/usc
Replace usage of std::string::compare with operator==
Set category of vehicle freezer / fridge
No category was set, so it was classified as weapon, which makes little sense as their usage is primarily that of a vehicle part.
Commits on Jul 16, 2019
Merge pull request #32420 from Fris0uman/layers
Re-layers some refugee center NPCs clothes
Showing 3,870 changed files with 6,323,310 additions and 209,822 deletions.
The diff you're trying to view is too large. We only load the first 3000 changed files.
@@ -0,0 +1,26 @@
version: '{branch}.{build}'
os: Windows
clone_folder: C:\Projects\Cataclysm-DDA
shallow_clone: true
pull_requests:
do_not_increment_build_number: false
environment:
matrix:
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
PROJECT: /msvc-full-features/Cataclysm-vcpkg-static.sln
COMPILER: msvc2017
TOOLCHAIN: msvc15
PLATFORM: x64
CONFIGURATION: Release
APPVEYOR_SAVE_CACHE_ON_ERROR: true
matrix:
fast_finish: false
cache:
- 'c:\tools\vcpkg\installed'
install:
# Install dependency packages
- cmd: vcpkg --triplet %PLATFORM%-windows-static install sdl2 sdl2-image sdl2-mixer sdl2-ttf gettext
build:
parallel: true
project: /msvc-full-features/Cataclysm-vcpkg-static.sln
verbosity: minimal
@@ -0,0 +1,51 @@
# These options are mirrored in .astylerc and doc/CODE_STYLE.txt

# "One True Brace Style"
--style=1tbs

# Attach brackets to class and struct inline function definitions.
--attach-inlines

# 4 spaces per indentation level and per tab stop
--indent=spaces=4

# 'char *foo' instead of 'char* foo'
--align-pointer=name

# maximum length for a single unbroken line
--max-code-length=100

# 'foo ||\nbar' instead of 'foo\n|| bar'
--break-after-logical

# indent 'public:' 'protected:' 'private:' deeper than 'class' or 'struct'
--indent-classes

# indent 'case' lines deeper than 'switch'
--indent-switches

# indent later lines of multi-line preprocessor directives
# to be deprecated by --indent-preproc-define
--indent-preprocessor

# indent comments on column 1 to match the code block they are in
--indent-col1-comments

# indent multi-line control block headers like 'if (foo\nbar)'
--min-conditional-indent=0

# add space around operators with two operands
--pad-oper

# add brackets to unbracketed one line conditional statements
--add-brackets

# replaces tabs with spaces in non-indent sections, except in strings
--convert-tabs

# remove extra space padding around parentheses
--unpad-paren

# insert space padding around parentheses on the inside only
--pad-paren-in

@@ -0,0 +1,95 @@
# Enable some categories of checks and then disable individual ones.
# The disabled checks that appear as part of the initial alphabetical section
# enabling categories (e.g. cert-err58-cpp) are ones that do not make sense for
# this codebase and we do not intend to fix. The disabled checks appearing
# thereafter in a separate alphabetical list have yet to be triaged. We may
# fix their errors or recategorise them as checks we don't care about.
Checks: "\
bugprone-*,\
cata-*,\
cert-*,\
-cert-err58-cpp,\
clang-diagnostic-*,\
cppcoreguidelines-slicing,\
llvm-namespace-comment,\
misc-*,\
modernize-*,\
performance-*,\
readability-*,\
-bugprone-incorrect-roundings,\
-bugprone-integer-division,\
-bugprone-macro-parentheses,\
-bugprone-misplaced-widening-cast,\
-bugprone-narrowing-conversions,\
-bugprone-string-integer-assignment,\
-bugprone-too-small-loop-variable,\
-bugprone-undefined-memory-manipulation,\
-bugprone-unused-return-value,\
-bugprone-use-after-move,\
-cert-dcl21-cpp,\
-cert-dcl50-cpp,\
-cert-dcl58-cpp,\
-cert-dcl59-cpp,\
-cert-env33-c,\
-cert-err34-c,\
-cert-flp30-c,\
-cert-msc30-c,\
-cert-msc32-c,\
-cert-msc50-cpp,\
-cert-msc51-cpp,\
-misc-definitions-in-headers,\
-misc-non-private-member-variables-in-classes,\
-misc-redundant-expression,\
-misc-unconventional-assign-operator,\
-modernize-avoid-c-arrays,\
-modernize-deprecated-headers,\
-modernize-make-unique,\
-modernize-pass-by-value,\
-modernize-raw-string-literal,\
-modernize-return-braced-init-list,\
-modernize-use-auto,\
-modernize-use-default-member-init,\
-modernize-use-emplace,\
-modernize-use-equals-default,\
-modernize-use-equals-delete,\
-modernize-use-nullptr,\
-modernize-use-override,\
-modernize-use-transparent-functors,\
-performance-for-range-copy,\
-performance-inefficient-vector-operation,\
-performance-move-const-arg,\
-performance-noexcept-move-constructor,\
-performance-implicit-conversion-in-loop,\
-performance-inefficient-algorithm,\
-performance-inefficient-string-concatenation,\
-performance-type-promotion-in-math-fn,\
-performance-unnecessary-copy-initialization,\
-performance-unnecessary-value-param,\
-readability-avoid-const-params-in-decls,\
-readability-braces-around-statements,\
-readability-const-return-type,\
-readability-else-after-return,\
-readability-function-size,\
-readability-implicit-bool-conversion,\
-readability-inconsistent-declaration-parameter-name,\
-readability-isolate-declaration,\
-readability-magic-numbers,\
-readability-named-parameter,\
-readability-non-const-parameter,\
-readability-container-size-empty,\
-readability-redundant-control-flow,\
-readability-redundant-declaration,\
-readability-redundant-member-init,\
-readability-redundant-preprocessor,\
-readability-redundant-string-init,\
-readability-simplify-boolean-expr,\
-readability-static-accessed-through-instance,\
"
WarningsAsErrors: '*'
HeaderFilterRegex: '(src|test).*'
FormatStyle: none
CheckOptions:
- key: readability-uppercase-literal-suffix.NewSuffixes
value: 'L;UL;LL;ULL'

# vim:tw=0
@@ -0,0 +1,12 @@
# EditorConfig is awesome: http://EditorConfig.org

# top-most EditorConfig file
root = true

# Unix-style newlines with a newline ending every file
[*]
end_of_line = lf
insert_final_newline = true
# 4 space indentation
indent_style = space
indent_size = 4
@@ -0,0 +1,39 @@
# Automatically normalise line endings for all files
# detected as text (Convert CRLF => LF).
* text=auto

# Explicitly normalise files with these extensions in
# case Git doesn't detect them as text for some reason.
*.c text
*.cbp text
*.cpp text
*.h text
*.json text
*.md text
*.py text
*.rc text
*.sh text
*.txt text
*.yml text

# Visual Studio project files, leave them alone.
*.cmd -text
*.filters -text
*.sln -text
*.user -text
*.vcxproj -text

# Generated translation text, don't mess with them.
*.mo -text
*.po -text
*.pot -text

# Treat images, archives, and font files as binary.
# (binary is a macro for -text -diff)
*.db binary
*.fon binary
*.gz binary
*.ico binary
*.png binary
*.ttf binary

Showing you all comments on commits in this comparison.

@chriseich21

This comment has been minimized.

Copy link

commented on 4090492 Jul 14, 2019

There is still a typo, probably should say "Your mind...", not "You mind". Liking magiclysm too

@b0urgeoisie

This comment has been minimized.

Copy link
Contributor Author

commented on 4090492 Jul 14, 2019

damnit

You can’t perform that action at this time.