Browse Source

[Code updates] Remove ballet exploit, and amended text for clarity. Numerous minor changes to streamline ballet quests into the new journal quest layout that is in progress.

Myles Croft (Hooded Silence) 3 months ago
parent
commit
7df1622cda

+ 20 - 13
locations/beta_journal_quests.qsrc

@@ -51,7 +51,7 @@ end
 !! Friends and Relations
 !! Friends and Relations
 if $ARGS[0] = 'rel_pavlovsk':
 if $ARGS[0] = 'rel_pavlovsk':
 	gs $loc_id, 'pavlovsk_array'
 	gs $loc_id, 'pavlovsk_array'
-	$table_gen_max = 6
+	$table_gen_max = loc_gen
 	gs $loc_id, 'table_gen'
 	gs $loc_id, 'table_gen'
 
 
 end
 end
@@ -61,8 +61,6 @@ if $ARGS[0] = 'rel_gad':
 end
 end
 if $ARGS[0] = 'rel_pushkin':
 if $ARGS[0] = 'rel_pushkin':
 	!! Ballet Maya
 	!! Ballet Maya
-
-
 end
 end
 
 
 !! Game locations - quests
 !! Game locations - quests
@@ -214,7 +212,7 @@ if $ARGS[0] = 'failure':
 	if $ARGS[1] = 'id':
 	if $ARGS[1] = 'id':
 		$debug['journal'] = 'NPC ID not set, vcard not generated.'
 		$debug['journal'] = 'NPC ID not set, vcard not generated.'
 	elseif $ARGS[1] = 'quest_body':
 	elseif $ARGS[1] = 'quest_body':
-		$debug['journal'] = 'Quest body not set, quests details was not display.'
+		$debug['journal'] = 'Quest body not set, quests details was not set.'
 	elseif $ARGS[1] = 'nav_forward':
 	elseif $ARGS[1] = 'nav_forward':
 		$debug['journal'] = 'No forward navigation set - please ensure you have set the var in quest_data'
 		$debug['journal'] = 'No forward navigation set - please ensure you have set the var in quest_data'
 	elseif $ARGS[1] = 'nav_back':
 	elseif $ARGS[1] = 'nav_back':
@@ -310,26 +308,35 @@ end
 if $ARGS[0] = 'pavlovsk_array':
 if $ARGS[0] = 'pavlovsk_array':
 	!! Set up locations for image paths for the loop
 	!! Set up locations for image paths for the loop
 	loc_gen = 1
 	loc_gen = 1
+	!! Display Name
 	$loc_name[loc_gen] = 'Five Eight Estate'
 	$loc_name[loc_gen] = 'Five Eight Estate'
+	!! $args[1] function name to show data
 	$loc_shortname[loc_gen] = '58_estate'
 	$loc_shortname[loc_gen] = '58_estate'
+	!! default game image file path
 	$loc_path[loc_gen] = 'images/locations/pavlovsk/resident/apartment/complex.jpg'
 	$loc_path[loc_gen] = 'images/locations/pavlovsk/resident/apartment/complex.jpg'
-	loc_gen = 2
-	$loc_name[loc_gen] = 'Commercial'
+	!! Area description to indicate what is in this area.
+	$loc_description[loc_gen] = 'Five Eight Estate where your parents and aunt Luda live. There is also the garage that your father hires to fix his car.'
+
+	!$loc_path[loc_gen] =
+
+	loc_gen += 1
+	$loc_name[loc_gen] = 'Commercial Area'
 	$loc_shortname[loc_gen] = 'commercial'
 	$loc_shortname[loc_gen] = 'commercial'
 	$loc_path[loc_gen] = 'images/locations/pavlovsk/gorodok.jpg'
 	$loc_path[loc_gen] = 'images/locations/pavlovsk/gorodok.jpg'
-	loc_gen = 3
-	$loc_name[loc_gen] = 'Industrial'
+	$loc_description[loc_gen] = ''
+	loc_gen += 1
+	$loc_name[loc_gen] = 'Industrial Area'
 	$loc_shortname[loc_gen] = 'industrial'
 	$loc_shortname[loc_gen] = 'industrial'
 	$loc_path[loc_gen] = 'images/locations/pavlovsk/factory/pav_factory.jpg'
 	$loc_path[loc_gen] = 'images/locations/pavlovsk/factory/pav_factory.jpg'
