Prechádzať zdrojové kódy

[fixed] Some modification of Sonia's fall and changes to the social group system ass discussed on discord with Nutluck.

bgkjdgbizgblzdgbr 2 rokov pred
rodič
commit
b7c5371527

+ 57 - 55
locations/cikl.qsrc

@@ -984,19 +984,14 @@ if katja_disco_end > 0: katja_disco_end = 0
 if npc_rel['A69'] > 60 and rand(0,3) = 0:npc_rel['A69'] -= 1
 
 !!Making Sonia''s fall progress if the player do not see the scenes at the disco, by making it such that if at a Sunfay her fall have not advanced for two weekends it will automatically advance.
-if storyline = 1 and week = 7 and soniaPS = 0:
-	if kanikuli = 0 and soniafall = 0:
+if storyline = 1 and week = 7 and soniaPS = 0 and month > 9 and daystart >= soniafallDay + 6:
+	if soniafall < 7:
 		soniafallDay = daystart -1
-		soniafall = 1
-	elseif daystart >= soniafallDay + 11:
-		if soniafall < 7:
-			soniafallDay = daystart -1
-			soniafall += 1
-		else	
-			soniaPS = 1
-			soniaPSdays = daystart
-		end
-	end	
+		soniafall += 1
+	else	
+		soniaPS = 1
+		soniaPSdays = daystart
+	end
 end
 
 !!Counter for dimka/igor date
@@ -1493,55 +1488,62 @@ if storyline = 1:
 			!! Resetting the late flag
 			if late = 1: late = 0
 			
-			!!Maximum increase for grupvalues is 7/8
-			if oldgrupvalue_set = 0:
-				oldgrupvalue_set = 1
-				old_grupvalue[1] = grupvalue[1]
-				old_grupvalue[2] = grupvalue[2]
-				old_grupvalue[3] = grupvalue[3]
-				old_grupvalue[4] = grupvalue[4]
-			else
-				if old_grupvalue[1] + 8 < grupvalue[1]: grupvalue[1] = old_grupvalue[1] + 8
-				if old_grupvalue[2] + 8 < grupvalue[2]: grupvalue[2] = old_grupvalue[2] + 8
-				if old_grupvalue[3] + 8 < grupvalue[3]: grupvalue[3] = old_grupvalue[3] + 8
-				if old_grupvalue[4] + 8 < grupvalue[4]: grupvalue[4] = old_grupvalue[4] + 8
-				if old_grupvalue[1] - 30 > grupvalue[1]: grupvalue[1] = old_grupvalue[1] - 30
-				if old_grupvalue[2] - 30 > grupvalue[2]: grupvalue[2] = old_grupvalue[2] - 30
-				if old_grupvalue[3] - 30 > grupvalue[3]: grupvalue[3] = old_grupvalue[3] - 30
-				if old_grupvalue[4] - 30 > grupvalue[4]: grupvalue[4] = old_grupvalue[4] - 30
-			end
-			!!Limit to max school group values
-			if grupvalue[1] > 1000: grupvalue[1] = 1000
-			if grupvalue[2] > 1000: grupvalue[2] = 1000
-			if grupvalue[3] > 1000: grupvalue[3] = 1000
-			if grupvalue[4] > 1000: grupvalue[4] = 1000
-			!!Decay for the school groups
-			if grupvalue[1] > 0:
-				grupvalue[1] -= rand(0,1)
-			else
-				grupvalue[1] = 0
-			end
-			if grupvalue[2] > 0:
-				grupvalue[2] -= rand(0,1)
-			else
-				grupvalue[2] = 0
-			end
-			if grupvalue[3] > 0:
-				grupvalue[3] -= rand(0,1)
-			else
-				grupvalue[3] = 0
-			end
-			if grupvalue[4] > 0:
-				grupvalue[4] -= rand(0,1)
-			else
-				grupvalue[4] = 0
-			end
+		end	
 
+		!!Social grup changes
+		
+		!!Change from relatonship with other students.
+		gs 'gschool_socialchg', 'group_student_rel_change'
+
+		!!Decay for the school groups
+		if grupvalue[1] > 0:
+			grupvalue[1] -= rand(0,1)
+		else
+			grupvalue[1] = 0
+		end
+		if grupvalue[2] > 0:
+			grupvalue[2] -= rand(0,1)
+		else
+			grupvalue[2] = 0
+		end
+		if grupvalue[3] > 0:
+			grupvalue[3] -= rand(0,1)
+		else
+			grupvalue[3] = 0
+		end
+		if grupvalue[4] > 0:
+			grupvalue[4] -= rand(0,1)
+		else
+			grupvalue[4] = 0
+		end
+		!!Maximum increase for grupvalues is 10 and max decay is 30
+		if oldgrupvalue_set = 0:
+			oldgrupvalue_set = 1
 			old_grupvalue[1] = grupvalue[1]
 			old_grupvalue[2] = grupvalue[2]
 			old_grupvalue[3] = grupvalue[3]
 			old_grupvalue[4] = grupvalue[4]
