1
0
Pārlūkot izejas kodu

[added] Rex is back. Buy him from the petstore and get some goodies in the suprermaket, enjoy your new fluffer. Limited home compatibility.

Kevin_Smarts 2 gadi atpakaļ
vecāks
revīzija
a7caf1c0d5

+ 1 - 0
glife.qproj

@@ -238,6 +238,7 @@
 		<Location name="npc"/>
 		<Location name="saveupdater"/>
 		<Location name="NPCChanger"/>
+		<Location name="pet_dog"/>
 	</Folder>
 	<Folder name="Combat">
 		<Location name="fight"/>

+ 8 - 0
locations/Cheatmenu_din.qsrc

@@ -1235,6 +1235,14 @@ $cheatmenu['reputation'] = {
 			'Sister: <<npc_rel[''A33'']>>	<a href="exec:npc_rel[''A33''] += 10 & dynamic $cheatmenu[''reputation'']">+10</a> <a href="exec:npc_rel[''A33''] -= 10 & dynamic $cheatmenu[''reputation'']">-10</a>'
 			'Brother: <<npc_rel[''A34'']>>	<a href="exec:npc_rel[''A34''] += 10 & dynamic $cheatmenu[''reputation'']">+10</a> <a href="exec:npc_rel[''A34''] -= 10 & dynamic $cheatmenu[''reputation'']">-10</a>'
 		end
+
+		'Your dog: '+iif($status['dog'] = 'active', '<b>Active</b>', '<a href="exec: $status[''dog''] = ''active'' & gt $cheatmenu[''reputation'']">Active</a>')+'|'+iif($status['dog'] = 'blocked', '<b>Blocked</b>', '<a href="exec: $status[''dog''] = ''blocked'' & gt $cheatmenu[''reputation'']">Blocked</a>')
+		if $status['dog'] ! 'blocked':
+			'Set the relationship and love of your dog to always be at maximum: '+iif(cheat['dog_rel'] = 0, '<a href="exec: cheat[''dog_rel''] = 1 & gt $cheatmenu[''reputation'']">Off</a>', '<a href="exec: cheat[''dog_rel''] = 0 & gt $cheatmenu[''reputation'']">Currently On</a>')
+			'You need to feed your dog <<rex[''count_feed_base'']>> per day: '+iif(rex['count_feed_base'] > 1, '<a href="exec: rex[''count_feed_base''] -= 1 & gt $cheatmenu[''reputation'']">-1</a>', '-1')+'|<a href="exec: rex[''count_feed_base''] += 1 & gt $cheatmenu[''reputation'']">+1</a>'
+			'You need to walk your dog <<rex[''count_walk_base'']>> per day: '+iif(rex['count_walk_base'] > 1, '<a href="exec: rex[''count_walk_base''] -= 1 & gt $cheatmenu[''reputation'']">-1</a>', '-1')+'|<a href="exec: rex[''count_walk_base''] += 1 & gt $cheatmenu[''reputation'']">+1</a>'
+			'You need to bath your dog <<rex[''count_bath_base'']>> per week: '+iif(rex['count_bath_base'] > 1, '<a href="exec: rex[''count_bath_base''] -= 1 & gt $cheatmenu[''reputation'']">-1</a>', '-1')+'|<a href="exec: rex[''count_bath_base''] += 1 & gt $cheatmenu[''reputation'']">+1</a>'
+		end
 		*nl
 		'<font color="blue"><b>School</b></font>'
 		'<i>Popular Kids</i>'

+ 30 - 0
locations/cikl.qsrc

@@ -1496,6 +1496,36 @@ end
 
 !!------------------------------------------------------------------------------------------------------------
 
+!!-------------Family Dog----------------------------------------------------------------------
+
+if $status['dog'] ! 'blocked' and rex['owned'] = 1:
+	rex['timer_day'] = daystart
+	
+	!!Daily decay
+	rex['relationship'] -= 1
+
+	!!Chores
+	if cheat['dog_rel'] = 0 and rex['gadukino_day'] ! daystart:
+		npc_rel['A29'] -= iif(rex['count_walk'] + rex['count_feed'] = 0, -1, (rex['count_walk'] + rex['count_feed']))
+		rex['relationship'] -= iif(rex['count_walk'] + rex['count_feed'] = 0, -1, (rex['count_walk'] + rex['count_feed']))
+	end
+	rex['count_run'] = 0
+	rex['count_walk'] = rex['count_walk_base']
+	rex['timer_walk'] = 0
+	rex['count_feed'] = rex['count_feed_base']
+	rex['timer_feed'] = 0
+		
+	if week = 1:
+		if cheat['dog_rel'] = 0:
+			npc_rel['A29'] -= rex['count_bath']
+			rex['relationship'] -= (rex['count_bath'] * 5)
+		end
+		rex['count_bath'] = rex['count_bath_base']
+	end
+end	
+
+!!------------------------------------------------------------------------------------------------------------
+
 !!---------- School related schedule -------------------------------------------------------------------------
 starlets_on     = iif( ( (week = 5 and odd_week = 0) or (week = 1 or week = 3 or week >= 6) ) and natholi = 0,1,0)
 cheerleaders_on = iif( ( (week = 5 and odd_week = 1) or (week = 2 or week = 4) ) and (natholi = 0 and (month >9 or month <6)) ,1,0)

+ 10 - 0
locations/city_mansion_residence_1.qsrc

@@ -57,6 +57,16 @@ if $ARGS[0] = 'yfoyer':
 	if banaMansion >= 1:act 'Go to your sauna': minut += 1 & gt 'city_mansion_residence_3', 'ysauna'
 	if curr_home ! 5:
 		act 'Set this apartment as your main home':gs 'set_home', 5 & gt 'city_mansion_residence_1', 'yfoyer'
+	else
+		if $status['dog'] ! 'blocked' and menu_off = 0 and rex['owned'] = 1:
+			if rex['status'] = 0:
+				gt 'pet_dog', 'name'
+			elseif hour > 5:
+				'<br>Your dog <a href="exec: gt ''pet_dog'', ''start''"><<$rex[''name'']>></a> is lying on the floor.<br>'
+			elseif hour < 6:
+				'<br><<$rex[''name'']>> is sleeping in his dog basket.<br>'
+			end
+		end
 	end
 end
 

+ 12 - 0
locations/gaddvor.qsrc

@@ -41,6 +41,18 @@ if $ARGS[0]='':
 		act 'Enter the banya':minut += 1 & gt 'gadbana'
 	else
 		if grandmaQW['chore_feed_chickens'] = 1 or (hour >= 6 and hour < 20 and month >= 4 and month <= 10):'In the yard there are several <a href="exec:gt ''gaddvor'',''chickens''">chickens</a> running around.'
+		if curr_home = 14 and hour > 7 and hour < 20:
+			if swl_rex['status'] = 0:
+				gt 'pet_dog', 'name'
+			else
+				if swl_rex['gadukino_day'] ! daystart:
+					swl_rex['relationship'] += 2
+					swl_rex['gadukino_day'] = daystart
+				end
+				'<br><a href="exec: gt ''pet_dog'', ''gadukino''"><<$swl_rex[''name'']>></a> is running around in the garden.'
+			end
+		end
+	end
 
 		if mira_guest = 1: Miraloc = 7 & 'Your friend <a href="exec: gt ''miroslava'', ''Start''">Mira</a> stands next to you.'
 		if MiraLoc ! 7: mira_guest = 0

+ 10 - 0
locations/korr.qsrc

@@ -56,6 +56,16 @@ act 'Go to the kitchen':gt 'kuhr'
 act 'Go to the living room':gt 'sitr'
 if curr_home ! 1:
 	act 'Set this apartment as your main home':gs 'set_home', 1 & gt 'korr'
+else
+	if $status['dog'] ! 'blocked' and menu_off = 0 and rex['owned'] = 1:
+		if rex['status'] = 0:
+			gt 'pet_dog', 'name'
+		elseif hour > 5:
+			'<br>Your dog <a href="exec: gt ''pet_dog'', ''start''"><<$rex[''name'']>></a> is lying on the floor.<br>'
+		elseif hour < 6:
+			'<br><<$rex[''name'']>> is sleeping in his dog basket.<br>'
+		end
+	end
 end
 
 popolaini = 0

+ 14 - 4
locations/korr2x.qsrc

@@ -49,16 +49,16 @@ elseif parkday ! daystart and parkblackmail = 2:
 	'You''re horrifed and embarrassed when you see photos of you with your face covered in cum with two dicks in your mouth covering your stairwell walls.'
 end
 
-act 'Go to the bedroom':
+act 'Go to the Bedroom':
 	gt'bedr2x'
 end
-act 'Go to the bathroom':
+act 'Go to the Bathroom':
 	gt'vanr2x'
 end
-act 'Go to the kitchen':
+act 'Go to the Kitchen':
 	gt'kuhr2x'
 end
-act 'Go to the hall':
+act 'Go to the Living Room':
 	gt'sitr2x'
 end
 act '<b><font color="maroon">Go outside</font></b>':
@@ -94,6 +94,16 @@ end
 
 if curr_home ! 4:
 	act 'Set this apartment as your main home':gs 'set_home', 4 & gt 'korr2x'
+else
+	if $status['dog'] ! 'blocked' and menu_off = 0 and rex['owned'] = 1:
+		if rex['status'] = 0:
+			gt 'pet_dog', 'name'
+		elseif hour > 5:
+			'<br>Your dog <a href="exec: gt ''pet_dog'', ''start''"><<$rex[''name'']>></a> is lying on the floor.<br>'
+		elseif hour < 6:
+			'<br><<$rex[''name'']>> is sleeping in his dog basket.<br>'
+		end
+	end
 end
 
 if BurgerQW['IlyQW']  = 3 and hour >= 9 and hour <= 20:

+ 10 - 0
locations/korrPar.qsrc

@@ -154,6 +154,16 @@ end
 
 if curr_home ! 2:
 	act 'Set this apartment as your main home':gs 'set_home', 2 & gt 'korrPar'
+else
+	if $status['dog'] ! 'blocked' and menu_off = 0 and rex['owned'] = 1:
+		if rex['status'] = 0:
+			gt 'pet_dog', 'name'
+		elseif hour > 5:
+			'<br>Your dog <a href="exec: gt ''pet_dog'', ''start''"><<$rex[''name'']>></a> is lying on the floor.<br>'
+		elseif hour < 6:
+			'<br><<$rex[''name'']>> is sleeping in his dog basket.<br>'
+		end
+	end
 end
 
 $korrParMomHeader = '<center><h1><font color="maroon"><<$npc_nickname[''A29'']>></font></h1></center><center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/mom/mother.jpg"></center><br />'

+ 221 - 0
locations/pet_dog.qsrc

@@ -0,0 +1,221 @@
+# pet_dog
+
+if $ARGS[0] = 'gadukino':
+	*clr & cla
+	minut += 1
+	menu_off = 1
+	gs 'stat'
+	'<center><img <<$set_imgh>> src="mod/wlife/images/animals/rex_gadukino_'+iif(month > 3 and month < 11, 'summer', 'winter')+'.jpg"></center>'
+	'Rex is running around '+iif(month > 3 and month < 11, 'sniffing everything', 'playing in the snow')+'. Your grandmother loves to take care of him, that''s why you don''t have to worry about him while you''re in Gadukino.'
+	
+	act 'Continue': gt $loc, $loc_arg
+end
+
+if $ARGS[0] = 'start':
+	*clr & cla
+	minut += 1
+	menu_off = 1
+	$location_type = 'privat'
+	gs 'stat'
+	
+	if wl_objects['chew'] > 0 and rand(1,10) > 5 and wl_rex['chew_day'] ! daystart:
+		wl_rex['relationship'] += 1
+		wl_objects['chew'] -= 1
+		wl_rex['chew_day'] = daystart
+		'<center><img <<$set_imgh>> src="mod/wlife/images/animals/rex_chew.jpg"></center>'
+	else
+		'<center><img <<$set_imgh>> src="mod/wlife/images/animals/rex.jpg"></center>'
+	end
+	'Your dog''s name is <<$wl_rex[''name'']>> and taking care of him is your responsibility. He needs to be fed and walked two times per day and bathed once per week.'+iif((wl_rex['count_walk'] + wl_rex['count_feed'] + wl_rex['count_bath']) = 0, ' You have done all necessary chores.', '')
+		
+	*nl
+		
+	if (wl_rex['count_walk'] + wl_rex['count_feed'] + wl_rex['count_bath']) > 0:
+		'<b>Chores:</b>'
+		if wl_rex['count_walk'] > 0: '- You have to walk him <<wl_rex[''count_walk'']>>x today.'
+		if wl_rex['count_feed'] > 0: '- You have to feed him <<wl_rex[''count_feed'']>>x today.'
+		if wl_rex['count_bath'] > 0: '- You have to bath him <<wl_rex[''count_bath'']>>x this week.'
+		*nl
+	end
+	
+	if  wl_rex['relationship'] < 10:
+		'<<$wl_rex[''name'']>> ignores you, when you approach him. '+iif(wl_objects['chew'] = 0, 'His old chew toy next to him looks horrible. Maybe it''s time to buy him a new one?', '')
+	elseif wl_rex['relationship'] < 30:
+		'<<$wl_rex[''name'']>> looks up, when you approach him. '+iif(wl_objects['chew'] = 0, 'His old chew toy next to him looks horrible. Maybe it''s time to buy him a new one?', '')
+	elseif wl_rex['relationship'] < 60:
+		'<<$wl_rex[''name'']>> looks up and wags his tail'+iif(wl_rex['relationship'] > 45, ',', ' a bit,')+' when you approach him. '+iif(wl_objects['chew'] = 0, 'His old chew toy next to him looks horrible. Maybe it''s time to buy him a new one?', '')	
+	else
+		'<<$wl_rex[''name'']>> jumps up and'+iif(wl_rex['relationship'] > 80, ' happily ', ' ')+'wags his tail, when you approach him. '+iif(wl_objects['chew'] = 0, 'His old chew toy next to him looks horrible. Maybe it''s time to buy him a new one?', '')		
+	end
+		
+	act 'Leave': gt $loc, $loc_arg
+	
+	    end
+	end
+end
+
+!!--- Activities: Actions ---
+
+if $ARGS[0] = 'activities_normal':	
+	if wl_rex['count_feed'] > 0 and hour > (wl_rex['timer_feed'] + 3) and (curr_home = 2 or (curr_home ! 2 and wl_objects['dog_food'] > 0)): 
+		act 'Feed him (0:03)': gt 'pet_dog', 'feed'
+	elseif wl_rex['count_feed'] > 0 and hour > (wl_rex['timer_feed'] + 3) and curr_home ! 2 and wl_objects['dog_food'] <= 0:
+		'<br>You don''t have dog food to feed him.'
+	end
+		
+	if wl_objects['treats'] > 0 and wl_rex['timer_treat'] ! daystart: 
+		act 'Give him a treat (0:01)': gt 'pet_dog', 'treat'
+	elseif wl_objects['treats'] = 0 and wl_rex['timer_treat'] ! daystart:
+		'<br>You don''t have any treats to give him.'
+	end
+	
+	if $clothingworntype = 'nude':
+		'<br>You should put on some clothes if you want to go for a walk with <<§wl_rex[''name'']>>.'
+	else
+		if wl_rex['count_walk'] > 0 and hour > (wl_rex['timer_walk'] + 3): 
+			act 'Go for a walk with him '+iif(daystage = 5 or sunWeather = 0, '(0:10)', '(0:15)')+' ': gt 'pet_dog', 'exercise', 'walk'
+			if wl_rex['count_run'] = 0 and $clothingworntype = 'danilovich' and $shoeworntype = 'danilovich' and daystage ! 5: 
+				act 'Go for a run with him (1:00)': gt 'pet_dog', 'exercise', 'run'
+			elseif wl_rex['count_run'] = 0 and $clothingworntype = 'exercise' and $shoeworntype = 'trainers' and hour > 6 and hour < 22: 
+				'<br>It''s too '+iif(hour < 7, 'early', 'late')+' to go for a run with him.'
+			end
+		end
+	end
+		
+	if wl_rex['count_bath'] > 0: act 'Bath <<$wl_rex[''name'']>> (0:25)': gt 'pet_dog', 'bath'
+	
+	if wl_rex['play_inside'] ! daystart and hour < 23 and wl_objects['toys'] = 1: act 'Play with him inside (0:20)': gt 'pet_dog', 'play_inside'
+end
+!!--- Activities ---
+
+if $ARGS[0] = 'feed':
+	*clr & cla
+	minut += 3
+	wl_rex['relationship'] += 1
+	wl_rex['timer_feed'] = hour
+	wl_rex['count_feed'] -= 1
+	if curr_home ! 2: wl_objects['dog_food'] -= 1
+	gs 'stat'
+	'<center><img <<$set_imgh>> src="mod/wlife/images/activities/feeding_'+rand(0,1)+'.jpg"></center>'
+	'"Come '+iif(rand(0,1) = 0, 'boy', '<<$wl_rex[''name'']>>')+' let''s get you something to eat," you say and go into the kitchen. He '+iif(rand(0,1) = 0, 'follows you and watches you fill his bowl with big thankful eyes,', 'runs into the kitchen the second he hears you filling his bowl,')+' before he eagerly digs in.'
+	*nl
+	if curr_home ! 2: 'You have enough dog food for <<wl_objects[''dog_food'']>> meals.'
+	
+	act 'Let him eat': gt $loc, $loc_arg
+end
+
+if $ARGS[0] = 'treat':
+	*clr & cla
+	minut += 1
+	wl_rex['relationship'] += 2
+	wl_objects['treats'] -= 1
+	wl_rex['timer_treat'] = daystart
+	gs 'stat'
+	'<center><img <<$set_imgh>> src="mod/wlife/images/activities/treat.jpg"></center>'
+	'"Who is a good boy?" you ask him with a smile and pull one of his favorite treats out of your pocket. He sniffs and his tail wags back and forth. "Who is a good boy?" you ask again. He barks. "Yes you are," you agree and hold out the treat. He snatches it right out of your hand and happily goes back to his dog basked chewing enthusiastically.'
+	
+	act 'Continue': gt 'pet_dog', 'start'
+end
+
+if $ARGS[0] = 'exercise':
+	*clr & cla
+	wl_rex['count_walk'] -= 1
+	$location_type = 'public_outside'
+	
+	if $ARGS[1] = 'walk':
+		wl_rex['timer_walk'] = hour
+		wl_rex['relationship'] += 1
+		minut += iif(daystage = 5 or sunWeather = 0, 10, 15)
+		
+		act 'Return home': gt $loc, $loc_arg, 'check'
+		
+		if daystage = 5:	
+			'<center><img <<$set_imgh>> src="mod/wlife/images/activities/walk_night_'+rand(0,2)+'.jpg"></center>'
+			'It''s too '+iif(hour < 9, 'early', 'late')+' to go for a long walk or play with him. You only take him around the neighborhood until he has finished his business.'
+		elseif sunWeather = 0:
+			'<center><img <<$set_imgh>> src="mod/wlife/images/activities/walk_rain.jpg"></center>'
+			'The weather is horrible and a long walk is out of the question. You only walk with him around the neighborhood until he has finished his business.'
+		else	
+			'<center><img <<$set_imgh>> src="mod/wlife/images/activities/walk_day_'+rand(0,4)+'.jpg"></center>'
+			'He stops every few meters to sniff something interesting, happily greet another dog or mark his territory. Sometimes you stay and chat with another dog owner for a minute or two before you finally reach the park. You untie his leash, when you reach the area marked for dogs, and let him roam free for a while.'
+			
+			act 'Play with him (0:10)':
+				*clr & cla
+				minut += 10
+				pcs_mood += 10
+				wl_rex['relationship'] += iif(wl_objects['toys'] = 1, 2, 1)
+				gs 'stat'
+				'<center><img <<$set_imgh>> src="mod/wlife/images/activities/play_outside_'+rand(0,3)+'.jpg"></center>'
+				'You '+iif(wl_objects['toys'] = 1, 'pull out one of your balls', 'pick up a branch')+'. He wags his tail happily knowing what''s going to happen next. "Catch," you say and throw the '+iif(wl_objects['toys'] = 1, 'balls', 'branch')+' as far as you can. He barks and runs after it, picking it up from the ground and proudly returns it to you. '+iif(wl_objects['toys'] = 1, 'He seems to enjoy playing fetch even more with his toy balls. ', '')+'You continue this for ten minutes before you finally...'
+			
+				act '... return home': gt $loc, $loc_arg
+			end
+		end
+	else
+		wl_rex['timer_walk'] = hour
+		wl_rex['relationship'] += 3
+		pcs_mood += 20	
+		sunWeather = 1
+		gs 'sweat', 'add', 20
+		gs 'exercise', 'tier1', 60, 'run_exp'
+		fat -= rand(1,3)
+		'<center><img <<$set_imgh>> src="mod/wlife/images/activities/run_'+iif(daystage = 1 or daystage = 3 or daystage = 4 or daystage = 6, 'sunset', rand(0,1))+'.jpg"></center>'
+		'<<$wl_rex[''name'']>> runs around you excitingly as you put on your running shoes. He really loves to go on a run with you. "Yes," you say with a smile. "We''re going for a run. Are you ready?" He wags his tail. "Alright, let''s go <<$wl_rex[''name'']>>."'
+		'You head out and start your run. Most of the time <<$wl_rex[''name'']>> follows obediently, sometimes he stops to sniff or mark his territory, but he always returns to your side, when you''re too far away.'
+		'An hour later you return home exhausted and sweaty.' 
+		
+		act 'Continue': gt $loc, $loc_arg
+	end
+	
+	gs 'stat'
+end
+
+if $ARGS[0] = 'play_inside':
+	*clr & cla
+	minut += 20
+	pcs_mood += 20
+	wl_rex['relationship'] += 2
+	wl_rex['play_inside'] = daystart
+	gs 'stat'
+	'<center><img <<$set_imgh>> src="mod/wlife/images/activities/play_inside_'+rand(0,3)+'.jpg"></center>'
+	'You cavort with <<$wl_rex[''name'']>> in '+iif($loc = 'mod_wlife_hotelroom', 'your hotel room', 'the apartment')+' and lavish him with all the attention a good boy like him deserves. You get one of his toy balls and roll it around the apartment playing a safe version of indoor catch. He still loves it or to be more accurate he loves the attention he gets. At the end you two cuddle up on the couch and you spend the last few minutes casually stroking his soft fur.' 
+
+	act 'Stop playing': gt $loc, $loc_arg
+end
+
+if $ARGS[0] = 'bath':
+	*clr & cla
+	minut += 25
+	wl_rex['count_bath'] -= 1
+	wl_rex['relationship'] += 3
+	gs 'stat'
+	'<center><img <<$set_imgh>> src="mod/wlife/images/activities/bath.jpg"></center>'
+	'"Come <<$wl_rex[''names'']>>, time to take a bath," you say and open the door to the bathroom. <<$wl_rex[''name'']>> looks a bit confused. "Come on boy," you say clicking your fingers and he finally follows you inside.'
+	'The first step is brushing his fur, because matted hair holds water which could result in irritated skin. Afterwards you try to get him inside the '+iif($loc = 'mod_wlife_hotelroom', 'shower.', 'tub.')+' It takes a few tries to convince him, but he follows you inside after you have taken of your '+iif(CloSkirtShortness > 0, 'skirt.', 'pants.')
+	'"Stay," you say in a calm and reassuring voice and only use lukewarm water and a gentle dog shampoo.'
+		
+	act 'Continue': gt $loc, $loc_arg
+end
+!!--- Name ---
+
+if $ARGS[0] = 'name':
+	*clr & cla
+	menu_off = 1
+	wl_rex['status'] = 1
+	wl_rex['count_walk_base'] = 2
+	wl_rex['count_feed_base'] = 2
+	wl_rex['count_bath_base'] = 1
+	wl_rex['count_walk'] = wl_rex['count_walk_base']
+	wl_rex['count_feed'] = wl_rex['count_feed_base']
+	wl_rex['count_bath'] = wl_rex['count_bath_base']
+	gs 'stat'
+	'<center><img <<$set_imgh>> src="mod/wlife/images/animals/rex.jpg"></center>'
+	$wl_rex['name'] = input("What is the name of your dog? (Leave blank for Rex)")
+	if $wl_rex['name'] = '': $wl_rex['name'] = 'Rex'
+	
+	act 'Continue': $wl_status['dog'] = 'active' & gt $loc, $loc_arg
+	act 'Remove the dog (can be restored later in the cheatmenu)': $wl_status['dog'] = 'blocked' & gt $loc, $loc_arg
+end
+
+--- pet_dog ---------------------------------
+

+ 113 - 0
locations/shop.qsrc

@@ -254,6 +254,119 @@ if $shoplocation = 'grocery':
 	gs 'themes', 'indoors'
 
 	act 'Leave the grocery':gt 'shop', 'start'
+	act 'Go to the pet isle':gt 'shop', 'dog_items'
+end
+
+if $ARGS[0] = 'dog_items':
+	*clr & cla
+	minut += 1
+	menu_off = 1
+	$location_type = 'public_indoors'
+	gs 'stat'
+	'<center><img <<$set_imgh>> src="mod/wlife/images/locations/singles/pet_isle.jpg"></center>'
+	'In the pet isle you can buy food, treats and other things for you dog.'
+	
+	act 'Leave the pet isle': gt 'shop', 'start'
+	
+	if curr_home ! 2:
+		act 'Buy dog food':
+			*clr & cla
+			minut += 1
+			gs 'stat'
+			'<center><img <<$set_imgh>> src="mod/wlife/images/objects/dog_food.jpg"></center>'
+			'The store sells dog food for 600 <b>₽</b>. Inside each pack is enough food for 20 meals. You have <<objects[''dog_food'']>>.'
+			
+			if money >= 600: 
+				act 'Buy enough for 20 meals (600 <b>₽</b>, pay cash)':
+					money -= 600
+					objects['dog_food'] += 20
+					gt 'mod_wlife_misc', 'dog_items'
+				end
+			else
+				'<br>You don''t have enough money to buy food.'
+			end
+			
+			if money >= 1200: 
+				act 'Buy enough for 40 meals (1200 <b>₽</b>, pay cash)':
+					money -= 1200
+					objects['dog_food'] += 40
+					gt 'mod_wlife_misc', 'dog_items'
+				end
+			end
+			
+			if money >= 2400: 
+				act 'Buy enough for 80 meals (2400 <b>₽</b>, pay cash)':
+					money -= 2400
+					objects['dog_food'] += 80
+					gt 'mod_wlife_misc', 'dog_items'
+				end
+			end
+		end
+	else
+		'<br>You don''t need to buy dog food. Your parents pay for it, when you live at home.'
+	end
+	
+	act 'Buy some dog treats':
+		*clr & cla
+		minut += 1			
+		gs 'stat'
+		'<center><img <<$set_imgh>> src="mod/wlife/images/objects/treat_'+rand(0,2)+'.jpg"></center>'
+		'The store sells dog treats for 300 <b>₽</b>. Inside each pack are 20 treats. You have <<objects[''treats'']>>.'
+		
+		act 'Go back': gt 'mod_wlife_misc', 'dog_items'
+		
+		if money >= 300: 
+			act 'Buy a pack (300 <b>₽</b>, pay cash)':
+				money -= 300
+				objects['treats'] += 20
+				gt 'mod_wlife_misc', 'dog_items'
+			end
+		else
+			'You don''t have enough money to buy a pack.'
+		end
+	end
+	
+	act 'Buy a chew toy for your dog':
+		*clr & cla
+		minut += 1
+		gs 'stat'
+		'<center><img <<$set_imgh>> src="mod/wlife/images/objects/chew.jpg"></center>'
+		'The store sells a chew toy for 800 <b>₽</b> that keeps his teeth healthy.'
+
+		act 'Go back': gt 'mod_wlife_misc', 'dog_items'
+			
+		if money >= 800: 
+			act 'Buy one (800 <b>₽</b>, pay cash)':
+				money -= 800
+				objects['chew'] += 10
+				gt 'mod_wlife_misc', 'dog_items'
+			end
+		else
+			'You don''t have enough money to buy it.'
+		end
+	end
+	
+	if objects['toys'] = 0:
+		act 'Buy balls to play fetch with':
+			*clr & cla
+			minut += 1
+			gs 'stat'
+			'<center><img <<$set_imgh>> src="mod/wlife/images/objects/balls.jpg"></center>'
+			'The store sells rubber balls for 900 <b>₽</b> to play fetch with.'
+			
+			act 'Go back': gt 'mod_wlife_misc', 'dog_items'
+			
+			if money >= 900: 
+				act 'Buy them (900 <b>₽</b>, pay cash)':
+					money -= 900
+					objects['toys'] = 1
+					gt 'mod_wlife_misc', 'dog_items'
+				end
+			else
+				'You don''t have enough money to buy them.'
+			end
+		end
+	end
 end
 
 if $shoplocation= 'cosmetics':

+ 20 - 1
locations/zoomagazine.qsrc

@@ -125,6 +125,25 @@ if $ARGS[0] = 'start':
 		end
 	end
 
+	if money >= 3000 and rex['owned'] = 0 and home_owned[2] = 0 :
+		act 'Buy a dog (3000 <b>₽</b>)':
+			cla & *clr
+			menu_off = 1
+			if home_owned[1] > 0 or home_owned[2] > 0 or home_owned[4] > 0 or home_owned[5] > 0:
+				minut += 10
+				rex['owned'] = 1
+				money -= 3000
+				'<center><img <<$set_imgh>> src="images/locations/city/citycenter/mall/pet shop/pets/dog.jpg"></center>'
+				'<center><b>You bought a dog.</b></center>'
+				$rex['name'] = input ("I call the dog ...")
+				if $rex['name'] = '':$rex['name'] = 'Rex'
+			else
+				'You need to have your own place before you can buy a dog.'
+			end
+			act 'Move away from the counter': gt 'zoomagazine', 'start'
+		end
+	end
+
 	if money >= 3000 and ParrotQW['Owned1'] = 0 and home_owned[2] = 0 :
 		act 'Buy a parrot (3000 <b>₽</b>)':
 			cla & *clr
@@ -143,7 +162,7 @@ if $ARGS[0] = 'start':
 			act 'Move away from the counter': gt 'zoomagazine', 'start'
 		end
 	end
-	
+
 	if money >= 3000 and ParrotQW['Owned2'] = 0 and home_owned[2] = 1 :
 		act 'Buy a parrot for your parent''s apartment (3000 <b>₽</b>)':
 			cla & *clr