-	loc_gen = 4
-	$loc_name[loc_gen] = 'Market'
+	loc_gen += 1
+	$loc_name[loc_gen] = 'Pavlovsk Market'
 	$loc_shortname[loc_gen] = 'market'
 	$loc_shortname[loc_gen] = 'market'
 	$loc_path[loc_gen] = 'images/locations/pavlovsk/pav_market_day.jpg'
 	$loc_path[loc_gen] = 'images/locations/pavlovsk/pav_market_day.jpg'
-	loc_gen = 5
-	$loc_name[loc_gen] = 'Park'
+	loc_gen += 1
+	$loc_name[loc_gen] = 'Pavlovsk Park'
 	$loc_shortname[loc_gen] = 'park'
 	$loc_shortname[loc_gen] = 'park'
 	$loc_path[loc_gen] = 'images/locations/pavlovsk/park/skver.jpg'
 	$loc_path[loc_gen] = 'images/locations/pavlovsk/park/skver.jpg'
-	loc_gen = 6
+	loc_gen += 1
 	$loc_name[loc_gen] = 'Train Station'
 	$loc_name[loc_gen] = 'Train Station'
 	$loc_shortname[loc_gen] = 'train_station'
 	$loc_shortname[loc_gen] = 'train_station'
 	$loc_path[loc_gen] = 'images/locations/pavlovsk/trainstation/vokzal.jpg'
 	$loc_path[loc_gen] = 'images/locations/pavlovsk/trainstation/vokzal.jpg'

+ 1 - 1
locations/emp_functions.qsrc

@@ -63,7 +63,7 @@ if $ARGS[0] = 'gen_schedule':
 			$tableheader += '<th style="padding: 10px;"><font color="<<$font_theme>>">' + iif(display_hour < 10, '0<<display_hour >>', display_hour) + ':00</font></th>'
 			$tableheader += '<th style="padding: 10px;"><font color="<<$font_theme>>">' + iif(display_hour < 10, '0<<display_hour >>', display_hour) + ':00</font></th>'
 		elseif header_switch=2:
 		elseif header_switch=2:
 			header_switch = 1
 			header_switch = 1
-			$tableheader += '<th style="padding: 10px;"><font color="<<$font_theme>>">' + iif(display_hour < 10, '0<< display_hour>>', display_hour) + ':30</font></th>'
+			$tableheader += '<th style="padding: 10px;"><font color="<<$font_theme>>">' + iif(display_hour < 10, '0<<display_hour>>', display_hour) + ':30</font></th>'
 		end
 		end
 		i_hour += 1
 		i_hour += 1
 	if i_hour <= mod_max_hour: jump 'jmp_header_create'
 	if i_hour <= mod_max_hour: jump 'jmp_header_create'

+ 7 - 2
locations/pushkin_ballet_class.qsrc

@@ -34,8 +34,12 @@ if $ARGS[0] = 'start':
 
 
 	!! Random trivia - Terpsichore is one of the nine Greecian muses. Her sphere was dance, rhythm and choral music.
 	!! Random trivia - Terpsichore is one of the nine Greecian muses. Her sphere was dance, rhythm and choral music.
 
 
-	if ballet_day = 6 and balletqw['school'] ! 1:
+	if (balletqw['daystart'] + 7 = daystart) and hour = 7:
 		gt $loc, 'assessment'
 		gt $loc, 'assessment'
+	elseif ( daystart >= balletqw['daystart'] + 8 ) or (balletqw['daystart'] + 7 = daystart and hour > 7):
+		mod_grade_score['class'] -= 500
+		'You were late or did not attend the exam. You have failed the course.'
+		act 'Return home' : gt 'pav_commcenter'
 	elseif ballet_day = 6 and balletqw['school'] = 1:
 	elseif ballet_day = 6 and balletqw['school'] = 1:
 		gs 'stat'
 		gs 'stat'
 		gs 'core_library', 'stage_title'
 		gs 'core_library', 'stage_title'
