code wiki / (root) / nx_eroticism_ladder_test.nx

nx_eroticism_ladder_test.nx source

↩ module page · 78 lines · 3750 B

1import "nx_syscalls.nx" 2import "nx_eroticism_ladder.nx" 3 4func main() -> i64 { 5 let result: *i64 = (sys_mmap(NX_EROS_RES_FIELDS * 8 + 16)) as *i64 6 7 // T1: arousal 0.85 (high) declared, measured fully dressed modest = SEVERE_UNDERSHOOT. 8 nx_eros_validate(870, 9 NX_EROS_NUDITY_FULLY_DRESSED, NX_EROS_PUSSY_HIDDEN, 10 NX_EROS_POSE_MODEST, 11 NX_EROS_PENETRATION_NONE, 0, result) 12 let v1: i64 = result[NX_EROS_RES_VERDICT] 13 if v1 != NX_EROS_VERDICT_SEVERE_UNDERSHOOT { return 1 } 14 let m1: i64 = result[NX_EROS_RES_MEASURED_RANK] 15 if m1 != NX_EROS_RANK_MODEST_NEUTRAL { return 2 } 16 let e1: i64 = result[NX_EROS_RES_EXPECTED_RANK] 17 if e1 != NX_EROS_RANK_ACTIVE_PENETRATION { return 3 } 18 19 // T2: arousal 0.85 declared, measured PRESENTING_FOR_PENETRATION = UNDERSHOOT (-1). 20 nx_eros_validate(870, 21 NX_EROS_NUDITY_FULL_NUDE, NX_EROS_PUSSY_DETAILED, 22 NX_EROS_POSE_PRESENTING, 23 NX_EROS_PENETRATION_NONE, 0, result) 24 let v2: i64 = result[NX_EROS_RES_VERDICT] 25 if v2 != NX_EROS_VERDICT_UNDERSHOOT { return 10 } 26 let m2: i64 = result[NX_EROS_RES_MEASURED_RANK] 27 if m2 != NX_EROS_RANK_PRESENTING_FOR_PENETRATION { return 11 } 28 29 // T3: arousal 0.85, measured ACTIVE_PENETRATION = MATCH. 30 nx_eros_validate(870, 31 NX_EROS_NUDITY_FULL_NUDE, NX_EROS_PUSSY_DETAILED, 32 NX_EROS_POSE_PRESENTING, 33 NX_EROS_PENETRATION_VISIBLE, 1, result) 34 let v3: i64 = result[NX_EROS_RES_VERDICT] 35 if v3 != NX_EROS_VERDICT_MATCH { return 20 } 36 37 // T4: arousal 0.2 declared (low), measured SUGGESTIVE_NUDE = SEVERE_OVERSHOOT. 38 nx_eros_validate(200, 39 NX_EROS_NUDITY_FULL_NUDE, NX_EROS_PUSSY_HIDDEN, 40 NX_EROS_POSE_SUGGESTIVE, 41 NX_EROS_PENETRATION_NONE, 0, result) 42 let v4: i64 = result[NX_EROS_RES_VERDICT] 43 if v4 != NX_EROS_VERDICT_SEVERE_OVERSHOOT { return 30 } 44 45 // T5: arousal 0.5 declared, measured ARTISTIC_NUDE = MATCH. 46 nx_eros_validate(500, 47 NX_EROS_NUDITY_FULL_NUDE, NX_EROS_PUSSY_HIDDEN, 48 NX_EROS_POSE_NEUTRAL, 49 NX_EROS_PENETRATION_NONE, 0, result) 50 let v5: i64 = result[NX_EROS_RES_VERDICT] 51 if v5 != NX_EROS_VERDICT_MATCH { return 40 } 52 53 // T6: undershoot corrective phrases (T1 scenario). 54 nx_eros_validate(870, 55 NX_EROS_NUDITY_FULLY_DRESSED, NX_EROS_PUSSY_HIDDEN, 56 NX_EROS_POSE_MODEST, 57 NX_EROS_PENETRATION_NONE, 0, result) 58 let phrases: *i64 = (sys_mmap(16 * 8 + 16)) as *i64 59 let n_phrases: i64 = nx_eros_corrective_phrases(result, 60 NX_EROS_NUDITY_FULLY_DRESSED, 61 NX_EROS_PUSSY_HIDDEN, 62 NX_EROS_POSE_MODEST, 63 NX_EROS_PENETRATION_NONE, 0, 64 phrases) 65 if n_phrases < 3 { return 50 } // expect at least penetration+pussy+nudity hints 66 67 // T7: top-of-ladder edge case — arousal 1024 (max) expects rank 10. 68 nx_eros_validate(1024, 69 NX_EROS_NUDITY_FULL_NUDE, NX_EROS_PUSSY_DETAILED, 70 NX_EROS_POSE_PRESENTING, 71 NX_EROS_PENETRATION_VISIBLE, 3, result) 72 let v7: i64 = result[NX_EROS_RES_VERDICT] 73 if v7 != NX_EROS_VERDICT_MATCH { return 60 } 74 let m7: i64 = result[NX_EROS_RES_MEASURED_RANK] 75 if m7 != NX_EROS_RANK_ACTIVE_PENETRATION_WITH_RESPONSE { return 61 } 76 77 return 0 78}