+		else
+			if old_grupvalue[1] + 10 < grupvalue[1]: grupvalue[1] = old_grupvalue[1] + 10
+			if old_grupvalue[2] + 10 < grupvalue[2]: grupvalue[2] = old_grupvalue[2] + 10
+			if old_grupvalue[3] + 10 < grupvalue[3]: grupvalue[3] = old_grupvalue[3] + 10
+			if old_grupvalue[4] + 10 < grupvalue[4]: grupvalue[4] = old_grupvalue[4] + 10
+			if old_grupvalue[1] - 30 > grupvalue[1]: grupvalue[1] = old_grupvalue[1] - 30
+			if old_grupvalue[2] - 30 > grupvalue[2]: grupvalue[2] = old_grupvalue[2] - 30
+			if old_grupvalue[3] - 30 > grupvalue[3]: grupvalue[3] = old_grupvalue[3] - 30
+			if old_grupvalue[4] - 30 > grupvalue[4]: grupvalue[4] = old_grupvalue[4] - 30
 		end
+		!!Limit to max school group values
+		if grupvalue[1] > 1000: grupvalue[1] = 1000
+		if grupvalue[2] > 1000: grupvalue[2] = 1000
+		if grupvalue[3] > 1000: grupvalue[3] = 1000
+		if grupvalue[4] > 1000: grupvalue[4] = 1000
+
+		old_grupvalue[1] = grupvalue[1]
+		old_grupvalue[2] = grupvalue[2]
+		old_grupvalue[3] = grupvalue[3]
+		old_grupvalue[4] = grupvalue[4]
+		
 	elseif SchoolAtestat = -1:
 		if home_owned[2] = 0:
 			$holyday = '<b>You missed your graduation. You could pick up your diploma at the school.</b>'

+ 0 - 1
locations/gschool_grounds.qsrc

@@ -36,7 +36,6 @@ if $ARGS[0] = 'main':
 	if InvitationToDimkaNYparty = 1 and day = 31 and day = nyp_day: act 'Follow Dimka to the party at his house': killvar 'InvitationToDimkaNYparty' & minut += 30 & gt 'sny', '3'
 
 	if hour = 14 and week < 6 and kanikuli = 0:
-		gs 'gschool_socialchg', 'group_student_rel_change'
 		if NikoDate_Day ! daystart:
 			if week = 1 and NikoIntro = 0:
 				gt 'NikoEv', 'Intro'			

+ 3 - 6
locations/pav_disco.qsrc

@@ -77,15 +77,12 @@ if $ARGS[0] = '':
 		act 'Go to the toilets': gt 'gdktoilet', 'start'
 
 		if StoryLine = 1 and SchoolAtestat = 0: 'You see a few of your <a href="exec: gt ''pav_disco_coolkids'', ''classmates''">classmates</a>. Some of them dancing, while others stick to their own groups and talk.'
-		if soniaslut < 5: soniaslut += 1
 
 		if dimaRevenge = 7 and dimaRevChoice = 4 and dimadisco = 0: gt 'dimaRevenge', 5, 'disco'
 
-		if rand(1,3) = 2 and soniaPS < 1 and soniadisco_day ! daystart and SchoolAtestat = 0 and month > 9:
-			if npc_grupTipe['A25'] ! 5 and StoryLine = 1 and BeInSchool > 0 and soniaslut >= 5 and hour < 23:
-				'You notice Sonia talking to Vitek about something.'
-				act 'Watch Sonia': soniadisco_day = daystart & gt 'soniadisco', 'start'
-			end
+		if rand(1,3) = 2 and soniaPS < 1 and soniadisco_day ! daystart and SchoolAtestat = 0 and month > 9 and npc_grupTipe['A25'] ! 5 and StoryLine = 1 and BeInSchool > 0 and hour < 22:
+			'You notice Sonia talking to Vitek about something.'
+			act 'Watch Sonia': soniadisco_day = daystart & gt 'soniadisco', 'start'
 		end
 		act 'Dance (0:15)':
 			*clr & cla