@@ -314,7 +318,8 @@ if $ARGS[0] = 'shower':
 	end
 	end
 end
 end
 if $ARGS[0] = 'grade_check':
 if $ARGS[0] = 'grade_check':
-	$popup_advise = '<center><h3>You critically look at your appearance according to the schools assessment guidelines:</h3></center>'
+	$popup_advise = '<center><h3>Appearance</h3></center>'
+	$popup_advise += 'You critically look at your appearance according to the schools assessment guidelines:'
 	$popup_advise += '<br><br>'
 	$popup_advise += '<br><br>'
 	if pcs_makeup > 1:
 	if pcs_makeup > 1:
 		$popup_advise += '<font color = "green">✓</font> Your make up is of an acceptable standard.</font>'
 		$popup_advise += '<font color = "green">✓</font> Your make up is of an acceptable standard.</font>'

+ 1 - 0
locations/pushkin_ballet_evt.qsrc

@@ -337,6 +337,7 @@ end
 
 
 if $ARGS[0] = 'intro_274':
 if $ARGS[0] = 'intro_274':
 	*clr & cla
 	*clr & cla
+	mayaqw['path'] = 1
 	'<center><a><img <<$set_imgh>> src="<<$npc_img_path[''A274'']>>/274-1.jpg"></center>'
 	'<center><a><img <<$set_imgh>> src="<<$npc_img_path[''A274'']>>/274-1.jpg"></center>'
 	'You walk over to a tall willowly blonde girl, "Hi I''m <<$pcs_nickname>>". The girl gives you a warm smile, "I''m <<$npc_firstname[''A274'']>> pleased to meet you. Where you from?" ''Pavlosk'' you reply, ''Yourself?'''
 	'You walk over to a tall willowly blonde girl, "Hi I''m <<$pcs_nickname>>". The girl gives you a warm smile, "I''m <<$npc_firstname[''A274'']>> pleased to meet you. Where you from?" ''Pavlosk'' you reply, ''Yourself?'''
 	'"I live Pushkin now but from Moscow originally.", <<$npc_firstname[''A274'']>> replles before another girl jumps in taking her attention.'
 	'"I live Pushkin now but from Moscow originally.", <<$npc_firstname[''A274'']>> replles before another girl jumps in taking her attention.'

+ 2 - 1
locations/pushkin_ballet_init.qsrc

@@ -25,6 +25,7 @@
 !! balletqw[performances] - How many shows perfomed
 !! balletqw[performances] - How many shows perfomed
 !! mayaqw[grave] - Did you attend Anitchka's grave with Maya, 3 means you talked to Maya, 4 means you were empathic. Has impact later on Maya''s actions towards the player.
 !! mayaqw[grave] - Did you attend Anitchka's grave with Maya, 3 means you talked to Maya, 4 means you were empathic. Has impact later on Maya''s actions towards the player.
 !! mayaqw[trust] - How much Maya trusts you and works in conjunction with npc_rel
 !! mayaqw[trust] - How much Maya trusts you and works in conjunction with npc_rel
+!! mayaqw[path] - progress tracker for maya quests
 !! Rudolph quest is broken into two variables the main tracker being rudolphqw[stage] and rudolphqw[corruption], the latter reflects his slow insidious undermining of Sveta''s confidence and the former is how
 !! Rudolph quest is broken into two variables the main tracker being rudolphqw[stage] and rudolphqw[corruption], the latter reflects his slow insidious undermining of Sveta''s confidence and the former is how
 !! much she has submitted to his authority and demands. Corruption opens dialogue options.
 !! much she has submitted to his authority and demands. Corruption opens dialogue options.
 !!
 !!
@@ -220,7 +221,7 @@ if $ARGS[0] = 'cleanup_var':
 	killvar 'mod_grade_uniform'
 	killvar 'mod_grade_uniform'
 	killvar 'mod_grade_health'
 	killvar 'mod_grade_health'
 	killvar 'mod_class_debug'
 	killvar 'mod_class_debug'
-
+	gs 'shortgs', 'remove_array_element', 'balletqw', 'daystart'
 	gs 'shortgs', 'remove_array_element', 'ballet_mod', 'letter'
 	gs 'shortgs', 'remove_array_element', 'ballet_mod', 'letter'
 	gs 'shortgs', 'remove_array_element', 'ballet_mod', 'res_mg'
 	gs 'shortgs', 'remove_array_element', 'ballet_mod', 'res_mg'
 end
 end

+ 9 - 3
locations/pushkin_ballet_res.qsrc

@@ -11,7 +11,7 @@
 !!
 !!
 !! Variables
 !! Variables
 !!
 !!
-!! ballet_first_visit - used to set first night
+!! balletqw[daystart] - used to set first night
 !! ballet_day - Sets which day of the course you are on.
 !! ballet_day - Sets which day of the course you are on.
 
 
 $default_img_path = 'locations/pushkin/'
 $default_img_path = 'locations/pushkin/'
@@ -48,10 +48,10 @@ if $ARGS[0] = 'bedroom':
 	gs 'stat'
 	gs 'stat'
 	gs 'core_library', 'stage_title'
 	gs 'core_library', 'stage_title'
 
 
-	if ballet_first_visit = 0:
+	if balletqw['daystart'] = 0:
 		gs 'homes_properties', 'set_home', 'pushkin_ballet_dorm'
 		gs 'homes_properties', 'set_home', 'pushkin_ballet_dorm'
 
 
-		ballet_first_visit = 1
+		balletqw['daystart'] = daystart
 		if week ! 7 : ballet_day = week
 		if week ! 7 : ballet_day = week
 
 
 		'You look around your room that will be the bedroom for the next week, and a small comfortable bed sits in the corner. You have a desk you can study on. In the corner, there''s a full-size <a href="exec:gt ''wardrobe'', ''start''">wardrobe</a> with a mirror on one of the doors.'
 		'You look around your room that will be the bedroom for the next week, and a small comfortable bed sits in the corner. You have a desk you can study on. In the corner, there''s a full-size <a href="exec:gt ''wardrobe'', ''start''">wardrobe</a> with a mirror on one of the doors.'
@@ -82,6 +82,8 @@ if $ARGS[0] = 'bedroom':
 			act 'Answer the knock' : gs 'npc_274_init','grave'
 			act 'Answer the knock' : gs 'npc_274_init','grave'
 		elseif ballet_day = 3 and hour > 19 and mayaqw['grave'] = 1:
 		elseif ballet_day = 3 and hour > 19 and mayaqw['grave'] = 1:
 			act 'Another knock': gt 'npc_274_init', 'post_grave'
 			act 'Another knock': gt 'npc_274_init', 'post_grave'
+		else
+			mayaqw['grave'] = -1
 		end
 		end
 		!! Default actions
 		!! Default actions
 		gs 'core_library', 'bedroom'
 		gs 'core_library', 'bedroom'
@@ -309,9 +311,13 @@ if $ARGS[0] = 'class_schedule':
 	'1600 - 1700: Ballet and musical theory.'
 	'1600 - 1700: Ballet and musical theory.'
 	*nl
 	*nl
 	'Saturday:'
 	'Saturday:'
+	'0730 - Depart residence.'
 	'0800 - 1200: Graded assessment.'
 	'0800 - 1200: Graded assessment.'
 	*nl
 	*nl
+	'Transportation will be provided after the assessment and you will be informed of your results by letter in two weeks.'
+	*nl
 	'Rules:'
 	'Rules:'
+	*nl
 	'Whilst attending classes students are expected dressed in sports clothing, perferably a leotard.'
 	'Whilst attending classes students are expected dressed in sports clothing, perferably a leotard.'
 	'You must also set your hair in a braid or a bun, no other styles are acceptable.'
 	'You must also set your hair in a braid or a bun, no other styles are acceptable.'
 	'Make up must be worn at all times, and you must be clean and presentable during classes. You will have access to showers during the day.'
 	'Make up must be worn at all times, and you must be clean and presentable during classes. You will have access to showers during the day.'

+ 38 - 11
locations/quest_data_a274.qsrc

@@ -1,14 +1,19 @@
 # quest_data_a274
 # quest_data_a274
-
 !! NPC 274 Maya Semionova
 !! NPC 274 Maya Semionova
 
 
 if $ARGS[0] = 'init':
 if $ARGS[0] = 'init':
+    $loc_id = 'quest_data_a274'
     !! init all vars and data
     !! init all vars and data
 
 
     if ballet['debug'] = 1:  debug['code']  = 1
     if ballet['debug'] = 1:  debug['code']  = 1
-
+    if qstage ! 0:
+		gs $loc_id, 'quest_body', 'stage_<<qstage>>'
+	else
+		gt $loc_id, 'debug'
+	end
 end
 end
-if ARGS[0] = '':
+if $ARGS[0] = '':
+	gt $loc_id, 'debug'
 end
 end
 if $ARGS[0] = 'quest_body':
 if $ARGS[0] = 'quest_body':
     !! create quest body and navigation as required - mandatory fields:
     !! create quest body and navigation as required - mandatory fields:
@@ -20,28 +25,50 @@ if $ARGS[0] = 'quest_body':
 
 
     !! Stage 1
     !! Stage 1
 
 
-    if $ARGS[1] = 'stage1':
+    if $ARGS[1] = 'stage_1':
     !! first stage, so set to null to ensure nav works.
     !! first stage, so set to null to ensure nav works.
         $npc_quest['q_back'] = 'null'
         $npc_quest['q_back'] = 'null'
-        $npc_quest['q_next'] = 'stage2'
+        if mayaqw['path'] >= 1:
+            $npc_quest['q_next'] = 'stage_2'
+        else
+            $npc_quest['q_next'] = 'null'
+        end
+        $npc_quest['hints'] = 'Attend the Pushken Ballet School and interact with the students.'
     !! Quest body text:
     !! Quest body text:
-        $npc_['quest_body'] = 'Build Maya''s trust: Meet Maya at the Residential Dance School in Pushkin.'
+        $npc_quest['body'] = 'Build Maya''s trust: Meet Maya at the Residential Dance School in Pushkin.'
     end
     end
 
 
     !! Stage 2
     !! Stage 2
-    if $ARGS[1] = 'stage2':
-        !! first stage, so set to null to ensure nav works.
-            $npc_quest['q_back'] = 'stage1'
+    if $ARGS[1] = 'stage_2':
+		$npc_quest['q_back'] = 'stage_1'
+        if mayaqw['path'] >= 3:
+            $npc_quest['q_next'] = 'stage_3'
+        else
             $npc_quest['q_next'] = 'null'
             $npc_quest['q_next'] = 'null'
-        !! Quest body text:
-            $npc_['quest_body'] = 'Build Maya''s trust: Continue to meet and talk to Maya.'
         end
         end
 
 
+		$npc_quest['q_next'] = 'null'
+        $npc_quest['hints'] = 'Accept Maya''s invitation.'
+        if mayaqw['grave'] = 0:
+            $npc_quest['body'] = 'Build Maya''s trust: Continue to meet and talk to Maya.'
+        elseif mayaqw['grave'] = -1:
+            $npc_quest['body'] = 'You spent the evening dedicated to studying ballet and ignored Maya''s visit to your room.'
+        elseif mayaqw['grave'] = 1:
+            $npc_quest['body'] = 'You ignored Maya''s first knock when she came to visit.'
+        elseif mayaqw['grave'] = 3:
+            $npc_quest['body'] =  'You invited Maya into your room and had a brief heartfelt conversation about her past.'
+        elseif mayaqw['grave'] = 4:
+            $npc_quest['body'] = 'You went to graveyard and supported Maya in her grief, and had a hearftelt conversation with her afterwards in your room.'
+        end
+    end
+
 
 
     !! Stage 3
     !! Stage 3
 
 
+
 end
 end
 if $ARGS[0] = 'debug':
 if $ARGS[0] = 'debug':
     !! creata debug data sheet of all associated variables to be displayed in a pop up
     !! creata debug data sheet of all associated variables to be displayed in a pop up
+    'Event init failed, $ARGS not set.'
 end
 end
 --- quest_data_a274 ---------------------------------
 --- quest_data_a274 ---------------------------------